@xylabs/ts-scripts-yarn3 3.0.11 → 3.0.12

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 (73) hide show
  1. package/dist/actions/package/compile/CompileParams.js +17 -0
  2. package/dist/actions/package/compile/CompileParams.js.map +1 -0
  3. package/dist/actions/package/compile/CompileParams.mjs +1 -0
  4. package/dist/actions/package/compile/CompileParams.mjs.map +1 -0
  5. package/dist/actions/package/compile/compile.js +86 -0
  6. package/dist/actions/package/compile/compile.js.map +1 -0
  7. package/dist/actions/package/compile/compile.mjs +52 -0
  8. package/dist/actions/package/compile/compile.mjs.map +1 -0
  9. package/dist/actions/package/compile/copyTypeFiles.js +49 -0
  10. package/dist/actions/package/compile/copyTypeFiles.js.map +1 -0
  11. package/dist/actions/package/compile/copyTypeFiles.mjs +25 -0
  12. package/dist/actions/package/compile/copyTypeFiles.mjs.map +1 -0
  13. package/dist/actions/package/compile/index.js +29 -0
  14. package/dist/actions/package/compile/index.js.map +1 -0
  15. package/dist/actions/package/compile/index.mjs +5 -0
  16. package/dist/actions/package/compile/index.mjs.map +1 -0
  17. package/dist/actions/package/compile/inputs.js +58 -0
  18. package/dist/actions/package/compile/inputs.js.map +1 -0
  19. package/dist/actions/package/compile/inputs.mjs +32 -0
  20. package/dist/actions/package/compile/inputs.mjs.map +1 -0
  21. package/dist/actions/package/{compile.js → compile/rollup.js} +24 -75
  22. package/dist/actions/package/compile/rollup.js.map +1 -0
  23. package/dist/actions/package/compile/rollup.mjs +98 -0
  24. package/dist/actions/package/compile/rollup.mjs.map +1 -0
  25. package/dist/actions/package/compile/tsc.js +114 -0
  26. package/dist/actions/package/compile/tsc.js.map +1 -0
  27. package/dist/actions/package/compile/tsc.mjs +80 -0
  28. package/dist/actions/package/compile/tsc.mjs.map +1 -0
  29. package/dist/actions/package/compile/tscTypes.js +55 -0
  30. package/dist/actions/package/compile/tscTypes.js.map +1 -0
  31. package/dist/actions/package/compile/tscTypes.mjs +31 -0
  32. package/dist/actions/package/compile/tscTypes.mjs.map +1 -0
  33. package/dist/actions/package/compile/tsup.js +75 -0
  34. package/dist/actions/package/compile/tsup.js.map +1 -0
  35. package/dist/actions/package/compile/tsup.mjs +51 -0
  36. package/dist/actions/package/compile/tsup.mjs.map +1 -0
  37. package/dist/actions/package/publint.js +1 -1
  38. package/dist/actions/package/publint.js.map +1 -1
  39. package/dist/actions/package/publint.mjs +1 -1
  40. package/dist/actions/package/publint.mjs.map +1 -1
  41. package/dist/bin/package/compile-tsup.js +31 -0
  42. package/dist/bin/package/compile-tsup.js.map +1 -0
  43. package/dist/bin/package/compile-tsup.mjs +8 -0
  44. package/dist/bin/package/compile-tsup.mjs.map +1 -0
  45. package/dist/index.d.mts +53 -10
  46. package/dist/index.d.ts +53 -10
  47. package/dist/lib/index.js +3 -1
  48. package/dist/lib/index.js.map +1 -1
  49. package/dist/lib/index.mjs +1 -0
  50. package/dist/lib/index.mjs.map +1 -1
  51. package/dist/lib/loadConfig.js +54 -0
  52. package/dist/lib/loadConfig.js.map +1 -0
  53. package/dist/lib/loadConfig.mjs +20 -0
  54. package/dist/lib/loadConfig.mjs.map +1 -0
  55. package/package.json +5 -6
  56. package/src/actions/package/compile/CompileParams.ts +10 -0
  57. package/src/actions/package/compile/compile.ts +59 -0
  58. package/src/actions/package/compile/copyTypeFiles.ts +27 -0
  59. package/src/actions/package/compile/index.ts +4 -0
  60. package/src/actions/package/compile/inputs.ts +33 -0
  61. package/src/actions/package/compile/rollup.ts +108 -0
  62. package/src/actions/package/compile/tsc.ts +100 -0
  63. package/src/actions/package/compile/tscTypes.ts +32 -0
  64. package/src/actions/package/compile/tsup.ts +64 -0
  65. package/src/actions/package/publint.ts +5 -1
  66. package/src/bin/package/compile-tsup.ts +9 -0
  67. package/src/lib/index.ts +1 -0
  68. package/src/lib/loadConfig.ts +19 -0
  69. package/tsconfig.json +1 -7
  70. package/dist/actions/package/compile.js.map +0 -1
  71. package/dist/actions/package/compile.mjs +0 -150
  72. package/dist/actions/package/compile.mjs.map +0 -1
  73. package/src/actions/package/compile.ts +0 -177
