@xylabs/ts-scripts-yarn3 3.15.0 → 3.15.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/actions/index.cjs +9 -4
  2. package/dist/actions/index.cjs.map +1 -1
  3. package/dist/actions/index.mjs +9 -4
  4. package/dist/actions/index.mjs.map +1 -1
  5. package/dist/actions/package/compile/compile.cjs +9 -4
  6. package/dist/actions/package/compile/compile.cjs.map +1 -1
  7. package/dist/actions/package/compile/compile.mjs +9 -4
  8. package/dist/actions/package/compile/compile.mjs.map +1 -1
  9. package/dist/actions/package/compile/index.cjs +9 -4
  10. package/dist/actions/package/compile/index.cjs.map +1 -1
  11. package/dist/actions/package/compile/index.mjs +9 -4
  12. package/dist/actions/package/compile/index.mjs.map +1 -1
  13. package/dist/actions/package/compile/packageCompileTsup.cjs +9 -4
  14. package/dist/actions/package/compile/packageCompileTsup.cjs.map +1 -1
  15. package/dist/actions/package/compile/packageCompileTsup.mjs +9 -4
  16. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  17. package/dist/actions/package/index.cjs +9 -4
  18. package/dist/actions/package/index.cjs.map +1 -1
  19. package/dist/actions/package/index.mjs +9 -4
  20. package/dist/actions/package/index.mjs.map +1 -1
  21. package/dist/actions/package/recompile.cjs +9 -4
  22. package/dist/actions/package/recompile.cjs.map +1 -1
  23. package/dist/actions/package/recompile.mjs +9 -4
  24. package/dist/actions/package/recompile.mjs.map +1 -1
  25. package/dist/bin/package/compile-only.cjs +9 -4
  26. package/dist/bin/package/compile-only.cjs.map +1 -1
  27. package/dist/bin/package/compile-only.mjs +9 -4
  28. package/dist/bin/package/compile-only.mjs.map +1 -1
  29. package/dist/bin/package/compile-tsup.cjs +9 -4
  30. package/dist/bin/package/compile-tsup.cjs.map +1 -1
  31. package/dist/bin/package/compile-tsup.mjs +9 -4
  32. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  33. package/dist/bin/package/compile.cjs +9 -4
  34. package/dist/bin/package/compile.cjs.map +1 -1
  35. package/dist/bin/package/compile.mjs +9 -4
  36. package/dist/bin/package/compile.mjs.map +1 -1
  37. package/dist/bin/package/recompile.cjs +9 -4
  38. package/dist/bin/package/recompile.cjs.map +1 -1
  39. package/dist/bin/package/recompile.mjs +9 -4
  40. package/dist/bin/package/recompile.mjs.map +1 -1
  41. package/dist/index.cjs +9 -4
  42. package/dist/index.cjs.map +1 -1
  43. package/dist/index.mjs +9 -4
  44. package/dist/index.mjs.map +1 -1
  45. package/package.json +5 -5
  46. package/src/actions/package/compile/packageCompileTsup.ts +5 -4
@@ -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 { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["import_chalk","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","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","import_lodash_es","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","import_node_process","import_chalk","import_tsc_prog","import_typescript","import_promises","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","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\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n 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","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","import_lodash_es","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","import_node_process","import_chalk","import_tsc_prog","import_typescript","import_promises","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
@@ -345,6 +345,11 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
345
345
  }, inEsBuildOptions?.loader),
346
346
  // minify: true,
347
347
  outDir: "dist/node",
348
+ outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
349
+ js: ".mjs"
350
+ } : {
351
+ js: ".cjs"
352
+ }, "outExtension"),
348
353
  platform: "node",
349
354
  skipNodeModulesBundle: true,
350
355
  sourcemap: true,
@@ -373,7 +378,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
373
378
  // minify: true,
374
379
  outDir: "dist/browser",
375
380
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
376
- js: ".ts"
381
+ js: ".mjs"
377
382
  } : {
378
383
  js: ".cjs"
379
384
  }, "outExtension"),
@@ -402,7 +407,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
402
407
  // minify: true,
403
408
  outDir: "dist/browser",
