@xylabs/ts-scripts-yarn3 3.15.0 → 3.15.1

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.
Files changed (46) hide show
  1. package/dist/actions/index.cjs +4 -4
  2. package/dist/actions/index.cjs.map +1 -1
  3. package/dist/actions/index.mjs +4 -4
  4. package/dist/actions/index.mjs.map +1 -1
  5. package/dist/actions/package/compile/compile.cjs +4 -4
  6. package/dist/actions/package/compile/compile.cjs.map +1 -1
  7. package/dist/actions/package/compile/compile.mjs +4 -4
  8. package/dist/actions/package/compile/compile.mjs.map +1 -1
  9. package/dist/actions/package/compile/index.cjs +4 -4
  10. package/dist/actions/package/compile/index.cjs.map +1 -1
  11. package/dist/actions/package/compile/index.mjs +4 -4
  12. package/dist/actions/package/compile/index.mjs.map +1 -1
  13. package/dist/actions/package/compile/packageCompileTsup.cjs +4 -4
  14. package/dist/actions/package/compile/packageCompileTsup.cjs.map +1 -1
  15. package/dist/actions/package/compile/packageCompileTsup.mjs +4 -4
  16. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  17. package/dist/actions/package/index.cjs +4 -4
  18. package/dist/actions/package/index.cjs.map +1 -1
  19. package/dist/actions/package/index.mjs +4 -4
  20. package/dist/actions/package/index.mjs.map +1 -1
  21. package/dist/actions/package/recompile.cjs +4 -4
  22. package/dist/actions/package/recompile.cjs.map +1 -1
  23. package/dist/actions/package/recompile.mjs +4 -4
  24. package/dist/actions/package/recompile.mjs.map +1 -1
  25. package/dist/bin/package/compile-only.cjs +4 -4
  26. package/dist/bin/package/compile-only.cjs.map +1 -1
  27. package/dist/bin/package/compile-only.mjs +4 -4
  28. package/dist/bin/package/compile-only.mjs.map +1 -1
  29. package/dist/bin/package/compile-tsup.cjs +4 -4
  30. package/dist/bin/package/compile-tsup.cjs.map +1 -1
  31. package/dist/bin/package/compile-tsup.mjs +4 -4
  32. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  33. package/dist/bin/package/compile.cjs +4 -4
  34. package/dist/bin/package/compile.cjs.map +1 -1
  35. package/dist/bin/package/compile.mjs +4 -4
  36. package/dist/bin/package/compile.mjs.map +1 -1
  37. package/dist/bin/package/recompile.cjs +4 -4
  38. package/dist/bin/package/recompile.cjs.map +1 -1
  39. package/dist/bin/package/recompile.mjs +4 -4
  40. package/dist/bin/package/recompile.mjs.map +1 -1
  41. package/dist/index.cjs +4 -4
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.mjs +4 -4
  44. package/dist/index.mjs.map +1 -1
  45. package/package.json +5 -5
  46. package/src/actions/package/compile/packageCompileTsup.ts +4 -4
@@ -426,7 +426,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
426
426
  // minify: true,
427
427
  outDir: "dist/browser",
428
428
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
429
- js: ".ts"
429
+ js: ".mjs"
430
430
  } : {
431
431
  js: ".cjs"
432
432
  }, "outExtension"),
@@ -455,7 +455,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
455
455
  // minify: true,
456
456
  outDir: "dist/browser",
457
457
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
458
- js: ".ts"
458
+ js: ".mjs"
459
459
  } : {
460
460
  js: ".cjs"
461
461
  }, "outExtension"),
@@ -488,7 +488,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
488
488
  // minify: true,
489
489
  outDir: "dist/neutral",
490
490
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
491
- js: ".ts"
491
+ js: ".mjs"
492
492
  } : {
493
493
  js: ".cjs"
494
494
  }, "outExtension"),
@@ -517,7 +517,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
517
517
  // minify: true,
518
518
  outDir: "dist/neutral",
519
519
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
520
- js: ".ts"
520
+ js: ".mjs"
521
521
  } : {
522
522
  js: ".cjs"
523
523
  }, "outExtension"),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/actions/package/compile/compile.ts","../../../../src/lib/loadConfig.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts","../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/copyTypeFiles.ts"],"sourcesContent":["import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { merge } from 'lodash-es'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return merge({}, config, params)\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return merge({}, config, params)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /*try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n }*/\n }\n\n //we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter((message) => message.type === 'error').length\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: (fileName) => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["import_chalk","config","loadConfig","params","merge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","import_chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","import_chalk","import_typescript","import_lodash_es","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","import_lodash_es","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","import_node_process","import_chalk","import_tsc_prog","import_typescript","import_promises","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint"]}
