@xylabs/ts-scripts-yarn3 3.15.8 → 3.15.10

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 (109) hide show
  1. package/dist/actions/dupdeps.cjs +2 -2
  2. package/dist/actions/dupdeps.cjs.map +1 -1
  3. package/dist/actions/dupdeps.mjs +1 -1
  4. package/dist/actions/dupdeps.mjs.map +1 -1
  5. package/dist/actions/index.cjs +13 -13
  6. package/dist/actions/index.cjs.map +1 -1
  7. package/dist/actions/index.mjs +4 -4
  8. package/dist/actions/index.mjs.map +1 -1
  9. package/dist/actions/package/compile/compile.cjs +11 -11
  10. package/dist/actions/package/compile/compile.cjs.map +1 -1
  11. package/dist/actions/package/compile/compile.mjs +3 -3
  12. package/dist/actions/package/compile/compile.mjs.map +1 -1
  13. package/dist/actions/package/compile/getCompilerOptions.cjs +12 -2
  14. package/dist/actions/package/compile/getCompilerOptions.cjs.map +1 -1
  15. package/dist/actions/package/compile/getCompilerOptions.mjs +1 -1
  16. package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -1
  17. package/dist/actions/package/compile/index.cjs +11 -11
  18. package/dist/actions/package/compile/index.cjs.map +1 -1
  19. package/dist/actions/package/compile/index.mjs +3 -3
  20. package/dist/actions/package/compile/index.mjs.map +1 -1
  21. package/dist/actions/package/compile/packageCompileTsc.cjs +2 -2
  22. package/dist/actions/package/compile/packageCompileTsc.cjs.map +1 -1
  23. package/dist/actions/package/compile/packageCompileTsc.mjs +1 -1
  24. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  25. package/dist/actions/package/compile/packageCompileTscTypes.cjs +2 -2
  26. package/dist/actions/package/compile/packageCompileTscTypes.cjs.map +1 -1
  27. package/dist/actions/package/compile/packageCompileTscTypes.mjs +1 -1
  28. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  29. package/dist/actions/package/compile/packageCompileTsup.cjs +8 -8
  30. package/dist/actions/package/compile/packageCompileTsup.cjs.map +1 -1
  31. package/dist/actions/package/compile/packageCompileTsup.mjs +2 -2
  32. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  33. package/dist/actions/package/index.cjs +11 -11
  34. package/dist/actions/package/index.cjs.map +1 -1
  35. package/dist/actions/package/index.mjs +3 -3
  36. package/dist/actions/package/index.mjs.map +1 -1
  37. package/dist/actions/package/recompile.cjs +11 -11
  38. package/dist/actions/package/recompile.cjs.map +1 -1
  39. package/dist/actions/package/recompile.mjs +3 -3
  40. package/dist/actions/package/recompile.mjs.map +1 -1
  41. package/dist/actions/statics.cjs +2 -2
  42. package/dist/actions/statics.cjs.map +1 -1
  43. package/dist/actions/statics.mjs +1 -1
  44. package/dist/actions/statics.mjs.map +1 -1
  45. package/dist/bin/package/compile-only.cjs +11 -11
  46. package/dist/bin/package/compile-only.cjs.map +1 -1
  47. package/dist/bin/package/compile-only.mjs +3 -3
  48. package/dist/bin/package/compile-only.mjs.map +1 -1
  49. package/dist/bin/package/compile-tsup.cjs +8 -8
  50. package/dist/bin/package/compile-tsup.cjs.map +1 -1
  51. package/dist/bin/package/compile-tsup.mjs +2 -2
  52. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  53. package/dist/bin/package/compile.cjs +11 -11
  54. package/dist/bin/package/compile.cjs.map +1 -1
  55. package/dist/bin/package/compile.mjs +3 -3
  56. package/dist/bin/package/compile.mjs.map +1 -1
  57. package/dist/bin/package/recompile.cjs +11 -11
  58. package/dist/bin/package/recompile.cjs.map +1 -1
  59. package/dist/bin/package/recompile.mjs +3 -3
  60. package/dist/bin/package/recompile.mjs.map +1 -1
  61. package/dist/bin/xy-ts.cjs +2 -2
  62. package/dist/bin/xy-ts.cjs.map +1 -1
  63. package/dist/bin/xy-ts.mjs +1 -1
  64. package/dist/bin/xy-ts.mjs.map +1 -1
  65. package/dist/bin/xy.cjs +2 -2
  66. package/dist/bin/xy.cjs.map +1 -1
  67. package/dist/bin/xy.mjs +1 -1
  68. package/dist/bin/xy.mjs.map +1 -1
  69. package/dist/index.cjs +13 -13
  70. package/dist/index.cjs.map +1 -1
  71. package/dist/index.mjs +4 -4
  72. package/dist/index.mjs.map +1 -1
  73. package/dist/lib/dependencies/DuplicateDetector.cjs +2 -2
  74. package/dist/lib/dependencies/DuplicateDetector.cjs.map +1 -1
  75. package/dist/lib/dependencies/DuplicateDetector.mjs +1 -1
  76. package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -1
  77. package/dist/lib/dependencies/detectDuplicateDependencies.cjs +2 -2
  78. package/dist/lib/dependencies/detectDuplicateDependencies.cjs.map +1 -1
  79. package/dist/lib/dependencies/detectDuplicateDependencies.mjs +1 -1
  80. package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -1
  81. package/dist/lib/dependencies/index.cjs +2 -2
  82. package/dist/lib/dependencies/index.cjs.map +1 -1
  83. package/dist/lib/dependencies/index.mjs +1 -1
  84. package/dist/lib/dependencies/index.mjs.map +1 -1
  85. package/dist/lib/index.cjs +5 -5
  86. package/dist/lib/index.cjs.map +1 -1
  87. package/dist/lib/index.mjs +2 -2
  88. package/dist/lib/index.mjs.map +1 -1
  89. package/dist/lib/loadConfig.cjs +3 -3
  90. package/dist/lib/loadConfig.cjs.map +1 -1
  91. package/dist/lib/loadConfig.mjs +1 -1
  92. package/dist/lib/loadConfig.mjs.map +1 -1
  93. package/dist/xy/index.cjs +2 -2
  94. package/dist/xy/index.cjs.map +1 -1
  95. package/dist/xy/index.mjs +1 -1
  96. package/dist/xy/index.mjs.map +1 -1
  97. package/dist/xy/xy.cjs +2 -2
  98. package/dist/xy/xy.cjs.map +1 -1
  99. package/dist/xy/xy.mjs +1 -1
  100. package/dist/xy/xy.mjs.map +1 -1
  101. package/dist/xy/xyInstallCommands.cjs +2 -2
  102. package/dist/xy/xyInstallCommands.cjs.map +1 -1
  103. package/dist/xy/xyInstallCommands.mjs +1 -1
  104. package/dist/xy/xyInstallCommands.mjs.map +1 -1
  105. package/package.json +7 -7
  106. package/src/actions/package/compile/getCompilerOptions.ts +2 -1
  107. package/src/actions/package/compile/packageCompileTsup.ts +2 -1
  108. package/src/lib/dependencies/DuplicateDetector.ts +2 -1
  109. package/src/lib/loadConfig.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/compile-only.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/compile.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":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompile } from '../../actions/index.ts'\n\npackageCompile({ verbose: true, publint: false })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\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 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 { 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 { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? 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 outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\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","chalk","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","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","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","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint","packageCompile","verbose","publint","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
