@sanity/pkg-utils 2.0.4-beta.1 → 2.0.5

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 (34) hide show
  1. package/LICENSE +1 -1
  2. package/dist/_chunks/{build-77dacddc.cjs → build-39c45d5c.cjs} +11 -7
  3. package/dist/_chunks/{build-77dacddc.cjs.map → build-39c45d5c.cjs.map} +1 -1
  4. package/dist/_chunks/buildAction-e21a8aeb.cjs +49 -0
  5. package/dist/_chunks/{buildAction-15e03999.cjs.map → buildAction-e21a8aeb.cjs.map} +1 -1
  6. package/dist/_chunks/{check-4c6bb15d.cjs → check-60977fef.cjs} +2 -2
  7. package/dist/_chunks/{check-4c6bb15d.cjs.map → check-60977fef.cjs.map} +1 -1
  8. package/dist/_chunks/checkAction-bf0f2047.cjs +31 -0
  9. package/dist/_chunks/{checkAction-fa6a293a.cjs.map → checkAction-bf0f2047.cjs.map} +1 -1
  10. package/dist/_chunks/{index-03f2cc83.cjs → index-fbd66d35.cjs} +41 -53
  11. package/dist/_chunks/index-fbd66d35.cjs.map +1 -0
  12. package/dist/_chunks/{resolveBuildContext-65b5c5d5.cjs → resolveBuildContext-8833c9b4.cjs} +26 -22
  13. package/dist/_chunks/resolveBuildContext-8833c9b4.cjs.map +1 -0
  14. package/dist/_chunks/{watch-2663890e.cjs → watch-8c069c12.cjs} +11 -7
  15. package/dist/_chunks/{watch-2663890e.cjs.map → watch-8c069c12.cjs.map} +1 -1
  16. package/dist/_chunks/watchAction-b5f7b64b.cjs +51 -0
  17. package/dist/_chunks/{watchAction-808ed88d.cjs.map → watchAction-b5f7b64b.cjs.map} +1 -1
  18. package/dist/cli.cjs +4 -4
  19. package/dist/index.cjs +40 -5
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +65 -80
  23. package/dist/index.js.map +1 -1
  24. package/package.json +2 -1
  25. package/src/node/core/pkg/loadPkgWithReporting.ts +7 -1
  26. package/src/node/core/pkg/types.ts +1 -1
  27. package/src/node/core/pkg/validateExports.ts +1 -1
  28. package/src/node/core/pkg/validatePkg.ts +2 -4
  29. package/src/node/tasks/rollup/resolveRollupConfig.ts +3 -8
  30. package/dist/_chunks/buildAction-15e03999.cjs +0 -18
  31. package/dist/_chunks/checkAction-fa6a293a.cjs +0 -17
  32. package/dist/_chunks/index-03f2cc83.cjs.map +0 -1
  33. package/dist/_chunks/resolveBuildContext-65b5c5d5.cjs.map +0 -1
  34. package/dist/_chunks/watchAction-808ed88d.cjs +0 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-fbd66d35.cjs","sources":["../../src/node/printExtractMessages.ts","../../src/node/tasks/dts/printDiagnostic.ts","../../src/node/tasks/dts/buildTypes.ts","../../src/node/tasks/dts/DtsError.ts","../../src/node/tasks/dts/createApiExtractorConfig.ts","../../src/node/tasks/dts/createTSDocConfig.ts","../../src/node/tasks/dts/extractModuleBlocks.ts","../../src/node/tasks/dts/getExtractMessagesConfig.ts","../../src/node/tasks/dts/extractTypes.ts","../../src/node/tasks/dts/doExtract.ts","../../src/node/tasks/dts/dtsTask.ts","../../src/node/tasks/dts/dtsWatchTask.ts","../../src/node/tasks/rollup/consoleSpy.ts","../../src/node/tasks/rollup/resolveRollupConfig.ts","../../src/node/tasks/rollup/rollupTask.ts","../../src/node/tasks/rollup/rollupWatchTask.ts","../../src/node/tasks/index.ts"],"sourcesContent":["import path from 'path'\nimport {ExtractorMessage} from '@microsoft/api-extractor'\nimport chalk from 'chalk'\nimport {BuildContext} from './core'\n\nexport function printExtractMessages(ctx: BuildContext, messages: ExtractorMessage[]): void {\n const {cwd, logger} = ctx\n\n const warnings = messages.filter((msg) => msg.logLevel === 'warning')\n\n if (warnings.length) {\n logger.log()\n }\n\n for (const msg of warnings) {\n const sourceFilePath = msg.sourceFilePath && path.relative(cwd, msg.sourceFilePath)\n\n if (msg.messageId === 'TS6307') {\n // Ignore this warning:\n // > TS6307: <filename> is not in project file list.\n // > Projects must list all files or use an 'include' pattern.\n continue\n }\n\n logger.log(\n [\n `${chalk.cyan(sourceFilePath || '?')}`,\n `:${chalk.yellow(msg.sourceFileLine)}:${chalk.yellow(msg.sourceFileColumn)}`,\n ` - ${chalk.yellow('warning')} ${chalk.gray(msg.messageId)}\\n`,\n msg.text,\n '\\n',\n ].join('')\n )\n }\n\n const errors: ExtractorMessage[] = messages.filter((msg) => msg.logLevel === 'error')\n\n if (!warnings.length && errors.length) {\n logger.log('')\n }\n\n for (const msg of errors) {\n const sourceFilePath = msg.sourceFilePath && path.relative(cwd, msg.sourceFilePath)\n\n logger.log(\n [\n `${chalk.cyan(sourceFilePath || '?')}`,\n `:${chalk.yellow(msg.sourceFileLine)}:${chalk.yellow(msg.sourceFileColumn)}`,\n ` - ${chalk.red('error')} ${chalk.gray(msg.messageId)}\\n`,\n msg.text,\n '\\n',\n ].join('')\n )\n }\n\n if (errors.length) {\n process.exit(1)\n }\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport ts from 'typescript'\nimport {Logger} from '../../logger'\n\nexport function printDiagnostic(options: {\n cwd: string\n logger: Logger\n diagnostic: ts.Diagnostic\n}): void {\n const {cwd, logger, diagnostic} = options\n\n if (diagnostic.file && diagnostic.start) {\n const {line, character} = ts.getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start)\n const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n')\n\n const file = path.relative(cwd, diagnostic.file.fileName)\n\n const output = [\n `${chalk.yellow(file)}:${chalk.blue(line + 1)}:${chalk.blue(character + 1)} - `,\n `${chalk.gray(`TS${diagnostic.code}:`)} ${message}`,\n ].join('')\n\n if (diagnostic.category === ts.DiagnosticCategory.Error) {\n logger.error(output)\n }\n\n if (diagnostic.category === ts.DiagnosticCategory.Warning) {\n logger.warn(output)\n }\n\n if (diagnostic.category === ts.DiagnosticCategory.Message) {\n logger.log(output)\n }\n\n if (diagnostic.category === ts.DiagnosticCategory.Suggestion) {\n logger.log(output)\n }\n } else {\n logger.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n'))\n }\n}\n","import ts from 'typescript'\nimport {Logger} from '../../logger'\nimport {printDiagnostic} from './printDiagnostic'\n\n/** @internal */\nexport async function buildTypes(options: {\n cwd: string\n logger: Logger\n outDir: string\n tsconfig: ts.ParsedCommandLine\n strict: boolean\n}): Promise<void> {\n const {cwd, logger, outDir, tsconfig, strict = false} = options\n\n const compilerOptions: ts.CompilerOptions = {\n ...tsconfig.options,\n declaration: true,\n declarationDir: outDir,\n emitDeclarationOnly: true,\n noEmit: false,\n outDir,\n }\n\n const program = ts.createProgram(tsconfig.fileNames, compilerOptions)\n\n const emitResult = program.emit()\n\n const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics)\n\n for (const diagnostic of allDiagnostics) {\n printDiagnostic({cwd, logger, diagnostic})\n }\n\n if (emitResult.emitSkipped) {\n const errors = allDiagnostics.filter((diag) => diag.category === ts.DiagnosticCategory.Error)\n\n if (errors.length) {\n if (strict) {\n throw new Error('failed to compile TypeScript definitions')\n }\n }\n }\n}\n","import {ExtractorMessage} from '@microsoft/api-extractor'\n\n/** @internal */\nexport class DtsError extends Error {\n messages: ExtractorMessage[]\n\n constructor(message: string, messages: ExtractorMessage[]) {\n super(message)\n this.messages = messages\n }\n}\n","import path from 'path'\nimport {IConfigFile, IExtractorMessagesConfig} from '@microsoft/api-extractor'\n\nexport function createApiExtractorConfig(options: {\n distPath: string\n exportPath: string\n filePath: string\n messages: IExtractorMessagesConfig\n projectFolder: string\n mainEntryPointFilePath: string\n tsconfigPath: string\n}): IConfigFile {\n const {\n distPath,\n exportPath,\n filePath,\n messages,\n projectFolder,\n mainEntryPointFilePath,\n tsconfigPath,\n } = options\n\n return {\n apiReport: {\n enabled: false,\n reportFileName: '<unscopedPackageName>.api.md',\n },\n // bundledPackages: [],\n compiler: {\n tsconfigFilePath: tsconfigPath,\n },\n docModel: {\n enabled: false,\n apiJsonFilePath: path.resolve(distPath, `${exportPath}.api.json`),\n },\n dtsRollup: {\n enabled: true,\n untrimmedFilePath: path.resolve(distPath, filePath),\n // betaTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-beta.d.ts')),\n // publicTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-public.d.ts')),\n },\n tsdocMetadata: {\n enabled: false,\n },\n messages,\n mainEntryPointFilePath,\n projectFolder,\n }\n}\n","import {readFile} from 'fs/promises'\nimport {TSDocConfigFile} from '@microsoft/tsdoc-config'\nimport {parse} from 'jsonc-parser'\n\n/** @public */\nexport interface TSDocCustomTag {\n name: string\n syntaxKind: 'block' | 'modifier'\n allowMultiple?: boolean\n}\n\n/** @internal */\nexport async function createTSDocConfig(opts: {\n customTags: TSDocCustomTag[]\n}): Promise<TSDocConfigFile | undefined> {\n const {customTags} = opts\n\n if (customTags.length === 0) {\n return undefined\n }\n\n const tsDocBaseBuf = await readFile(\n require.resolve('@microsoft/api-extractor/extends/tsdoc-base.json')\n )\n\n // Include the definitions that are required for API Extractor\n // extends: ['@microsoft/api-extractor/extends/tsdoc-base.json'],\n const tsDocBaseConfig = parse(tsDocBaseBuf.toString())\n\n // Define custom tags and specify how they should be parsed\n const tagDefinitions = (tsDocBaseConfig.tagDefinitions || []).concat(\n customTags.map((t) => ({\n tagName: `@${t.name}`,\n syntaxKind: t.syntaxKind,\n allowMultiple: t.allowMultiple,\n }))\n )\n\n // Indicate that custom tags are supported by your tooling.\n // (Without this, warnings may be reported saying that a tag is unsupported.)\n const supportForTags = {...tsDocBaseConfig.supportForTags}\n\n for (const customTag of customTags) {\n supportForTags[`@${customTag.name}`] = true\n }\n\n return TSDocConfigFile.loadFromObject({\n ...tsDocBaseConfig,\n noStandardTags: false,\n tagDefinitions,\n supportForTags,\n })\n}\n","import type {File} from '@babel/types'\nimport {ExtractorResult} from '@microsoft/api-extractor'\nimport {parse, print} from 'recast'\nimport typeScriptParser from 'recast/parsers/typescript'\nimport {Program} from 'typescript'\n\n/**\n * A workaround to find all module blocks in extract TS files.\n * @internal\n * */\nexport async function extractModuleBlocksFromTypes({\n tsOutDir,\n extractResult,\n}: {\n tsOutDir: string\n extractResult: ExtractorResult\n}): Promise<string[]> {\n const program = extractResult.compilerState.program as Program\n const moduleBlocks: string[] = []\n\n // all program files, including node_modules\n const allProgramFiles = [...program.getSourceFiles()]\n\n // just our compiled files used in the program\n const sourceFiles = allProgramFiles.filter((sourceFile) => sourceFile.fileName.includes(tsOutDir))\n\n for (const sourceFile of sourceFiles) {\n if (sourceFile.text.includes('declare module')) {\n moduleBlocks.push(...extractModuleBlocks(sourceFile.text))\n }\n }\n\n return moduleBlocks\n}\n\n/** @internal */\nexport function extractModuleBlocks(fileContent: string): string[] {\n const ast = parse(fileContent, {\n parser: typeScriptParser,\n }) as File\n\n return ast.program.body\n .filter((node) => node.type === 'TSModuleDeclaration')\n .map((node) => print(node).code)\n}\n","import {ExtractorLogLevel, IExtractorMessagesConfig} from '@microsoft/api-extractor'\nimport {PkgRuleLevel, PkgConfigOptions} from '../../core'\n\nconst LOG_LEVELS: Record<PkgRuleLevel, ExtractorLogLevel> = {\n error: 'error' as ExtractorLogLevel.Error,\n info: 'info' as ExtractorLogLevel.Info,\n off: 'none' as ExtractorLogLevel.None,\n warn: 'warning' as ExtractorLogLevel.Warning,\n}\n\n/** @internal */\nexport function getExtractMessagesConfig(options: {\n rules: NonNullable<PkgConfigOptions['extract']>['rules']\n}): IExtractorMessagesConfig {\n const {rules} = options\n\n function ruleToLogLevel(\n key: keyof NonNullable<NonNullable<PkgConfigOptions['extract']>['rules']>,\n defaultLevel?: ExtractorLogLevel\n ) {\n const r = rules?.[key]\n\n return (r ? LOG_LEVELS[r] : defaultLevel || 'warning') as ExtractorLogLevel\n }\n\n return {\n compilerMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n },\n },\n\n extractorMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n\n 'ae-forgotten-export': {\n logLevel: ruleToLogLevel('ae-forgotten-export', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-incompatible-release-tags': {\n logLevel: ruleToLogLevel('ae-incompatible-release-tags', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-internal-missing-underscore': {\n logLevel: ruleToLogLevel('ae-internal-missing-underscore'),\n addToApiReportFile: false,\n },\n\n 'ae-missing-release-tag': {\n logLevel: ruleToLogLevel('ae-missing-release-tag', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-wrong-input-file-type': {\n logLevel: 'none' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n },\n\n tsdocMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n\n 'tsdoc-link-tag-unescaped-text': {\n logLevel: ruleToLogLevel('tsdoc-link-tag-unescaped-text', 'warning' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'tsdoc-undefined-tag': {\n logLevel: ruleToLogLevel('tsdoc-undefined-tag', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'tsdoc-unsupported-tag': {\n logLevel: ruleToLogLevel('tsdoc-unsupported-tag', 'none' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n },\n }\n}\n","import fs from 'fs/promises'\nimport path from 'path'\nimport {\n Extractor,\n ExtractorConfig,\n ExtractorMessage,\n ExtractorResult,\n} from '@microsoft/api-extractor'\nimport mkdirp from 'mkdirp'\nimport prettier from 'prettier'\nimport {PkgConfigOptions, BuildFile} from '../../core'\nimport {createApiExtractorConfig} from './createApiExtractorConfig'\nimport {createTSDocConfig} from './createTSDocConfig'\nimport {extractModuleBlocksFromTypes} from './extractModuleBlocks'\nimport {getExtractMessagesConfig} from './getExtractMessagesConfig'\n\nexport async function extractTypes(options: {\n customTags: NonNullable<PkgConfigOptions['extract']>['customTags']\n cwd: string\n distPath: string\n exportPath: string\n filePath: string\n files: BuildFile[]\n projectPath: string\n rules?: NonNullable<PkgConfigOptions['extract']>['rules']\n sourceTypesPath: string\n tmpPath: string\n tsconfigPath: string\n}): Promise<{extractorResult: ExtractorResult; messages: ExtractorMessage[]}> {\n const {\n customTags,\n distPath,\n exportPath,\n files,\n filePath,\n projectPath,\n rules,\n sourceTypesPath,\n tmpPath,\n tsconfigPath,\n } = options\n\n const tsdocConfigFile = await createTSDocConfig({\n customTags: customTags || [],\n })\n\n const extractorConfig: ExtractorConfig = ExtractorConfig.prepare({\n configObject: createApiExtractorConfig({\n distPath,\n exportPath,\n filePath,\n messages: getExtractMessagesConfig({rules}),\n projectFolder: projectPath,\n mainEntryPointFilePath: sourceTypesPath,\n tsconfigPath,\n }),\n configObjectFullPath: undefined,\n tsdocConfigFile,\n packageJsonFullPath: path.resolve(projectPath, 'package.json'),\n })\n\n const messages: ExtractorMessage[] = []\n\n // Invoke API Extractor\n const extractorResult = Extractor.invoke(extractorConfig, {\n // Equivalent to the \"--local\" command-line parameter\n localBuild: true,\n // Equivalent to the \"--verbose\" command-line parameter\n showVerboseMessages: true,\n // handle messages\n messageCallback(message: ExtractorMessage) {\n messages.push(message)\n message.handled = true\n },\n })\n\n const typesPath = path.resolve(distPath, filePath)\n const typesBuf = await fs.readFile(typesPath)\n const prettierConfig = await prettier.resolveConfig(typesPath)\n\n await mkdirp(path.dirname(typesPath))\n\n const moduleBlocks = await extractModuleBlocksFromTypes({\n extractResult: extractorResult,\n tsOutDir: tmpPath,\n })\n\n const code = [typesBuf.toString(), ...moduleBlocks].join('\\n\\n')\n\n await fs.writeFile(\n typesPath,\n prettier.format(code, {\n ...prettierConfig,\n filepath: typesPath,\n })\n )\n\n // Add to `files` in context\n files.push({\n type: 'types',\n path: typesPath,\n })\n\n return {extractorResult, messages}\n}\n","import path from 'path'\nimport {promisify} from 'util'\nimport {ExtractorMessage} from '@microsoft/api-extractor'\nimport rimrafCallback from 'rimraf'\nimport {BuildContext} from '../../core'\nimport {buildTypes} from './buildTypes'\nimport {DtsError} from './DtsError'\nimport {extractTypes} from './extractTypes'\nimport {DtsResult, DtsTask, DtsWatchTask} from './types'\n\nconst rimraf = promisify(rimrafCallback)\n\n/**\n * - Build type definitions to a temporary directory using TypeScript compiler.\n * - Create a type definition bundle for each export entry.\n * - When done, remove the temporary directory.\n */\nexport async function doExtract(\n ctx: BuildContext,\n task: DtsTask | DtsWatchTask\n): Promise<DtsResult> {\n const {config, cwd, files, logger, strict, ts} = ctx\n\n if (!ts.config || !ts.configPath) {\n return {type: 'dts', messages: [], results: []}\n }\n\n const {outDir, rootDir = cwd} = ts.config.options\n\n if (!outDir) {\n throw new Error('tsconfig.json is missing `compilerOptions.outDir`')\n }\n\n const tmpPath = path.resolve(outDir, '__tmp__')\n\n await buildTypes({cwd, logger, outDir: tmpPath, strict, tsconfig: ts.config})\n const messages: ExtractorMessage[] = []\n\n const results: {sourcePath: string; filePath: string}[] = []\n\n for (const entry of task.entries) {\n const exportPath = entry.exportPath === '.' ? './index' : entry.exportPath\n\n const sourceTypesPath = path.resolve(\n tmpPath,\n path.relative(rootDir, path.resolve(cwd, entry.sourcePath)).replace(/\\.ts$/, '.d.ts')\n )\n\n const targetPath = path.resolve(cwd, entry.targetPath)\n const filePath = path.relative(outDir, targetPath)\n const result = await extractTypes({\n customTags: config?.extract?.customTags,\n cwd,\n distPath: outDir,\n exportPath,\n files,\n filePath: filePath,\n projectPath: cwd,\n rules: config?.extract?.rules,\n sourceTypesPath: sourceTypesPath,\n tmpPath,\n tsconfigPath: path.resolve(cwd, ts.configPath || 'tsconfig.json'),\n })\n\n messages.push(...result.messages)\n\n if (result.messages.some((msg) => msg.logLevel === 'error')) {\n await rimraf(tmpPath)\n\n throw new DtsError('encountered errors when extracting types', result.messages)\n }\n\n results.push({sourcePath: path.resolve(cwd, entry.sourcePath), filePath: targetPath})\n }\n\n await rimraf(tmpPath)\n\n return {type: 'dts', messages, results}\n}\n","import chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {printExtractMessages} from '../../printExtractMessages'\nimport {TaskHandler} from '../types'\nimport {doExtract} from './doExtract'\nimport {DtsError} from './DtsError'\nimport {DtsResult, DtsTask} from './types'\n\n/** @internal */\nexport const dtsTask: TaskHandler<DtsTask, DtsResult> = {\n name: (_ctx, task) =>\n [\n `Build type definitions...`,\n ` entries:`,\n ...task.entries.map((entry) =>\n [\n ` - ${chalk.cyan(entry.importId)}: `,\n `${chalk.yellow(entry.sourcePath)} ${chalk.gray('→')} ${chalk.yellow(entry.targetPath)}`,\n ].join('')\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return new Observable((observer) => {\n doExtract(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => {\n observer.error(err)\n })\n })\n },\n complete: (ctx, _task, result) => {\n printExtractMessages(ctx, result.messages)\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof DtsError) {\n printExtractMessages(ctx, err.messages)\n } else if (err instanceof Error) {\n logger.error(err)\n }\n },\n}\n","import chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {printExtractMessages} from '../../printExtractMessages'\nimport {TaskHandler} from '../types'\nimport {doExtract} from './doExtract'\nimport {DtsError} from './DtsError'\nimport {DtsResult, DtsWatchTask} from './types'\n\n/** @internal */\nexport const dtsWatchTask: TaskHandler<DtsWatchTask, DtsResult> = {\n name: (_ctx, task) =>\n [\n `build type definitions`,\n ...task.entries.map(\n (entry) =>\n ` ${chalk.blue(entry.importId)}: ${entry.sourcePath} -> ${entry.targetPath}`\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return new Observable((observer) => {\n doExtract(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => observer.error(err))\n })\n },\n complete: (ctx, _task, result) => {\n const {logger} = ctx\n\n printExtractMessages(ctx, result.messages)\n\n logger.warn('watching typescript definitions is currently not supported')\n logger.log()\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof DtsError) {\n printExtractMessages(ctx, err.messages)\n } else if (err instanceof Error) {\n logger.error(err)\n }\n },\n}\n","/* eslint-disable no-console */\n\nexport interface ConsoleSpyMsg {\n type: 'log' | 'warn' | 'error'\n code?: string\n args: unknown[]\n}\n\nexport interface ConsoleSpy {\n messages: ConsoleSpyMsg[]\n restore: () => void\n}\n\nexport function createConsoleSpy(options: {\n onRestored: (messages: ConsoleSpyMsg[]) => void\n}): ConsoleSpy {\n const {onRestored} = options\n\n const original = {\n log: console.log,\n warn: console.warn,\n error: console.error,\n }\n\n const messages: ConsoleSpyMsg[] = []\n\n console.log = (...args: unknown[]) => messages.push({type: 'log', args})\n console.warn = (...args: unknown[]) => messages.push({type: 'warn', args})\n console.error = (...args: unknown[]) => messages.push({type: 'error', args})\n\n return {\n messages,\n restore: () => {\n console.log = original.log\n console.warn = original.warn\n console.error = original.error\n\n onRestored(messages)\n },\n }\n}\n","import path from 'path'\nimport alias from '@rollup/plugin-alias'\nimport {getBabelOutputPlugin} from '@rollup/plugin-babel'\nimport commonjs from '@rollup/plugin-commonjs'\nimport json from '@rollup/plugin-json'\nimport {nodeResolve} from '@rollup/plugin-node-resolve'\nimport replace from '@rollup/plugin-replace'\nimport terser from '@rollup/plugin-terser'\nimport {InputOptions, OutputOptions, Plugin} from 'rollup'\nimport esbuild from 'rollup-plugin-esbuild'\nimport {BuildContext, DEFAULT_BROWSERSLIST_QUERY, resolveConfigProperty} from '../../core'\nimport {RollupTask, RollupWatchTask} from '../types'\n\nexport interface RollupConfig {\n inputOptions: InputOptions\n outputOptions: OutputOptions\n}\n\n/** @internal */\nexport function resolveRollupConfig(\n ctx: BuildContext,\n buildTask: RollupTask | RollupWatchTask\n): RollupConfig {\n const {format, runtime, target} = buildTask\n const {config, cwd, exports: _exports, extMap, external, distPath, logger, pkg, ts} = ctx\n const outputExt = extMap[pkg.type || 'commonjs'][format]\n const minify = config?.minify ?? false\n const outDir = path.relative(cwd, distPath)\n\n const pathAliases = Object.fromEntries(\n Object.entries(ts.config?.options.paths || {}).map(([key, val]) => {\n return [key, path.resolve(cwd, ts.config?.options.baseUrl || '.', val[0])]\n })\n )\n\n const entries = buildTask.entries.map((entry) => {\n return {\n ...entry,\n name: path.relative(outDir, entry.output).replace(/\\.[^/.]+$/, ''),\n }\n }, {})\n\n const exportIds =\n _exports && Object.keys(_exports).map((exportPath) => path.join(pkg.name, exportPath))\n\n const sourcePaths = _exports && Object.values(_exports).map((e) => path.resolve(cwd, e.source))\n\n const replacements = Object.fromEntries(\n Object.entries(config?.define || {}).map(([key, val]) => [key, JSON.stringify(val)])\n )\n\n const defaultPlugins = [\n replace({\n preventAssignment: true,\n values: {\n ...(pkg.name === '@sanity/pkg-utils'\n ? {...replacements}\n : {\n 'process.env.PKG_FILE_PATH': (arg) => {\n const sourcePath = './' + path.relative(cwd, arg)\n const entry = entries.find((e) => e.source === sourcePath)\n\n if (!entry) {\n // eslint-disable-next-line no-console\n console.error(`could not find source entry: ${sourcePath}`)\n\n return 'null'\n }\n\n return JSON.stringify(\n path.relative(cwd, path.resolve(outDir, entry.name + outputExt))\n )\n },\n 'process.env.PKG_FORMAT': JSON.stringify(format),\n 'process.env.PKG_RUNTIME': JSON.stringify(runtime),\n 'process.env.PKG_VERSION': JSON.stringify(process.env.PKG_VERSION || pkg.version),\n ...replacements,\n }),\n },\n }),\n alias({\n entries: {...pathAliases},\n }),\n nodeResolve({\n // mainFields: ['module', 'jsnext', 'main'],\n browser: runtime === 'browser',\n // exportConditions: [runtime === 'node' ? 'node' : 'browser'],\n extensions: ['.cjs', '.mjs', '.js', '.jsx', '.json', '.node'],\n preferBuiltins: true, // runtime === 'node',\n }),\n commonjs({\n esmExternals: false,\n extensions: ['.js'],\n // include: /\\/node_modules\\//,\n // requireReturnsDefault: 'namespace',\n }),\n json(),\n esbuild({\n jsx: config?.jsx ?? 'automatic',\n jsxFactory: config?.jsxFactory ?? 'createElement',\n jsxFragment: config?.jsxFragment ?? 'Fragment',\n jsxImportSource: config?.jsxImportSource ?? 'react',\n target,\n tsconfig: ctx.ts.configPath || 'tsconfig.json',\n }),\n getBabelOutputPlugin({\n babelrc: false,\n plugins: ['@babel/plugin-proposal-object-rest-spread'],\n presets: [['@babel/preset-env', {targets: pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY}]],\n }),\n minify &&\n terser({\n compress: {\n // Needed until https://github.com/terser/terser/issues/1320 is fixed\n directives: false,\n },\n output: {\n comments: (_node, comment) => {\n const text = comment.value\n const type = comment.type\n\n // Check if this is a multiline comment\n if (type == 'comment2') {\n // Keep licensing comments\n return /@preserve|@license|@cc_on/i.test(text)\n }\n\n return false\n },\n },\n }),\n ].filter(Boolean) as Plugin[]\n\n const userPlugins = config?.rollup?.plugins\n\n const plugins = Array.isArray(userPlugins)\n ? defaultPlugins.concat(userPlugins)\n : resolveConfigProperty(config?.rollup?.plugins, defaultPlugins)\n\n return {\n inputOptions: {\n context: cwd,\n\n external: (id, importer) => {\n // Check if the id is a self-referencing import\n if (exportIds?.includes(id)) {\n return true\n }\n\n // Check if the id is a file path that points to an exported source file\n if (importer && (id.startsWith('.') || id.startsWith('/'))) {\n const idPath = path.resolve(path.dirname(importer), id)\n\n if (sourcePaths?.includes(idPath)) {\n logger.warn(\n `detected self-referencing import – treating as external: ${path.relative(\n cwd,\n idPath\n )}`\n )\n\n return true\n }\n }\n\n const idParts = id.split('/')\n\n const name = idParts[0].startsWith('@') ? `${idParts[0]}/${idParts[1]}` : idParts[0]\n\n if (name && external.includes(name)) {\n return true\n }\n\n return false\n },\n\n input: entries.reduce<{[entryAlias: string]: string}>((acc, entry) => {\n return {...acc, [entry.name]: entry.source}\n }, {}),\n\n plugins,\n\n treeshake: {\n propertyReadSideEffects: false,\n },\n },\n outputOptions: {\n chunkFileNames: () => {\n const parts = outputExt.split('.')\n\n if (parts.length === 3) {\n return `_chunks/[name]-[hash].${parts[2]}`\n }\n\n return `_chunks/[name]-[hash]${outputExt}`\n },\n compact: minify,\n dir: outDir,\n entryFileNames: () => {\n const parts = outputExt.split('.')\n\n if (parts.length === 3) {\n return `[name].${parts[2]}`\n }\n\n return `[name]${outputExt}`\n },\n esModule: true,\n format,\n interop: 'compat',\n minifyInternalExports: minify,\n sourcemap: config?.sourcemap ?? true,\n },\n }\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport {rollup} from 'rollup'\nimport {Observable} from 'rxjs'\nimport {BuildContext} from '../../core'\nimport {RollupTask, TaskHandler} from '../types'\nimport {createConsoleSpy} from './consoleSpy'\nimport {resolveRollupConfig} from './resolveRollupConfig'\n\n/** @internal */\nexport const rollupTask: TaskHandler<RollupTask> = {\n name: (ctx, task) =>\n [\n `Build javascript files...`,\n ` format: ${chalk.yellow(task.format)}`,\n ` target:`,\n ...task.target.map((t) => ` - ${chalk.yellow(t)}`),\n ` entries:`,\n ...task.entries.map((e) =>\n [\n ` - `,\n `${chalk.cyan(path.join(ctx.pkg.name, e.path))}: `,\n `${chalk.yellow(e.source)} ${chalk.gray('→')} ${chalk.yellow(e.output)}`,\n ].join('')\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return new Observable((observer) => {\n execPromise(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => observer.error(err))\n })\n },\n complete: () => {\n //\n },\n error: (_ctx, _task, err) => {\n // eslint-disable-next-line no-console\n console.error(err)\n },\n}\n\nasync function execPromise(ctx: BuildContext, task: RollupTask) {\n const {distPath, files, logger} = ctx\n const outDir = path.relative(ctx.cwd, distPath)\n\n // Prevent rollup from printing directly to the console\n const consoleSpy = createConsoleSpy({\n onRestored: (messages) => {\n for (const msg of messages) {\n const text = String(msg.args[0])\n\n if (msg.code === 'CIRCULAR_DEPENDENCY') {\n continue // ignore\n }\n\n if (text.startsWith('Dynamic import can only')) {\n continue // ignore\n }\n\n if (text.startsWith('Sourcemap is likely to be incorrect')) {\n continue // ignore\n }\n\n if (msg.type === 'log') {\n logger.info(...msg.args)\n }\n\n if (msg.type === 'warn') {\n logger.warn(...msg.args)\n }\n\n if (msg.type === 'error') {\n logger.error(...msg.args)\n }\n }\n },\n })\n\n try {\n const {inputOptions, outputOptions} = resolveRollupConfig(ctx, task)\n\n // Create bundle\n const bundle = await rollup({\n ...inputOptions,\n onwarn(warning) {\n consoleSpy.messages.push({\n type: 'warn',\n code: warning.code,\n args: [warning.message],\n })\n },\n })\n\n // generate output specific code in-memory\n // you can call this function multiple times on the same bundle object\n const {output} = await bundle.generate(outputOptions)\n\n for (const chunkOrAsset of output) {\n if (chunkOrAsset.type === 'asset') {\n files.push({\n type: 'asset',\n path: path.resolve(outDir, chunkOrAsset.fileName),\n })\n } else {\n files.push({\n type: 'chunk',\n path: path.resolve(outDir, chunkOrAsset.fileName),\n })\n }\n }\n\n // or write the bundle to disk\n await bundle.write(outputOptions)\n\n // closes the bundle\n await bundle.close()\n\n // Restore console\n consoleSpy.restore()\n } catch (err) {\n // Restore console\n consoleSpy.restore()\n throw err\n }\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport {RollupWatcherEvent, RollupWatchOptions, watch as rollupWatch} from 'rollup'\nimport {Observable} from 'rxjs'\nimport {RollupWatchTask, TaskHandler} from '../types'\nimport {resolveRollupConfig} from './resolveRollupConfig'\n\n/** @internal */\nexport const rollupWatchTask: TaskHandler<RollupWatchTask, RollupWatcherEvent> = {\n name: (ctx, task) =>\n `build javascript files (target ${task.target.join(' + ')}, format ${\n task.format\n })\\n ${task.entries\n .map((e) => `${chalk.blue(path.join(ctx.pkg.name, e.path))}: ${e.source} -> ${e.output}`)\n .join('\\n ')}`,\n exec: (ctx, task) => {\n const {inputOptions, outputOptions} = resolveRollupConfig(ctx, task)\n\n return new Observable((observer) => {\n const watchOptions: RollupWatchOptions = {\n ...inputOptions,\n output: outputOptions,\n }\n\n const watcher = rollupWatch(watchOptions)\n\n watcher.on('event', (event) => {\n observer.next(event)\n })\n\n return () => {\n watcher.close()\n }\n })\n },\n complete: (ctx, task, event) => {\n const {logger} = ctx\n\n if (event.code === 'BUNDLE_END') {\n logger.success(\n `build javascript files (target ${task.target.join(' + ')}, format ${\n task.format\n })\\n ${task.entries\n .map((e) => `${chalk.blue(path.join(ctx.pkg.name, e.path))}: ${e.source} -> ${e.output}`)\n .join('\\n ')}`\n )\n logger.log('')\n\n return\n }\n\n if (event.code === 'BUNDLE_START') {\n return\n }\n\n if (event.code === 'END') {\n return\n }\n\n if (event.code === 'ERROR') {\n logger.error(event.code, event)\n\n return\n }\n\n if (event.code === 'START') {\n return\n }\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof Error) {\n logger.log(err)\n }\n },\n}\n","import {dtsTask, dtsWatchTask} from './dts'\nimport {rollupTask, rollupWatchTask} from './rollup'\nimport {BuildTaskHandlers, WatchTaskHandlers} from './types'\n\nexport * from './types'\nexport * from './dts'\nexport * from './rollup'\n\n/** @internal */\nexport const buildTaskHandlers: BuildTaskHandlers = {\n 'build:dts': dtsTask,\n 'build:js': rollupTask,\n}\n\n/** @internal */\nexport const watchTaskHandlers: WatchTaskHandlers = {\n 'watch:dts': dtsWatchTask,\n 'watch:js': rollupWatchTask,\n}\n"],"names":["printExtractMessages","ctx","messages","cwd","logger","warnings","filter","msg","logLevel","length","log","sourceFilePath","path","relative","messageId","chalk","cyan","yellow","sourceFileLine","default","sourceFileColumn","gray","text","join","errors","red","process","exit","printDiagnostic","options","diagnostic","file","start","line","character","ts","getLineAndCharacterOfPosition","message","flattenDiagnosticMessageText","messageText","fileName","output","blue","code","category","DiagnosticCategory","Error","error","Warning","warn","Message","Suggestion","buildTypes","outDir","tsconfig","strict","compilerOptions","declaration","declarationDir","emitDeclarationOnly","noEmit","program","createProgram","fileNames","emitResult","emit","allDiagnostics","getPreEmitDiagnostics","concat","diagnostics","emitSkipped","diag","DtsError","constructor","createApiExtractorConfig","distPath","exportPath","filePath","projectFolder","mainEntryPointFilePath","tsconfigPath","apiReport","enabled","reportFileName","compiler","tsconfigFilePath","docModel","apiJsonFilePath","resolve","dtsRollup","untrimmedFilePath","tsdocMetadata","createTSDocConfig","opts","customTags","tsDocBaseBuf","readFile","require","tsDocBaseConfig","parse","toString","tagDefinitions","map","t","tagName","name","syntaxKind","allowMultiple","supportForTags","customTag","TSDocConfigFile","loadFromObject","noStandardTags","extractModuleBlocksFromTypes","tsOutDir","extractResult","compilerState","moduleBlocks","allProgramFiles","getSourceFiles","sourceFiles","sourceFile","includes","push","extractModuleBlocks","fileContent","ast","parser","typeScriptParser","body","node","type","print","LOG_LEVELS","info","off","getExtractMessagesConfig","rules","ruleToLogLevel","key","defaultLevel","r","compilerMessageReporting","extractorMessageReporting","addToApiReportFile","tsdocMessageReporting","extractTypes","files","projectPath","sourceTypesPath","tmpPath","tsdocConfigFile","extractorConfig","ExtractorConfig","prepare","configObject","configObjectFullPath","packageJsonFullPath","extractorResult","Extractor","invoke","localBuild","showVerboseMessages","messageCallback","handled","typesPath","typesBuf","fs","prettierConfig","prettier","resolveConfig","mkdirp","dirname","writeFile","format","filepath","rimraf","promisify","rimrafCallback","doExtract","task","_a","_b","config","configPath","results","rootDir","entry","entries","sourcePath","replace","targetPath","result","extract","some","dtsTask","_ctx","importId","exec","Observable","observer","then","next","complete","catch","err","_task","dtsWatchTask","createConsoleSpy","onRestored","original","console","args","restore","resolveRollupConfig","buildTask","_c","runtime","target","exports","_exports","extMap","external","pkg","outputExt","minify","pathAliases","Object","fromEntries","paths","val","baseUrl","exportIds","keys","sourcePaths","values","e","source","replacements","define","JSON","stringify","defaultPlugins","preventAssignment","arg","find","env","PKG_VERSION","version","alias","nodeResolve","browser","extensions","preferBuiltins","commonjs","esmExternals","json","esbuild","jsx","jsxFactory","jsxFragment","jsxImportSource","getBabelOutputPlugin","babelrc","plugins","presets","targets","browserslist","DEFAULT_BROWSERSLIST_QUERY","terser","compress","directives","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","resolveConfigProperty","inputOptions","context","id","importer","startsWith","idPath","idParts","split","input","reduce","acc","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","parts","compact","dir","entryFileNames","esModule","interop","minifyInternalExports","sourcemap","rollupTask","execPromise","consoleSpy","String","bundle","onwarn","warning","generate","chunkOrAsset","write","close","rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","buildTaskHandlers","watchTaskHandlers"],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  'use strict';
2
2
 
3
+ const _excluded = ["_path"];
4
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
5
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
10
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3
11
  var path = require('path');
4
12
  var node = require('esbuild-register/dist/node');
5
13
  var pkgUp = require('pkg-up');
@@ -85,7 +93,7 @@ function resolveConfigProperty(prop, initialValue) {
85
93
  return prop;
86
94
  }
87
95
  const pkgSchema = zod.z.object({
88
- type: zod.z.enum(["commonjs", "module"]),
96
+ type: zod.z.optional(zod.z.enum(["commonjs", "module"])),
89
97
  name: zod.z.string(),
90
98
  version: zod.z.string(),
91
99
  license: zod.z.string(),
@@ -118,11 +126,7 @@ const pkgSchema = zod.z.object({
118
126
  browserslist: zod.z.optional(zod.z.array(zod.z.string()))
119
127
  });
120
128
  function validatePkg(input) {
121
- const pkg = pkgSchema.parse(input);
122
- return {
123
- ...pkg,
124
- type: pkg.type || "commonjs"
125
- };
129
+ return pkgSchema.parse(input);
126
130
  }
127
131
  async function loadPkg(options) {
128
132
  const {
@@ -141,9 +145,13 @@ async function loadPkgWithReporting(options) {
141
145
  logger
142
146
  } = options;
143
147
  try {
144
- return await loadPkg({
148
+ const pkg = await loadPkg({
145
149
  cwd
146
150
  });
151
+ if (pkg.type === void 0) {
152
+ logger.warn('no "type" field in package.json, defaulting to "commonjs"');
153
+ }
154
+ return pkg;
147
155
  } catch (err) {
148
156
  if (err instanceof zod.ZodError) {
149
157
  for (const issue of err.issues) {
@@ -174,7 +182,7 @@ function validateExports(_exports, options) {
174
182
  extMap,
175
183
  pkg
176
184
  } = options;
177
- const ext = extMap[pkg.type];
185
+ const ext = extMap[pkg.type || "commonjs"];
178
186
  const errors = [];
179
187
  for (const exp of _exports) {
180
188
  if (exp.require && !exp.require.endsWith(ext.commonjs)) {
@@ -235,11 +243,10 @@ function parseExports(options) {
235
243
  }
236
244
  Object.assign(rootExport, exportEntry);
237
245
  } else {
238
- const extraExport = {
246
+ const extraExport = _objectSpread({
239
247
  _exported: true,
240
- _path: exportPath,
241
- ...exportEntry
242
- };
248
+ _path: exportPath
249
+ }, exportEntry);
243
250
  extraExports.push(extraExport);
244
251
  }
245
252
  } else {
@@ -271,9 +278,7 @@ function getPkgExtMap(options) {
271
278
  const {
272
279
  legacyExports
273
280
  } = options;
274
- const ret = {
275
- ...DEFAULT_PKG_EXT_MAP
276
- };
281
+ const ret = _objectSpread({}, DEFAULT_PKG_EXT_MAP);
277
282
  if (legacyExports) {
278
283
  ret["commonjs"] = {
279
284
  commonjs: ".js",
@@ -462,13 +467,12 @@ async function resolveBuildContext(options) {
462
467
  strict
463
468
  }).reduce((acc, x) => {
464
469
  const {
465
- _path: exportPath,
466
- ...exportEntry
467
- } = x;
468
- return {
469
- ...acc,
470
+ _path: exportPath
471
+ } = x,
472
+ exportEntry = _objectWithoutProperties(x, _excluded);
473
+ return _objectSpread(_objectSpread({}, acc), {}, {
470
474
  [exportPath]: exportEntry
471
- };
475
+ });
472
476
  }, {});
473
477
  const exports = resolveConfigProperty(config == null ? void 0 : config.exports, parsedExports);
474
478
  const parsedExternal = [...(pkg.dependencies ? Object.keys(pkg.dependencies) : []), ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : [])];
@@ -526,4 +530,4 @@ exports.loadTSConfig = loadTSConfig;
526
530
  exports.parseExports = parseExports;
527
531
  exports.resolveBuildContext = resolveBuildContext;
528
532
  exports.resolveConfigProperty = resolveConfigProperty;
529
- //# sourceMappingURL=resolveBuildContext-65b5c5d5.cjs.map
533
+ //# sourceMappingURL=resolveBuildContext-8833c9b4.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBuildContext-8833c9b4.cjs","sources":["../../src/node/core/defaults.ts","../../src/node/core/isRecord.ts","../../src/node/core/config/findConfigFile.ts","../../src/node/core/config/loadConfig.ts","../../src/node/core/config/resolveConfigProperty.ts","../../src/node/core/pkg/validatePkg.ts","../../src/node/core/pkg/loadPkg.ts","../../src/node/core/pkg/loadPkgWithReporting.ts","../../src/node/core/pkg/validateExports.ts","../../src/node/core/pkg/parseExports.ts","../../src/node/core/pkg/pkgExt.ts","../../src/node/core/ts/loadTSConfig.ts","../../src/node/logger.ts","../../src/node/core/findCommonPath.ts","../../src/node/resolveBrowserslistVersions.ts","../../src/node/resolveBrowserTarget.ts","../../src/node/resolveNodeTarget.ts","../../src/node/resolveBuildContext.ts"],"sourcesContent":["/** @public */\nexport const DEFAULT_BROWSERSLIST_QUERY = [\n '> 0.2% and supports es6-module and supports es6-module-dynamic-import',\n 'not dead',\n 'not IE 11',\n 'maintained node versions',\n]\n","/** @internal */\nexport function isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && !Array.isArray(value) && typeof value === 'object'\n}\n","import {stat} from 'fs/promises'\nimport path from 'path'\nimport findConfig from 'find-config'\n\nconst CONFIG_FILE_NAMES = [\n 'package.config.ts',\n 'package.config.js',\n 'package.config.cjs',\n 'package.config.mjs',\n]\n\nexport async function findConfigFile(cwd: string): Promise<string | undefined> {\n const pkgJsonPath = findConfig('package.json', {cwd})\n\n if (!pkgJsonPath) return undefined\n\n const pkgPath = path.dirname(pkgJsonPath)\n\n for (const fileName of CONFIG_FILE_NAMES) {\n const configPath = path.resolve(pkgPath, fileName)\n\n const exists = await fileExists(configPath)\n\n if (exists) {\n return configPath\n }\n }\n\n return undefined\n}\n\nasync function fileExists(filePath: string) {\n try {\n await stat(filePath)\n\n return true\n } catch (_) {\n return false\n }\n}\n","import path from 'path'\nimport {register} from 'esbuild-register/dist/node'\nimport pkgUp from 'pkg-up'\nimport {findConfigFile} from './findConfigFile'\nimport {PkgConfigOptions} from './types'\n\n/** @internal */\nexport async function loadConfig(options: {cwd: string}): Promise<PkgConfigOptions | undefined> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) return undefined\n\n const root = path.dirname(pkgPath)\n\n const configFile = await findConfigFile(root)\n\n if (!configFile) {\n return undefined\n }\n\n // Do not accept config files outside of the root\n if (!configFile.startsWith(cwd)) {\n return undefined\n }\n\n const esbuildOptions = {extensions: ['.js', '.mjs', '.ts']}\n\n const {unregister} = globalThis.__DEV__ ? {unregister: () => undefined} : register(esbuildOptions)\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(configFile)\n\n unregister()\n\n return mod?.default || mod || undefined\n}\n","import {PkgConfigProperty, PkgConfigPropertyResolver} from './types'\n\n/** @internal */\nexport function resolveConfigProperty<T>(\n prop: PkgConfigProperty<T> | undefined,\n initialValue: T\n): T {\n if (!prop) return initialValue\n\n if (typeof prop === 'function') {\n return (prop as PkgConfigPropertyResolver<T>)(initialValue)\n }\n\n return prop\n}\n","import {z} from 'zod'\nimport {PackageJSON} from './types'\n\nconst pkgSchema = z.object({\n type: z.optional(z.enum(['commonjs', 'module'])),\n name: z.string(),\n version: z.string(),\n license: z.string(),\n bin: z.optional(z.record(z.string())),\n dependencies: z.optional(z.record(z.string())),\n devDependencies: z.optional(z.record(z.string())),\n peerDependencies: z.optional(z.record(z.string())),\n source: z.optional(z.string()),\n main: z.optional(z.string()),\n browser: z.optional(z.record(z.string())),\n module: z.optional(z.string()),\n types: z.optional(z.string()),\n exports: z.optional(\n z.record(\n z.union([\n z.custom<`./${string}.json`>((val) => /^\\.\\/.*\\.json$/.test(val as string)),\n z.object({\n types: z.optional(z.string()),\n source: z.string(),\n browser: z.optional(\n z.object({\n source: z.string(),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\n node: z.optional(\n z.object({\n source: z.string(),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n default: z.string(),\n }),\n ])\n )\n ),\n browserslist: z.optional(z.array(z.string())),\n})\n\nexport function validatePkg(input: unknown): PackageJSON {\n return pkgSchema.parse(input)\n}\n","import fs from 'fs/promises'\nimport pkgUp from 'pkg-up'\nimport {PackageJSON} from './types'\nimport {validatePkg} from './validatePkg'\n\n/** @internal */\nexport async function loadPkg(options: {cwd: string}): Promise<PackageJSON> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) throw new Error('no package.json found')\n\n const buf = await fs.readFile(pkgPath)\n\n return validatePkg(JSON.parse(buf.toString()))\n}\n","import chalk from 'chalk'\nimport {ZodError} from 'zod'\nimport {Logger} from '../../logger'\nimport {loadPkg} from './loadPkg'\nimport {PackageJSON} from './types'\n\n/** @internal */\nexport async function loadPkgWithReporting(options: {\n cwd: string\n logger: Logger\n}): Promise<PackageJSON> {\n const {cwd, logger} = options\n\n try {\n const pkg = await loadPkg({cwd})\n\n if (pkg.type === undefined) {\n logger.warn('no \"type\" field in package.json, defaulting to \"commonjs\"')\n }\n\n return pkg\n } catch (err) {\n if (err instanceof ZodError) {\n for (const issue of err.issues) {\n if (issue.code === 'invalid_type') {\n logger.error(\n [\n `\\`${formatPath(issue.path)}\\` `,\n `in \\`./package.json\\` must be of type ${chalk.magenta(issue.expected)} `,\n `(received ${chalk.magenta(issue.received)})`,\n ].join('')\n )\n }\n }\n } else {\n logger.error(err)\n }\n\n process.exit(1)\n }\n}\n\nfunction formatPath(segments: Array<string | number>) {\n return segments\n .map((s, idx) => {\n if (idx === 0) return s\n\n if (typeof s === 'number') {\n return `[${s}]`\n }\n\n if (s.startsWith('.')) {\n return `[\"${s}\"]`\n }\n\n return `.${s}`\n })\n .join('')\n}\n","import {PkgExport} from '../config'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\n\nexport function validateExports(\n _exports: (PkgExport & {_path: string})[],\n options: {extMap: PkgExtMap; pkg: PackageJSON}\n): string[] {\n const {extMap, pkg} = options\n const ext = extMap[pkg.type || 'commonjs']\n\n const errors: string[] = []\n\n for (const exp of _exports) {\n if (exp.require && !exp.require.endsWith(ext.commonjs)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].require\\` must end with \"${ext.commonjs}\"`\n )\n }\n\n if (exp.import && !exp.import.endsWith(ext.esm)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].import\\` must end with \"${ext.esm}\"`\n )\n }\n }\n\n return errors\n}\n","import {PkgExport} from '../config'\nimport {isRecord} from '../isRecord'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\nimport {validateExports} from './validateExports'\n\n/** @internal */\nexport function parseExports(options: {\n extMap: PkgExtMap\n pkg: PackageJSON\n strict: boolean\n}): (PkgExport & {_path: string})[] {\n const {extMap, pkg, strict} = options\n\n const rootExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: '.',\n types: pkg.types,\n source: pkg.source || '',\n browser: pkg.browser && {\n source: pkg.source || '',\n require: pkg.main && pkg.browser[pkg.main],\n import: pkg.module && pkg.browser[pkg.module],\n },\n import: pkg.module,\n require: pkg.main,\n default: pkg.module || pkg.main || '',\n }\n\n const extraExports: (PkgExport & {_path: string})[] = []\n\n const errors: string[] = []\n\n if (pkg.exports) {\n if (strict && !pkg.exports['./package.json']) {\n errors.push('package.json: `exports[\"./package.json\"] must be declared.')\n }\n\n for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {\n if (exportPath.endsWith('.json')) {\n if (exportPath === './package.json') {\n if (exportEntry !== './package.json') {\n errors.push('package.json: `exports[\"./package.json\"] must be \"./package.json\".')\n }\n }\n } else if (isRecord(exportEntry)) {\n if (exportPath === '.') {\n if (\n exportEntry.require &&\n rootExport.require &&\n exportEntry.require !== rootExport.require\n ) {\n errors.push(\n 'package.json: mismatch between \"main\" and \"exports.require\". These must be equal.'\n )\n }\n\n if (exportEntry.import && rootExport.import && exportEntry.import !== rootExport.import) {\n errors.push(\n 'package.json: mismatch between \"module\" and \"exports.import\" These must be equal.'\n )\n }\n\n if (exportEntry.types && rootExport.types && exportEntry.types !== rootExport.types) {\n errors.push(\n 'package.json: mismatch between \"types\" and \"exports.types\". These must be equal.'\n )\n }\n\n if (exportEntry.source && rootExport.source && exportEntry.source !== rootExport.source) {\n errors.push(\n 'package.json: mismatch between \"source\" and \"exports.source\". These must be equal.'\n )\n }\n\n Object.assign(rootExport, exportEntry)\n } else {\n const extraExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: exportPath,\n ...exportEntry,\n }\n\n extraExports.push(extraExport)\n }\n } else {\n errors.push('package.json: exports must be an object')\n }\n }\n }\n\n const _exports = [rootExport, ...extraExports]\n\n errors.push(...validateExports(_exports, {extMap, pkg}))\n\n if (errors.length) {\n throw new Error('\\n- ' + errors.join('\\n- '))\n }\n\n return _exports\n}\n","/** @internal */\nexport interface PkgExtMap {\n commonjs: {commonjs: string; esm: string}\n module: {commonjs: string; esm: string}\n}\n\n/** @internal */\nexport const DEFAULT_PKG_EXT_MAP: PkgExtMap = {\n // pkg.type: \"commonjs\"\n commonjs: {\n commonjs: '.js',\n esm: '.mjs',\n },\n\n // pkg.type: \"module\"\n module: {\n commonjs: '.cjs',\n esm: '.js',\n },\n}\n\n/** @internal */\nexport function getPkgExtMap(options: {legacyExports: boolean}): PkgExtMap {\n const {legacyExports} = options\n\n const ret = {...DEFAULT_PKG_EXT_MAP}\n\n // Fall back to legacy file extensions for package.json with `\"type\": \"commonjs\"`\n // NOTE: Not supported by Node 14+ and will be removed in a future version\n if (legacyExports) {\n ret['commonjs'] = {\n commonjs: '.js',\n esm: '.esm.js',\n }\n }\n\n return ret\n}\n","import ts from 'typescript'\n\n/** @internal */\nexport async function loadTSConfig(options: {\n cwd: string\n tsconfigPath: string\n}): Promise<ts.ParsedCommandLine> {\n const {cwd, tsconfigPath} = options\n\n const configPath = ts.findConfigFile(cwd, ts.sys.fileExists, tsconfigPath)\n\n if (!configPath) {\n throw new Error(`could not find a valid '${tsconfigPath}'`)\n }\n\n const configFile = ts.readConfigFile(configPath, ts.sys.readFile)\n\n return ts.parseJsonConfigFileContent(configFile.config, ts.sys, cwd)\n}\n","import chalk from 'chalk'\n\n/** @internal */\nexport interface Logger {\n log: (...args: unknown[]) => void\n info: (...args: unknown[]) => void\n warn: (...args: unknown[]) => void\n error: (...args: unknown[]) => void\n success: (...args: unknown[]) => void\n}\n\n/** @internal */\nexport function createLogger(): Logger {\n return {\n /* eslint-disable no-console */\n log: (...args) => {\n console.log(...args)\n },\n info: (...args) => {\n console.log(chalk.blue('[info]'), ...args)\n },\n warn: (...args) => {\n console.log(chalk.yellow('[warning]'), ...args)\n },\n error: (...args) => {\n console.log(chalk.red('[error]'), ...args)\n },\n success: (...args) => {\n console.log(chalk.green('[success]'), ...args)\n },\n /* eslint-enable no-console */\n }\n}\n","import path from 'path'\n\nexport function pathContains(containerPath: string, itemPath: string): boolean {\n return !path.relative(containerPath, itemPath).startsWith('..')\n}\n\nexport function findCommonDirPath(filePaths: string[]): string | undefined {\n let ret: string | undefined = undefined\n\n for (const filePath of filePaths) {\n let dirPath = path.dirname(filePath)\n\n if (!ret) {\n ret = dirPath\n continue\n }\n\n while (dirPath !== ret) {\n dirPath = path.dirname(dirPath)\n\n if (dirPath === ret) {\n break\n }\n\n if (pathContains(dirPath, ret)) {\n ret = dirPath\n break\n }\n\n if (dirPath === '.') return undefined\n }\n }\n\n return ret\n}\n","import browserslist from 'browserslist'\n\nexport interface PackageTargetVersions {\n chrome: string[]\n ff: string[]\n edge: string[]\n iosSaf: string[]\n saf: string[]\n opera: string[]\n node: string[]\n}\n\nfunction sortAsNumber(a: string, b: string) {\n const aVersion = Number(a)\n const bVersion = Number(b)\n\n return aVersion - bVersion\n}\n\nexport function resolveBrowserslistVersions(query: string[]): PackageTargetVersions {\n const result = browserslist(query)\n\n const entries = result.map((key) => {\n const [name, version] = key.split(' ')\n\n return {name, version: version.split('-')[0].split('.')[0]}\n })\n\n const andChr = entries.filter((b) => b.name === 'and_chr')\n const andFf = entries.filter((b) => b.name === 'and_ff')\n const chrome = entries.filter((b) => b.name === 'chrome')\n const edge = entries.filter((b) => b.name === 'edge')\n const ff = entries.filter((b) => b.name === 'firefox')\n const iosSaf = entries.filter((b) => b.name === 'ios_saf')\n const saf = entries.filter((b) => b.name === 'safari')\n const opera = entries.filter((b) => b.name === 'opera')\n const node = entries.filter((b) => b.name === 'node')\n\n // versions\n const versions: PackageTargetVersions = {\n chrome: andChr.concat(chrome).map((b) => b.version),\n ff: andFf.concat(ff).map((b) => b.version),\n edge: edge.map((b) => b.version),\n iosSaf: iosSaf.map((b) => b.version),\n saf: saf.map((b) => b.version),\n opera: opera.map((b) => b.version),\n node: node.map((b) => b.version),\n }\n\n // sort\n versions.chrome.sort(sortAsNumber)\n versions.ff.sort(sortAsNumber)\n versions.edge.sort(sortAsNumber)\n versions.iosSaf.sort(sortAsNumber)\n versions.saf.sort(sortAsNumber)\n versions.opera.sort(sortAsNumber)\n versions.node.sort(sortAsNumber)\n\n return versions\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveBrowserTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.chrome.length) {\n target.push(`chrome${versions.chrome[0]}`)\n }\n\n if (versions.ff.length) {\n target.push(`firefox${versions.ff[0]}`)\n }\n\n if (versions.edge.length) {\n target.push(`edge${versions.edge[0]}`)\n }\n\n if (versions.iosSaf.length) {\n target.push(`ios${versions.iosSaf[0]}`)\n }\n\n if (versions.saf.length) {\n target.push(`safari${versions.saf[0]}`)\n }\n\n if (versions.opera.length) {\n target.push(`opera${versions.opera[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveNodeTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.node.length) {\n target.push(`node${versions.node[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import path from 'path'\nimport {\n PkgConfigOptions,\n PkgExports,\n PkgRuntime,\n BuildContext,\n DEFAULT_BROWSERSLIST_QUERY,\n loadTSConfig,\n PackageJSON,\n parseExports,\n resolveConfigProperty,\n PkgExtMap,\n} from './core'\nimport {findCommonDirPath, pathContains} from './core/findCommonPath'\nimport {Logger} from './logger'\nimport {resolveBrowserslistVersions} from './resolveBrowserslistVersions'\nimport {resolveBrowserTarget} from './resolveBrowserTarget'\nimport {resolveNodeTarget} from './resolveNodeTarget'\n\nexport async function resolveBuildContext(options: {\n config?: PkgConfigOptions\n cwd: string\n emitDeclarationOnly?: boolean\n extMap: PkgExtMap\n logger: Logger\n pkg: PackageJSON\n strict: boolean\n tsconfig: string\n}): Promise<BuildContext> {\n const {\n config,\n cwd,\n emitDeclarationOnly = false,\n extMap,\n logger,\n pkg,\n strict,\n tsconfig: tsconfigPath,\n } = options\n const tsconfig = await loadTSConfig({cwd, tsconfigPath})\n const targetVersions = resolveBrowserslistVersions(pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY)\n const nodeTarget = resolveNodeTarget(targetVersions)\n const webTarget = resolveBrowserTarget(targetVersions)\n\n if (!nodeTarget) {\n throw new Error('no matching `node` target')\n }\n\n if (!webTarget) {\n throw new Error('no matching `web` target')\n }\n\n const target: Record<PkgRuntime, string[]> = {\n '*': webTarget.concat(nodeTarget),\n browser: webTarget,\n node: nodeTarget,\n }\n\n const parsedExports = parseExports({extMap, pkg, strict}).reduce<PkgExports>((acc, x) => {\n const {_path: exportPath, ...exportEntry} = x\n\n return {...acc, [exportPath]: exportEntry}\n }, {})\n\n const exports = resolveConfigProperty(config?.exports, parsedExports)\n\n const parsedExternal = [\n ...(pkg.dependencies ? Object.keys(pkg.dependencies) : []),\n ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : []),\n ]\n\n // Merge externals if an array is provided, replace if it's a function\n const external =\n config && Array.isArray(config.external)\n ? [...parsedExternal, ...config.external]\n : resolveConfigProperty(config?.external, parsedExternal)\n\n const outputPaths = Object.values(exports)\n .flatMap((exportEntry) => {\n return [\n exportEntry.import,\n exportEntry.require,\n exportEntry.browser?.import,\n exportEntry.browser?.require,\n exportEntry.node?.import,\n exportEntry.node?.require,\n ].filter(Boolean) as string[]\n })\n .map((p) => path.resolve(cwd, p))\n\n const commonDistPath = findCommonDirPath(outputPaths)\n\n if (commonDistPath === cwd) {\n throw new Error(\n 'all output files must share a common parent directory which is not the root package directory'\n )\n }\n\n if (commonDistPath && !pathContains(cwd, commonDistPath)) {\n throw new Error('all output files must be located within the package')\n }\n\n const configDistPath = config?.dist ? path.resolve(cwd, config.dist) : undefined\n\n if (\n configDistPath &&\n commonDistPath &&\n configDistPath !== commonDistPath &&\n !pathContains(configDistPath, commonDistPath)\n ) {\n logger.log(`did you mean to configure \\`dist: './${path.relative(cwd, commonDistPath)}'\\`?`)\n\n throw new Error('all output files must be located with the configured `dist` path')\n }\n\n const distPath = configDistPath || commonDistPath\n\n if (!distPath) {\n throw new Error('could not detect `dist` path')\n }\n\n const ctx: BuildContext = {\n config,\n cwd,\n distPath,\n emitDeclarationOnly,\n exports,\n external,\n extMap,\n files: [],\n logger,\n pkg,\n runtime: config?.runtime ?? '*',\n strict,\n target,\n ts: {\n config: tsconfig,\n configPath: tsconfigPath,\n },\n }\n\n return ctx\n}\n"],"names":["DEFAULT_BROWSERSLIST_QUERY","isRecord","value","Boolean","Array","isArray","CONFIG_FILE_NAMES","findConfigFile","cwd","pkgJsonPath","findConfig","default","pkgPath","path","dirname","fileName","configPath","resolve","exists","fileExists","filePath","stat","_","loadConfig","options","pkgUp","root","configFile","startsWith","esbuildOptions","extensions","unregister","globalThis","__DEV__","register","mod","require","resolveConfigProperty","prop","initialValue","pkgSchema","z","object","type","optional","enum","name","string","version","license","bin","record","dependencies","devDependencies","peerDependencies","source","main","browser","module","types","exports","union","custom","val","test","import","node","browserslist","array","validatePkg","input","parse","loadPkg","Error","buf","fs","readFile","JSON","toString","loadPkgWithReporting","logger","pkg","warn","err","ZodError","issue","issues","code","error","formatPath","chalk","magenta","expected","received","join","process","exit","segments","map","s","idx","validateExports","_exports","extMap","ext","errors","exp","endsWith","commonjs","push","_path","esm","parseExports","strict","rootExport","_exported","extraExports","exportPath","exportEntry","Object","entries","assign","extraExport","length","DEFAULT_PKG_EXT_MAP","getPkgExtMap","legacyExports","ret","loadTSConfig","tsconfigPath","ts","sys","readConfigFile","parseJsonConfigFileContent","config","createLogger","log","console","info","args","blue","yellow","red","success","green","pathContains","containerPath","itemPath","relative","findCommonDirPath","filePaths","dirPath","sortAsNumber","a","b","aVersion","Number","bVersion","resolveBrowserslistVersions","query","result","key","split","andChr","filter","andFf","chrome","edge","ff","iosSaf","saf","opera","versions","concat","sort","resolveBrowserTarget","target","resolveNodeTarget","resolveBuildContext","emitDeclarationOnly","tsconfig","targetVersions","nodeTarget","webTarget","parsedExports","reduce","acc","x","parsedExternal","keys","external","outputPaths","values","flatMap","_a","_b","_c","_d","p","commonDistPath","configDistPath","dist","distPath","ctx","files","runtime"],"mappings":"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"}
@@ -1,13 +1,18 @@
1
1
  'use strict';
2
2
 
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3
8
  var path = require('path');
4
9
  var rxjs = require('rxjs');
5
- var resolveBuildContext = require('./resolveBuildContext-65b5c5d5.cjs');
10
+ var resolveBuildContext = require('./resolveBuildContext-8833c9b4.cjs');
6
11
  require('fs/promises');
7
12
  require('pkg-up');
8
13
  require('typescript');
9
14
  var fs = require('fs');
10
- var index = require('./index-03f2cc83.cjs');
15
+ var index = require('./index-fbd66d35.cjs');
11
16
  var operators = require('rxjs/operators');
12
17
  var globby = require('globby');
13
18
  var chokidar = require('chokidar');
@@ -31,10 +36,9 @@ function resolveWatchTasks(ctx) {
31
36
  const tasks = [];
32
37
  const exports = Object.entries(ctx.exports || {}).map(_ref => {
33
38
  let [_path, exp] = _ref;
34
- return {
35
- _path,
36
- ...exp
37
- };
39
+ return _objectSpread({
40
+ _path
41
+ }, exp);
38
42
  });
39
43
  const dtsTask = {
40
44
  type: "watch:dts",
@@ -225,4 +229,4 @@ async function watch(options) {
225
229
  });
226
230
  }
227
231
  exports.watch = watch;
228
- //# sourceMappingURL=watch-2663890e.cjs.map
232
+ //# sourceMappingURL=watch-8c069c12.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"watch-2663890e.cjs","sources":["../../src/node/resolveWatchTasks.ts","../../src/node/globFiles.ts","../../src/node/watchFiles.ts","../../src/node/watchConfigFiles.ts","../../src/node/watch.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport {PkgExport, PkgFormat, PkgRuntime, BuildContext} from './core'\nimport {WatchTask, DtsWatchTask, RollupWatchTask, RollupTaskEntry} from './tasks'\n\n/** @internal */\nexport function resolveWatchTasks(ctx: BuildContext): WatchTask[] {\n const {config, cwd, pkg, target} = ctx\n const tasks: WatchTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp} as PkgExport & {_path: string})\n )\n\n const dtsTask: DtsWatchTask = {\n type: 'watch:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupWatchTask> = {}\n\n function addRollupTaskEntry(format: PkgFormat, runtime: PkgRuntime, entry: RollupTaskEntry) {\n const buildId = `${format}:${runtime}`\n\n if (rollupTasks[buildId]) {\n rollupTasks[buildId].entries.push(entry)\n } else {\n rollupTasks[buildId] = {\n type: 'watch:js',\n buildId,\n entries: [entry],\n runtime,\n format,\n target: target[runtime],\n }\n }\n }\n\n // Parse `dts` tasks\n for (const exp of exports) {\n const importId = path.join(pkg.name, exp._path)\n\n if (exp.types) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPath: exp.types,\n })\n }\n }\n\n // Parse rollup:commonjs:* tasks\n for (const exp of exports) {\n const output = exp.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:commonjs:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:* tasks\n for (const exp of exports) {\n const output = exp.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n tasks.push(...Object.values(rollupTasks))\n\n // Write legacy exports files\n if (config?.legacyExports) {\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(\n /\\.[^/.]+$/,\n ''\n )\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [`// AUTO-GENERATED – DO NOT EDIT`, `export * from '${relativeTargetPath}'`, ``].join(\n '\\n'\n )\n )\n }\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\n\nexport function globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns)\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function watchFiles(patterns: string[]): Observable<FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', handleFileEvent)\n\n return () => {\n watcher.off('all', handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\nimport {globFiles} from './globFiles'\nimport {Logger} from './logger'\nimport {watchFiles} from './watchFiles'\n\nexport async function watchConfigFiles(options: {\n cwd: string\n logger: Logger\n}): Promise<Observable<string[]>> {\n const {cwd, logger} = options\n\n const initialFiles = await globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n logger.log(\n '--------------------------------------------------------------------------------'\n )\n logger.info(path.relative(cwd, fileEvent.file), 'changed')\n logger.log('')\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged()\n )\n}\n","import path from 'path'\nimport {switchMap} from 'rxjs'\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {WatchTask, TaskHandler, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const logger = createLogger()\n\n const configFiles$ = await watchConfigFiles({cwd, logger})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await loadPkgWithReporting({cwd, logger})\n const config = await loadConfig({cwd})\n const extMap = getPkgExtMap({legacyExports: config?.legacyExports ?? false})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\n })\n )\n\n ctx$.subscribe(async (ctx) => {\n const watchTasks = resolveWatchTasks(ctx)\n\n for (const task of watchTasks) {\n const handler = watchTaskHandlers[task.type] as TaskHandler<WatchTask, unknown>\n const result$ = handler.exec(ctx, task)\n\n result$.subscribe({\n error: (err) => {\n ctx.logger.error(err)\n ctx.logger.log()\n\n process.exit(1)\n },\n next: (result) => {\n handler.complete(ctx, task, result)\n },\n complete: () => {\n ctx.logger.success(handler.name(ctx, task))\n ctx.logger.log()\n },\n })\n }\n })\n}\n"],"names":["resolveWatchTasks","ctx","_a","_b","_c","_d","_e","config","cwd","pkg","target","tasks","exports","Object","entries","map","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","default","resolve","globFiles","patterns","globby","watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","file","next","on","off","close","watchConfigFiles","options","logger","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","log","info","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","createLogger","configFiles$","ctx$","switchMap","configFiles","packageJsonPath","find","Error","loadPkgWithReporting","loadConfig","extMap","getPkgExtMap","resolveBuildContext","subscribe","watchTasks","task","handler","watchTaskHandlers","result$","exec","error","err","process","exit","result","complete","success"],"mappings":"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"}
1
+ {"version":3,"file":"watch-8c069c12.cjs","sources":["../../src/node/resolveWatchTasks.ts","../../src/node/globFiles.ts","../../src/node/watchFiles.ts","../../src/node/watchConfigFiles.ts","../../src/node/watch.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport {PkgExport, PkgFormat, PkgRuntime, BuildContext} from './core'\nimport {WatchTask, DtsWatchTask, RollupWatchTask, RollupTaskEntry} from './tasks'\n\n/** @internal */\nexport function resolveWatchTasks(ctx: BuildContext): WatchTask[] {\n const {config, cwd, pkg, target} = ctx\n const tasks: WatchTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp} as PkgExport & {_path: string})\n )\n\n const dtsTask: DtsWatchTask = {\n type: 'watch:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupWatchTask> = {}\n\n function addRollupTaskEntry(format: PkgFormat, runtime: PkgRuntime, entry: RollupTaskEntry) {\n const buildId = `${format}:${runtime}`\n\n if (rollupTasks[buildId]) {\n rollupTasks[buildId].entries.push(entry)\n } else {\n rollupTasks[buildId] = {\n type: 'watch:js',\n buildId,\n entries: [entry],\n runtime,\n format,\n target: target[runtime],\n }\n }\n }\n\n // Parse `dts` tasks\n for (const exp of exports) {\n const importId = path.join(pkg.name, exp._path)\n\n if (exp.types) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPath: exp.types,\n })\n }\n }\n\n // Parse rollup:commonjs:* tasks\n for (const exp of exports) {\n const output = exp.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:commonjs:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:* tasks\n for (const exp of exports) {\n const output = exp.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n tasks.push(...Object.values(rollupTasks))\n\n // Write legacy exports files\n if (config?.legacyExports) {\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(\n /\\.[^/.]+$/,\n ''\n )\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [`// AUTO-GENERATED – DO NOT EDIT`, `export * from '${relativeTargetPath}'`, ``].join(\n '\\n'\n )\n )\n }\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\n\nexport function globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns)\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function watchFiles(patterns: string[]): Observable<FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', handleFileEvent)\n\n return () => {\n watcher.off('all', handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\nimport {globFiles} from './globFiles'\nimport {Logger} from './logger'\nimport {watchFiles} from './watchFiles'\n\nexport async function watchConfigFiles(options: {\n cwd: string\n logger: Logger\n}): Promise<Observable<string[]>> {\n const {cwd, logger} = options\n\n const initialFiles = await globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n logger.log(\n '--------------------------------------------------------------------------------'\n )\n logger.info(path.relative(cwd, fileEvent.file), 'changed')\n logger.log('')\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged()\n )\n}\n","import path from 'path'\nimport {switchMap} from 'rxjs'\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {WatchTask, TaskHandler, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const logger = createLogger()\n\n const configFiles$ = await watchConfigFiles({cwd, logger})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await loadPkgWithReporting({cwd, logger})\n const config = await loadConfig({cwd})\n const extMap = getPkgExtMap({legacyExports: config?.legacyExports ?? false})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\n })\n )\n\n ctx$.subscribe(async (ctx) => {\n const watchTasks = resolveWatchTasks(ctx)\n\n for (const task of watchTasks) {\n const handler = watchTaskHandlers[task.type] as TaskHandler<WatchTask, unknown>\n const result$ = handler.exec(ctx, task)\n\n result$.subscribe({\n error: (err) => {\n ctx.logger.error(err)\n ctx.logger.log()\n\n process.exit(1)\n },\n next: (result) => {\n handler.complete(ctx, task, result)\n },\n complete: () => {\n ctx.logger.success(handler.name(ctx, task))\n ctx.logger.log()\n },\n })\n }\n })\n}\n"],"names":["resolveWatchTasks","ctx","_a","_b","_c","_d","_e","config","cwd","pkg","target","tasks","exports","Object","entries","map","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","default","resolve","globFiles","patterns","globby","watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","file","next","on","off","close","watchConfigFiles","options","logger","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","log","info","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","createLogger","configFiles$","ctx$","switchMap","configFiles","packageJsonPath","find","Error","loadPkgWithReporting","loadConfig","extMap","getPkgExtMap","resolveBuildContext","subscribe","watchTasks","task","handler","watchTaskHandlers","result$","exec","error","err","process","exit","result","complete","success"],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ 'use strict';
2
+
3
+ var watch = require('./watch-8c069c12.cjs');
4
+ var handleError = require('./handleError-4062ca45.cjs');
5
+ require('path');
6
+ require('rxjs');
7
+ require('./resolveBuildContext-8833c9b4.cjs');
8
+ require('esbuild-register/dist/node');
9
+ require('pkg-up');
10
+ require('fs/promises');
11
+ require('find-config');
12
+ require('chalk');
13
+ require('zod');
14
+ require('typescript');
15
+ require('browserslist');
16
+ require('fs');
17
+ require('./index-fbd66d35.cjs');
18
+ require('util');
19
+ require('rimraf');
20
+ require('@microsoft/api-extractor');
21
+ require('mkdirp');
22
+ require('prettier');
23
+ require('@microsoft/tsdoc-config');
24
+ require('jsonc-parser');
25
+ require('recast');
26
+ require('recast/parsers/typescript');
27
+ require('rollup');
28
+ require('@rollup/plugin-alias');
29
+ require('@rollup/plugin-babel');
30
+ require('@rollup/plugin-commonjs');
31
+ require('@rollup/plugin-json');
32
+ require('@rollup/plugin-node-resolve');
33
+ require('@rollup/plugin-replace');
34
+ require('@rollup/plugin-terser');
35
+ require('rollup-plugin-esbuild');
36
+ require('rxjs/operators');
37
+ require('globby');
38
+ require('chokidar');
39
+ async function watchAction(options) {
40
+ try {
41
+ await watch.watch({
42
+ cwd: process.cwd(),
43
+ strict: options.strict,
44
+ tsconfig: options.tsconfig
45
+ });
46
+ } catch (err) {
47
+ handleError.handleError(err);
48
+ }
49
+ }
50
+ exports.watchAction = watchAction;
51
+ //# sourceMappingURL=watchAction-b5f7b64b.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"watchAction-808ed88d.cjs","sources":["../../src/cli/watchAction.ts"],"sourcesContent":["import {watch} from '../node/watch'\nimport {handleError} from './handleError'\n\nexport async function watchAction(options: {strict?: boolean; tsconfig?: string}): Promise<void> {\n try {\n await watch({\n cwd: process.cwd(),\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["watchAction","options","watch","cwd","process","strict","tsconfig","err","handleError"],"mappings":";;;;AAGA,eAAsBA,YAAYC,OAA+D,EAAA;EAC3F,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,EAAA;MACjBE,QAAQJ,OAAQ,CAAAI,MAAA;MAChBC,UAAUL,OAAQ,CAAAK;IAAA,CACnB,CAAA;WACMC,GAAP,EAAA;IACAC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
1
+ {"version":3,"file":"watchAction-b5f7b64b.cjs","sources":["../../src/cli/watchAction.ts"],"sourcesContent":["import {watch} from '../node/watch'\nimport {handleError} from './handleError'\n\nexport async function watchAction(options: {strict?: boolean; tsconfig?: string}): Promise<void> {\n try {\n await watch({\n cwd: process.cwd(),\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["watchAction","options","watch","cwd","process","strict","tsconfig","err","handleError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,eAAsBA,YAAYC,OAA+D,EAAA;EAC3F,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,EAAA;MACjBE,QAAQJ,OAAQ,CAAAI,MAAA;MAChBC,UAAUL,OAAQ,CAAAK;IAAA,CACnB,CAAA;WACMC,GAAP,EAAA;IACAC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
package/dist/cli.cjs CHANGED
@@ -7,13 +7,13 @@ function _interopDefaultCompat(e) {
7
7
  };
8
8
  }
9
9
  var cac__default = /*#__PURE__*/_interopDefaultCompat(cac);
10
- var version = "2.0.4-beta.1";
10
+ var version = "2.0.5";
11
11
  const cli = cac__default.default();
12
12
  cli.command("", "Check").option("--strict", "Strict mode").option("--tsconfig [tsconfig]", "[string] tsconfig.json").action(async options => {
13
13
  const {
14
14
  checkAction: statusAction
15
15
  } = await Promise.resolve().then(function () {
16
- return require('./_chunks/checkAction-fa6a293a.cjs');
16
+ return require('./_chunks/checkAction-bf0f2047.cjs');
17
17
  });
18
18
  return statusAction(options);
19
19
  });
@@ -21,7 +21,7 @@ cli.command("build", "Build package").option("--emitDeclarationOnly", "Emit d.ts
21
21
  const {
22
22
  buildAction
23
23
  } = await Promise.resolve().then(function () {
24
- return require('./_chunks/buildAction-15e03999.cjs');
24
+ return require('./_chunks/buildAction-e21a8aeb.cjs');
25
25
  });
26
26
  return buildAction(options);
27
27
  });
@@ -29,7 +29,7 @@ cli.command("watch", "Watch package").option("--strict", "Strict mode").option("
29
29
  const {
30
30
  watchAction
31
31
  } = await Promise.resolve().then(function () {
32
- return require('./_chunks/watchAction-808ed88d.cjs');
32
+ return require('./_chunks/watchAction-b5f7b64b.cjs');
33
33
  });
34
34
  return watchAction(options);
35
35
  });