404
409
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
405
- js: ".ts"
410
+ js: ".mjs"
406
411
  } : {
407
412
  js: ".cjs"
408
413
  }, "outExtension"),
@@ -435,7 +440,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
435
440
  // minify: true,
436
441
  outDir: "dist/neutral",
437
442
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
438
- js: ".ts"
443
+ js: ".mjs"
439
444
  } : {
440
445
  js: ".cjs"
441
446
  }, "outExtension"),
@@ -464,7 +469,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config) => {
464
469
  // minify: true,
465
470
  outDir: "dist/neutral",
466
471
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
467
- js: ".ts"
472
+ js: ".mjs"
468
473
  } : {
469
474
  js: ".cjs"
470
475
  }, "outExtension"),
@@ -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 { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n platform: 'node',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'node16',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/browser',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'browser',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder ?\n (\n await Promise.all([\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/neutral',\n outExtension: ({ format }) => (format === 'esm' ? { js: '.ts' } : { js: '.cjs' }),\n platform: 'neutral',\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n // terserOptions: { format: { comments: false } },\n ...compile?.tsup?.options,\n ...(typeof options === 'object' ? options : {}),\n },\n verbose,\n ),\n ])\n ).reduce((prev, value) => prev + value, 0)\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0) ||\n (publint ? await packagePublint() : 0)\n )\n}\n","import { readdir } from 'node:fs/promises'\n\nimport { glob } from 'glob'\n\nexport const getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter(\n (file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.includes('.spec.') && !file.includes('.stories.'),\n )\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nexport const getInputDirs = async (depth: number = 0) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: true, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path?.split('/') ?? []\n pathParts.shift()\n if (pathParts.length > 0) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nexport const getAllInputs = async (depth = 100) => {\n const dirs = await getInputDirs(depth)\n return (await Promise.all(dirs.map(async (dir) => await getInputs(dir)))).flat()\n}\n\nexport const getAllInputs2 = (folder: string) => {\n /* tsup wants posix paths */\n return glob.sync(`${folder}/**/*.*`, { ignore: ['**/*.spec.*', '**/*.stories.*', '**/spec/**/*'], posix: true })\n}\n","import { getAllInputs2 } from './inputs.ts'\nimport { EntryMode } from './XyConfig.ts'\n\nexport const buildEntries = (folder: string, entryMode?: EntryMode, verbose = false) => {\n switch (entryMode) {\n case 'platform': {\n if (verbose) console.log('buildEntries [platform]')\n return [`${folder}/index-node.ts`, `${folder}/index-browser.ts`]\n }\n case 'all': {\n if (verbose) console.log('buildEntries [all]')\n return getAllInputs2(folder).filter((entry) => !entry.includes('.spec.') && !entry.includes('.story.'))\n }\n default: {\n if (verbose) console.log('buildEntries [single]')\n return [`${folder}/index.ts`]\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { createProgramFromConfig, TsConfigCompilerOptions } from 'tsc-prog'\nimport { CompilerOptions, DiagnosticCategory } from 'typescript'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { copyTypeFiles } from './copyTypeFiles.ts'\nimport { getCompilerOptions } from './getCompilerOptions.ts'\nimport { XyConfig } from './XyConfig.ts'\n\nexport const packageCompileTscTypes = async (\n folder: string = 'src',\n { verbose }: XyConfig = {},\n compilerOptionsParam?: CompilerOptions,\n generateMts = true,\n): Promise<number> => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(`Compiling types with TSC [${pkg}]`)\n }\n\n const compilerOptions = {\n ...(await getCompilerOptions({\n declaration: true,\n emitDeclarationOnly: true,\n outDir: 'dist',\n removeComments: true,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: true,\n })),\n ...compilerOptionsParam,\n } as TsConfigCompilerOptions\n\n //calling all here since the types do not get rolled up\n const files = buildEntries(folder, 'all')\n\n const result = createProgramFromConfig({\n basePath: pkg ?? cwd(),\n compilerOptions,\n exclude: ['dist', 'docs', '**/*.spec.*', '**/*.stories.*', 'src/**/spec/**/*'],\n files,\n }).emit()\n\n const diagResults = result.diagnostics.length\n for (const diag of result.diagnostics) {\n switch (diag.category) {\n case DiagnosticCategory.Error: {\n console.error(chalk.red(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Warning: {\n console.error(chalk.yellow(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n case DiagnosticCategory.Suggestion: {\n console.error(chalk.white(diag.messageText))\n console.error(chalk.grey(pkg))\n console.error(chalk.blue(diag.file?.fileName))\n break\n }\n }\n }\n if (generateMts) {\n await copyTypeFiles(compilerOptions)\n }\n return diagResults\n}\n","import { copyFile, readdir } from 'node:fs/promises'\n\nimport { Mutex } from 'async-mutex'\nimport { TsConfigCompilerOptions } from 'tsc-prog'\n\nconst copyFileMutex = new Mutex()\n\nconst getDistTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `${outDir}/${file}`)\n}\n\nconst getDistTypeMapFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n const outDir = compilerOptions.outDir ?? 'dist'\n return (await readdir(outDir, { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `${outDir}/${file}`)\n}\n\nexport const copyTypeFiles = async (compilerOptions: TsConfigCompilerOptions) => {\n //using a mutex since sometimes two compiles are running at once and cause a lock on windows\n await copyFileMutex.runExclusive(async () => {\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles(compilerOptions)\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n await copyFile(file, file.replace('d.ts', 'd.cts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles(compilerOptions)\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n await copyFile(file, file.replace('d.ts.map', 'd.cts.map'))\n }),\n )\n })\n}\n"],"mappings":"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","names":["chalk","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","merge","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","outExtension","js","packagePublint","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\nimport { merge } from 'lodash-es'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let opts: any = {}\n const config = readConfigFile(filename, sys.readFile).config\n if (config.extends) {\n const require = createRequire(import.meta.url)\n opts = require(config.extends)\n }\n if (config?.error) {\n throw new Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)\n }\n\n return { ...opts.compilerOptions, ...config.compilerOptions }\n}\n\nexport const getCompilerOptions = async (options?: CompilerOptions, tsconfig: string = 'tsconfig.json'): Promise<CompilerOptions> => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = configFileName ? await getCompilerOptionsJSONFollowExtends(configFileName) : undefined\n\n return merge({}, configFileCompilerOptions, options)\n}\n","import { merge } from 'lodash-es'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport { EntryMode, XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (folder: string, entryMode: EntryMode = 'single', options?: Options, verbose?: boolean) => {\n const outDir = options?.outDir ?? 'dist'\n const entry = buildEntries(folder, entryMode)\n const optionsResult = defineConfig({\n bundle: true,\n cjsInterop: true,\n clean: true,\n dts: false,\n entry,\n format: ['cjs', 'esm'],\n // minify: true,\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n // terserOptions: { format: { comments: false } },\n tsconfig: 'tsconfig.json',\n ...options,\n })\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n await Promise.all(optionsList.map((options) => build(options)))\n await packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\n// eslint-disable-next-line complexity\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const publint = config?.publint ?? true\n const verbose = config?.verbose ?? false\n if (verbose) {\n console.log(`Compiling with TSUP [Depth: ${compile?.depth}]`)\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (await packageCompileTsc(true, { publint: false, verbose })) ||\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n return folder ?\n await compileFolder(\n folder,\n compile?.entryMode,\n {\n bundle: true,\n format: ['cjs', 'esm'],\n loader: merge(\n {},\n { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' },\n inEsBuildOptions?.loader,\n ),\n // minify: true,\n outDir: 'dist/node',\n 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","promises","fs","chalk","packagePublint","params","pkgDir","process","env","INIT_CWD","pkg","JSON","parse","fs","readFile","console","log","chalk","green","name","gray","publint","messages","level","strict","formatMessage","validMessage","_message","validMessages","filter","message","type","error","red","code","warn","yellow","white","verbose","length","cwd","chalk","createProgramFromConfig","DiagnosticCategory","formatDiagnosticsWithColorAndContext","getLineAndCharacterOfPosition","getPreEmitDiagnostics","createRequire","merge","findConfigFile","readConfigFile","sys","getCompilerOptionsJSONFollowExtends","filename","opts","config","readConfigFile","sys","readFile","extends","require","createRequire","url","error","Error","JSON","stringify","messageText","compilerOptions","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","merge","packageCompileTsc","noEmit","config","compilerOptionsParam","pkg","process","env","INIT_CWD","cwd","publint","verbose","formatHost","getCanonicalFileName","fileName","getCurrentDirectory","getNewLine","console","log","compilerOptions","getCompilerOptions","outDir","removeComments","rootDir","undefined","program","createProgramFromConfig","basePath","exclude","include","results","getPreEmitDiagnostics","diag","lineAndChar","file","getLineAndCharacterOfPosition","start","character","line","chalk","cyan","formatDiagnosticsWithColorAndContext","reduce","prev","category","DiagnosticCategory","Error","packagePublint","merge","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","cwd","chalk","createProgramFromConfig","DiagnosticCategory","copyFile","readdir","Mutex","copyFileMutex","Mutex","getDistTypeFiles","compilerOptions","outDir","readdir","recursive","filter","file","endsWith","map","getDistTypeMapFiles","copyTypeFiles","runExclusive","distTypeFiles","Promise","all","copyFile","replace","distTypeMapFiles","packageCompileTscTypes","folder","verbose","compilerOptionsParam","generateMts","pkg","process","env","INIT_CWD","cwd","console","log","compilerOptions","getCompilerOptions","declaration","emitDeclarationOnly","outDir","removeComments","skipDefaultLibCheck","skipLibCheck","sourceMap","files","buildEntries","result","createProgramFromConfig","basePath","exclude","emit","diagResults","diagnostics","length","diag","category","DiagnosticCategory","Error","error","chalk","red","messageText","grey","blue","file","fileName","Warning","yellow","Suggestion","white","copyTypeFiles","compileFolder","folder","entryMode","options","verbose","outDir","entry","buildEntries","optionsResult","defineConfig","bundle","cjsInterop","clean","dts","format","silent","sourcemap","splitting","tsconfig","optionsList","Promise","all","Array","isArray","flatMap","result","flat","map","build","packageCompileTscTypes","packageCompileTsup","config","compile","publint","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","packageCompileTsc","Object","entries","inEsBuildOptions","esbuildOptions","loader","merge","outExtension","js","platform","skipNodeModulesBundle","target","tsup","reduce","prev","value","packagePublint","packageCompileTsup","verbose","then","value","process","exitCode","catch","reason","console","error","chalk","red"]}
@@ -392,6 +392,11 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
392
392
  }, inEsBuildOptions?.loader),