1
+ {"version":3,"sources":["../../../../src/actions/package/compile/compile.ts","../../../../src/lib/loadConfig.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts","../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/copyTypeFiles.ts"],"sourcesContent":["import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { merge } from 'lodash-es'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return merge({}, config, params)\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return merge({}, config, params)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /*try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n }*/\n }\n\n //we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter((message) => message.type === 'error').length\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: (fileName) => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;IAAAA,gBAAkB;;;ACAlB,mBAAkB;AAClB,yBAA4B;AAC5B,uBAAsB;AAEtB,IAAIC;AAEG,IAAMC,aAAa,8BAAyBC,WAAAA;AACjD,MAAIF,QAAQ;AACV,eAAOG,wBAAM,CAAC,GAAGH,QAAQE,MAAAA;EAC3B;AAEA,QAAME,qBAAqB,UAAMC,gCAAY,MAAM;IAAEC,OAAO;EAAK,CAAA,EAAGC,OAAM;AAC1EP,WAASI,oBAAoBJ;AAC7B,QAAMQ,iBAAiBJ,oBAAoBK;AAC3C,MAAID,gBAAgB;AAClBE,YAAQC,IAAIC,aAAAA,QAAMC,KAAK,uBAAuBL,cAAAA,EAAgB,CAAA;EAChE;AACA,aAAOL,wBAAM,CAAC,GAAGH,QAAQE,MAAAA;AAC3B,GAZ0B;;;ACN1B,qBAA+B;AAE/B,IAAAY,gBAAkB;AAOX,IAAMC,iBAAiB,8BAAOC,WAAAA;AACnC,QAAMC,SAASC,QAAQC,IAAIC;AAC3B,QAAMC,MAAMC,KAAKC,MAAM,MAAMC,eAAAA,SAAGC,SAAS,GAAGR,MAAAA,iBAAuB,MAAA,CAAA;AAEnES,UAAQC,IAAIC,cAAAA,QAAMC,MAAM,YAAYR,IAAIS,IAAI,EAAE,CAAA;AAC9CJ,UAAQC,IAAIC,cAAAA,QAAMG,KAAKd,MAAAA,CAAAA;AAEvB,QAAM,EAAEe,QAAO,IAAK,MAAM,OAAO,SAAA;AAEjC,QAAM,EAAEC,SAAQ,IAAK,MAAMD,QAAQ;IACjCE,OAAO;IACPjB;IACAkB,QAAQ;EACV,CAAA;AAGA,QAAM,EAAEC,cAAa,IAAK,MAAM,OAAO,eAAA;AAEvC,QAAMC,eAAe,wBAACC,aAAAA;AACpB,WAAO;EAiBT,GAlBqB;AAqBrB,QAAMC,gBAAgBN,SAASO,OAAOH,YAAAA;AACtC,aAAWI,WAAWF,eAAe;AACnC,YAAQE,QAAQC,MAAI;MAClB,KAAK,SAAS;AACZhB,gBAAQiB,MAAMf,cAAAA,QAAMgB,IAAI,IAAIH,QAAQI,IAAI,KAAKT,cAAcK,SAASpB,GAAAA,CAAAA,EAAM,CAAA;AAC1E;MACF;MACA,KAAK,WAAW;AACdK,gBAAQoB,KAAKlB,cAAAA,QAAMmB,OAAO,IAAIN,QAAQI,IAAI,KAAKT,cAAcK,SAASpB,GAAAA,CAAAA,EAAM,CAAA;AAC5E;MACF;MACA,SAAS;AACPK,gBAAQC,IAAIC,cAAAA,QAAMoB,MAAM,IAAIP,QAAQI,IAAI,KAAKT,cAAcK,SAASpB,GAAAA,CAAAA,EAAM,CAAA;AAC1E;MACF;IACF;EACF;AAEA,MAAIL,QAAQiC,SAAS;AACnBvB,YAAQC,IAAIC,cAAAA,QAAMG,KAAK,qBAAqBd,MAAAA,KAAWsB,cAAcW,MAAM,GAAG,CAAA;EAChF;AAEA,SAAOX,cAAcC,OAAO,CAACC,YAAYA,QAAQC,SAAS,OAAA,EAASQ;AACrE,GA9D8B;;;ACT9B,0BAAoB;AAEpB,IAAAC,gBAAkB;AAClB,sBAAiE;AACjE,IAAAC,qBAQO;;;ACZP,yBAA8B;AAE9B,IAAAC,oBAAsB;AACtB,wBAAqE;AAHrE;AAKO,IAAMC,sCAAsC,wBAACC,aAAAA;AAElD,MAAIC,OAAY,CAAC;AACjB,QAAMC,cAASC,kCAAeH,UAAUI,sBAAIC,QAAQ,EAAEH;AACtD,MAAIA,QAAOI,SAAS;AAClB,UAAMC,eAAUC,kCAAc,YAAYC,GAAG;AAC7CR,WAAOM,SAAQL,QAAOI,OAAO;EAC/B;AACA,MAAIJ,SAAQQ,OAAO;AACjB,UAAM,IAAIC,MAAM,8CAA8CC,KAAKC,UAAUX,SAAQQ,OAAOI,aAAa,MAAM,CAAA,CAAA,EAAI;EACrH;AAEA,SAAO;IAAE,GAAGb,KAAKc;IAAiB,GAAGb,QAAOa;EAAgB;AAC9D,GAbmD;AAe5C,IAAMC,qBAAqB,8BAAOC,SAA2BC,WAAmB,oBAAe;AACpG,QAAMC,qBAAiBC,kCAAe,MAAMhB,sBAAIiB,YAAYH,QAAAA;AAC5D,QAAMI,4BAA4BH,iBAAiB,MAAMpB,oCAAoCoB,cAAAA,IAAkBI;AAE/G,aAAOC,yBAAM,CAAC,GAAGF,2BAA2BL,OAAAA;AAC9C,GALkC;;;ADF3B,IAAMQ,oBAAoB,8BAAOC,QAAkBC,SAAsBC,yBAAAA;AAC9E,QAAMC,MAAMC,QAAQC,IAAIC,gBAAYC,yBAAAA;AAEpC,QAAMC,UAAUP,SAAQO,WAAW;AACnC,QAAMC,UAAUR,SAAQQ,WAAW;AAEnC,QAAMC,aAAoC;IACxCC,sBAAsB,wBAACC,aAAaA,UAAd;IACtBC,qBAAqB,6BAAMV,KAAN;IACrBW,YAAY,6BAAM,MAAN;EACd;AAEA,MAAIL,SAAS;AACXM,YAAQC,IAAI,8BAA8Bb,GAAAA,GAAM;EAClD;AAEA,QAAMc,kBAAkB;IACtB,GAAI,MAAMC,mBAAmB;MAC3BC,QAAQ;MACRC,gBAAgB;MAChBC,SAAS;IACX,CAAA;IACA,GAAGnB;IACH,GAAIF,WAAWsB,SAAY,CAAC,IAAI;MAAEtB;IAAO;EAC3C;AAEA,QAAMuB,cAAUC,yCAAwB;IACtCC,UAAUtB,WAAOI,yBAAAA;IACjBU;IACAS,SAAS;MAAC;MAAQ;MAAQ;MAAe;MAAkB;;IAC3DC,SAAS;MAAC;;EACZ,CAAA;AAEA,QAAMC,cAAUC,0CAAsBN,OAAAA;AAEtC,aAAWO,QAAQF,SAAS;AAC1B,UAAMG,cAAgCD,KAAKE,WAAOC,kDAA8BH,KAAKE,MAAMF,KAAKI,SAAS,CAAA,IAAK;MAAEC,WAAW;MAAGC,MAAM;IAAE;AACtIrB,YAAQC,IAAIqB,cAAAA,QAAMC,KAAK,GAAGR,KAAKE,MAAMpB,QAAAA,IAAYmB,YAAYK,OAAO,CAAA,IAAKL,YAAYI,YAAY,CAAA,EAAG,CAAA;AACpGpB,YAAQC,QAAIuB,yDAAqC;MAACT;OAAOpB,UAAAA,CAAAA;EAC3D;AAGA,SAAOkB,QAAQY,OAAO,CAACC,MAAMX,SAAUW,OAAOX,KAAKY,aAAaC,sCAAmBC,QAAQ,IAAI,GAAI,CAAA,MAAOpC,UAAU,MAAMqC,eAAAA,IAAmB;AAC/I,GA3CiC;;;AElBjC,IAAAC,oBAAsB;AACtB,kBAA6C;;;ACD7C,sBAAwB;AAExB,kBAAqB;AAoCd,IAAMC,gBAAgB,wBAACC,WAAAA;AAE5B,SAAOC,iBAAKC,KAAK,GAAGF,MAAAA,WAAiB;IAAEG,QAAQ;MAAC;MAAe;MAAkB;;IAAiBC,OAAO;EAAK,CAAA;AAChH,GAH6B;;;ACnCtB,IAAMC,eAAe,wBAACC,QAAgBC,WAAuBC,UAAU,UAAK;AACjF,UAAQD,WAAAA;IACN,KAAK,YAAY;AACf,UAAIC,QAASC,SAAQC,IAAI,yBAAA;AACzB,aAAO;QAAC,GAAGJ,MAAAA;QAAwB,GAAGA,MAAAA;;IACxC;IACA,KAAK,OAAO;AACV,UAAIE,QAASC,SAAQC,IAAI,oBAAA;AACzB,aAAOC,cAAcL,MAAAA,EAAQM,OAAO,CAACC,UAAU,CAACA,MAAMC,SAAS,QAAA,KAAa,CAACD,MAAMC,SAAS,SAAA,CAAA;IAC9F;IACA,SAAS;AACP,UAAIN,QAASC,SAAQC,IAAI,uBAAA;AACzB,aAAO;QAAC,GAAGJ,MAAAA;;IACb;EACF;AACF,GAf4B;;;ACH5B,IAAAS,uBAAoB;AAEpB,IAAAC,gBAAkB;AAClB,IAAAC,mBAAiE;AACjE,IAAAC,qBAAoD;;;ACJpD,IAAAC,mBAAkC;AAElC,yBAAsB;AAGtB,IAAMC,gBAAgB,IAAIC,yBAAAA;AAE1B,IAAMC,mBAAmB,8BAAOC,oBAAAA;AAC9B,QAAMC,SAASD,gBAAgBC,UAAU;AACzC,UAAQ,UAAMC,0BAAQD,QAAQ;IAAEE,WAAW;EAAK,CAAA,GAAIC,OAAO,CAACC,SAASA,KAAKC,SAAS,MAAA,CAAA,EAASC,IAAI,CAACF,SAAS,GAAGJ,MAAAA,IAAUI,IAAAA,EAAM;AAC/H,GAHyB;AAKzB,IAAMG,sBAAsB,8BAAOR,oBAAAA;AACjC,QAAMC,SAASD,gBAAgBC,UAAU;AACzC,UAAQ,UAAMC,0BAAQD,QAAQ;IAAEE,WAAW;EAAK,CAAA,GAAIC,OAAO,CAACC,SAASA,KAAKC,SAAS,UAAA,CAAA,EAAaC,IAAI,CAACF,SAAS,GAAGJ,MAAAA,IAAUI,IAAAA,EAAM;AACnI,GAH4B;AAKrB,IAAMI,gBAAgB,8BAAOT,oBAAAA;AAElC,QAAMH,cAAca,aAAa,YAAA;AAE/B,UAAMC,gBAAgB,MAAMZ,iBAAiBC,eAAAA;AAC7C,UAAMY,QAAQC,IACZF,cAAcJ,IAAI,OAAOF,SAAAA;AACvB,gBAAMS,2BAAST,MAAMA,KAAKU,QAAQ,QAAQ,OAAA,CAAA;AAC1C,gBAAMD,2BAAST,MAAMA,KAAKU,QAAQ,QAAQ,OAAA,CAAA;IAC5C,CAAA,CAAA;AAGF,UAAMC,mBAAmB,MAAMR,oBAAoBR,eAAAA;AACnD,UAAMY,QAAQC,IACZG,iBAAiBT,IAAI,OAAOF,SAAAA;AAC1B,gBAAMS,2BAAST,MAAMA,KAAKU,QAAQ,YAAY,WAAA,CAAA;AAC9C,gBAAMD,2BAAST,MAAMA,KAAKU,QAAQ,YAAY,WAAA,CAAA;IAChD,CAAA,CAAA;EAEJ,CAAA;AACF,GApB6B;;;ADNtB,IAAME,yBAAyB,8BACpCC,SAAiB,OACjB,EAAEC,QAAO,IAAe,CAAC,GACzBC,sBACAC,cAAc,SAAI;AAElB,QAAMC,MAAMC,QAAQC,IAAIC,gBAAYC,0BAAAA;AAEpC,MAAIP,SAAS;AACXQ,YAAQC,IAAI,6BAA6BN,GAAAA,GAAM;EACjD;AAEA,QAAMO,kBAAkB;IACtB,GAAI,MAAMC,mBAAmB;MAC3BC,aAAa;MACbC,qBAAqB;MACrBC,QAAQ;MACRC,gBAAgB;MAChBC,qBAAqB;MACrBC,cAAc;MACdC,WAAW;IACb,CAAA;IACA,GAAGjB;EACL;AAGA,QAAMkB,QAAQC,aAAarB,QAAQ,KAAA;AAEnC,QAAMsB,aAASC,0CAAwB;IACrCC,UAAUpB,WAAOI,0BAAAA;IACjBG;IACAc,SAAS;MAAC;MAAQ;MAAQ;MAAe;MAAkB;;IAC3DL;EACF,CAAA,EAAGM,KAAI;AAEP,QAAMC,cAAcL,OAAOM,YAAYC;AACvC,aAAWC,QAAQR,OAAOM,aAAa;AACrC,YAAQE,KAAKC,UAAQ;MACnB,KAAKC,sCAAmBC,OAAO;AAC7BxB,gBAAQyB,MAAMC,cAAAA,QAAMC,IAAIN,KAAKO,WAAW,CAAA;AACxC5B,gBAAQyB,MAAMC,cAAAA,QAAMG,KAAKlC,GAAAA,CAAAA;AACzBK,gBAAQyB,MAAMC,cAAAA,QAAMI,KAAKT,KAAKU,MAAMC,QAAAA,CAAAA;AACpC;MACF;MACA,KAAKT,sCAAmBU,SAAS;AAC/BjC,gBAAQyB,MAAMC,cAAAA,QAAMQ,OAAOb,KAAKO,WAAW,CAAA;AAC3C5B,gBAAQyB,MAAMC,cAAAA,QAAMG,KAAKlC,GAAAA,CAAAA;AACzBK,gBAAQyB,MAAMC,cAAAA,QAAMI,KAAKT,KAAKU,MAAMC,QAAAA,CAAAA;AACpC;MACF;MACA,KAAKT,sCAAmBY,YAAY;AAClCnC,gBAAQyB,MAAMC,cAAAA,QAAMU,MAAMf,KAAKO,WAAW,CAAA;AAC1C5B,gBAAQyB,MAAMC,cAAAA,QAAMG,KAAKlC,GAAAA,CAAAA;AACzBK,gBAAQyB,MAAMC,cAAAA,QAAMI,KAAKT,KAAKU,MAAMC,QAAAA,CAAAA;AACpC;MACF;IACF;EACF;AACA,MAAItC,aAAa;AACf,UAAM2C,cAAcnC,eAAAA;EACtB;AACA,SAAOgB;AACT,GA9DsC;;;AHFtC,IAAMoB,gBAAgB,8BAAOC,QAAgBC,YAAuB,UAAUC,SAAmBC,YAAAA;AAC/F,QAAMC,SAASF,SAASE,UAAU;AAClC,QAAMC,QAAQC,aAAaN,QAAQC,SAAAA;AACnC,QAAMM,oBAAgBC,0BAAa;IACjCC,QAAQ;IACRC,YAAY;IACZC,OAAO;IACPC,KAAK;IACLP;IACAQ,QAAQ;MAAC;MAAO;;;IAEhBT;IACAU,QAAQ;IACRC,WAAW;IACXC,WAAW;;IAEXC,UAAU;IACV,GAAGf;EACL,CAAA;AACA,QAAMgB,eACJ,MAAMC,QAAQC,KACXC,MAAMC,QAAQf,aAAAA,IAAiBA,gBAAgB;IAACA;KAAgBgB,QAA4B,OAAOrB,aAAAA;AAClG,UAAMsB,SAAS,OAAOtB,aAAY,aAAa,MAAMA,SAAQ,CAAC,CAAA,IAAK;MAACA;;AACpE,WAAOmB,MAAMC,QAAQE,MAAAA,IAAUA,SAAS;MAACA;;EAC3C,CAAA,CAAA,GAEFC,KAAI;AAEN,QAAMN,QAAQC,IAAIF,YAAYQ,IAAI,CAACxB,iBAAYyB,mBAAMzB,QAAAA,CAAAA,CAAAA;AACrD,QAAM0B,uBAAuB5B,QAAQ;IAAEG;EAAQ,GAAG;IAAEC;EAAO,CAAA;AAE3D,SAAO;AACT,GAhCsB;AAmCf,IAAMyB,qBAAqB,8BAAOC,YAAAA;AACvC,QAAMC,UAAUD,SAAQC;AACxB,QAAMC,UAAUF,SAAQE,WAAW;AACnC,QAAM7B,UAAU2B,SAAQ3B,WAAW;AACnC,MAAIA,SAAS;AACX8B,YAAQC,IAAI,+BAA+BH,SAASI,KAAAA,GAAQ;EAC9D;AAEA,QAAMC,iBAAiBL,SAASM,QAAQ;IAAEC,KAAK,CAAC;EAAE;AAClD,QAAMC,oBAAoBR,SAASS,WAAW;IAAEF,KAAK,CAAC;EAAE;AACxD,QAAMG,oBAAoBV,SAASW,WAAW;IAAEJ,KAAK,CAAC;EAAE;AAExD,SACG,MAAMK,kBAAkB,MAAM;IAAEX,SAAS;IAAO7B;EAAQ,CAAA,MAEvD,MAAMgB,QAAQC,IACZwB,OAAOC,QAAQT,cAAAA,EAAgBV,IAAI,OAAO,CAAC1B,QAAQE,OAAAA,MAAQ;AACzD,UAAM4C,mBAAmB,OAAOf,SAASM,MAAMU,mBAAmB,WAAWhB,SAASM,MAAMU,iBAAiB,CAAC;AAC9G,WAAO/C,SACH,MAAMD,cACJC,QACA+B,SAAS9B,WACT;MACEQ,QAAQ;MACRI,QAAQ;QAAC;QAAO;;MAChBmC,YAAQC,yBACN,CAAC,GACD;QAAE,QAAQ;QAAQ,SAAS;QAAQ,QAAQ;QAAQ,SAAS;QAAQ,QAAQ;QAAQ,QAAQ;QAAQ,SAAS;MAAO,GACpHH,kBAAkBE,MAAAA;;MAGpB5C,QAAQ;MACR8C,UAAU;MACVC,uBAAuB;MACvBpC,WAAW;MACXqC,QAAQ;;MAER,GAAGrB,SAASsB,MAAMnD;MAClB,GAAI,OAAOA,YAAY,WAAWA,UAAU,CAAC;IAC/C,GACAC,OAAAA,IAEF;EACN,CAAA,CAAA,GAEFmD,OAAO,CAACC,MAAMC,UAAUD,OAAOC,OAAO,CAAA,MAEtC,MAAMrC,QAAQC,IACZwB,OAAOC,QAAQN,iBAAAA,EAAmBb,IAAI,OAAO,CAAC1B,QAAQE,OAAAA,MAAQ;AAC5D,UAAM4C,mBAAmB,OAAOf,SAASS,SAASO,mBAAmB,WAAWhB,SAASS,SAASO,iBAAiB,CAAC;AACpH,WAAO/C,UAED,MAAMmB,QAAQC,IAAI;MAChBrB,cACEC,QACA+B,SAAS9B,WACT;QACEQ,QAAQ;QACRI,QAAQ;UAAC;;QACTmC,YAAQC,yBACN,CAAC,GACD;UAAE,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,QAAQ;UAAQ,SAAS;QAAO,GACpHH,kBAAkBE,MAAAA;;QAGpB5C,QAAQ;QACRqD,cAAc,wBAAC,EAAE5C,OAAM,MAAQA,WAAW,QAAQ;UAAE6C,IAAI;QAAO,IAAI;UAAEA,IAAI;QAAO,GAAlE;QACdR,UAAU;QACVC,uBAAuB;QACvBpC,WAAW;QACXqC,QAAQ;;QAER,GAAGrB,SAASsB,MAAMnD;QAClB,GAAI,OAAOA,YAAY,WAAWA,UAAU,CAAC;MAC/C,GACAC,OAAAA;MAEFJ,cACEC,QACA+B,SAAS9B,WACT;QACEQ,QAAQ;QACRI,QAAQ;UAAC;;QACTmC,YAAQC,yBACN,CAAC,GACD;UAAE,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,QAAQ;UAAQ,SAAS;QAAO,GACpHH,kBAAkBE,MAAAA;;QAGpB5C,QAAQ;QACRqD,cAAc,wBAAC,EAAE5C,OAAM,MAAQA,WAAW,QAAQ;UAAE6C,IAAI;QAAO,IAAI;UAAEA,IAAI;QAAO,GAAlE;QACdR,UAAU;QACVC,uBAAuB;QACvBpC,WAAW;QACXqC,QAAQ;;QAER,GAAGrB,SAASsB,MAAMnD;QAClB,GAAI,OAAOA,YAAY,WAAWA,UAAU,CAAC;MAC/C,GACAC,OAAAA;KAEH,GACDmD,OAAO,CAACC,MAAMC,UAAUD,OAAOC,OAAO,CAAA,IACxC;EACN,CAAA,CAAA,GAEFF,OAAO,CAACC,MAAMC,UAAUD,OAAOC,OAAO,CAAA,MAEtC,MAAMrC,QAAQC,IACZwB,OAAOC,QAAQJ,iBAAAA,EAAmBf,IAAI,OAAO,CAAC1B,QAAQE,OAAAA,MAAQ;AAC5D,UAAM4C,mBAAmB,OAAOf,SAASW,SAASK,mBAAmB,WAAWhB,SAASW,SAASK,iBAAiB,CAAC;AACpH,WAAO/C,UAED,MAAMmB,QAAQC,IAAI;MAChBrB,cACEC,QACA+B,SAAS9B,WACT;QACEQ,QAAQ;QACRI,QAAQ;UAAC;;QACTmC,YAAQC,yBACN,CAAC,GACD;UAAE,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,QAAQ;UAAQ,SAAS;QAAO,GACpHH,kBAAkBE,MAAAA;;QAGpB5C,QAAQ;QACRqD,cAAc,wBAAC,EAAE5C,OAAM,MAAQA,WAAW,QAAQ;UAAE6C,IAAI;QAAO,IAAI;UAAEA,IAAI;QAAO,GAAlE;QACdR,UAAU;QACVC,uBAAuB;QACvBpC,WAAW;QACXqC,QAAQ;;QAER,GAAGrB,SAASsB,MAAMnD;QAClB,GAAI,OAAOA,YAAY,WAAWA,UAAU,CAAC;MAC/C,GACAC,OAAAA;MAEFJ,cACEC,QACA+B,SAAS9B,WACT;QACEQ,QAAQ;QACRI,QAAQ;UAAC;;QACTmC,YAAQC,yBACN,CAAC,GACD;UAAE,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,SAAS;UAAQ,QAAQ;UAAQ,QAAQ;UAAQ,SAAS;QAAO,GACpHH,kBAAkBE,MAAAA;;QAGpB5C,QAAQ;QACRqD,cAAc,wBAAC,EAAE5C,OAAM,MAAQA,WAAW,QAAQ;UAAE6C,IAAI;QAAO,IAAI;UAAEA,IAAI;QAAO,GAAlE;QACdR,UAAU;QACVC,uBAAuB;QACvBpC,WAAW;QACXqC,QAAQ;;QAER,GAAGrB,SAASsB,MAAMnD;QAClB,GAAI,OAAOA,YAAY,WAAWA,UAAU,CAAC;MAC/C,GACAC,OAAAA;KAEH,GACDmD,OAAO,CAACC,MAAMC,UAAUD,OAAOC,OAAO,CAAA,IACxC;EACN,CAAA,CAAA,GAEFF,OAAO,CAACC,MAAMC,UAAUD,OAAOC,OAAO,CAAA,MACvCxB,UAAU,MAAM2B,eAAAA,IAAmB;AAExC,GA1KkC;;;ALpC3B,IAAMC,iBAAiB,8BAAOC,WAAqB,CAAC,MAAC;AAC1D,QAAMC,MAAMC,QAAQC,IAAIC;AACxBC,UAAQC,IAAIC,cAAAA,QAAMC,MAAM,aAAaP,GAAAA,EAAK,CAAA;AAC1C,QAAMQ,UAAS,MAAMC,WAAWV,QAAAA;AAChC,QAAMW,UAAUF,QAAOE;AAEvB,QAAMC,OAAOH,QAAOI,SAASD,QAAQ;AACrC,MAAIE,SAAiB;AACrB,UAAQF,MAAAA;IACN,KAAK,OAAO;AACVE,gBAAU,MAAMC,kBAAkBC,QAAWP,OAAAA;AAC7C;IACF;IACA,KAAK,QAAQ;AACXK,gBAAU,MAAMG,mBAAmBR,OAAAA;AACnC;IACF;EACF;AACA,SAAOK,UAAUH,UAAU,MAAMO,eAAeT,OAAAA,IAAU;AAC5D,GAnB8B;","names":["import_chalk","config","loadConfig","params","merge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","import_chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","import_chalk","import_typescript","import_lodash_es","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","import_lodash_es","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","import_node_process","import_chalk","import_tsc_prog","import_typescript","import_promises","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint"]}
@@ -392,7 +392,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
392
392
  // minify: true,
393
393
  outDir: "dist/browser",
394
394
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
395
- js: ".ts"
395
+ js: ".mjs"
396
396
  } : {
397
397
  js: ".cjs"
398
398
  }, "outExtension"),
