@xylabs/ts-scripts-yarn3 4.0.0-rc.16 → 4.0.0-rc.18
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.
- package/dist/actions/index.mjs +14 -22
- package/dist/actions/index.mjs.map +1 -1
- package/dist/actions/package/compile/compile.mjs +14 -22
- package/dist/actions/package/compile/compile.mjs.map +1 -1
- package/dist/actions/package/compile/getCompilerOptions.mjs +1 -4
- package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -1
- package/dist/actions/package/compile/index.mjs +14 -22
- package/dist/actions/package/compile/index.mjs.map +1 -1
- package/dist/actions/package/compile/packageCompileTsc.mjs +1 -4
- package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
- package/dist/actions/package/compile/packageCompileTscTypes.mjs +1 -4
- package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
- package/dist/actions/package/index.mjs +14 -22
- package/dist/actions/package/index.mjs.map +1 -1
- package/dist/actions/package/recompile.mjs +14 -22
- package/dist/actions/package/recompile.mjs.map +1 -1
- package/dist/bin/package/compile-only.mjs +14 -22
- package/dist/bin/package/compile-only.mjs.map +1 -1
- package/dist/bin/package/compile.mjs +14 -22
- package/dist/bin/package/compile.mjs.map +1 -1
- package/dist/bin/package/recompile.mjs +14 -22
- package/dist/bin/package/recompile.mjs.map +1 -1
- package/dist/index.mjs +14 -22
- package/dist/index.mjs.map +1 -1
- package/dist/lib/index.mjs +143 -8
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/loadConfig.mjs +143 -8
- package/dist/lib/loadConfig.mjs.map +1 -1
- package/package.json +4 -4
- package/src/actions/package/compile/getCompilerOptions.ts +1 -1
- package/src/lib/loadConfig.ts +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../node_modules/deepmerge/dist/cjs.js","../../../src/actions/package/clean-outputs.ts","../../../src/lib/checkResult.ts","../../../src/lib/deleteGlob.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/clean-typescript.ts","../../../src/actions/package/clean.ts","../../../src/actions/package/compile/compile.ts","../../../src/actions/package/publint.ts","../../../src/actions/package/compile/packageCompileTsc.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/packageCompileTsup.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/copy-assets.ts","../../../src/actions/package/deps.ts","../../../src/actions/package/gen-docs.ts","../../../src/actions/package/recompile.ts"],"sourcesContent":["'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","import path from 'node:path'\n\nimport chalk from 'chalk'\n\nimport { deleteGlob } from '../../lib/index.ts'\n\nexport const packageCleanOutputs = async () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n const folders: string[] = [path.join(pkg, 'dist'), path.join(pkg, 'build'), path.join(pkg, 'docs')]\n console.log(chalk.green(`Cleaning Outputs [${pkgName}]`))\n\n await Promise.all(folders.map(folder => deleteGlob(folder)))\n\n return 0\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","import fs from 'node:fs'\n\nimport { glob } from 'glob'\n\nexport const deleteGlob = (globPath: string) => {\n // Find all files matching the glob pattern\n const files = glob.sync(globPath)\n\n // Remove each file or directory\n for (const file of files) {\n fs.rmSync(file, { recursive: true, force: true })\n }\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return { ...config, ...params } as T\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return { ...config, ...params } as T\n}\n","import path from 'node:path'\n\nimport chalk from 'chalk'\n\nimport { deleteGlob } from '../../lib/index.ts'\n\nexport const packageCleanTypescript = async () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`Cleaning Typescript [${pkgName}]`))\n const files: string[] = [path.join(pkg, '*.tsbuildinfo'), path.join(pkg, '.tsconfig.*'), path.join(pkg, '.eslintcache')]\n\n await Promise.all(files.map(file => deleteGlob(file)))\n\n return 0\n}\n","import { packageCleanOutputs } from './clean-outputs.ts'\nimport { packageCleanTypescript } from './clean-typescript.ts'\n\nexport const packageClean = async () => {\n return (await Promise.all([packageCleanOutputs(), packageCleanTypescript()])).reduce((prev, value) => prev + value, 0)\n}\n","import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import-x/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 ...(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 { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\nimport deepmerge from 'deepmerge'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return { ...getNested(opts), ...config.compilerOptions } as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options: CompilerOptions = {}, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined) ?? {}\n\n return deepmerge(configFileCompilerOptions, options)\n}\n","import type { Loader } from 'esbuild'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.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: true,\n entry,\n format: ['esm'],\n outDir,\n silent: true,\n sourcemap: true,\n splitting: 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 // packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\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 const standardLoaders: Record<string, Loader> = { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' }\n const standardOptions: Options = {\n bundle: true,\n format: ['esm'],\n loader: standardLoaders,\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n }\n\n return (\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 ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/node',\n platform: 'node',\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 ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/browser',\n platform: 'browser',\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(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/neutral',\n platform: 'neutral',\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 || (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 path from 'node:path/posix'\n\nimport chalk from 'chalk'\nimport cpy from 'cpy'\n\nexport interface PackageCopyAssetsParams {\n target?: 'esm' | 'cjs'\n}\n\nconst copyTargetAssets = async (target: 'esm' | 'cjs', name: string, location: string) => {\n try {\n const values = await cpy(\n ['**/*.jpg', '**/*.png', '**/*.gif', '**/*.svg', '**/*.webp', '**/*.sass', '**/*.scss', '**/*.gif', '**/*.css'],\n `../dist/${target}`,\n {\n cwd: path.join(location, 'src'),\n flat: false,\n },\n )\n if (values.length > 0) {\n console.log(chalk.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`))\n }\n for (const value of values) {\n console.log(`${value.split('/').pop()} => ./dist/${target}`)\n }\n return 0\n } catch (ex) {\n const error = ex as Error\n console.log(`Copy Assets Failed: ${name}: ${error.message}`)\n return 1\n }\n}\n\nexport const packageCopyAssets = async ({ target }: PackageCopyAssetsParams) => {\n const pkg = process.env.INIT_CWD ?? './'\n const pkgName = process.env.npm_package_name ?? 'Unknown'\n switch (target) {\n case 'esm': {\n return await copyTargetAssets('esm', pkgName, pkg)\n }\n case 'cjs': {\n return await copyTargetAssets('cjs', pkgName, pkg)\n }\n default: {\n return (await copyTargetAssets('esm', pkgName, pkg)) || (await copyTargetAssets('cjs', pkgName, pkg))\n }\n }\n}\n","/* eslint-disable max-statements */\nimport { existsSync, readFileSync } from 'node:fs'\nimport { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport depcheck from 'depcheck'\nconst special = depcheck.special\n\nimport { checkResult } from '../../lib/index.ts'\n\nconst defaultIgnorePatterns = ['*.d.ts', 'dist', '.*', 'node_modules']\nconst defaultIgnoreDevDeps = [\n '@xylabs/ts-scripts-yarn3',\n '@xylabs/tsconfig',\n '@xylabs/tsconfig-dom',\n '@xylabs/tsconfig-react',\n '@xylabs/tsconfig-jest',\n 'typescript',\n]\nconst defaultIgnoreDevPatterns = ['*.stories.*', '*.spec.*', 'spec', 'stories', 'tsconfig.json']\n\nconst reportUnused = (name: string, unused: depcheck.Results['dependencies']) => {\n if (unused.length > 0) {\n const message = [chalk.yellow(`${unused.length} Unused ${name}`)]\n for (const value of unused) message.push(chalk.gray(` ${value}`))\n console.log(message.join('\\n'))\n }\n}\n\nconst reportMissing = (name: string, missing: depcheck.Results['missing']) => {\n if (Object.keys(missing).length > 0) {\n const message = [chalk.yellow(`${Object.entries(missing).length} Missing ${name}`)]\n for (const [key, value] of Object.entries(missing)) {\n message.push(`${key}`, chalk.gray(` ${value.at(0)}`))\n }\n console.log(chalk.yellow(message.join('\\n')))\n }\n}\n\nconst analyzeDeps = async (pkg: string, ignoreMatches: string[]) => {\n const packageContent = existsSync(`${pkg}/package.json`) ? JSON.parse(readFileSync(`${pkg}/package.json`, { encoding: 'utf8' })) : undefined\n const [srcUnused, allUnused] = await Promise.all([\n depcheck(`${pkg}/src`, {\n ignoreMatches,\n ignorePatterns: [...defaultIgnoreDevPatterns, ...defaultIgnorePatterns],\n package: packageContent,\n }),\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...ignoreMatches, ...defaultIgnoreDevDeps],\n ignorePatterns: [...defaultIgnorePatterns],\n package: packageContent,\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedDeps = srcUnused.dependencies\n const unusedDevDeps = allUnused.devDependencies\n const usedDeps = srcUnused.using\n const usedDevDeps = allUnused.using\n const missing = { ...srcUnused.missing, ...allUnused.missing }\n const { invalidDirs, invalidFiles } = allUnused\n\n return { invalidDirs, invalidFiles, missing, unusedDeps, unusedDevDeps, usedDeps, usedDevDeps }\n}\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const pkgName = process.env.npm_package_name\n\n const packageContent = existsSync(`${pkg}/package.json`) ? JSON.parse(readFileSync(`${pkg}/package.json`, { encoding: 'utf8' })) : undefined\n\n const rawIgnore\n = existsSync(`${pkg}/.depcheckrc`) ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":') : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n const { invalidDirs, invalidFiles, unusedDeps, unusedDevDeps, usedDeps, usedDevDeps, missing } = await analyzeDeps(pkg, ignoreMatches)\n\n const declaredDeps = Object.keys(packageContent.dependencies ?? {})\n const declaredPeerDeps = Object.keys(packageContent.peerDependencies ?? {})\n const declaredDevDeps = Object.keys(packageContent.devDependencies ?? {})\n\n const missingDeps = Object.keys(usedDeps).filter(\n key => !declaredDeps.includes(key) && !declaredPeerDeps.includes(key) && !key.startsWith('@types/'),\n )\n\n const missingDevDeps = Object.keys(usedDevDeps).filter(key => !declaredDevDeps.includes(key) && !declaredDeps.includes(key))\n\n const missingDepsObject: Record<string, string[]> = {}\n for (const key of missingDeps) {\n missingDepsObject[key] = missing[key] ?? [`devDep should be dep [${key}]`]\n }\n\n const missingDevDepsObject: Record<string, string[]> = {}\n for (const key of missingDevDeps) {\n if (missing[key]) {\n missingDevDepsObject[key] = missing[key]\n }\n }\n\n const errorCounts = [\n unusedDeps.length,\n unusedDevDeps.length,\n Object.entries(invalidDirs).length,\n Object.entries(invalidFiles).length,\n Object.entries(missingDepsObject).length,\n Object.entries(missingDevDepsObject).length,\n ]\n\n const errorCount = errorCounts.reduce((prev, count) => prev + count, 0)\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}] = (${JSON.stringify(errorCounts)})`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n reportUnused('dependencies', unusedDeps)\n reportUnused('devDependencies', unusedDevDeps)\n\n if (Object.entries(invalidDirs).length > 0) {\n for (const [key, value] of Object.entries(invalidDirs)) console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`))\n }\n\n if (Object.entries(invalidFiles).length > 0) {\n for (const [key, value] of Object.entries(invalidFiles)) console.warn(chalk.gray(`Invalid File: ${key}: ${value}`))\n }\n\n reportMissing('dependencies', missingDepsObject)\n reportMissing('devDependencies', missingDevDepsObject)\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n // returning 0 here since we never want deps to be fatal\n return 0\n}\n","/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg && !existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n\n const app = await Application.bootstrap({\n entryPointStrategy: 'merge',\n entryPoints: [`${pkg}/src/**/*.ts`, `${pkg}/packages/*/dist/docs.json`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = await app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n","import { packageClean } from './clean.ts'\nimport { packageCompile } from './compile/index.ts'\n\nexport const packageRecompile = async () => {\n return await packageClean() || await packageCompile()\n}\n"],"mappings":"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","names":["isMergeableObject","value","isNonNullObject","isSpecial","stringValue","Object","prototype","toString","call","isReactElement","canUseSymbol","Symbol","for","REACT_ELEMENT_TYPE","$$typeof","emptyTarget","val","Array","isArray","cloneUnlessOtherwiseSpecified","options","clone","deepmerge","defaultArrayMerge","target","source","concat","map","element","getMergeFunction","key","customMerge","getEnumerableOwnPropertySymbols","getOwnPropertySymbols","filter","symbol","propertyIsEnumerable","getKeys","keys","propertyIsOnObject","object","property","_","propertyIsUnsafe","hasOwnProperty","mergeObject","destination","forEach","arrayMerge","sourceIsArray","targetIsArray","sourceAndTargetTypesMatch","all","deepmergeAll","array","Error","reduce","prev","next","deepmerge_1","module","exports","path","chalk","chalk","checkResult","name","result","level","exitOnFail","exiting","chalkFunc","chalk","red","yellow","console","process","exit","fs","glob","deleteGlob","globPath","files","glob","sync","file","fs","rmSync","recursive","force","chalk","cosmiconfig","config","loadConfig","params","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","packageCleanOutputs","pkg","process","env","INIT_CWD","pkgName","npm_package_name","folders","path","join","console","log","chalk","green","Promise","all","map","folder","deleteGlob","path","chalk","packageCleanTypescript","pkg","process","env","INIT_CWD","pkgName","npm_package_name","console","log","chalk","green","files","path","join","Promise","all","map","file","deleteGlob","packageClean","Promise","all","packageCleanOutputs","packageCleanTypescript","reduce","prev","value","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","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","deepmerge","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","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","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","packageCompileTsup","config","compile","publint","verbose","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","standardLoaders","standardOptions","loader","outExtension","js","skipNodeModulesBundle","target","Object","entries","inEsBuildOptions","esbuildOptions","platform","tsup","reduce","prev","value","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint","path","chalk","cpy","copyTargetAssets","target","name","location","values","cpy","cwd","path","join","flat","length","console","log","chalk","green","toUpperCase","value","split","pop","ex","error","message","packageCopyAssets","pkg","process","env","INIT_CWD","pkgName","npm_package_name","existsSync","readFileSync","cwd","chalk","depcheck","special","depcheck","defaultIgnorePatterns","defaultIgnoreDevDeps","defaultIgnoreDevPatterns","reportUnused","name","unused","length","message","chalk","yellow","value","push","gray","console","log","join","reportMissing","missing","Object","keys","entries","key","at","analyzeDeps","pkg","ignoreMatches","packageContent","existsSync","JSON","parse","readFileSync","encoding","undefined","srcUnused","allUnused","Promise","all","ignorePatterns","package","specials","eslint","babel","bin","prettier","jest","mocha","unusedDeps","dependencies","unusedDevDeps","devDependencies","usedDeps","using","usedDevDeps","invalidDirs","invalidFiles","packageDeps","process","env","INIT_CWD","cwd","pkgName","npm_package_name","rawIgnore","replace","ignores","ex","error","declaredDeps","declaredPeerDeps","peerDependencies","declaredDevDeps","missingDeps","filter","includes","startsWith","missingDevDeps","missingDepsObject","missingDevDepsObject","errorCounts","errorCount","reduce","prev","count","stringify","warn","checkResult","existsSync","path","chalk","Application","ArgumentsReader","TSConfigReader","TypeDocReader","ExitCodes","CompileError","ExceptionThrown","NoEntryPoints","Ok","OptionError","OutputError","ValidationError","packageGenDocs","pkg","process","env","INIT_CWD","existsSync","path","join","app","Application","bootstrap","entryPointStrategy","entryPoints","excludeExternals","json","logLevel","tsconfig","options","addReader","ArgumentsReader","TypeDocReader","TSConfigReader","runTypeDoc","pkgName","npm_package_name","getValue","console","log","toString","getRawValues","logger","hasErrors","hasWarnings","length","error","convertAndWatch","project","out","generateDocs","generateJson","convert","validate","chalk","green","packageRecompile","packageClean","packageCompile"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../node_modules/deepmerge/dist/cjs.js","../../../src/actions/package/clean-outputs.ts","../../../src/lib/checkResult.ts","../../../src/lib/deleteGlob.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/clean-typescript.ts","../../../src/actions/package/clean.ts","../../../src/actions/package/compile/compile.ts","../../../src/actions/package/publint.ts","../../../src/actions/package/compile/packageCompileTsc.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/packageCompileTsup.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/copy-assets.ts","../../../src/actions/package/deps.ts","../../../src/actions/package/gen-docs.ts","../../../src/actions/package/recompile.ts"],"sourcesContent":["'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","import path from 'node:path'\n\nimport chalk from 'chalk'\n\nimport { deleteGlob } from '../../lib/index.ts'\n\nexport const packageCleanOutputs = async () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n const folders: string[] = [path.join(pkg, 'dist'), path.join(pkg, 'build'), path.join(pkg, 'docs')]\n console.log(chalk.green(`Cleaning Outputs [${pkgName}]`))\n\n await Promise.all(folders.map(folder => deleteGlob(folder)))\n\n return 0\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","import fs from 'node:fs'\n\nimport { glob } from 'glob'\n\nexport const deleteGlob = (globPath: string) => {\n // Find all files matching the glob pattern\n const files = glob.sync(globPath)\n\n // Remove each file or directory\n for (const file of files) {\n fs.rmSync(file, { recursive: true, force: true })\n }\n}\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport deepmerge from 'deepmerge'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config) {\n return deepmerge(config, params ?? {}) as T\n }\n\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath) {\n console.log(chalk.gray(`Loading config from ${configFilePath}`))\n }\n return deepmerge(config, params ?? {}) as T\n}\n","import path from 'node:path'\n\nimport chalk from 'chalk'\n\nimport { deleteGlob } from '../../lib/index.ts'\n\nexport const packageCleanTypescript = async () => {\n const pkg = process.env.INIT_CWD ?? '.'\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`Cleaning Typescript [${pkgName}]`))\n const files: string[] = [path.join(pkg, '*.tsbuildinfo'), path.join(pkg, '.tsconfig.*'), path.join(pkg, '.eslintcache')]\n\n await Promise.all(files.map(file => deleteGlob(file)))\n\n return 0\n}\n","import { packageCleanOutputs } from './clean-outputs.ts'\nimport { packageCleanTypescript } from './clean-typescript.ts'\n\nexport const packageClean = async () => {\n return (await Promise.all([packageCleanOutputs(), packageCleanTypescript()])).reduce((prev, value) => prev + value, 0)\n}\n","import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packagePublint } from '../publint.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport { XyConfig, XyTscConfig, XyTsupConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n const publint = config.publint\n\n const mode = config.compile?.mode ?? 'tsup'\n let result: number = 0\n switch (mode) {\n case 'tsc': {\n result += await packageCompileTsc(undefined, config as XyTscConfig)\n break\n }\n case 'tsup': {\n result += await packageCompileTsup(config as XyTsupConfig)\n break\n }\n }\n return result + (publint ? await packagePublint(config) : 0)\n}\n","import { promises as fs } from 'node:fs'\n\nimport chalk from 'chalk'\nimport { Message } from 'publint'\n\nexport interface PackagePublintParams {\n verbose?: boolean\n}\n\nexport const packagePublint = async (params?: PackagePublintParams) => {\n const pkgDir = process.env.INIT_CWD\n const pkg = JSON.parse(await fs.readFile(`${pkgDir}/package.json`, 'utf8'))\n\n console.log(chalk.green(`Publint: ${pkg.name}`))\n console.log(chalk.gray(pkgDir))\n\n const { publint } = await import('publint')\n\n const { messages } = await publint({\n level: 'suggestion',\n pkgDir,\n strict: true,\n })\n\n // eslint-disable-next-line import-x/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 ...(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 { TsConfig } from 'tsc-prog'\nimport { CompilerOptions, findConfigFile, readConfigFile, sys } from 'typescript'\nimport deepmerge from 'deepmerge'\n\nconst getNested = (config: TsConfig): CompilerOptions => {\n if (config.extends) {\n const require = createRequire(import.meta.url)\n const opts = require(config.extends)\n return deepmerge(getNested(opts), config.compilerOptions ?? {}) as CompilerOptions\n }\n\n return config.compilerOptions as CompilerOptions\n}\n\nexport const getCompilerOptionsJSONFollowExtends = (filename: string): CompilerOptions => {\n const config = readConfigFile(filename, sys.readFile).config\n return getNested(config)\n}\n\nexport const getCompilerOptions = (options: CompilerOptions = {}, tsconfig: string = 'tsconfig.json'): CompilerOptions => {\n const configFileName = findConfigFile('./', sys.fileExists, tsconfig)\n const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : undefined) ?? {}\n\n return deepmerge(configFileCompilerOptions, options)\n}\n","import type { Loader } from 'esbuild'\nimport { build, defineConfig, Options } from 'tsup'\n\nimport { packagePublint } from '../publint.ts'\nimport { buildEntries } from './buildEntries.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: true,\n entry,\n format: ['esm'],\n outDir,\n silent: true,\n sourcemap: true,\n splitting: 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 // packageCompileTscTypes(folder, { verbose }, { outDir })\n\n return 0\n}\n\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 const standardLoaders: Record<string, Loader> = { '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'copy', '.webp': 'copy' }\n const standardOptions: Options = {\n bundle: true,\n format: ['esm'],\n loader: standardLoaders,\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n }\n\n return (\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 ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/node',\n platform: 'node',\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 ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/browser',\n platform: 'browser',\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(compileForNeutral).map(async ([folder, options]) => {\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n return folder\n ? await compileFolder(\n folder,\n compile?.entryMode,\n {\n ...standardOptions,\n loader: {\n ...standardOptions.loader,\n ...inEsBuildOptions?.loader,\n },\n outDir: 'dist/neutral',\n platform: 'neutral',\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 || (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 path from 'node:path/posix'\n\nimport chalk from 'chalk'\nimport cpy from 'cpy'\n\nexport interface PackageCopyAssetsParams {\n target?: 'esm' | 'cjs'\n}\n\nconst copyTargetAssets = async (target: 'esm' | 'cjs', name: string, location: string) => {\n try {\n const values = await cpy(\n ['**/*.jpg', '**/*.png', '**/*.gif', '**/*.svg', '**/*.webp', '**/*.sass', '**/*.scss', '**/*.gif', '**/*.css'],\n `../dist/${target}`,\n {\n cwd: path.join(location, 'src'),\n flat: false,\n },\n )\n if (values.length > 0) {\n console.log(chalk.green(`Copying Assets [${target.toUpperCase()}] - ${name} - ${location}`))\n }\n for (const value of values) {\n console.log(`${value.split('/').pop()} => ./dist/${target}`)\n }\n return 0\n } catch (ex) {\n const error = ex as Error\n console.log(`Copy Assets Failed: ${name}: ${error.message}`)\n return 1\n }\n}\n\nexport const packageCopyAssets = async ({ target }: PackageCopyAssetsParams) => {\n const pkg = process.env.INIT_CWD ?? './'\n const pkgName = process.env.npm_package_name ?? 'Unknown'\n switch (target) {\n case 'esm': {\n return await copyTargetAssets('esm', pkgName, pkg)\n }\n case 'cjs': {\n return await copyTargetAssets('cjs', pkgName, pkg)\n }\n default: {\n return (await copyTargetAssets('esm', pkgName, pkg)) || (await copyTargetAssets('cjs', pkgName, pkg))\n }\n }\n}\n","/* eslint-disable max-statements */\nimport { existsSync, readFileSync } from 'node:fs'\nimport { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport depcheck from 'depcheck'\nconst special = depcheck.special\n\nimport { checkResult } from '../../lib/index.ts'\n\nconst defaultIgnorePatterns = ['*.d.ts', 'dist', '.*', 'node_modules']\nconst defaultIgnoreDevDeps = [\n '@xylabs/ts-scripts-yarn3',\n '@xylabs/tsconfig',\n '@xylabs/tsconfig-dom',\n '@xylabs/tsconfig-react',\n '@xylabs/tsconfig-jest',\n 'typescript',\n]\nconst defaultIgnoreDevPatterns = ['*.stories.*', '*.spec.*', 'spec', 'stories', 'tsconfig.json']\n\nconst reportUnused = (name: string, unused: depcheck.Results['dependencies']) => {\n if (unused.length > 0) {\n const message = [chalk.yellow(`${unused.length} Unused ${name}`)]\n for (const value of unused) message.push(chalk.gray(` ${value}`))\n console.log(message.join('\\n'))\n }\n}\n\nconst reportMissing = (name: string, missing: depcheck.Results['missing']) => {\n if (Object.keys(missing).length > 0) {\n const message = [chalk.yellow(`${Object.entries(missing).length} Missing ${name}`)]\n for (const [key, value] of Object.entries(missing)) {\n message.push(`${key}`, chalk.gray(` ${value.at(0)}`))\n }\n console.log(chalk.yellow(message.join('\\n')))\n }\n}\n\nconst analyzeDeps = async (pkg: string, ignoreMatches: string[]) => {\n const packageContent = existsSync(`${pkg}/package.json`) ? JSON.parse(readFileSync(`${pkg}/package.json`, { encoding: 'utf8' })) : undefined\n const [srcUnused, allUnused] = await Promise.all([\n depcheck(`${pkg}/src`, {\n ignoreMatches,\n ignorePatterns: [...defaultIgnoreDevPatterns, ...defaultIgnorePatterns],\n package: packageContent,\n }),\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...ignoreMatches, ...defaultIgnoreDevDeps],\n ignorePatterns: [...defaultIgnorePatterns],\n package: packageContent,\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedDeps = srcUnused.dependencies\n const unusedDevDeps = allUnused.devDependencies\n const usedDeps = srcUnused.using\n const usedDevDeps = allUnused.using\n const missing = { ...srcUnused.missing, ...allUnused.missing }\n const { invalidDirs, invalidFiles } = allUnused\n\n return { invalidDirs, invalidFiles, missing, unusedDeps, unusedDevDeps, usedDeps, usedDevDeps }\n}\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD ?? cwd()\n const pkgName = process.env.npm_package_name\n\n const packageContent = existsSync(`${pkg}/package.json`) ? JSON.parse(readFileSync(`${pkg}/package.json`, { encoding: 'utf8' })) : undefined\n\n const rawIgnore\n = existsSync(`${pkg}/.depcheckrc`) ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":') : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n const { invalidDirs, invalidFiles, unusedDeps, unusedDevDeps, usedDeps, usedDevDeps, missing } = await analyzeDeps(pkg, ignoreMatches)\n\n const declaredDeps = Object.keys(packageContent.dependencies ?? {})\n const declaredPeerDeps = Object.keys(packageContent.peerDependencies ?? {})\n const declaredDevDeps = Object.keys(packageContent.devDependencies ?? {})\n\n const missingDeps = Object.keys(usedDeps).filter(\n key => !declaredDeps.includes(key) && !declaredPeerDeps.includes(key) && !key.startsWith('@types/'),\n )\n\n const missingDevDeps = Object.keys(usedDevDeps).filter(key => !declaredDevDeps.includes(key) && !declaredDeps.includes(key))\n\n const missingDepsObject: Record<string, string[]> = {}\n for (const key of missingDeps) {\n missingDepsObject[key] = missing[key] ?? [`devDep should be dep [${key}]`]\n }\n\n const missingDevDepsObject: Record<string, string[]> = {}\n for (const key of missingDevDeps) {\n if (missing[key]) {\n missingDevDepsObject[key] = missing[key]\n }\n }\n\n const errorCounts = [\n unusedDeps.length,\n unusedDevDeps.length,\n Object.entries(invalidDirs).length,\n Object.entries(invalidFiles).length,\n Object.entries(missingDepsObject).length,\n Object.entries(missingDevDepsObject).length,\n ]\n\n const errorCount = errorCounts.reduce((prev, count) => prev + count, 0)\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}] = (${JSON.stringify(errorCounts)})`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n reportUnused('dependencies', unusedDeps)\n reportUnused('devDependencies', unusedDevDeps)\n\n if (Object.entries(invalidDirs).length > 0) {\n for (const [key, value] of Object.entries(invalidDirs)) console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`))\n }\n\n if (Object.entries(invalidFiles).length > 0) {\n for (const [key, value] of Object.entries(invalidFiles)) console.warn(chalk.gray(`Invalid File: ${key}: ${value}`))\n }\n\n reportMissing('dependencies', missingDepsObject)\n reportMissing('devDependencies', missingDevDepsObject)\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n // returning 0 here since we never want deps to be fatal\n return 0\n}\n","/* eslint-disable complexity */\n/* eslint-disable max-statements */\nimport { existsSync } from 'node:fs'\nimport path from 'node:path'\n\nimport chalk from 'chalk'\nimport { Application, ArgumentsReader, TSConfigReader, TypeDocReader } from 'typedoc'\n\nconst ExitCodes = {\n CompileError: 3,\n ExceptionThrown: 6,\n NoEntryPoints: 2,\n Ok: 0,\n OptionError: 1,\n OutputError: 5,\n ValidationError: 4,\n}\n\nexport const packageGenDocs = async () => {\n const pkg = process.env.INIT_CWD\n\n if (pkg && !existsSync(path.join(pkg, 'typedoc.json'))) {\n return\n }\n\n const app = await Application.bootstrap({\n entryPointStrategy: 'merge',\n entryPoints: [`${pkg}/src/**/*.ts`, `${pkg}/packages/*/dist/docs.json`],\n excludeExternals: true,\n json: `${pkg}/dist/docs.json`,\n logLevel: 'Error',\n tsconfig: `${pkg}/tsconfig.json`,\n })\n\n app.options.addReader(new ArgumentsReader(0))\n app.options.addReader(new TypeDocReader())\n app.options.addReader(new TSConfigReader())\n app.options.addReader(new ArgumentsReader(300))\n\n return await runTypeDoc(app)\n}\n\nconst runTypeDoc = async (app: Application) => {\n const pkgName = process.env.npm_package_name\n if (app.options.getValue('version')) {\n console.log(app.toString())\n return ExitCodes.Ok\n }\n\n if (app.options.getValue('showConfig')) {\n console.log(app.options.getRawValues())\n return ExitCodes.Ok\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OptionError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OptionError\n }\n\n if (app.options.getValue('entryPoints').length === 0) {\n app.logger.error('No entry points provided')\n return ExitCodes.NoEntryPoints\n }\n\n if (app.options.getValue('watch')) {\n app.convertAndWatch(async (project) => {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n })\n return ExitCodes.Ok\n }\n\n const project = await app.convert()\n if (!project) {\n return ExitCodes.CompileError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.CompileError\n }\n\n app.validate(project)\n if (app.logger.hasErrors()) {\n return ExitCodes.ValidationError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.ValidationError\n }\n\n if (app.options.getValue('emit') !== 'none') {\n const out = app.options.getValue('out')\n if (out) {\n await app.generateDocs(project, out)\n }\n const json = app.options.getValue('json')\n if (json) {\n await app.generateJson(project, json)\n }\n\n if (!out && !json) {\n await app.generateDocs(project, './docs')\n }\n\n if (app.logger.hasErrors()) {\n return ExitCodes.OutputError\n }\n if (app.options.getValue('treatWarningsAsErrors') && app.logger.hasWarnings()) {\n return ExitCodes.OutputError\n }\n }\n console.log(chalk.green(`${pkgName} - Ok`))\n return ExitCodes.Ok\n}\n","import { packageClean } from './clean.ts'\nimport { packageCompile } from './compile/index.ts'\n\nexport const packageRecompile = async () => {\n return await packageClean() || await packageCompile()\n}\n"],"mappings":"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","names":["isMergeableObject","value","isNonNullObject","isSpecial","stringValue","Object","prototype","toString","call","isReactElement","canUseSymbol","Symbol","for","REACT_ELEMENT_TYPE","$$typeof","emptyTarget","val","Array","isArray","cloneUnlessOtherwiseSpecified","options","clone","deepmerge","defaultArrayMerge","target","source","concat","map","element","getMergeFunction","key","customMerge","getEnumerableOwnPropertySymbols","getOwnPropertySymbols","filter","symbol","propertyIsEnumerable","getKeys","keys","propertyIsOnObject","object","property","_","propertyIsUnsafe","hasOwnProperty","mergeObject","destination","forEach","arrayMerge","sourceIsArray","targetIsArray","sourceAndTargetTypesMatch","all","deepmergeAll","array","Error","reduce","prev","next","deepmerge_1","module","exports","path","chalk","chalk","checkResult","name","result","level","exitOnFail","exiting","chalkFunc","chalk","red","yellow","console","process","exit","fs","glob","deleteGlob","globPath","files","glob","sync","file","fs","rmSync","recursive","force","chalk","cosmiconfig","config","loadConfig","params","deepmerge","cosmicConfigResult","cosmiconfig","cache","search","configFilePath","filepath","console","log","chalk","gray","packageCleanOutputs","pkg","process","env","INIT_CWD","pkgName","npm_package_name","folders","path","join","console","log","chalk","green","Promise","all","map","folder","deleteGlob","path","chalk","packageCleanTypescript","pkg","process","env","INIT_CWD","pkgName","npm_package_name","console","log","chalk","green","files","path","join","Promise","all","map","file","deleteGlob","packageClean","Promise","all","packageCleanOutputs","packageCleanTypescript","reduce","prev","value","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","import_deepmerge","createRequire","findConfigFile","readConfigFile","sys","getNested","config","extends","require","createRequire","url","opts","deepmerge","compilerOptions","getCompilerOptionsJSONFollowExtends","filename","readConfigFile","sys","readFile","getCompilerOptions","options","tsconfig","configFileName","findConfigFile","fileExists","configFileCompilerOptions","undefined","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","build","defineConfig","glob","getAllInputs2","folder","glob","sync","ignore","posix","buildEntries","folder","entryMode","verbose","console","log","getAllInputs2","filter","entry","includes","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","packageCompileTsup","config","compile","publint","verbose","console","log","depth","compileForNode","node","src","compileForBrowser","browser","compileForNeutral","neutral","standardLoaders","standardOptions","loader","outExtension","js","skipNodeModulesBundle","target","Object","entries","inEsBuildOptions","esbuildOptions","platform","tsup","reduce","prev","value","packagePublint","packageCompile","inConfig","pkg","process","env","INIT_CWD","console","log","chalk","green","config","loadConfig","publint","mode","compile","result","packageCompileTsc","undefined","packageCompileTsup","packagePublint","path","chalk","cpy","copyTargetAssets","target","name","location","values","cpy","cwd","path","join","flat","length","console","log","chalk","green","toUpperCase","value","split","pop","ex","error","message","packageCopyAssets","pkg","process","env","INIT_CWD","pkgName","npm_package_name","existsSync","readFileSync","cwd","chalk","depcheck","special","depcheck","defaultIgnorePatterns","defaultIgnoreDevDeps","defaultIgnoreDevPatterns","reportUnused","name","unused","length","message","chalk","yellow","value","push","gray","console","log","join","reportMissing","missing","Object","keys","entries","key","at","analyzeDeps","pkg","ignoreMatches","packageContent","existsSync","JSON","parse","readFileSync","encoding","undefined","srcUnused","allUnused","Promise","all","ignorePatterns","package","specials","eslint","babel","bin","prettier","jest","mocha","unusedDeps","dependencies","unusedDevDeps","devDependencies","usedDeps","using","usedDevDeps","invalidDirs","invalidFiles","packageDeps","process","env","INIT_CWD","cwd","pkgName","npm_package_name","rawIgnore","replace","ignores","ex","error","declaredDeps","declaredPeerDeps","peerDependencies","declaredDevDeps","missingDeps","filter","includes","startsWith","missingDevDeps","missingDepsObject","missingDevDepsObject","errorCounts","errorCount","reduce","prev","count","stringify","warn","checkResult","existsSync","path","chalk","Application","ArgumentsReader","TSConfigReader","TypeDocReader","ExitCodes","CompileError","ExceptionThrown","NoEntryPoints","Ok","OptionError","OutputError","ValidationError","packageGenDocs","pkg","process","env","INIT_CWD","existsSync","path","join","app","Application","bootstrap","entryPointStrategy","entryPoints","excludeExternals","json","logLevel","tsconfig","options","addReader","ArgumentsReader","TypeDocReader","TSConfigReader","runTypeDoc","pkgName","npm_package_name","getValue","console","log","toString","getRawValues","logger","hasErrors","hasWarnings","length","error","convertAndWatch","project","out","generateDocs","generateJson","convert","validate","chalk","green","packageRecompile","packageClean","packageCompile"]}
|
|
@@ -52,7 +52,7 @@ var require_cjs = __commonJS({
|
|
|
52
52
|
}
|
|
53
53
|
__name(emptyTarget, "emptyTarget");
|
|
54
54
|
function cloneUnlessOtherwiseSpecified(value, options) {
|
|
55
|
-
return options.clone !== false && options.isMergeableObject(value) ?
|
|
55
|
+
return options.clone !== false && options.isMergeableObject(value) ? deepmerge3(emptyTarget(value), value, options) : value;
|
|
56
56
|
}
|
|
57
57
|
__name(cloneUnlessOtherwiseSpecified, "cloneUnlessOtherwiseSpecified");
|
|
58
58
|
function defaultArrayMerge(target, source, options) {
|
|
@@ -63,10 +63,10 @@ var require_cjs = __commonJS({
|
|
|
63
63
|
__name(defaultArrayMerge, "defaultArrayMerge");
|
|
64
64
|
function getMergeFunction(key, options) {
|
|
65
65
|
if (!options.customMerge) {
|
|
66
|
-
return
|
|
66
|
+
return deepmerge3;
|
|
67
67
|
}
|
|
68
68
|
var customMerge = options.customMerge(key);
|
|
69
|
-
return typeof customMerge === "function" ? customMerge :
|
|
69
|
+
return typeof customMerge === "function" ? customMerge : deepmerge3;
|
|
70
70
|
}
|
|
71
71
|
__name(getMergeFunction, "getMergeFunction");
|
|
72
72
|
function getEnumerableOwnPropertySymbols(target) {
|
|
@@ -111,7 +111,7 @@ var require_cjs = __commonJS({
|
|
|
111
111
|
return destination;
|
|
112
112
|
}
|
|
113
113
|
__name(mergeObject, "mergeObject");
|
|
114
|
-
function
|
|
114
|
+
function deepmerge3(target, source, options) {
|
|
115
115
|
options = options || {};
|
|
116
116
|
options.arrayMerge = options.arrayMerge || defaultArrayMerge;
|
|
117
117
|
options.isMergeableObject = options.isMergeableObject || isMergeableObject;
|
|
@@ -127,16 +127,16 @@ var require_cjs = __commonJS({
|
|
|
127
127
|
return mergeObject(target, source, options);
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
|
-
__name(
|
|
131
|
-
|
|
130
|
+
__name(deepmerge3, "deepmerge");
|
|
131
|
+
deepmerge3.all = /* @__PURE__ */ __name(function deepmergeAll(array, options) {
|
|
132
132
|
if (!Array.isArray(array)) {
|
|
133
133
|
throw new Error("first argument should be an array");
|
|
134
134
|
}
|
|
135
135
|
return array.reduce(function(prev, next) {
|
|
136
|
-
return
|
|
136
|
+
return deepmerge3(prev, next, options);
|
|
137
137
|
}, {});
|
|
138
138
|
}, "deepmergeAll");
|
|
139
|
-
var deepmerge_1 =
|
|
139
|
+
var deepmerge_1 = deepmerge3;
|
|
140
140
|
module.exports = deepmerge_1;
|
|
141
141
|
}
|
|
142
142
|
});
|
|
@@ -159,15 +159,13 @@ var deleteGlob = /* @__PURE__ */ __name((globPath) => {
|
|
|
159
159
|
}, "deleteGlob");
|
|
160
160
|
|
|
161
161
|
// src/lib/loadConfig.ts
|
|
162
|
+
var import_deepmerge = __toESM(require_cjs(), 1);
|
|
162
163
|
import chalk from "chalk";
|
|
163
164
|
import { cosmiconfig } from "cosmiconfig";
|
|
164
165
|
var config;
|
|
165
166
|
var loadConfig = /* @__PURE__ */ __name(async (params) => {
|
|
166
167
|
if (config) {
|
|
167
|
-
return {
|
|
168
|
-
...config,
|
|
169
|
-
...params
|
|
170
|
-
};
|
|
168
|
+
return (0, import_deepmerge.default)(config, params ?? {});
|
|
171
169
|
}
|
|
172
170
|
const cosmicConfigResult = await cosmiconfig("xy", {
|
|
173
171
|
cache: true
|
|
@@ -177,10 +175,7 @@ var loadConfig = /* @__PURE__ */ __name(async (params) => {
|
|
|
177
175
|
if (configFilePath) {
|
|
178
176
|
console.log(chalk.gray(`Loading config from ${configFilePath}`));
|
|
179
177
|
}
|
|
180
|
-
return {
|
|
181
|
-
...config,
|
|
182
|
-
...params
|
|
183
|
-
};
|
|
178
|
+
return (0, import_deepmerge.default)(config, params ?? {});
|
|
184
179
|
}, "loadConfig");
|
|
185
180
|
|
|
186
181
|
// src/actions/package/clean-outputs.ts
|
|
@@ -272,17 +267,14 @@ import { createProgramFromConfig } from "tsc-prog";
|
|
|
272
267
|
import { DiagnosticCategory, formatDiagnosticsWithColorAndContext, getLineAndCharacterOfPosition, getPreEmitDiagnostics } from "typescript";
|
|
273
268
|
|
|
274
269
|
// src/actions/package/compile/getCompilerOptions.ts
|
|
275
|
-
var
|
|
270
|
+
var import_deepmerge2 = __toESM(require_cjs(), 1);
|
|
276
271
|
import { createRequire } from "node:module";
|
|
277
272
|
import { findConfigFile, readConfigFile, sys } from "typescript";
|
|
278
273
|
var getNested = /* @__PURE__ */ __name((config2) => {
|
|
279
274
|
if (config2.extends) {
|
|
280
275
|
const require2 = createRequire(import.meta.url);
|
|
281
276
|
const opts = require2(config2.extends);
|
|
282
|
-
return {
|
|
283
|
-
...getNested(opts),
|
|
284
|
-
...config2.compilerOptions
|
|
285
|
-
};
|
|
277
|
+
return (0, import_deepmerge2.default)(getNested(opts), config2.compilerOptions ?? {});
|
|
286
278
|
}
|
|
287
279
|
return config2.compilerOptions;
|
|
288
280
|
}, "getNested");
|
|
@@ -293,7 +285,7 @@ var getCompilerOptionsJSONFollowExtends = /* @__PURE__ */ __name((filename) => {
|
|
|
293
285
|
var getCompilerOptions = /* @__PURE__ */ __name((options = {}, tsconfig = "tsconfig.json") => {
|
|
294
286
|
const configFileName = findConfigFile("./", sys.fileExists, tsconfig);
|
|
295
287
|
const configFileCompilerOptions = (configFileName ? getCompilerOptionsJSONFollowExtends(configFileName) : void 0) ?? {};
|
|
296
|
-
return (0,
|
|
288
|
+
return (0, import_deepmerge2.default)(configFileCompilerOptions, options);
|
|
297
289
|
}, "getCompilerOptions");
|
|
298
290
|
|
|
299
291
|
// src/actions/package/compile/packageCompileTsc.ts
|