393
393
  // minify: true,
394
394
  outDir: "dist/node",
395
+ outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
396
+ js: ".mjs"
397
+ } : {
398
+ js: ".cjs"
399
+ }, "outExtension"),
395
400
  platform: "node",
396
401
  skipNodeModulesBundle: true,
397
402
  sourcemap: true,
@@ -420,7 +425,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
420
425
  // minify: true,
421
426
  outDir: "dist/browser",
422
427
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
423
- js: ".ts"
428
+ js: ".mjs"
424
429
  } : {
425
430
  js: ".cjs"
426
431
  }, "outExtension"),
@@ -449,7 +454,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
449
454
  // minify: true,
450
455
  outDir: "dist/browser",
451
456
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
452
- js: ".ts"
457
+ js: ".mjs"
453
458
  } : {
454
459
  js: ".cjs"
455
460
  }, "outExtension"),
@@ -482,7 +487,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
482
487
  // minify: true,
483
488
  outDir: "dist/neutral",
484
489
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
485
- js: ".ts"
490
+ js: ".mjs"
486
491
  } : {
487
492
  js: ".cjs"
488
493
  }, "outExtension"),
@@ -511,7 +516,7 @@ var packageCompileTsup = /* @__PURE__ */ __name(async (config2) => {
511
516
  // minify: true,
512
517
  outDir: "dist/neutral",
513
518
  outExtension: /* @__PURE__ */ __name(({ format }) => format === "esm" ? {
514
- js: ".ts"
519
+ js: ".mjs"
515
520
  } : {
516
521
  js: ".cjs"
517
522
  }, "outExtension"),