@@ -421,7 +421,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
421
421
  // minify: true,
422
422
  outDir: "dist/browser",
423
423
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
424
- js: ".ts"
424
+ js: ".mjs"
425
425
  } : {
426
426
  js: ".cjs"
427
427
  }, "outExtension"),
@@ -454,7 +454,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
454
454
  // minify: true,
455
455
  outDir: "dist/neutral",
456
456
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
457
- js: ".ts"
457
+ js: ".mjs"
458
458
  } : {
459
459
  js: ".cjs"
460
460
  }, "outExtension"),
@@ -483,7 +483,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
483
483
  // minify: true,
484
484
  outDir: "dist/neutral",
485
485
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
486
- js: ".ts"
486
+ js: ".mjs"
487
487
  } : {
488
488
  js: ".cjs"
489
489
  }, "outExtension"),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/actions/package/compile/compile.ts","../../../../src/lib/loadConfig.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts","../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/copyTypeFiles.ts"],"sourcesContent":["import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { merge } from 'lodash-es'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return merge({}, config, params)\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return merge({}, config, params)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /*try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n }*/\n }\n\n //we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter((message) => message.type === 'error').length\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: (fileName) => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["chalk","chalk","cosmiconfig","merge","config","loadConfig","params","merge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","merge","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint"]}