@@ -0,0 +1,108 @@
1
+ import commonjs from '@rollup/plugin-commonjs'
2
+ import json from '@rollup/plugin-json'
3
+ import typescript from '@rollup/plugin-typescript'
4
+ import chalk from 'chalk'
5
+ import { OutputOptions, rollup, RollupLog, RollupOptions } from 'rollup'
6
+ import externalDeps from 'rollup-plugin-exclude-dependencies-from-bundle'
7
+ import nodeExternals from 'rollup-plugin-node-externals'
8
+ import { getInputDirs, getInputs } from './inputs'
9
+ import { packagePublint } from '../publint'
10
+ import { loadPackageConfig } from '../../../loadPackageConfig'
11
+ import { CompileParams } from './CompileParams'
12
+ import { loadConfig } from '../../../lib'
13
+
14
+ export interface PackageCompileRollupParams extends CompileParams {
15
+
16
+ }
17
+
18
+ export const compileSubDir = async (format: 'cjs' | 'esm', ext: string, subDir?: string, verbose = false) => {
19
+ const dir = subDir === '.' ? undefined : subDir
20
+ const input = await getInputs(dir)
21
+ const tsPlugIn = typescript({
22
+ baseUrl: 'src',
23
+ declaration: !dir || !subDir,
24
+ declarationMap: !dir || !subDir,
25
+ emitDeclarationOnly: false,
26
+ esModuleInterop: true,
27
+ exclude: ['**/*.spec.*', 'dist', 'docs', 'node_modules', 'packages'],
28
+ outDir: dir ? `dist/${dir}` : 'dist',
29
+ rootDir: 'src',
30
+ tsconfig: 'tsconfig.json',
31
+ })
32
+
33
+ const errors: RollupLog[] = []
34
+ const warnings: RollupLog[] = []
35
+ const infos: RollupLog[] = []
36
+ const debugs: RollupLog[] = []
37
+
38
+ const options: RollupOptions = {
39
+ input: subDir ? input.map((file) => `./src/${file}`) : ['./src/index.ts'],
40
+ logLevel: 'warn',
41
+ onLog: (level, log, defaultHandler) => {
42
+ const pushLog = !(log.code === 'EMPTY_BUNDLE' || log.code === 'MIXED_EXPORTS' || log.code === 'UNUSED_EXTERNAL_IMPORT')
43
+ if (pushLog) {
44
+ switch (level) {
45
+ case 'warn': {
46
+ warnings.push(log)
47
+ break
48
+ }
49
+ case 'info': {
50
+ infos.push(log)
51
+ break
52
+ }
53
+ case 'debug': {
54
+ debugs.push(log)
55
+ break
56
+ }
57
+ default: {
58
+ errors.push(log)
59
+ break
60
+ }
61
+ }
62
+ }
63
+ console.log(chalk.yellow(`${level}: ${log.message} [${log.code}]`))
64
+ if (log.id) {
65
+ console.log(chalk.gray(log.id))
66
+ }
67
+ log.ids?.map((id) => {
68
+ console.log(chalk.gray(id))
69
+ })
70
+ return defaultHandler(level, log)
71
+ },
72
+ plugins: [commonjs(), externalDeps(), nodeExternals(), json(), tsPlugIn],
73
+ }
74
+
75
+ const outputOptions: OutputOptions = {
76
+ dir: subDir ? `dist/${subDir}` : 'dist',
77
+ dynamicImportInCjs: true,
78
+ entryFileNames: (chunkInfo) => `${chunkInfo.name}.${ext}`,
79
+ format,
80
+ sourcemap: true,
81
+ }
82
+
83
+ if (input.length) {
84
+ await (await rollup(options)).write(outputOptions)
85
+ }
86
+
87
+ return errors.length + warnings.length
88
+ }
89
+
90
+ export const packageCompileRollup = async (params?: PackageCompileRollupParams) => {
91
+ const config = await loadConfig(params)
92
+ const pkg = await loadPackageConfig()
93
+ const inputDirs = await getInputDirs(config.compile?.depth)
94
+ const verbose = config.verbose
95
+ const publint = config.compile?.publint
96
+
97
+ const pkgType = pkg.type ?? 'commonjs'
98
+
99
+ const esmExt = pkgType === 'module' ? 'js' : 'mjs'
100
+ const cjsExt = pkgType === 'commonjs' ? 'js' : 'cjs'
101
+
102
+ const result = (await Promise.all(
103
+ inputDirs.map(async (inputDir) => {
104
+ return await compileSubDir('cjs', cjsExt, inputDir, verbose) + await compileSubDir('esm', esmExt, inputDir, verbose)
105
+ }),
106
+ )).reduce(((prev, result) => prev + result), 0)
107
+ return result + (publint ? await packagePublint() : 0)
108
+ }
@@ -0,0 +1,100 @@
1
+ import ts, { CompilerOptions, readConfigFile, sys, getPreEmitDiagnostics, parseJsonConfigFileContent, getLineAndCharacterOfPosition, flattenDiagnosticMessageText, createProgram, convertCompilerOptionsFromJson, Diagnostic, findConfigFile } from "typescript"
2
+ import { CompileParams } from "./CompileParams"
3
+ import { loadConfig } from "../../../lib"
4
+ import { getAllInputs } from "./inputs"
5
+ import merge from 'lodash/merge'
6
+ import chalk from "chalk"
7
+
8
+ export type PackageCompileTscParams = Partial<CompileParams & {
9
+ compile?: {
10
+ tsc?: {
11
+ tsconfig?: string
12
+ compilerOptions?: CompilerOptions
13
+ }
14
+ }
15
+ }>
16
+
17
+ const getCompilerOptionsJSONFollowExtends = (filename: string): Record<string, any> => {
18
+ let opts = {};
19
+ const config = readConfigFile(filename, ts.sys.readFile).config;
20
+ if (config.extends) {
21
+ const requirePath = require.resolve(config.extends);
22
+ opts = getCompilerOptionsJSONFollowExtends(requirePath);
23
+ }
24
+ if (config?.error) {
25
+ throw Error(`getCompilerOptionsJSONFollowExtends failed ${JSON.stringify(config?.error?.messageText, null, 2)}`)
26
+ }
27
+
28
+ return config.compilerOptions
29
+ }
30
+
31
+ const getCompilerOptions = (options?: CompilerOptions, tsconfig: string = "tsconfig.json"): CompilerOptions => {
32
+ const configFileName = findConfigFile(
33
+ "./",
34
+ ts.sys.fileExists,
35
+ tsconfig
36
+ )
37
+ const configFileCompilerOptions = configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined
38
+
39
+ return merge({}, configFileCompilerOptions, options)
40
+ }
41
+
42
+ const getConfigFile = (options?: CompilerOptions, tsconfig: string = "tsconfig.json") => {
43
+ const configFileName = findConfigFile(
44
+ "./",
45
+ ts.sys.fileExists,
46
+ tsconfig
47
+ )
48
+ return {...(configFileName ? readConfigFile(configFileName, sys.readFile).config : {}), compilerOptions: getCompilerOptions(options)}
49
+ }
50
+
51
+ const compile = (fileNames: string[], optionsParam: CompilerOptions) => {
52
+ console.log(chalk.blue(`compile`))
53
+ const {moduleResolution, ...options} = optionsParam
54
+ console.log(chalk.magenta(`options: ${JSON.stringify(options, null, 2)}`))
55
+ const program = createProgram(fileNames, options)
56
+ console.log(chalk.blue(`createProgram`))
57
+ const emitResult = program.emit()
58
+ console.log(chalk.blue(`emit`))
59
+
60
+ const allDiagnostics: Diagnostic[] = getPreEmitDiagnostics(program)
61
+ .concat(emitResult.diagnostics)
62
+
63
+ const errorDiagnostics = allDiagnostics.filter((diagnostic) => diagnostic.category === 1)
64
+
65
+ allDiagnostics.forEach(diagnostic => {
66
+ if (diagnostic.file) {
67
+ let { line, character } = getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start!)
68
+ let message = flattenDiagnosticMessageText(diagnostic.messageText, "\n")
69
+ console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`)
70
+ } else {
71
+ console.log(flattenDiagnosticMessageText(diagnostic.messageText, "\n"))
72
+ }
73
+ })
74
+
75
+ if (errorDiagnostics.length) {
76
+ console.log(chalk.red(`Errors: ${errorDiagnostics.length}`))
77
+ process.exit(errorDiagnostics.length)
78
+ }
79
+
80
+ return errorDiagnostics.length
81
+ }
82
+
83
+ export const packageCompileTsc = async (params?: PackageCompileTscParams): Promise<number> => {
84
+ const defaultCompilerOptions: CompilerOptions = {
85
+ sourceMap: true,
86
+ declaration: true,
87
+ declarationMap: true,
88
+ rootDir: 'src',
89
+ outDir: 'dist',
90
+ }
91
+ const compilerOptions = merge({}, defaultCompilerOptions, params?.compile?.tsc?.compilerOptions)
92
+ const config = await loadConfig(params)
93
+ if (config.verbose) {
94
+ console.log(`Compiling with TSC`)
95
+ }
96
+
97
+ const fileNames = (await getAllInputs(config.compile?.depth)).map((fileName) => `src/${fileName}`)
98
+ const configFile = getConfigFile(compilerOptions)
99
+ return compile(fileNames, configFile.compilerOptions)
100
+ }
@@ -0,0 +1,32 @@
1
+ import { build, BuildOptions } from 'tsc-prog'
2
+ import { CompileParams } from "./CompileParams"
3
+ import { loadConfig } from "../../../lib"
4
+ import { getAllInputs } from "./inputs"
5
+ import { cwd } from 'process'
6
+
7
+
8
+ export const packageCompileTscTypes = async (params?: CompileParams): Promise<number> => {
9
+ const pkg = process.env.INIT_CWD
10
+ const buildOptions: BuildOptions = {
11
+ basePath: pkg ?? cwd(),
12
+ compilerOptions: {
13
+ sourceMap: true,
14
+ declaration: true,
15
+ declarationMap: true,
16
+ emitDeclarationOnly: true,
17
+ esModuleInterop: true,
18
+ outDir: 'dist'
19
+ },
20
+ include: ['src'],
21
+ exclude: ['dist', 'docs']
22
+ }
23
+
24
+ const config = await loadConfig(params)
25
+ if (config.verbose) {
26
+ console.log(`Compiling types with TSC [${pkg}]`)
27
+ }
28
+
29
+ const fileNames = (await getAllInputs(config.compile?.depth)).map((fileName) => `src/${fileName}`)
30
+ build(buildOptions)
31
+ return 0
32
+ }
@@ -0,0 +1,64 @@
1
+ import { build, defineConfig, Options } from 'tsup'
2
+ import {getInputDirs, getInputs} from './inputs'
3
+ import { packagePublint } from '../publint'
4
+ import { CompileParams } from './CompileParams'
5
+ import { loadConfig } from '../../../lib'
6
+ import { packageCompileTscTypes } from './tscTypes'
7
+
8
+ export type PackageCompileTsupParams = Partial<CompileParams & {
9
+ compile?: {
10
+ tsup?: {
11
+ options?: Options
12
+ }
13
+ }
14
+ }>
15
+
16
+ const compileSubDir = async (subDir?: string, options?: Options, verbose?: boolean) => {
17
+ const dir = subDir === '.' ? undefined : subDir
18
+ const input = await getInputs(dir)
19
+ const optionsResult = defineConfig({
20
+ bundle: true,
21
+ cjsInterop: true,
22
+ clean: true,
23
+ dts: {
24
+ entry: ['src/index.ts'],
25
+ resolve: false,
26
+ only: false
27
+ },
28
+ entry: subDir ? input.map((file) => `./src/${file}`) : ['./src/index.ts'],
29
+ format: ['cjs', 'esm'],
30
+ outDir: 'dist',
31
+ sourcemap: true,
32
+ splitting: false,
33
+ tsconfig: 'tsconfig.json',
34
+ ...options
35
+ })
36
+ const optionsList = (
37
+ await Promise.all(
38
+ (Array.isArray(optionsResult) ? optionsResult : [optionsResult])
39
+ .map<Promise<Options[]>>(async (options) => {
40
+ const result = typeof options === 'function' ? await options({}) : [options]
41
+ return Array.isArray(result) ? result : [result]
42
+ })
43
+ .flat(),
44
+ )
45
+ ).flat()
46
+ await Promise.all(optionsList.map((options) => build(options)))
47
+
48
+ return await packageCompileTscTypes({verbose})
49
+ }
50
+
51
+ export const packageCompileTsup = async (params?: PackageCompileTsupParams) => {
52
+ const config = await loadConfig(params)
53
+ if (config.verbose) {
54
+ console.log(`Compiling with TSUP`)
55
+ }
56
+ const inputDirs = await getInputDirs(config.compile?.depth)
57
+
58
+ const result = (await Promise.all(
59
+ inputDirs.map(async (inputDir) => {
60
+ return await compileSubDir(inputDir, config.compile?.tsup?.options, config.verbose )
61
+ }),
62
+ )).reduce(((prev, result) => prev + result), 0)
63
+ return result + (config.compile?.publint ? await packagePublint() : 0)
64
+ }
@@ -2,7 +2,11 @@ import chalk from 'chalk'
2
2
  import { promises as fs } from 'fs'
3
3
  import { Message } from 'publint'
4
4
 
5
- export const packagePublint = async () => {
5
+ export interface PackagePublintParams {
6
+ verbose?: boolean
7
+ }
8
+
9
+ export const packagePublint = async (params?: PackagePublintParams) => {
6
10
  const pkgDir = process.env.INIT_CWD
7
11
 
8
12
  const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+
3
+ import chalk from 'chalk'
4
+ import { packageCompileTsup } from '../../actions'
5
+
6
+ packageCompileTsup({verbose: true}).then((value) => process.exitCode = value).catch((reason) => {
7
+ console.error(chalk.red(reason))
8
+ process.exitCode = 1
9
+ })
package/src/lib/index.ts CHANGED
@@ -16,3 +16,4 @@ export * from './string'
16
16
  export * from './withErrnoException'
17
17
  export * from './withError'
18
18
  export * from './yarn'
19
+ export * from './loadConfig'
@@ -0,0 +1,19 @@
1
+ import chalk from 'chalk'
2
+ import merge from 'lodash/merge'
3
+ import { cosmiconfig } from 'cosmiconfig'
4
+
5
+ let config: Record<string, any>
6
+
7
+ export const loadConfig = async <T extends object>(params?: T): Promise<T> => {
8
+ if (config) {
9
+ return merge({}, config, params)
10
+ }
11
+
12
+ const cosmicConfigResult = await cosmiconfig('xy').search()
13
+ config = cosmicConfigResult?.config
14
+ const configFilePath = cosmicConfigResult?.filepath
15
+ if (configFilePath) {
16
+ console.log(chalk.gray(`Loading config from ${configFilePath}`))
17
+ }
18
+ return merge({}, config, params)
19
+ }
package/tsconfig.json CHANGED
@@ -1,10 +1,4 @@
1
1
  {
2
- "compilerOptions": {
3
- "declaration": true,
4
- "declarationMap": true,
5
- "declarationDir": "dist",
6
- "incremental": false,
7
- "outDir": "dist"
8
- },
2
+ "exclude": ["dist", "docs"],
9
3
  "extends": "@xylabs/tsconfig"
10
4
  }
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/actions/package/compile.ts"],"sourcesContent":["import commonjs from '@rollup/plugin-commonjs'\nimport json from '@rollup/plugin-json'\nimport typescript from '@rollup/plugin-typescript'\nimport chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { copyFile, readdir } from 'fs/promises'\nimport { OutputOptions, rollup, RollupLog, RollupOptions } from 'rollup'\nimport externalDeps from 'rollup-plugin-exclude-dependencies-from-bundle'\nimport nodeExternals from 'rollup-plugin-node-externals'\n\nimport { loadPackageConfig, PackageJsonEx } from '../../loadPackageConfig'\nimport { packagePublint } from './publint'\n\nexport interface CompilePackageParams {\n publint?: boolean\n verbose?: boolean\n}\n\nconst rollItUp = async (format: 'cjs' | 'esm', ext: string, subDir?: string) => {\n const dir = subDir === '.' ? undefined : subDir\n const input = await getInputs(dir)\n const tsPlugIn = typescript({\n baseUrl: 'src',\n declaration: !dir || !subDir,\n declarationMap: !dir || !subDir,\n emitDeclarationOnly: false,\n esModuleInterop: true,\n exclude: ['**/*.spec.*', 'dist', 'docs', 'node_modules', 'packages'],\n outDir: dir ? `dist/${dir}` : 'dist',\n rootDir: 'src',\n tsconfig: 'tsconfig.json',\n })\n\n const errors: RollupLog[] = []\n const warnings: RollupLog[] = []\n const infos: RollupLog[] = []\n const debugs: RollupLog[] = []\n\n const options: RollupOptions = {\n input: subDir ? input.map((file) => `./src/${file}`) : ['./src/index.ts'],\n logLevel: 'warn',\n onLog: (level, log, defaultHandler) => {\n const pushLog = !(log.code === 'EMPTY_BUNDLE' || log.code === 'MIXED_EXPORTS' || log.code === 'UNUSED_EXTERNAL_IMPORT')\n if (pushLog) {\n switch (level) {\n case 'warn': {\n warnings.push(log)\n break\n }\n case 'info': {\n infos.push(log)\n break\n }\n case 'debug': {\n debugs.push(log)\n break\n }\n default: {\n errors.push(log)\n break\n }\n }\n }\n console.log(chalk.yellow(`${level}: ${log.message} [${log.code}]`))\n if (log.id) {\n console.log(chalk.gray(log.id))\n }\n log.ids?.map((id) => {\n console.log(chalk.gray(id))\n })\n return defaultHandler(level, log)\n },\n plugins: [commonjs(), externalDeps(), nodeExternals(), json(), tsPlugIn],\n }\n\n const outputOptions: OutputOptions = {\n dir: subDir ? `dist/${subDir}` : 'dist',\n dynamicImportInCjs: true,\n entryFileNames: (chunkInfo) => `${chunkInfo.name}.${ext}`,\n format,\n sourcemap: true,\n }\n\n if (input.length) {\n await (await rollup(options)).write(outputOptions)\n }\n\n return errors.length + warnings.length\n}\n\nconst getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter((file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.endsWith('spec.ts'))\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nconst getInputDirs = async (depth: number) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: depth > 1, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path.split('/')\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nconst getDistTypeFiles = async () => {\n return (await readdir('dist', { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `dist/${file}`)\n}\n\nconst getDistTypeMapFiles = async () => {\n return (await readdir('dist', { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `dist/${file}`)\n}\n\nconst buildIt = async (pkg: PackageJsonEx, compileDepth: number) => {\n console.log(`Compile Depth: ${compileDepth}`)\n const inputDirs = await getInputDirs(compileDepth)\n\n const pkgType = pkg.type ?? 'commonjs'\n\n const esmExt = pkgType === 'module' ? 'js' : 'mjs'\n const cjsExt = pkgType === 'commonjs' ? 'js' : 'cjs'\n\n const rollupResult = inputDirs.length\n ? await Promise.all(\n inputDirs.map(async (inputDir) => {\n return (await rollItUp('esm', esmExt, inputDir)) + (await rollItUp('cjs', cjsExt, inputDir))\n }),\n )\n : [(await rollItUp('esm', esmExt)) + (await rollItUp('cjs', cjsExt))]\n\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles()\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles()\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n }),\n )\n\n return rollupResult.reduce((prev, item) => prev + item, 0)\n}\n\nexport const packageCompile = async ({ publint = true, verbose }: CompilePackageParams = { verbose: false }) => {\n const xyConfig = await cosmiconfig('xy').search()\n const compileDepth: number = xyConfig?.config.compile?.depth ?? 0\n const pkgName = process.env.npm_package_name\n if (verbose) {\n console.log(chalk.green(`Compiling ${pkgName} Start`))\n }\n const result = (await buildIt(await loadPackageConfig(), compileDepth)) + (publint ? await packagePublint() : 0)\n if (result) {\n const input = await getInputs()\n console.log(`Inputs: ${JSON.stringify(input, null, 2)}`)\n console.error(chalk.red(`Compiling ${pkgName} Failed [${result}]`))\n } else if (verbose) {\n console.log(chalk.green(`Compiling ${pkgName} Done`))\n }\n return result\n}\n"],"mappings":"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","names":["typescript","chalk","commonjs","externalDeps","nodeExternals","json"]}
@@ -1,150 +0,0 @@
1
- import commonjs from "@rollup/plugin-commonjs";
2
- import json from "@rollup/plugin-json";
3
- import typescript from "@rollup/plugin-typescript";
4
- import chalk from "chalk";
5
- import { cosmiconfig } from "cosmiconfig";
6
- import { copyFile, readdir } from "fs/promises";
7
- import { rollup } from "rollup";
8
- import externalDeps from "rollup-plugin-exclude-dependencies-from-bundle";
9
- import nodeExternals from "rollup-plugin-node-externals";
10
- import { loadPackageConfig } from "../../loadPackageConfig";
11
- import { packagePublint } from "./publint";
12
- const rollItUp = async (format, ext, subDir) => {
13
- const dir = subDir === "." ? void 0 : subDir;
14
- const input = await getInputs(dir);
15
- const tsPlugIn = typescript({
16
- baseUrl: "src",
17
- declaration: !dir || !subDir,
18
- declarationMap: !dir || !subDir,
19
- emitDeclarationOnly: false,
20
- esModuleInterop: true,
21
- exclude: ["**/*.spec.*", "dist", "docs", "node_modules", "packages"],
22
- outDir: dir ? `dist/${dir}` : "dist",
23
- rootDir: "src",
24
- tsconfig: "tsconfig.json"
25
- });
26
- const errors = [];
27
- const warnings = [];
28
- const infos = [];
29
- const debugs = [];
30
- const options = {
31
- input: subDir ? input.map((file) => `./src/${file}`) : ["./src/index.ts"],
32
- logLevel: "warn",
33
- onLog: (level, log, defaultHandler) => {
34
- const pushLog = !(log.code === "EMPTY_BUNDLE" || log.code === "MIXED_EXPORTS" || log.code === "UNUSED_EXTERNAL_IMPORT");
35
- if (pushLog) {
36
- switch (level) {
37
- case "warn": {
38
- warnings.push(log);
39
- break;
40
- }
41
- case "info": {
42
- infos.push(log);
43
- break;
44
- }
45
- case "debug": {
46
- debugs.push(log);
47
- break;
48
- }
49
- default: {
50
- errors.push(log);
51
- break;
52
- }
53
- }
54
- }
55
- console.log(chalk.yellow(`${level}: ${log.message} [${log.code}]`));
56
- if (log.id) {
57
- console.log(chalk.gray(log.id));
58
- }
59
- log.ids?.map((id) => {
60
- console.log(chalk.gray(id));
61
- });
62
- return defaultHandler(level, log);
63
- },
64
- plugins: [commonjs(), externalDeps(), nodeExternals(), json(), tsPlugIn]
65
- };
66
- const outputOptions = {
67
- dir: subDir ? `dist/${subDir}` : "dist",
68
- dynamicImportInCjs: true,
69
- entryFileNames: (chunkInfo) => `${chunkInfo.name}.${ext}`,
70
- format,
71
- sourcemap: true
72
- };
73
- if (input.length) {
74
- await (await rollup(options)).write(outputOptions);
75
- }
76
- return errors.length + warnings.length;
77
- };
78
- const getInputs = async (subDir) => {
79
- return (await readdir(subDir ? `src/${subDir}` : "src", { recursive: false })).filter((file) => (file.endsWith(".ts") || file.endsWith(".tsx")) && !file.endsWith("d.ts") && !file.endsWith("spec.ts")).map((file) => subDir ? `${subDir}/${file}` : file);
80
- };
81
- const getInputDirs = async (depth) => {
82
- if (depth === 0) {
83
- return [];
84
- }
85
- return [
86
- ".",
87
- ...(await readdir("src", { recursive: depth > 1, withFileTypes: true })).filter((file) => file.isDirectory()).map((file) => {
88
- const pathParts = file.path.split("/");
89
- pathParts.shift();
90
- if (pathParts.length) {
91
- const root = pathParts.join("/");
92
- return `${root}/${file.name}`;
93
- } else {
94
- return file.name;
95
- }
96
- })
97
- ];
98
- };
99
- const getDistTypeFiles = async () => {
100
- return (await readdir("dist", { recursive: true })).filter((file) => file.endsWith("d.ts")).map((file) => `dist/${file}`);
101
- };
102
- const getDistTypeMapFiles = async () => {
103
- return (await readdir("dist", { recursive: true })).filter((file) => file.endsWith("d.ts.map")).map((file) => `dist/${file}`);
104
- };
105
- const buildIt = async (pkg, compileDepth) => {
106
- console.log(`Compile Depth: ${compileDepth}`);
107
- const inputDirs = await getInputDirs(compileDepth);
108
- const pkgType = pkg.type ?? "commonjs";
109
- const esmExt = pkgType === "module" ? "js" : "mjs";
110
- const cjsExt = pkgType === "commonjs" ? "js" : "cjs";
111
- const rollupResult = inputDirs.length ? await Promise.all(
112
- inputDirs.map(async (inputDir) => {
113
- return await rollItUp("esm", esmExt, inputDir) + await rollItUp("cjs", cjsExt, inputDir);
114
- })
115
- ) : [await rollItUp("esm", esmExt) + await rollItUp("cjs", cjsExt)];
116
- const distTypeFiles = await getDistTypeFiles();
117
- await Promise.all(
118
- distTypeFiles.map(async (file) => {
119
- await copyFile(file, file.replace("d.ts", "d.mts"));
120
- })
121
- );
122
- const distTypeMapFiles = await getDistTypeMapFiles();
123
- await Promise.all(
124
- distTypeMapFiles.map(async (file) => {
125
- await copyFile(file, file.replace("d.ts.map", "d.mts.map"));
126
- })
127
- );
128
- return rollupResult.reduce((prev, item) => prev + item, 0);
129
- };
130
- const packageCompile = async ({ publint = true, verbose } = { verbose: false }) => {
131
- const xyConfig = await cosmiconfig("xy").search();
132
- const compileDepth = xyConfig?.config.compile?.depth ?? 0;
133
- const pkgName = process.env.npm_package_name;
134
- if (verbose) {
135
- console.log(chalk.green(`Compiling ${pkgName} Start`));
136
- }
137
- const result = await buildIt(await loadPackageConfig(), compileDepth) + (publint ? await packagePublint() : 0);
138
- if (result) {
139
- const input = await getInputs();
140
- console.log(`Inputs: ${JSON.stringify(input, null, 2)}`);
141
- console.error(chalk.red(`Compiling ${pkgName} Failed [${result}]`));
142
- } else if (verbose) {
143
- console.log(chalk.green(`Compiling ${pkgName} Done`));
144
- }
145
- return result;
146
- };
147
- export {
148
- packageCompile
149
- };
150
- //# sourceMappingURL=compile.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/actions/package/compile.ts"],"sourcesContent":["import commonjs from '@rollup/plugin-commonjs'\nimport json from '@rollup/plugin-json'\nimport typescript from '@rollup/plugin-typescript'\nimport chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { copyFile, readdir } from 'fs/promises'\nimport { OutputOptions, rollup, RollupLog, RollupOptions } from 'rollup'\nimport externalDeps from 'rollup-plugin-exclude-dependencies-from-bundle'\nimport nodeExternals from 'rollup-plugin-node-externals'\n\nimport { loadPackageConfig, PackageJsonEx } from '../../loadPackageConfig'\nimport { packagePublint } from './publint'\n\nexport interface CompilePackageParams {\n publint?: boolean\n verbose?: boolean\n}\n\nconst rollItUp = async (format: 'cjs' | 'esm', ext: string, subDir?: string) => {\n const dir = subDir === '.' ? undefined : subDir\n const input = await getInputs(dir)\n const tsPlugIn = typescript({\n baseUrl: 'src',\n declaration: !dir || !subDir,\n declarationMap: !dir || !subDir,\n emitDeclarationOnly: false,\n esModuleInterop: true,\n exclude: ['**/*.spec.*', 'dist', 'docs', 'node_modules', 'packages'],\n outDir: dir ? `dist/${dir}` : 'dist',\n rootDir: 'src',\n tsconfig: 'tsconfig.json',\n })\n\n const errors: RollupLog[] = []\n const warnings: RollupLog[] = []\n const infos: RollupLog[] = []\n const debugs: RollupLog[] = []\n\n const options: RollupOptions = {\n input: subDir ? input.map((file) => `./src/${file}`) : ['./src/index.ts'],\n logLevel: 'warn',\n onLog: (level, log, defaultHandler) => {\n const pushLog = !(log.code === 'EMPTY_BUNDLE' || log.code === 'MIXED_EXPORTS' || log.code === 'UNUSED_EXTERNAL_IMPORT')\n if (pushLog) {\n switch (level) {\n case 'warn': {\n warnings.push(log)\n break\n }\n case 'info': {\n infos.push(log)\n break\n }\n case 'debug': {\n debugs.push(log)\n break\n }\n default: {\n errors.push(log)\n break\n }\n }\n }\n console.log(chalk.yellow(`${level}: ${log.message} [${log.code}]`))\n if (log.id) {\n console.log(chalk.gray(log.id))\n }\n log.ids?.map((id) => {\n console.log(chalk.gray(id))\n })\n return defaultHandler(level, log)\n },\n plugins: [commonjs(), externalDeps(), nodeExternals(), json(), tsPlugIn],\n }\n\n const outputOptions: OutputOptions = {\n dir: subDir ? `dist/${subDir}` : 'dist',\n dynamicImportInCjs: true,\n entryFileNames: (chunkInfo) => `${chunkInfo.name}.${ext}`,\n format,\n sourcemap: true,\n }\n\n if (input.length) {\n await (await rollup(options)).write(outputOptions)\n }\n\n return errors.length + warnings.length\n}\n\nconst getInputs = async (subDir?: string) => {\n return (await readdir(subDir ? `src/${subDir}` : 'src', { recursive: false }))\n .filter((file) => (file.endsWith('.ts') || file.endsWith('.tsx')) && !file.endsWith('d.ts') && !file.endsWith('spec.ts'))\n .map((file) => (subDir ? `${subDir}/${file}` : file))\n}\n\nconst getInputDirs = async (depth: number) => {\n if (depth === 0) {\n return []\n }\n return [\n '.',\n ...(await readdir('src', { recursive: depth > 1, withFileTypes: true }))\n .filter((file) => file.isDirectory())\n .map((file) => {\n const pathParts = file.path.split('/')\n pathParts.shift()\n if (pathParts.length) {\n const root = pathParts.join('/')\n return `${root}/${file.name}`\n } else {\n return file.name\n }\n }),\n ]\n}\n\nconst getDistTypeFiles = async () => {\n return (await readdir('dist', { recursive: true })).filter((file) => file.endsWith('d.ts')).map((file) => `dist/${file}`)\n}\n\nconst getDistTypeMapFiles = async () => {\n return (await readdir('dist', { recursive: true })).filter((file) => file.endsWith('d.ts.map')).map((file) => `dist/${file}`)\n}\n\nconst buildIt = async (pkg: PackageJsonEx, compileDepth: number) => {\n console.log(`Compile Depth: ${compileDepth}`)\n const inputDirs = await getInputDirs(compileDepth)\n\n const pkgType = pkg.type ?? 'commonjs'\n\n const esmExt = pkgType === 'module' ? 'js' : 'mjs'\n const cjsExt = pkgType === 'commonjs' ? 'js' : 'cjs'\n\n const rollupResult = inputDirs.length\n ? await Promise.all(\n inputDirs.map(async (inputDir) => {\n return (await rollItUp('esm', esmExt, inputDir)) + (await rollItUp('cjs', cjsExt, inputDir))\n }),\n )\n : [(await rollItUp('esm', esmExt)) + (await rollItUp('cjs', cjsExt))]\n\n //hybrid packages want two copies of the types\n const distTypeFiles = await getDistTypeFiles()\n await Promise.all(\n distTypeFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts', 'd.mts'))\n }),\n )\n\n const distTypeMapFiles = await getDistTypeMapFiles()\n await Promise.all(\n distTypeMapFiles.map(async (file) => {\n await copyFile(file, file.replace('d.ts.map', 'd.mts.map'))\n }),\n )\n\n return rollupResult.reduce((prev, item) => prev + item, 0)\n}\n\nexport const packageCompile = async ({ publint = true, verbose }: CompilePackageParams = { verbose: false }) => {\n const xyConfig = await cosmiconfig('xy').search()\n const compileDepth: number = xyConfig?.config.compile?.depth ?? 0\n const pkgName = process.env.npm_package_name\n if (verbose) {\n console.log(chalk.green(`Compiling ${pkgName} Start`))\n }\n const result = (await buildIt(await loadPackageConfig(), compileDepth)) + (publint ? await packagePublint() : 0)\n if (result) {\n const input = await getInputs()\n console.log(`Inputs: ${JSON.stringify(input, null, 2)}`)\n console.error(chalk.red(`Compiling ${pkgName} Failed [${result}]`))\n } else if (verbose) {\n console.log(chalk.green(`Compiling ${pkgName} Done`))\n }\n return result\n}\n"],"mappings":"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","names":[]}