1
+ {"version":3,"sources":["../../../src/bin/package/compile-only.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/compile.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":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompile } from '../../actions/index.ts'\n\npackageCompile({ verbose: true, publint: false })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\n })\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\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 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 { 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\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\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 outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\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","chalk","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","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","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","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint","packageCompile","verbose","publint","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
@@ -76,7 +76,7 @@ var import_typescript2 = require("typescript");
76
76
 
77
77
  // src/actions/package/compile/getCompilerOptions.ts
78
78
  var import_node_module = require("module");
79
- var import_lodash_es = require("lodash-es");
79
+ var import_merge = __toESM(require("lodash/merge.js"), 1);
80
80
  var import_typescript = require("typescript");
81
81
  var import_meta = {};
82
82
  var getNested = /* @__PURE__ */ __name((config) => {
@@ -97,7 +97,7 @@ var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
97
97
  var getCompilerOptions = /* @__PURE__ */ __name((options, tsconfig = "tsconfig.json") => {
98
98
  const configFileName = (0, import_typescript.findConfigFile)("./", import_typescript.sys.fileExists, tsconfig);
99
99
  const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0;
100
- return (0, import_lodash_es.merge)({}, configFileCompilerOptions, options);
100
+ return (0, import_merge.default)({}, configFileCompilerOptions, options);
101
101
  }, "getCompilerOptions");
102
102
 
103
103
  // src/actions/package/compile/packageCompileTsc.ts
@@ -153,7 +153,7 @@ var packageCompileTsc = /* @__PURE__ */ __name(async (noEmit, config, compilerOp
153
153
  }, "packageCompileTsc");
154
154
 
155
155
  // src/actions/package/compile/packageCompileTsup.ts
156
- var import_lodash_es2 = require("lodash-es");
156
+ var import_merge2 = __toESM(require("lodash/merge.js"), 1);
157
157
  var import_tsup = require("tsup");
158
158
 
159
159
  // src/actions/package/compile/inputs.ts
@@ -358,7 +358,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
358
358
  "cjs",
359
359
  "esm"
360
360
  ],
361
- loader: (0, import_lodash_es2.merge)({}, {
361
+ loader: (0, import_merge2.default)({}, {
362
362
  ".gif": "copy",
363
363
  ".html": "copy",
364
364
  ".jpg": "copy",
@@ -390,7 +390,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
390
390
  format: [
391
391
  "cjs"
392
392
  ],
393
- loader: (0, import_lodash_es2.merge)({}, {
393
+ loader: (0, import_merge2.default)({}, {
394
394
  ".gif": "copy",
395
395
  ".html": "copy",
396
396
  ".jpg": "copy",
@@ -419,7 +419,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
419
419
  format: [
420
420
  "esm"
421
421
  ],
422
- loader: (0, import_lodash_es2.merge)({}, {
422
+ loader: (0, import_merge2.default)({}, {
423
423
  ".gif": "copy",
424
424
  ".html": "copy",
425
425
  ".jpg": "copy",
@@ -452,7 +452,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
452
452
  format: [
453
453
  "cjs"
454
454
  ],
455
- loader: (0, import_lodash_es2.merge)({}, {
455
+ loader: (0, import_merge2.default)({}, {
456
456
  ".gif": "copy",
457
457
  ".html": "copy",
458
458
  ".jpg": "copy",
@@ -481,7 +481,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
481
481
  format: [
482
482
  "esm"
483
483
  ],
484
- loader: (0, import_lodash_es2.merge)({}, {
484
+ loader: (0, import_merge2.default)({}, {
485
485
  ".gif": "copy",
486
486
  ".html": "copy",
487
487
  ".jpg": "copy",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/package/compile-tsup.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":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTsup } from '../../actions/index.ts'\n\npackageCompileTsup({ verbose: true })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\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 { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? 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 outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\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":["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","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","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","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
1
+ {"version":3,"sources":["../../../src/bin/package/compile-tsup.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":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompileTsup } from '../../actions/index.ts'\n\npackageCompileTsup({ verbose: true })\n .then(value => (process.exitCode = value))\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exitCode = 1\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\n// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\nimport { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","// eslint-disable-next-line import/no-internal-modules\nimport merge from 'lodash/merge.js'\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 outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\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":["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","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","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_merge","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","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
@@ -54,7 +54,7 @@ import { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getLineAndCha
54
54
 
55
55
  // src/actions/package/compile/getCompilerOptions.ts
56
56
  import { createRequire } from "node:module";
57
- import { merge } from "lodash-es";
57
+ import merge from "lodash/merge.js";
58
58
  import { findConfigFile, readConfigFile, sys } from "typescript";
59
59
  var getNested = /* @__PURE__ */ __name((config) => {
60
60
  if (config.extends) {
@@ -130,7 +130,7 @@ var packageCompileTsc = /* @__PURE__ */ __name(async (noEmit, config, compilerOp
130
130
  }, "packageCompileTsc");
131
131
 
132
132
  // src/actions/package/compile/packageCompileTsup.ts
133
- import { merge as merge2 } from "lodash-es";
133
+ import merge2 from "lodash/merge.js";
134
134
  import { build, defineConfig } from "tsup";
135
135
 
136
136
  // src/actions/package/compile/inputs.ts