1
+ {"version":3,"sources":["../../../../src/actions/package/compile/compile.ts","../../../../src/lib/loadConfig.ts","../../../../src/actions/package/publint.ts","../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts","../../../../src/actions/package/compile/packageCompileTsup.ts","../../../../src/actions/package/compile/inputs.ts","../../../../src/actions/package/compile/buildEntries.ts","../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/copyTypeFiles.ts"],"sourcesContent":["import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { merge } from 'lodash-es'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return merge({}, config, params)\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return merge({}, config, params)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import/no-internal-modules\n const { formatMessage } = await import('publint/utils')\n\n const validMessage = (_message: Message): boolean => {\n return true\n /*try {\n const value = getValueFromPath(pkg, message.path)\n switch (message.code) {\n case 'FILE_INVALID_FORMAT':\n return !message.args?.actualFilePath?.includes('dist/browser') && !value?.includes('dist/browser')\n case 'EXPORT_TYPES_INVALID_FORMAT':\n return !`${value}`.includes('dist/browser')\n default:\n return true\n }\n } catch (ex) {\n const error = ex as Error\n console.error(chalk.red(`validMessage Excepted: ${error.message}`))\n console.error(chalk.gray(JSON.stringify(error.stack)))\n return true\n }*/\n }\n\n //we filter out invalid file formats for the esm folder since it is intentionally done\n const validMessages = messages.filter(validMessage)\n for (const message of validMessages) {\n switch (message.type) {\n case 'error': {\n console.error(chalk.red(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n case 'warning': {\n console.warn(chalk.yellow(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n default: {\n console.log(chalk.white(`[${message.code}] ${formatMessage(message, pkg)}`))\n break\n }\n }\n }\n\n if (params?.verbose) {\n console.log(chalk.gray(`Publint [Finish]: ${pkgDir} [${validMessages.length}]`))\n }\n\n return validMessages.filter((message) => message.type === 'error').length\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport {\n CompilerOptions,\n DiagnosticCategory,\n FormatDiagnosticsHost,\n formatDiagnosticsWithColorAndContext,\n getLineAndCharacterOfPosition,\n getPreEmitDiagnostics,\n LineAndCharacter,\n} from 'typescript'\n\nimport { packagePublint } from '../publint.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyTscConfig } from './XyConfig.ts'\n\nexport const packageCompileTsc = async (noEmit?: boolean, config?: XyTscConfig, compilerOptionsParam?: CompilerOptions): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n\n const formatHost: FormatDiagnosticsHost = {\n getCanonicalFileName: (fileName) => fileName,\n getCurrentDirectory: () => pkg,\n getNewLine: () => '\\n',\n }\n\n if (verbose) {\n console.log(`Compiling with NoEmit TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n outDir: 'dist',\n removeComments: true,\n rootDir: 'src',\n })),\n ...compilerOptionsParam,\n ...(noEmit === undefined ? {} : { noEmit }),\n } as TsConfigCompilerOptions\n\n const program = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n include: ['src'],\n })\n\n const results = getPreEmitDiagnostics(program)\n\n for (const diag of results) {\n const lineAndChar: LineAndCharacter = diag.file ? getLineAndCharacterOfPosition(diag.file, diag.start ?? 0) : { character: 0, line: 0 }\n console.log(chalk.cyan(`${diag.file?.fileName}:${lineAndChar.line + 1}:${lineAndChar.character + 1}`))\n console.log(formatDiagnosticsWithColorAndContext([diag], formatHost))\n }\n\n // eslint-disable-next-line unicorn/no-array-reduce\n return results.reduce((prev, diag) => (prev + diag.category === DiagnosticCategory.Error ? 1 : 0), 0) || (publint ? await packagePublint() : 0)\n}\n","import { createRequire } from 'node:module'\n\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["chalk","chalk","cosmiconfig","merge","config","loadConfig","params","merge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","merge","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint"]}
@@ -430,7 +430,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
430
430
  // minify: true,
431
431
  outDir: "dist/browser",
432
432
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
433
- js: ".ts"
433
+ js: ".mjs"
434
434
  } : {
435
435
  js: ".cjs"
436
436
  }, "outExtension"),
@@ -459,7 +459,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
459
459
  // minify: true,
460
460
  outDir: "dist/browser",
461
461
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
462
- js: ".ts"
462
+ js: ".mjs"
463
463
  } : {
464
464
  js: ".cjs"
465
465
  }, "outExtension"),
@@ -492,7 +492,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
492
492
  // minify: true,
493
493
  outDir: "dist/neutral",
494
494
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
495
- js: ".ts"
495
+ js: ".mjs"
496
496
  } : {
497
497
  js: ".cjs"
498
498
  }, "outExtension"),
@@ -521,7 +521,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
521
521
  // minify: true,
522
522
  outDir: "dist/neutral",
523
523
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
524
- js: ".ts"
524
+ js: ".mjs"
525
525
  } : {
526
526
  js: ".cjs"
527
527
  }, "outExtension"),