@sanity/pkg-utils 1.16.2 → 1.17.0
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/_chunks/{_resolveBuildContext-0d61dcca.js → _resolveBuildContext-6a4ed92a.js} +14 -4
- package/dist/_chunks/_resolveBuildContext-6a4ed92a.js.map +1 -0
- package/dist/_chunks/{build-a822eb55.js → build-ce9b3fba.js} +3 -3
- package/dist/_chunks/{build-a822eb55.js.map → build-ce9b3fba.js.map} +1 -1
- package/dist/_chunks/{buildAction-2b54017d.js → buildAction-1f1e18f0.js} +4 -4
- package/dist/_chunks/{buildAction-2b54017d.js.map → buildAction-1f1e18f0.js.map} +1 -1
- package/dist/_chunks/{check-f86cdc15.js → check-abba8425.js} +2 -2
- package/dist/_chunks/{check-f86cdc15.js.map → check-abba8425.js.map} +1 -1
- package/dist/_chunks/{checkAction-ea939b95.js → checkAction-0ec1ffd5.js} +3 -3
- package/dist/_chunks/{checkAction-ea939b95.js.map → checkAction-0ec1ffd5.js.map} +1 -1
- package/dist/_chunks/{index-7ec7f61a.js → index-b6235a62.js} +2 -2
- package/dist/_chunks/{index-7ec7f61a.js.map → index-b6235a62.js.map} +1 -1
- package/dist/_chunks/{watch-79594e7f.js → watch-7868b922.js} +3 -3
- package/dist/_chunks/{watch-79594e7f.js.map → watch-7868b922.js.map} +1 -1
- package/dist/_chunks/{watchAction-8d500150.js → watchAction-9bef2175.js} +4 -4
- package/dist/_chunks/{watchAction-8d500150.js.map → watchAction-9bef2175.js.map} +1 -1
- package/dist/cli.js +4 -4
- package/dist/index.d.ts +14 -13
- package/dist/index.esm.js +13 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +5 -5
- package/package.json +3 -2
- package/src/node/_core/pkg/_parseExports.ts +11 -1
- package/src/node/_core/pkg/_types.ts +14 -13
- package/src/node/_core/pkg/_validatePkg.ts +24 -21
- package/dist/_chunks/_resolveBuildContext-0d61dcca.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-7ec7f61a.js","sources":["../../src/node/_printExtractMessages.ts","../../src/node/_tasks/dts/_buildTypes.ts","../../src/node/_tasks/dts/_declareModuleFix.ts","../../src/node/_tasks/dts/_DtsError.ts","../../src/node/_tasks/dts/_createApiExtractorConfig.ts","../../src/node/_tasks/dts/_createTSDocConfig.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/_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 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","/* eslint-disable no-console */\n\nimport ts from 'typescript'\n\nexport const formatHost: ts.FormatDiagnosticsHost = {\n getCurrentDirectory: () => ts.sys.getCurrentDirectory(),\n getNewLine: () => ts.sys.newLine,\n getCanonicalFileName: ts.sys.useCaseSensitiveFileNames ? (f) => f : (f) => f.toLowerCase(),\n}\n\n/** @internal */\nexport async function _buildTypes(options: {\n cwd: string\n outDir: string\n tsconfig: ts.ParsedCommandLine\n strict: boolean\n}): Promise<void> {\n const {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 // TODO: improve logging\n allDiagnostics.forEach((diagnostic) => {\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 console.log(`${diagnostic.file.fileName} ${line + 1}:${character + 1}\\n${message}`)\n } else {\n console.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n'))\n }\n })\n\n if (emitResult.emitSkipped) {\n const errors = allDiagnostics.filter((diag) => diag.category === ts.DiagnosticCategory.Error)\n\n if (errors.length) {\n console.error(ts.formatDiagnostics(errors, formatHost))\n\n if (strict) {\n throw new Error('failed to compile TypeScript definitions')\n }\n }\n }\n}\n","import fs from 'fs/promises'\nimport path from 'path'\n\n/**\n * '@microsoft/api-extractor' omits declare module blocks\n * This is a workaround that finds all module blocks in ts files and appends them to the result\n */\nexport async function _appendModuleBlocks({\n tsOutDir,\n extractTypesOutFile,\n}: {\n tsOutDir: string\n extractTypesOutFile: string\n}): Promise<void> {\n const moduleBlocks = await _extractModuleBlocksFromTypes(tsOutDir)\n\n if (moduleBlocks.length) {\n await fs.appendFile(extractTypesOutFile, '\\n' + moduleBlocks.join('\\n\\n'))\n }\n}\n\nasync function _extractModuleBlocksFromTypes(dirname: string): Promise<string[]> {\n const moduleBlocks: string[] = []\n\n const files = await _getFileList(dirname)\n\n for (const fileName of files) {\n const content = await fs.readFile(path.resolve(dirname, fileName), {\n encoding: 'utf-8',\n })\n\n if (content.includes('declare module')) {\n moduleBlocks.push(..._extractModuleBlocks(content))\n }\n }\n\n return moduleBlocks\n}\n\nasync function _getFileList(dirName: string): Promise<string[]> {\n let files: string[] = []\n const filesInCurrentDir = await fs.readdir(dirName, {withFileTypes: true})\n\n for (const fileInDir of filesInCurrentDir) {\n if (fileInDir.isDirectory()) {\n files = [...files, ...(await _getFileList(path.resolve(dirName, fileInDir.name)))]\n } else {\n files.push(path.resolve(dirName, fileInDir.name))\n }\n }\n\n return files\n}\n\nexport function _extractModuleBlocks(fileContent: string): string[] {\n const moduleBlocks: string[] = []\n\n let moduleIndentLevel = 0\n let moduleLines: string[] = []\n\n const lines = fileContent.split('\\n')\n\n for (const line of lines) {\n if (!moduleLines.length) {\n const moduleIndex = line.indexOf('declare module')\n const isModuleStart = moduleIndex > -1\n\n if (isModuleStart) {\n moduleIndentLevel = moduleIndex\n moduleLines = [line]\n }\n } else {\n moduleLines.push(line)\n const blockEndIndex = line.indexOf('}')\n\n if (blockEndIndex === moduleIndentLevel) {\n moduleBlocks.push(\n moduleLines.map((l) => l.substring(moduleIndentLevel, l.length)).join('\\n')\n )\n moduleLines = []\n }\n }\n }\n\n return moduleBlocks\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 {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 {_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 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 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 await fs.writeFile(\n typesPath,\n prettier.format(typesBuf.toString(), {\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 {_appendModuleBlocks} from './_declareModuleFix'\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, 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, 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\n const result = await _extractTypes({\n customTags: config?.extract?.customTags,\n cwd,\n exportPath,\n files,\n filePath: path.relative(outDir, targetPath),\n projectPath: cwd,\n rules: config?.extract?.rules,\n sourceTypesPath: sourceTypesPath,\n tsconfigPath: path.resolve(cwd, ts.configPath || 'tsconfig.json'),\n distPath: outDir,\n })\n\n await _appendModuleBlocks({\n tsOutDir: tmpPath,\n extractTypesOutFile: path.resolve(outDir, targetPath),\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 ...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) => {\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","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 {InputOptions, OutputOptions, Plugin} from 'rollup'\nimport esbuild from 'rollup-plugin-esbuild'\nimport {terser} from 'rollup-plugin-terser'\nimport {_BuildContext, _DEFAULTS, _MODULE_EXT, _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, external, distPath, logger, pkg, ts} = ctx\n const outputExt = _MODULE_EXT[pkg.type][format]\n const minify = config?.minify ?? true\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 || _DEFAULTS.browserslist}]],\n }),\n minify &&\n terser({\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 onwarn(warning, rollupWarn) {\n if (!warning.code || !['CIRCULAR_DEPENDENCY'].includes(warning.code)) {\n rollupWarn(warning)\n }\n },\n\n plugins,\n\n treeshake: {\n propertyReadSideEffects: false,\n },\n },\n outputOptions: {\n chunkFileNames: () => `_chunks/[name]-[hash]${outputExt}`,\n dir: outDir,\n entryFileNames: () => (outputExt === '.esm.js' ? `[name].js` : `[name]${outputExt}`),\n format,\n exports: 'auto',\n sourcemap: config?.sourcemap ?? true,\n },\n }\n}\n","/* eslint-disable no-console */\n\nimport 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 {_resolveRollupConfig} from './_resolveRollupConfig'\n\n/** @internal */\nexport const _rollupTask: _TaskHandler<_RollupTask> = {\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 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 if (err instanceof Error) {\n console.log(err)\n }\n },\n}\n\nasync function _execPromise(ctx: _BuildContext, task: _RollupTask) {\n const {files, distPath} = ctx\n const outDir = path.relative(ctx.cwd, distPath)\n\n const {inputOptions, outputOptions} = _resolveRollupConfig(ctx, task)\n\n // Create bundle\n const bundle = await rollup(inputOptions)\n\n // an array of file names this bundle depends on\n // console.log(bundle.watchFiles)\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","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.log('')\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 {_BuildTaskHandlers, _WatchTaskHandlers} from './_types'\nimport {_dtsTask, _dtsWatchTask} from './dts'\nimport {_rollupTask, _rollupWatchTask} from './rollup'\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","sourceFileColumn","gray","text","join","errors","red","process","exit","formatHost","getCurrentDirectory","ts","sys","getNewLine","newLine","getCanonicalFileName","useCaseSensitiveFileNames","f","toLowerCase","_buildTypes","options","outDir","tsconfig","strict","compilerOptions","declaration","declarationDir","emitDeclarationOnly","noEmit","program","createProgram","fileNames","emitResult","emit","allDiagnostics","getPreEmitDiagnostics","concat","diagnostics","forEach","diagnostic","file","start","line","character","getLineAndCharacterOfPosition","message","flattenDiagnosticMessageText","messageText","console","fileName","emitSkipped","diag","category","DiagnosticCategory","Error","error","formatDiagnostics","_appendModuleBlocks","tsOutDir","extractTypesOutFile","moduleBlocks","_extractModuleBlocksFromTypes","fs","appendFile","dirname","files","_getFileList","content","readFile","resolve","encoding","includes","push","_extractModuleBlocks","dirName","filesInCurrentDir","readdir","withFileTypes","fileInDir","isDirectory","name","fileContent","moduleIndentLevel","moduleLines","lines","split","moduleIndex","indexOf","isModuleStart","blockEndIndex","map","l","substring","_DtsError","constructor","_createApiExtractorConfig","distPath","exportPath","filePath","projectFolder","mainEntryPointFilePath","tsconfigPath","apiReport","enabled","reportFileName","compiler","tsconfigFilePath","docModel","apiJsonFilePath","dtsRollup","untrimmedFilePath","tsdocMetadata","_createTSDocConfig","opts","customTags","tsDocBaseBuf","require","tsDocBaseConfig","parse","toString","tagDefinitions","t","tagName","syntaxKind","allowMultiple","supportForTags","customTag","TSDocConfigFile","loadFromObject","noStandardTags","_LOG_LEVELS","info","off","warn","_getExtractMessagesConfig","rules","_ruleToLogLevel","key","defaultLevel","r","compilerMessageReporting","default","extractorMessageReporting","addToApiReportFile","tsdocMessageReporting","_extractTypes","projectPath","sourceTypesPath","tsdocConfigFile","extractorConfig","ExtractorConfig","prepare","configObject","configObjectFullPath","packageJsonFullPath","extractorResult","Extractor","invoke","localBuild","showVerboseMessages","messageCallback","handled","typesPath","typesBuf","prettierConfig","prettier","resolveConfig","mkdirp","writeFile","format","filepath","type","rimraf","promisify","rimrafCallback","_doExtract","task","_a","_b","config","configPath","results","rootDir","tmpPath","entry","entries","sourcePath","replace","targetPath","result","extract","some","_dtsTask","_ctx","blue","importId","exec","Observable","observer","then","next","complete","catch","err","_task","_dtsWatchTask","_resolveRollupConfig","buildTask","_c","runtime","target","exports","_exports","external","pkg","outputExt","_MODULE_EXT","minify","pathAliases","Object","fromEntries","paths","val","_a2","baseUrl","output","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","_DEFAULTS","terser","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","_resolveConfigProperty","inputOptions","context","id","importer","startsWith","idPath","idParts","input","reduce","acc","onwarn","warning","rollupWarn","code","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","dir","entryFileNames","sourcemap","_rollupTask","_execPromise","bundle","generate","chunkOrAsset","write","close","_rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","_buildTaskHandlers","_watchTaskHandlers"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-b6235a62.js","sources":["../../src/node/_printExtractMessages.ts","../../src/node/_tasks/dts/_buildTypes.ts","../../src/node/_tasks/dts/_declareModuleFix.ts","../../src/node/_tasks/dts/_DtsError.ts","../../src/node/_tasks/dts/_createApiExtractorConfig.ts","../../src/node/_tasks/dts/_createTSDocConfig.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/_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 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","/* eslint-disable no-console */\n\nimport ts from 'typescript'\n\nexport const formatHost: ts.FormatDiagnosticsHost = {\n getCurrentDirectory: () => ts.sys.getCurrentDirectory(),\n getNewLine: () => ts.sys.newLine,\n getCanonicalFileName: ts.sys.useCaseSensitiveFileNames ? (f) => f : (f) => f.toLowerCase(),\n}\n\n/** @internal */\nexport async function _buildTypes(options: {\n cwd: string\n outDir: string\n tsconfig: ts.ParsedCommandLine\n strict: boolean\n}): Promise<void> {\n const {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 // TODO: improve logging\n allDiagnostics.forEach((diagnostic) => {\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 console.log(`${diagnostic.file.fileName} ${line + 1}:${character + 1}\\n${message}`)\n } else {\n console.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n'))\n }\n })\n\n if (emitResult.emitSkipped) {\n const errors = allDiagnostics.filter((diag) => diag.category === ts.DiagnosticCategory.Error)\n\n if (errors.length) {\n console.error(ts.formatDiagnostics(errors, formatHost))\n\n if (strict) {\n throw new Error('failed to compile TypeScript definitions')\n }\n }\n }\n}\n","import fs from 'fs/promises'\nimport path from 'path'\n\n/**\n * '@microsoft/api-extractor' omits declare module blocks\n * This is a workaround that finds all module blocks in ts files and appends them to the result\n */\nexport async function _appendModuleBlocks({\n tsOutDir,\n extractTypesOutFile,\n}: {\n tsOutDir: string\n extractTypesOutFile: string\n}): Promise<void> {\n const moduleBlocks = await _extractModuleBlocksFromTypes(tsOutDir)\n\n if (moduleBlocks.length) {\n await fs.appendFile(extractTypesOutFile, '\\n' + moduleBlocks.join('\\n\\n'))\n }\n}\n\nasync function _extractModuleBlocksFromTypes(dirname: string): Promise<string[]> {\n const moduleBlocks: string[] = []\n\n const files = await _getFileList(dirname)\n\n for (const fileName of files) {\n const content = await fs.readFile(path.resolve(dirname, fileName), {\n encoding: 'utf-8',\n })\n\n if (content.includes('declare module')) {\n moduleBlocks.push(..._extractModuleBlocks(content))\n }\n }\n\n return moduleBlocks\n}\n\nasync function _getFileList(dirName: string): Promise<string[]> {\n let files: string[] = []\n const filesInCurrentDir = await fs.readdir(dirName, {withFileTypes: true})\n\n for (const fileInDir of filesInCurrentDir) {\n if (fileInDir.isDirectory()) {\n files = [...files, ...(await _getFileList(path.resolve(dirName, fileInDir.name)))]\n } else {\n files.push(path.resolve(dirName, fileInDir.name))\n }\n }\n\n return files\n}\n\nexport function _extractModuleBlocks(fileContent: string): string[] {\n const moduleBlocks: string[] = []\n\n let moduleIndentLevel = 0\n let moduleLines: string[] = []\n\n const lines = fileContent.split('\\n')\n\n for (const line of lines) {\n if (!moduleLines.length) {\n const moduleIndex = line.indexOf('declare module')\n const isModuleStart = moduleIndex > -1\n\n if (isModuleStart) {\n moduleIndentLevel = moduleIndex\n moduleLines = [line]\n }\n } else {\n moduleLines.push(line)\n const blockEndIndex = line.indexOf('}')\n\n if (blockEndIndex === moduleIndentLevel) {\n moduleBlocks.push(\n moduleLines.map((l) => l.substring(moduleIndentLevel, l.length)).join('\\n')\n )\n moduleLines = []\n }\n }\n }\n\n return moduleBlocks\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 {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 {_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 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 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 await fs.writeFile(\n typesPath,\n prettier.format(typesBuf.toString(), {\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 {_appendModuleBlocks} from './_declareModuleFix'\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, 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, 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\n const result = await _extractTypes({\n customTags: config?.extract?.customTags,\n cwd,\n exportPath,\n files,\n filePath: path.relative(outDir, targetPath),\n projectPath: cwd,\n rules: config?.extract?.rules,\n sourceTypesPath: sourceTypesPath,\n tsconfigPath: path.resolve(cwd, ts.configPath || 'tsconfig.json'),\n distPath: outDir,\n })\n\n await _appendModuleBlocks({\n tsOutDir: tmpPath,\n extractTypesOutFile: path.resolve(outDir, targetPath),\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 ...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) => {\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","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 {InputOptions, OutputOptions, Plugin} from 'rollup'\nimport esbuild from 'rollup-plugin-esbuild'\nimport {terser} from 'rollup-plugin-terser'\nimport {_BuildContext, _DEFAULTS, _MODULE_EXT, _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, external, distPath, logger, pkg, ts} = ctx\n const outputExt = _MODULE_EXT[pkg.type][format]\n const minify = config?.minify ?? true\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 || _DEFAULTS.browserslist}]],\n }),\n minify &&\n terser({\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 onwarn(warning, rollupWarn) {\n if (!warning.code || !['CIRCULAR_DEPENDENCY'].includes(warning.code)) {\n rollupWarn(warning)\n }\n },\n\n plugins,\n\n treeshake: {\n propertyReadSideEffects: false,\n },\n },\n outputOptions: {\n chunkFileNames: () => `_chunks/[name]-[hash]${outputExt}`,\n dir: outDir,\n entryFileNames: () => (outputExt === '.esm.js' ? `[name].js` : `[name]${outputExt}`),\n format,\n exports: 'auto',\n sourcemap: config?.sourcemap ?? true,\n },\n }\n}\n","/* eslint-disable no-console */\n\nimport 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 {_resolveRollupConfig} from './_resolveRollupConfig'\n\n/** @internal */\nexport const _rollupTask: _TaskHandler<_RollupTask> = {\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 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 if (err instanceof Error) {\n console.log(err)\n }\n },\n}\n\nasync function _execPromise(ctx: _BuildContext, task: _RollupTask) {\n const {files, distPath} = ctx\n const outDir = path.relative(ctx.cwd, distPath)\n\n const {inputOptions, outputOptions} = _resolveRollupConfig(ctx, task)\n\n // Create bundle\n const bundle = await rollup(inputOptions)\n\n // an array of file names this bundle depends on\n // console.log(bundle.watchFiles)\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","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.log('')\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 {_BuildTaskHandlers, _WatchTaskHandlers} from './_types'\nimport {_dtsTask, _dtsWatchTask} from './dts'\nimport {_rollupTask, _rollupWatchTask} from './rollup'\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","sourceFileColumn","gray","text","join","errors","red","process","exit","formatHost","getCurrentDirectory","ts","sys","getNewLine","newLine","getCanonicalFileName","useCaseSensitiveFileNames","f","toLowerCase","_buildTypes","options","outDir","tsconfig","strict","compilerOptions","declaration","declarationDir","emitDeclarationOnly","noEmit","program","createProgram","fileNames","emitResult","emit","allDiagnostics","getPreEmitDiagnostics","concat","diagnostics","forEach","diagnostic","file","start","line","character","getLineAndCharacterOfPosition","message","flattenDiagnosticMessageText","messageText","console","fileName","emitSkipped","diag","category","DiagnosticCategory","Error","error","formatDiagnostics","_appendModuleBlocks","tsOutDir","extractTypesOutFile","moduleBlocks","_extractModuleBlocksFromTypes","fs","appendFile","dirname","files","_getFileList","content","readFile","resolve","encoding","includes","push","_extractModuleBlocks","dirName","filesInCurrentDir","readdir","withFileTypes","fileInDir","isDirectory","name","fileContent","moduleIndentLevel","moduleLines","lines","split","moduleIndex","indexOf","isModuleStart","blockEndIndex","map","l","substring","_DtsError","constructor","_createApiExtractorConfig","distPath","exportPath","filePath","projectFolder","mainEntryPointFilePath","tsconfigPath","apiReport","enabled","reportFileName","compiler","tsconfigFilePath","docModel","apiJsonFilePath","dtsRollup","untrimmedFilePath","tsdocMetadata","_createTSDocConfig","opts","customTags","tsDocBaseBuf","require","tsDocBaseConfig","parse","toString","tagDefinitions","t","tagName","syntaxKind","allowMultiple","supportForTags","customTag","TSDocConfigFile","loadFromObject","noStandardTags","_LOG_LEVELS","info","off","warn","_getExtractMessagesConfig","rules","_ruleToLogLevel","key","defaultLevel","r","compilerMessageReporting","default","extractorMessageReporting","addToApiReportFile","tsdocMessageReporting","_extractTypes","projectPath","sourceTypesPath","tsdocConfigFile","extractorConfig","ExtractorConfig","prepare","configObject","configObjectFullPath","packageJsonFullPath","extractorResult","Extractor","invoke","localBuild","showVerboseMessages","messageCallback","handled","typesPath","typesBuf","prettierConfig","prettier","resolveConfig","mkdirp","writeFile","format","filepath","type","rimraf","promisify","rimrafCallback","_doExtract","task","_a","_b","config","configPath","results","rootDir","tmpPath","entry","entries","sourcePath","replace","targetPath","result","extract","some","_dtsTask","_ctx","blue","importId","exec","Observable","observer","then","next","complete","catch","err","_task","_dtsWatchTask","_resolveRollupConfig","buildTask","_c","runtime","target","exports","_exports","external","pkg","outputExt","_MODULE_EXT","minify","pathAliases","Object","fromEntries","paths","val","_a2","baseUrl","output","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","_DEFAULTS","terser","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","_resolveConfigProperty","inputOptions","context","id","importer","startsWith","idPath","idParts","input","reduce","acc","onwarn","warning","rollupWarn","code","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","dir","entryFileNames","sourcemap","_rollupTask","_execPromise","bundle","generate","chunkOrAsset","write","close","_rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","_buildTaskHandlers","_watchTaskHandlers"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ var path = require('path');
|
|
|
10
10
|
|
|
11
11
|
var rxjs = require('rxjs');
|
|
12
12
|
|
|
13
|
-
var _resolveBuildContext = require('./_resolveBuildContext-
|
|
13
|
+
var _resolveBuildContext = require('./_resolveBuildContext-6a4ed92a.js');
|
|
14
14
|
|
|
15
15
|
require('fs/promises');
|
|
16
16
|
|
|
@@ -20,7 +20,7 @@ require('typescript');
|
|
|
20
20
|
|
|
21
21
|
var fs = require('fs');
|
|
22
22
|
|
|
23
|
-
var index = require('./index-
|
|
23
|
+
var index = require('./index-b6235a62.js');
|
|
24
24
|
|
|
25
25
|
var chalk = require('chalk');
|
|
26
26
|
|
|
@@ -274,4 +274,4 @@ async function watch(options) {
|
|
|
274
274
|
}
|
|
275
275
|
|
|
276
276
|
exports.watch = watch;
|
|
277
|
-
//# sourceMappingURL=watch-
|
|
277
|
+
//# sourceMappingURL=watch-7868b922.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-79594e7f.js","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 chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\nimport {_globFiles} from './_globFiles'\nimport {_watchFiles} from './_watchFiles'\n\nexport async function _watchConfigFiles(options: {cwd: string}): Promise<Observable<string[]>> {\n const {cwd} = 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 /* eslint-disable no-console */\n console.log(\n '--------------------------------------------------------------------------------'\n )\n console.log(chalk.blue('info '), path.relative(cwd, fileEvent.file), 'changed')\n console.log('')\n /* eslint-enable no-console */\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 {_loadConfig, _loadPkgWithReporting} from './_core'\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 configFiles$ = await _watchConfigFiles({cwd})\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})\n const config = await _loadConfig({cwd})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return _resolveBuildContext({config, cwd, 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","resolve","_globFiles","patterns","globby","_watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","_handleFileEvent","file","next","on","off","close","_watchConfigFiles","options","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","console","log","chalk","blue","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","configFiles$","ctx$","switchMap","configFiles","_files","packageJsonPath","find","Error","_loadPkgWithReporting","_loadConfig","_resolveBuildContext","subscribe","watchTasks","task","handler","_watchTaskHandlers","result$","exec","error","err","logger","process","exit","result","complete","success"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"watch-7868b922.js","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 chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\nimport {_globFiles} from './_globFiles'\nimport {_watchFiles} from './_watchFiles'\n\nexport async function _watchConfigFiles(options: {cwd: string}): Promise<Observable<string[]>> {\n const {cwd} = 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 /* eslint-disable no-console */\n console.log(\n '--------------------------------------------------------------------------------'\n )\n console.log(chalk.blue('info '), path.relative(cwd, fileEvent.file), 'changed')\n console.log('')\n /* eslint-enable no-console */\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 {_loadConfig, _loadPkgWithReporting} from './_core'\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 configFiles$ = await _watchConfigFiles({cwd})\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})\n const config = await _loadConfig({cwd})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return _resolveBuildContext({config, cwd, 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","resolve","_globFiles","patterns","globby","_watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","_handleFileEvent","file","next","on","off","close","_watchConfigFiles","options","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","console","log","chalk","blue","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","configFiles$","ctx$","switchMap","configFiles","_files","packageJsonPath","find","Error","_loadPkgWithReporting","_loadConfig","_resolveBuildContext","subscribe","watchTasks","task","handler","_watchTaskHandlers","result$","exec","error","err","logger","process","exit","result","complete","success"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var watch = require('./watch-
|
|
3
|
+
var watch = require('./watch-7868b922.js');
|
|
4
4
|
|
|
5
5
|
var _handleError = require('./_handleError-869dec25.js');
|
|
6
6
|
|
|
@@ -8,7 +8,7 @@ require('path');
|
|
|
8
8
|
|
|
9
9
|
require('rxjs');
|
|
10
10
|
|
|
11
|
-
require('./_resolveBuildContext-
|
|
11
|
+
require('./_resolveBuildContext-6a4ed92a.js');
|
|
12
12
|
|
|
13
13
|
require('esbuild-register/dist/node');
|
|
14
14
|
|
|
@@ -28,7 +28,7 @@ require('browserslist');
|
|
|
28
28
|
|
|
29
29
|
require('fs');
|
|
30
30
|
|
|
31
|
-
require('./index-
|
|
31
|
+
require('./index-b6235a62.js');
|
|
32
32
|
|
|
33
33
|
require('util');
|
|
34
34
|
|
|
@@ -81,4 +81,4 @@ async function watchAction(options) {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
exports.watchAction = watchAction;
|
|
84
|
-
//# sourceMappingURL=watchAction-
|
|
84
|
+
//# sourceMappingURL=watchAction-9bef2175.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchAction-
|
|
1
|
+
{"version":3,"file":"watchAction-9bef2175.js","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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,eAAeA,WAAf,CAA2BC,OAA3B,EAAoC;EACzC,IAAI;IACF,MAAMC,WAAAA,CAAM;MACVC,GAAG,EAAEC,OAAO,CAACD,GAAR,EADK;MAEVE,MAAM,EAAEJ,OAAO,CAACI,MAFN;MAGVC,QAAQ,EAAEL,OAAO,CAACK;IAHR,CAANJ,CAAN;EAKD,CAND,CAME,OAAOK,GAAP,EAAY;IACZC,YAAY,CAAAA,YAAZA,CAAaD,GAAbC;EACD;AACH;;"}
|
package/dist/cli.js
CHANGED
|
@@ -10,13 +10,13 @@ function _interopDefaultLegacy(e) {
|
|
|
10
10
|
|
|
11
11
|
var cac__default = /*#__PURE__*/_interopDefaultLegacy(cac);
|
|
12
12
|
|
|
13
|
-
var version = "1.
|
|
13
|
+
var version = "1.17.0";
|
|
14
14
|
const cli = cac__default["default"]();
|
|
15
15
|
cli.command("", "Check").option("--strict", "Strict mode").option("--tsconfig [tsconfig]", "[string] tsconfig.json").action(async options => {
|
|
16
16
|
const {
|
|
17
17
|
checkAction: statusAction
|
|
18
18
|
} = await Promise.resolve().then(function () {
|
|
19
|
-
return require('./_chunks/checkAction-
|
|
19
|
+
return require('./_chunks/checkAction-0ec1ffd5.js');
|
|
20
20
|
});
|
|
21
21
|
return statusAction(options);
|
|
22
22
|
});
|
|
@@ -24,7 +24,7 @@ cli.command("build", "Build package").option("--emitDeclarationOnly", "Emit d.ts
|
|
|
24
24
|
const {
|
|
25
25
|
buildAction
|
|
26
26
|
} = await Promise.resolve().then(function () {
|
|
27
|
-
return require('./_chunks/buildAction-
|
|
27
|
+
return require('./_chunks/buildAction-1f1e18f0.js');
|
|
28
28
|
});
|
|
29
29
|
return buildAction(options);
|
|
30
30
|
});
|
|
@@ -32,7 +32,7 @@ cli.command("watch", "Watch package").option("--strict", "Strict mode").option("
|
|
|
32
32
|
const {
|
|
33
33
|
watchAction
|
|
34
34
|
} = await Promise.resolve().then(function () {
|
|
35
|
-
return require('./_chunks/watchAction-
|
|
35
|
+
return require('./_chunks/watchAction-9bef2175.js');
|
|
36
36
|
});
|
|
37
37
|
return watchAction(options);
|
|
38
38
|
});
|
package/dist/index.d.ts
CHANGED
|
@@ -172,23 +172,24 @@ export declare interface _PackageJSON {
|
|
|
172
172
|
peerDependencies?: Record<string, string>
|
|
173
173
|
exports?: Record<
|
|
174
174
|
string,
|
|
175
|
-
{
|
|
176
|
-
|
|
177
|
-
types?: string
|
|
178
|
-
browser?: {
|
|
175
|
+
| `./${string}.json`
|
|
176
|
+
| {
|
|
179
177
|
source: string
|
|
180
|
-
|
|
178
|
+
types?: string
|
|
179
|
+
browser?: {
|
|
180
|
+
source: string
|
|
181
|
+
require?: string
|
|
182
|
+
import?: string
|
|
183
|
+
}
|
|
184
|
+
node?: {
|
|
185
|
+
source: string
|
|
186
|
+
require?: string
|
|
187
|
+
import?: string
|
|
188
|
+
}
|
|
181
189
|
import?: string
|
|
182
|
-
}
|
|
183
|
-
node?: {
|
|
184
|
-
source: string
|
|
185
190
|
require?: string
|
|
186
|
-
|
|
191
|
+
default: string
|
|
187
192
|
}
|
|
188
|
-
import?: string
|
|
189
|
-
require?: string
|
|
190
|
-
default: string
|
|
191
|
-
}
|
|
192
193
|
>
|
|
193
194
|
main?: string
|
|
194
195
|
browser?: Record<string, string>
|
package/dist/index.esm.js
CHANGED
|
@@ -154,7 +154,7 @@ const pkgSchema = z.object({
|
|
|
154
154
|
browser: z.optional(z.record(z.string())),
|
|
155
155
|
module: z.optional(z.string()),
|
|
156
156
|
types: z.optional(z.string()),
|
|
157
|
-
exports: z.optional(z.record(z.object({
|
|
157
|
+
exports: z.optional(z.record(z.union([z.custom(val => /^\.\/.*\.json$/.test(val)), z.object({
|
|
158
158
|
types: z.optional(z.string()),
|
|
159
159
|
source: z.string(),
|
|
160
160
|
browser: z.optional(z.object({
|
|
@@ -170,7 +170,7 @@ const pkgSchema = z.object({
|
|
|
170
170
|
require: z.optional(z.string()),
|
|
171
171
|
import: z.optional(z.string()),
|
|
172
172
|
default: z.string()
|
|
173
|
-
}))),
|
|
173
|
+
})]))),
|
|
174
174
|
browserslist: z.optional(z.array(z.string()))
|
|
175
175
|
});
|
|
176
176
|
|
|
@@ -269,8 +269,18 @@ function _parseExports(options) {
|
|
|
269
269
|
const errors = [];
|
|
270
270
|
|
|
271
271
|
if (pkg.exports) {
|
|
272
|
+
if (!pkg.exports["./package.json"]) {
|
|
273
|
+
errors.push('package.json: `exports["./package.json"] must be declared.');
|
|
274
|
+
}
|
|
275
|
+
|
|
272
276
|
for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {
|
|
273
|
-
if (
|
|
277
|
+
if (exportPath.endsWith(".json")) {
|
|
278
|
+
if (exportPath === "./package.json") {
|
|
279
|
+
if (exportEntry !== "./package.json") {
|
|
280
|
+
errors.push('package.json: `exports["./package.json"] must be "./package.json".');
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
} else if (_isRecord(exportEntry)) {
|
|
274
284
|
if (exportPath === ".") {
|
|
275
285
|
if (exportEntry.require && rootExport.require && exportEntry.require !== rootExport.require) {
|
|
276
286
|
errors.push('package.json: mismatch between "main" and "exports.require". These must be equal.');
|