@sanity/pkg-utils 2.1.1 → 2.2.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.
Files changed (29) hide show
  1. package/dist/_chunks/{build-68e9229a.cjs → build-8d840bfe.cjs} +3 -3
  2. package/dist/_chunks/{build-68e9229a.cjs.map → build-8d840bfe.cjs.map} +1 -1
  3. package/dist/_chunks/{buildAction-9ce9614a.cjs → buildAction-02b78976.cjs} +2 -2
  4. package/dist/_chunks/{buildAction-9ce9614a.cjs.map → buildAction-02b78976.cjs.map} +1 -1
  5. package/dist/_chunks/{check-745260bc.cjs → check-37772bb3.cjs} +12 -11
  6. package/dist/_chunks/check-37772bb3.cjs.map +1 -0
  7. package/dist/_chunks/{checkAction-1aa1fff7.cjs → checkAction-59707d6a.cjs} +2 -2
  8. package/dist/_chunks/{checkAction-1aa1fff7.cjs.map → checkAction-59707d6a.cjs.map} +1 -1
  9. package/dist/_chunks/{index-a01cf661.cjs → index-49daefad.cjs} +2 -2
  10. package/dist/_chunks/{index-a01cf661.cjs.map → index-49daefad.cjs.map} +1 -1
  11. package/dist/_chunks/{resolveBuildContext-702e3fb6.cjs → resolveBuildContext-c51eac50.cjs} +51 -6
  12. package/dist/_chunks/resolveBuildContext-c51eac50.cjs.map +1 -0
  13. package/dist/_chunks/{watch-533fe913.cjs → watch-6cfbe78a.cjs} +3 -3
  14. package/dist/_chunks/{watch-533fe913.cjs.map → watch-6cfbe78a.cjs.map} +1 -1
  15. package/dist/_chunks/{watchAction-d2c08880.cjs → watchAction-de3c9fdf.cjs} +2 -2
  16. package/dist/_chunks/{watchAction-d2c08880.cjs.map → watchAction-de3c9fdf.cjs.map} +1 -1
  17. package/dist/cli.cjs +4 -4
  18. package/dist/index.cjs +5 -5
  19. package/dist/index.js +60 -14
  20. package/dist/index.js.map +1 -1
  21. package/package.json +3 -3
  22. package/src/node/core/pkg/helpers.ts +36 -0
  23. package/src/node/core/pkg/loadPkg.ts +5 -1
  24. package/src/node/core/pkg/loadPkgWithReporting.ts +38 -2
  25. package/src/node/core/pkg/parseExports.ts +1 -1
  26. package/src/node/core/pkg/validatePkg.ts +1 -1
  27. package/src/node/printPackageTree.ts +12 -8
  28. package/dist/_chunks/check-745260bc.cjs.map +0 -1
  29. package/dist/_chunks/resolveBuildContext-702e3fb6.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-a01cf661.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/node/reexportCjsTask.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","import {writeFile} from 'fs/promises'\nimport path from 'path'\nimport chalk from 'chalk'\nimport mkdirp from 'mkdirp'\nimport {from} from 'rxjs'\nimport {BuildContext} from '../../core'\nimport {NodeReExportFromCJSTask, TaskHandler} from '../types'\n\n/** @internal */\nexport const nodeReexportCjsTask: TaskHandler<NodeReExportFromCJSTask> = {\n name: (_ctx, task) =>\n [\n `Re-export CommonJS module in ESM wrapper…`,\n ` entries:`,\n ...task.entries.map((entry) =>\n [\n ` - ${chalk.cyan(entry.importId)}: `,\n `${chalk.yellow(entry.require)} ${chalk.gray('→')} ${chalk.yellow(entry.import)}`,\n ].join('')\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return from(exec(ctx, task))\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 exec(ctx: BuildContext, task: NodeReExportFromCJSTask) {\n const {cwd} = ctx\n\n for (const entry of task.entries) {\n const sourcePath = path.resolve(cwd, entry.require)\n const targetPath = path.resolve(cwd, entry.import)\n const targetDir = path.dirname(targetPath)\n\n await mkdirp(targetDir)\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(sourcePath)\n\n let relativeImport = `./${path.relative(targetDir, sourcePath)}`\n\n // Strip leading \"./\" from relative import\n if (relativeImport.startsWith('./.')) {\n relativeImport = relativeImport.slice(2)\n }\n\n const code = [\n `import cjs from '${relativeImport}';`,\n '',\n ...Object.keys(mod).map((k) => `export const ${k} = cjs.${k};`),\n '',\n ].join('\\n')\n\n await writeFile(targetPath, code, 'utf8')\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 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: config?.babel?.plugins,\n presets: [\n [\n '@babel/preset-env',\n {targets: pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY, modules: false},\n ],\n ],\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 hoistTransitiveImports: false,\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 {nodeReexportCjsTask} from './node/reexportCjsTask'\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 'node:reexport-cjs': nodeReexportCjsTask,\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","nodeReexportCjsTask","import","from","console","targetDir","mod","relativeImport","startsWith","slice","Object","keys","k","createConsoleSpy","onRestored","original","args","restore","resolveRollupConfig","buildTask","_c","_d","runtime","target","exports","_exports","extMap","external","pkg","outputExt","minify","pathAliases","fromEntries","paths","val","baseUrl","exportIds","sourcePaths","values","e","source","replacements","define","JSON","stringify","defaultPlugins","preventAssignment","arg","find","env","PKG_VERSION","version","alias","nodeResolve","browser","extensions","preferBuiltins","commonjs","json","esbuild","jsx","jsxFactory","jsxFragment","jsxImportSource","getBabelOutputPlugin","babelrc","plugins","babel","presets","targets","browserslist","DEFAULT_BROWSERSLIST_QUERY","modules","terser","compress","directives","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","resolveConfigProperty","inputOptions","context","id","importer","idPath","idParts","split","input","reduce","acc","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","parts","compact","dir","entryFileNames","esModule","interop","minifyInternalExports","sourcemap","hoistTransitiveImports","rollupTask","execPromise","consoleSpy","String","bundle","onwarn","warning","generate","chunkOrAsset","write","close","rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","buildTaskHandlers","watchTaskHandlers"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKgB,SAAAA,oBAAA,CAAqBC,KAAmBC,QAAoC,EAAA;EACpF,MAAA;IAACC,GAAK;IAAAC;EAAU,CAAA,GAAAH,GAAA;EAEtB,MAAMI,WAAWH,QAAS,CAAAI,MAAA,CAAQC,GAAQ,IAAAA,GAAA,CAAIC,aAAa,SAAS,CAAA;EAEpE,IAAIH,SAASI,MAAQ,EAAA;IACnBL,MAAA,CAAOM,GAAI,EAAA;EACb;EAEA,KAAA,MAAWH,OAAOF,QAAU,EAAA;IAC1B,MAAMM,iBAAiBJ,GAAI,CAAAI,cAAA,IAAkBC,aAAAA,CAAAA,QAAKC,QAAS,CAAAV,GAAA,EAAKI,IAAII,cAAc,CAAA;IAE9E,IAAAJ,GAAA,CAAIO,cAAc,QAAU,EAAA;MAI9B;IACF;IAEOV,MAAA,CAAAM,GAAA,CACL,WACKK,cAAAA,CAAAA,OAAA,CAAMC,IAAK,CAAAL,cAAA,IAAkB,GAAG,CAAA,cAC/BI,cAAAA,CAAAA,QAAME,MAAO,CAAAV,GAAA,CAAIW,cAAc,CAAK,cAAAH,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAAV,GAAA,CAAIa,gBAAgB,CAAA,gBACnEL,cAAAA,CAAAA,QAAME,MAAO,CAAA,SAAS,eAAKF,cAAAA,CAAAA,OAAM,CAAAM,IAAA,CAAKd,IAAIO,SAAS,CAAA,SACzDP,GAAI,CAAAe,IAAA,EACJ,IAAA,CACF,CAAEC,KAAK,EAAE,CAAA,CACX;EACF;EAEA,MAAMC,SAA6BtB,QAAS,CAAAI,MAAA,CAAQC,GAAQ,IAAAA,GAAA,CAAIC,aAAa,OAAO,CAAA;EAEpF,IAAI,CAACH,QAAA,CAASI,MAAU,IAAAe,MAAA,CAAOf,MAAQ,EAAA;IACrCL,MAAA,CAAOM,IAAI,EAAE,CAAA;EACf;EAEA,KAAA,MAAWH,OAAOiB,MAAQ,EAAA;IACxB,MAAMb,iBAAiBJ,GAAI,CAAAI,cAAA,IAAkBC,aAAAA,CAAAA,QAAKC,QAAS,CAAAV,GAAA,EAAKI,IAAII,cAAc,CAAA;IAE3EP,MAAA,CAAAM,GAAA,CACL,WACKK,cAAAA,CAAAA,OAAA,CAAMC,IAAK,CAAAL,cAAA,IAAkB,GAAG,CAAA,cAC/BI,cAAAA,CAAAA,QAAME,MAAO,CAAAV,GAAA,CAAIW,cAAc,CAAK,cAAAH,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAAV,GAAA,CAAIa,gBAAgB,CAAA,gBACnEL,cAAAA,CAAAA,QAAMU,GAAI,CAAA,OAAO,eAAKV,cAAAA,CAAAA,OAAM,CAAAM,IAAA,CAAKd,IAAIO,SAAS,CAAA,SACpDP,GAAI,CAAAe,IAAA,EACJ,IAAA,CACF,CAAEC,KAAK,EAAE,CAAA,CACX;EACF;EAEA,IAAIC,OAAOf,MAAQ,EAAA;IACjBiB,OAAA,CAAQC,KAAK,CAAC,CAAA;EAChB;AACF;ACrDO,SAASC,gBAAgBC,OAIvB,EAAA;EACP,MAAM;IAAC1B,GAAA;IAAKC,MAAQ;IAAA0B;EAAA,CAAc,GAAAD,OAAA;EAE9B,IAAAC,UAAA,CAAWC,IAAQ,IAAAD,UAAA,CAAWE,KAAO,EAAA;IACjC,MAAA;MAACC;MAAMC;IAAS,CAAA,GAAIC,oBAAGC,6BAA8B,CAAAN,UAAA,CAAWC,IAAM,EAAAD,UAAA,CAAWE,KAAK,CAAA;IAC5F,MAAMK,OAAU,GAAAF,WAAAA,CAAAA,OAAA,CAAGG,4BAA6B,CAAAR,UAAA,CAAWS,aAAa,IAAI,CAAA;IAE5E,MAAMR,OAAOnB,aAAAA,CAAAA,OAAK,CAAAC,QAAA,CAASV,GAAK,EAAA2B,UAAA,CAAWC,KAAKS,QAAQ,CAAA;IAExD,MAAMC,MAAS,GAAA,WACV1B,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAAc,IAAI,CAAK,cAAAhB,cAAA,CAAAI,OAAA,CAAMuB,IAAK,CAAAT,IAAA,GAAO,CAAC,CAAA,cAAKlB,sBAAM,CAAA2B,IAAA,CAAKR,YAAY,CAAC,CAAA,oBACtEnB,cAAM,CAAAI,OAAA,CAAAE,IAAA,aAAUS,UAAA,CAAWa,WAAY,cAAAN,OAAA,EAC5C,CAAEd,KAAK,EAAE,CAAA;IAET,IAAIO,UAAW,CAAAc,QAAA,KAAaT,mBAAG,CAAAU,kBAAA,CAAmBC,KAAO,EAAA;MACvD1C,MAAA,CAAO2C,MAAMN,MAAM,CAAA;IACrB;IAEA,IAAIX,UAAW,CAAAc,QAAA,KAAaT,mBAAG,CAAAU,kBAAA,CAAmBG,OAAS,EAAA;MACzD5C,MAAA,CAAO6C,KAAKR,MAAM,CAAA;IACpB;IAEA,IAAIX,UAAW,CAAAc,QAAA,KAAaT,mBAAG,CAAAU,kBAAA,CAAmBK,OAAS,EAAA;MACzD9C,MAAA,CAAOM,IAAI+B,MAAM,CAAA;IACnB;IAEA,IAAIX,UAAW,CAAAc,QAAA,KAAaT,mBAAG,CAAAU,kBAAA,CAAmBM,UAAY,EAAA;MAC5D/C,MAAA,CAAOM,IAAI+B,MAAM,CAAA;IACnB;EAAA,CACK,MAAA;IACLrC,MAAA,CAAOM,IAAIyB,mBAAG,CAAAG,4BAAA,CAA6BR,UAAW,CAAAS,WAAA,EAAa,IAAI,CAAC,CAAA;EAC1E;AACF;ACpCA,eAAsBa,WAAWvB,OAMf,EAAA;EAChB,MAAM;IAAC1B,GAAK;IAAAC,MAAA;IAAQiD;IAAQC,QAAU;IAAAC,MAAA,GAAS;EAAS,CAAA,GAAA1B,OAAA;EAExD,MAAM2B,eAAsC,GAAA;IAC1C,GAAGF,QAAS,CAAAzB,OAAA;IACZ4B,WAAa,EAAA,IAAA;IACbC,cAAgB,EAAAL,MAAA;IAChBM,mBAAqB,EAAA,IAAA;IACrBC,MAAQ,EAAA,KAAA;IACRP;EAAA,CACF;EAEA,MAAMQ,OAAU,GAAA1B,WAAAA,CAAAA,OAAA,CAAG2B,aAAc,CAAAR,QAAA,CAASS,WAAWP,eAAe,CAAA;EAE9D,MAAAQ,UAAA,GAAaH,QAAQI,IAAK,EAAA;EAEhC,MAAMC,iBAAiB/B,WAAG,CAAAhB,OAAA,CAAAgD,qBAAA,CAAsBN,OAAO,CAAE,CAAAO,MAAA,CAAOJ,WAAWK,WAAW,CAAA;EAEtF,KAAA,MAAWvC,cAAcoC,cAAgB,EAAA;IACvCtC,eAAA,CAAgB;MAACzB,GAAA;MAAKC,MAAQ;MAAA0B;IAAW,CAAA,CAAA;EAC3C;EAEA,IAAIkC,WAAWM,WAAa,EAAA;IACpB,MAAA9C,MAAA,GAAS0C,eAAe5D,MAAO,CAACiE,QAASA,IAAK,CAAA3B,QAAA,KAAaT,WAAG,CAAAhB,OAAA,CAAA0B,kBAAA,CAAmBC,KAAK,CAAA;IAE5F,IAAItB,OAAOf,MAAQ,EAAA;MACjB,IAAI8C,MAAQ,EAAA;QACJ,MAAA,IAAIT,MAAM,0CAA0C,CAAA;MAC5D;IACF;EACF;AACF;ACvCO,MAAM0B,iBAAiB1B,KAAM,CAAA;EAGlC2B,WAAA,CAAYpC,SAAiBnC,QAA8B,EAAA;IACzD,KAAA,CAAMmC,OAAO,CAAA;IACb,IAAA,CAAKnC,QAAW,GAAAA,QAAA;EAClB;AACF;ACPO,SAASwE,yBAAyB7C,OAQzB,EAAA;EACR,MAAA;IACJ8C,QAAA;IACAC,UAAA;IACAC,QAAA;IACA3E,QAAA;IACA4E,aAAA;IACAC,sBAAA;IACAC;EACE,CAAA,GAAAnD,OAAA;EAEG,OAAA;IACLoD,SAAW,EAAA;MACTC,OAAS,EAAA,KAAA;MACTC,cAAgB,EAAA;IAClB,CAAA;IAEAC,QAAU,EAAA;MACRC,gBAAkB,EAAAL;IACpB,CAAA;IACAM,QAAU,EAAA;MACRJ,OAAS,EAAA,KAAA;MACTK,eAAiB,EAAA3E,aAAA,CAAAO,OAAA,CAAKqE,OAAQ,CAAAb,QAAA,YAAaC,UAAqB;IAClE,CAAA;IACAa,SAAW,EAAA;MACTP,OAAS,EAAA,IAAA;MACTQ,iBAAmB,EAAA9E,aAAA,CAAAO,OAAA,CAAKqE,OAAQ,CAAAb,QAAA,EAAUE,QAAQ;IAGpD,CAAA;IACAc,aAAe,EAAA;MACbT,OAAS,EAAA;IACX,CAAA;IACAhF,QAAA;IACA6E,sBAAA;IACAD;EAAA,CACF;AACF;ACpCA,eAAsBc,kBAAkBC,IAEC,EAAA;EACjC,MAAA;IAACC;EAAc,CAAA,GAAAD,IAAA;EAEjB,IAAAC,UAAA,CAAWrF,WAAW,CAAG,EAAA;IACpB,OAAA,KAAA,CAAA;EACT;EAEA,MAAMsF,eAAe,MAAMC,EAAA,CAAAA,QAAA,CACzBC,OAAA,CAAQT,QAAQ,kDAAkD,CAAA,CACpE;EAIA,MAAMU,eAAkB,GAAAC,WAAA,CAAAA,KAAA,CAAMJ,YAAa,CAAAK,QAAA,EAAU,CAAA;EAGrD,MAAMC,cAAkB,GAAA,CAAAH,eAAA,CAAgBG,cAAkB,IAAA,EAAI,EAAAjC,MAAA,CAC5D0B,UAAA,CAAWQ,GAAI,CAACC,CAAO,KAAA;IACrBC,OAAA,aAAaD,CAAE,CAAAE,IAAA,CAAA;IACfC,YAAYH,CAAE,CAAAG,UAAA;IACdC,eAAeJ,CAAE,CAAAI;EAAA,CACjB,CAAA,CAAA,CACJ;EAIA,MAAMC,cAAiB,GAAA;IAAC,GAAGV,eAAA,CAAgBU;EAAc,CAAA;EAEzD,KAAA,MAAWC,aAAaf,UAAY,EAAA;IACnBc,cAAA,YAAIC,UAAUJ,IAAU,EAAA,GAAA,IAAA;EACzC;EAEA,OAAOK,WAAAA,CAAAA,gBAAgBC,cAAe,CAAA;IACpC,GAAGb,eAAA;IACHc,cAAgB,EAAA,KAAA;IAChBX,cAAA;IACAO;EAAA,CACD,CAAA;AACH;AC1CA,eAAsBK,4BAA6B,OAM7B;EAAA,IAN6B;IACjDC,QAAA;IACAC;EACF,CAGsB;EACd,MAAAtD,OAAA,GAAUsD,cAAcC,aAAc,CAAAvD,OAAA;EAC5C,MAAMwD,eAAyB,EAAC;EAGhC,MAAMC,eAAkB,GAAA,CAAC,GAAGzD,OAAA,CAAQ0D,gBAAgB,CAAA;EAG9C,MAAAC,WAAA,GAAcF,gBAAgBhH,MAAO,CAACmH,cAAeA,UAAW,CAAAjF,QAAA,CAASkF,QAAS,CAAAR,QAAQ,CAAC,CAAA;EAEjG,KAAA,MAAWO,cAAcD,WAAa,EAAA;IACpC,IAAIC,UAAW,CAAAnG,IAAA,CAAKoG,QAAS,CAAA,gBAAgB,CAAG,EAAA;MAC9CL,YAAA,CAAaM,IAAK,CAAA,GAAGC,mBAAoB,CAAAH,UAAA,CAAWnG,IAAI,CAAC,CAAA;IAC3D;EACF;EAEO,OAAA+F,YAAA;AACT;AAGO,SAASO,oBAAoBC,WAA+B,EAAA;EAC3D,MAAAC,GAAA,GAAM3B,aAAM0B,WAAa,EAAA;IAC7BE,MAAQ,EAAAC,yBAAA,CAAA7G;EAAA,CACT,CAAA;EAED,OAAO2G,IAAIjE,OAAQ,CAAAoE,IAAA,CAChB3H,MAAO,CAAC4H,QAASA,IAAK,CAAAC,IAAA,KAAS,qBAAqB,CAAA,CACpD7B,IAAK4B,IAAA,IAASE,MAAM,CAAAA,KAAA,CAAAF,IAAI,EAAEvF,IAAI,CAAA;AACnC;ACzCA,MAAM0F,UAAsD,GAAA;EAC1DtF,KAAO,EAAA,OAAA;EACPuF,IAAM,EAAA,MAAA;EACNC,GAAK,EAAA,MAAA;EACLtF,IAAM,EAAA;AACR,CAAA;AAGO,SAASuF,yBAAyB3G,OAEZ,EAAA;EACrB,MAAA;IAAC4G;EAAS,CAAA,GAAA5G,OAAA;EAEP,SAAA6G,cAAA,CACPC,KACAC,YACA,EAAA;IACA,MAAMC,IAAIJ,KAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,KAAA,CAAAE,GAAA,CAAA;IAEV,OAAAE,CAAA,GAAIR,UAAW,CAAAQ,CAAA,CAAA,GAAKD,YAAgB,IAAA,SAAA;EAC9C;EAEO,OAAA;IACLE,wBAA0B,EAAA;MACxB3H,OAAS,EAAA;QACPX,QAAU,EAAA;MACZ;IACF,CAAA;IAEAuI,yBAA2B,EAAA;MACzB5H,OAAS,EAAA;QACPX,QAAU,EAAA,SAAA;QACVwI,kBAAoB,EAAA;MACtB,CAAA;MAEA,qBAAuB,EAAA;QACrBxI,QAAA,EAAUkI,cAAe,CAAA,qBAAA,EAAuB,OAA4B,CAAA;QAC5EM,kBAAoB,EAAA;MACtB,CAAA;MAEA,8BAAgC,EAAA;QAC9BxI,QAAA,EAAUkI,cAAe,CAAA,8BAAA,EAAgC,OAA4B,CAAA;QACrFM,kBAAoB,EAAA;MACtB,CAAA;MAEA,gCAAkC,EAAA;QAChCxI,QAAA,EAAUkI,eAAe,gCAAgC,CAAA;QACzDM,kBAAoB,EAAA;MACtB,CAAA;MAEA,wBAA0B,EAAA;QACxBxI,QAAA,EAAUkI,cAAe,CAAA,wBAAA,EAA0B,OAA4B,CAAA;QAC/EM,kBAAoB,EAAA;MACtB,CAAA;MAEA,0BAA4B,EAAA;QAC1BxI,QAAU,EAAA,MAAA;QACVwI,kBAAoB,EAAA;MACtB;IACF,CAAA;IAEAC,qBAAuB,EAAA;MACrB9H,OAAS,EAAA;QACPX,QAAU,EAAA,SAAA;QACVwI,kBAAoB,EAAA;MACtB,CAAA;MAEA,+BAAiC,EAAA;QAC/BxI,QAAA,EAAUkI,cAAe,CAAA,+BAAA,EAAiC,SAA8B,CAAA;QACxFM,kBAAoB,EAAA;MACtB,CAAA;MAEA,qBAAuB,EAAA;QACrBxI,QAAA,EAAUkI,cAAe,CAAA,qBAAA,EAAuB,OAA4B,CAAA;QAC5EM,kBAAoB,EAAA;MACtB,CAAA;MAEA,uBAAyB,EAAA;QACvBxI,QAAA,EAAUkI,cAAe,CAAA,uBAAA,EAAyB,MAA2B,CAAA;QAC7EM,kBAAoB,EAAA;MACtB;IACF;EAAA,CACF;AACF;ACtEA,eAAsBE,aAAarH,OAY2C,EAAA;EACtE,MAAA;IACJiE,UAAA;IACAnB,QAAA;IACAC,UAAA;IACAuE,KAAA;IACAtE,QAAA;IACAuE,WAAA;IACAX,KAAA;IACAY,eAAA;IACAC,OAAA;IACAtE;EACE,CAAA,GAAAnD,OAAA;EAEE,MAAA0H,eAAA,GAAkB,MAAM3D,iBAAkB,CAAA;IAC9CE,UAAA,EAAYA,cAAc;EAAC,CAC5B,CAAA;EAEK,MAAA0D,eAAA,GAAmCC,6BAAgBC,OAAQ,CAAA;IAC/DC,cAAcjF,wBAAyB,CAAA;MACrCC,QAAA;MACAC,UAAA;MACAC,QAAA;MACA3E,QAAU,EAAAsI,wBAAA,CAAyB;QAACC;OAAM,CAAA;MAC1C3D,aAAe,EAAAsE,WAAA;MACfrE,sBAAwB,EAAAsE,eAAA;MACxBrE;IAAA,CACD,CAAA;IACD4E,oBAAsB,EAAA,KAAA,CAAA;IACtBL,eAAA;IACAM,mBAAqB,EAAAjJ,aAAA,CAAAO,OAAA,CAAKqE,OAAQ,CAAA4D,WAAA,EAAa,cAAc;EAAA,CAC9D,CAAA;EAED,MAAMlJ,WAA+B,EAAC;EAGhC,MAAA4J,eAAA,GAAkBC,YAAAA,CAAAA,SAAU,CAAAC,MAAA,CAAOR,eAAiB,EAAA;IAExDS,UAAY,EAAA,IAAA;IAEZC,mBAAqB,EAAA,IAAA;IAErBC,gBAAgB9H,OAA2B,EAAA;MACzCnC,QAAA,CAASyH,KAAKtF,OAAO,CAAA;MACrBA,OAAA,CAAQ+H,OAAU,GAAA,IAAA;IACpB;EAAA,CACD,CAAA;EAED,MAAMC,SAAY,GAAAzJ,aAAA,CAAAO,OAAA,CAAKqE,OAAQ,CAAAb,QAAA,EAAUE,QAAQ,CAAA;EACjD,MAAMyF,QAAW,GAAA,MAAMC,WAAAA,CAAAA,OAAG,CAAAvE,QAAA,CAASqE,SAAS,CAAA;EAC5C,MAAMG,cAAiB,GAAA,MAAMC,iBAAAA,CAAAA,OAAS,CAAAC,aAAA,CAAcL,SAAS,CAAA;EAE7D,MAAMM,eAAO,CAAAxJ,OAAA,CAAAP,aAAA,CAAAO,OAAA,CAAKyJ,OAAQ,CAAAP,SAAS,CAAC,CAAA;EAE9B,MAAAhD,YAAA,GAAe,MAAMJ,4BAA6B,CAAA;IACtDE,aAAe,EAAA2C,eAAA;IACf5C,QAAU,EAAAoC;EAAA,CACX,CAAA;EAEK,MAAA3G,IAAA,GAAO,CAAC2H,QAAS,CAAAlE,QAAA,IAAY,GAAGiB,YAAY,CAAE,CAAA9F,IAAA,CAAK,MAAM,CAAA;EAE/D,MAAMgJ,WAAG,CAAApJ,OAAA,CAAA0J,SAAA,CACPR,SAAA,EACAI,iBAAA,CAAAtJ,OAAA,CAAS2J,OAAOnI,IAAM,EAAA;IACpB,GAAG6H,cAAA;IACHO,QAAU,EAAAV;EAAA,CACX,CAAA,CACH;EAGAlB,KAAA,CAAMxB,IAAK,CAAA;IACTQ,IAAM,EAAA,OAAA;IACNvH,IAAM,EAAAyJ;EAAA,CACP,CAAA;EAEM,OAAA;IAACP;IAAiB5J;GAAQ;AACnC;AC9FA,MAAM8K,MAAA,GAASC,IAAAA,CAAAA,UAAUC,uBAAAA,CAAAA,OAAc,CAAA;AAOjB,eAAAC,SAAA,CACpBlL,KACAmL,IACoB,EAAA;EApBtB,IAAAC,EAAA,EAAAC,EAAA;EAqBE,MAAM;IAACC,MAAQ;IAAApL,GAAA;IAAKgJ;IAAO/I,MAAQ;IAAAmD,MAAA;IAAQpB;EAAM,CAAA,GAAAlC,GAAA;EAEjD,IAAI,CAACkC,EAAA,CAAGoJ,MAAU,IAAA,CAACpJ,GAAGqJ,UAAY,EAAA;IACzB,OAAA;MAACrD,MAAM,KAAO;MAAAjI,QAAA,EAAU,EAAI;MAAAuL,OAAA,EAAS;KAAE;EAChD;EAEA,MAAM;IAACpI,MAAQ;IAAAqI,OAAA,GAAUvL;EAAG,CAAA,GAAIgC,GAAGoJ,MAAO,CAAA1J,OAAA;EAE1C,IAAI,CAACwB,MAAQ,EAAA;IACL,MAAA,IAAIP,MAAM,mDAAmD,CAAA;EACrE;EAEA,MAAMwG,OAAU,GAAA1I,aAAA,CAAAO,OAAA,CAAKqE,OAAQ,CAAAnC,MAAA,EAAQ,SAAS,CAAA;EAExC,MAAAD,UAAA,CAAW;IAACjD,GAAA;IAAKC,MAAQ;IAAAiD,MAAA,EAAQiG;IAAS/F,MAAQ;IAAAD,QAAA,EAAUnB,EAAG,CAAAoJ;EAAO,CAAA,CAAA;EAC5E,MAAMrL,WAA+B,EAAC;EAEtC,MAAMuL,UAAoD,EAAC;EAEhD,KAAA,MAAAE,KAAA,IAASP,KAAKQ,OAAS,EAAA;IAChC,MAAMhH,UAAa,GAAA+G,KAAA,CAAM/G,UAAe,KAAA,GAAA,GAAM,YAAY+G,KAAM,CAAA/G,UAAA;IAEhE,MAAMyE,kBAAkBzI,aAAAA,CAAAA,OAAK,CAAA4E,OAAA,CAC3B8D,OAAA,EACA1I,aAAAA,CAAAA,OAAK,CAAAC,QAAA,CAAS6K,OAAS,EAAA9K,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAArF,GAAA,EAAKwL,KAAM,CAAAE,UAAU,CAAC,CAAA,CAAEC,OAAQ,CAAA,OAAA,EAAS,OAAO,CAAA,CACtF;IAEA,MAAMC,UAAa,GAAAnL,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAArF,GAAA,EAAKwL,MAAMI,UAAU,CAAA;IACrD,MAAMlH,QAAW,GAAAjE,aAAA,CAAAO,OAAA,CAAKN,QAAS,CAAAwC,MAAA,EAAQ0I,UAAU,CAAA;IAC3C,MAAAC,MAAA,GAAS,MAAM9C,YAAa,CAAA;MAChCpD,UAAA,EAAA,CAAYuF,EAAQ,GAAAE,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAAU,OAAA,KAAR,IAAiB,GAAA,KAAA,CAAA,GAAAZ,EAAA,CAAAvF,UAAA;MAC7B3F,GAAA;MACAwE,QAAU,EAAAtB,MAAA;MACVuB,UAAA;MACAuE,KAAA;MACAtE,QAAA;MACAuE,WAAa,EAAAjJ,GAAA;MACbsI,KAAA,EAAA,CAAO6C,EAAQ,GAAAC,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAAU,OAAA,KAAR,IAAiB,GAAA,KAAA,CAAA,GAAAX,EAAA,CAAA7C,KAAA;MACxBY,eAAA;MACAC,OAAA;MACAtE,cAAcpE,aAAK,CAAAO,OAAA,CAAAqE,OAAA,CAAQrF,GAAK,EAAAgC,EAAA,CAAGqJ,cAAc,eAAe;IAAA,CACjE,CAAA;IAEQtL,QAAA,CAAAyH,IAAA,CAAK,GAAGqE,MAAA,CAAO9L,QAAQ,CAAA;IAE5B,IAAA8L,MAAA,CAAO9L,SAASgM,IAAK,CAAC3L,OAAQA,GAAI,CAAAC,QAAA,KAAa,OAAO,CAAG,EAAA;MAC3D,MAAMwK,OAAO1B,OAAO,CAAA;MAEpB,MAAM,IAAI9E,QAAA,CAAS,0CAA4C,EAAAwH,MAAA,CAAO9L,QAAQ,CAAA;IAChF;IAEQuL,OAAA,CAAA9D,IAAA,CAAK;MAACkE,UAAA,EAAYjL,aAAK,CAAAO,OAAA,CAAAqE,OAAA,CAAQrF,GAAK,EAAAwL,KAAA,CAAME,UAAU,CAAA;MAAGhH,QAAU,EAAAkH;IAAW,CAAA,CAAA;EACtF;EAEA,MAAMf,OAAO1B,OAAO,CAAA;EAEpB,OAAO;IAACnB,IAAA,EAAM,KAAO;IAAAjI,QAAA;IAAUuL;EAAO,CAAA;AACxC;ACrEO,MAAMU,OAA2C,GAAA;EACtD1F,IAAA,EAAM,CAAC2F,IAAA,EAAMhB,IACX,KAAA,4CAGE,GAAGA,KAAKQ,OAAQ,CAAAtF,GAAA,CAAKqF,KACnB,IAAA,iBACW5K,cAAAA,CAAAA,OAAA,CAAMC,IAAK,CAAA2K,KAAA,CAAMU,QAAQ,CAAA,mBAC/BtL,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAA0K,KAAA,CAAME,UAAU,CAAA,cAAK9K,cAAM,CAAAI,OAAA,CAAAE,IAAA,CAAK,QAAG,CAAA,cAAKN,cAAM,CAAAI,OAAA,CAAAF,MAAA,CAAO0K,MAAMI,UAAU,CAAA,EACvF,CAAExK,KAAK,EAAE,CAAA,CACX,CACF,CAAEA,KAAK,IAAI,CAAA;EACb+K,IAAA,EAAM,CAACrM,GAAA,EAAKmL,IAAS,KAAA;IACZ,OAAA,IAAImB,IAAAA,CAAAA,UAAW,CAACC,QAAa,IAAA;MAClCrB,SAAA,CAAUlL,GAAK,EAAAmL,IAAI,CAChB,CAAAqB,IAAA,CAAMT,MAAW,IAAA;QAChBQ,QAAA,CAASE,KAAKV,MAAM,CAAA;QACpBQ,QAAA,CAASG,QAAS,EAAA;MAAA,CACnB,CAAA,CACAC,KAAM,CAACC,GAAQ,IAAA;QACdL,QAAA,CAASzJ,MAAM8J,GAAG,CAAA;MAAA,CACnB,CAAA;IAAA,CACJ,CAAA;EACH,CAAA;EACAF,QAAU,EAAA,CAAC1M,GAAK,EAAA6M,KAAA,EAAOd,MAAW,KAAA;IACXhM,oBAAA,CAAAC,GAAA,EAAK+L,OAAO9L,QAAQ,CAAA;EAC3C,CAAA;EACA6C,KAAO,EAAA,CAAC9C,GAAK,EAAA6M,KAAA,EAAOD,GAAQ,KAAA;IACpB,MAAA;MAACzM;IAAU,CAAA,GAAAH,GAAA;IAEjB,IAAI4M,eAAerI,QAAU,EAAA;MACNxE,oBAAA,CAAAC,GAAA,EAAK4M,IAAI3M,QAAQ,CAAA;IAAA,CACxC,MAAA,IAAW2M,eAAe/J,KAAO,EAAA;MAC/B1C,MAAA,CAAO2C,MAAM8J,GAAG,CAAA;IAClB;EACF;AACF,CAAA;ACpCO,MAAME,YAAqD,GAAA;EAChEtG,IAAA,EAAM,CAAC2F,IAAA,EAAMhB,IACX,KAAA,2BAEE,GAAGA,KAAKQ,OAAQ,CAAAtF,GAAA,CACbqF,KACC,qBAAU5K,cAAAA,CAAAA,OAAM,CAAA2B,IAAA,CAAKiJ,MAAMU,QAAQ,CAAA,eAAMV,KAAM,CAAAE,UAAA,iBAAiBF,KAAM,CAAAI,UAAA,CAAA,CAC1E,CACF,CAAExK,KAAK,IAAI,CAAA;EACb+K,IAAA,EAAM,CAACrM,GAAA,EAAKmL,IAAS,KAAA;IACZ,OAAA,IAAImB,IAAAA,CAAAA,UAAW,CAACC,QAAa,IAAA;MAClCrB,SAAA,CAAUlL,GAAK,EAAAmL,IAAI,CAChB,CAAAqB,IAAA,CAAMT,MAAW,IAAA;QAChBQ,QAAA,CAASE,KAAKV,MAAM,CAAA;QACpBQ,QAAA,CAASG,QAAS,EAAA;MAAA,CACnB,EACAC,KAAM,CAACC,OAAQL,QAAS,CAAAzJ,KAAA,CAAM8J,GAAG,CAAC,CAAA;IAAA,CACtC,CAAA;EACH,CAAA;EACAF,QAAU,EAAA,CAAC1M,GAAK,EAAA6M,KAAA,EAAOd,MAAW,KAAA;IAC1B,MAAA;MAAC5L;IAAU,CAAA,GAAAH,GAAA;IAEID,oBAAA,CAAAC,GAAA,EAAK+L,OAAO9L,QAAQ,CAAA;IAEzCE,MAAA,CAAO6C,KAAK,4DAA4D,CAAA;IACxE7C,MAAA,CAAOM,GAAI,EAAA;EACb,CAAA;EACAqC,KAAO,EAAA,CAAC9C,GAAK,EAAA6M,KAAA,EAAOD,GAAQ,KAAA;IACpB,MAAA;MAACzM;IAAU,CAAA,GAAAH,GAAA;IAEjB,IAAI4M,eAAerI,QAAU,EAAA;MACNxE,oBAAA,CAAAC,GAAA,EAAK4M,IAAI3M,QAAQ,CAAA;IAAA,CACxC,MAAA,IAAW2M,eAAe/J,KAAO,EAAA;MAC/B1C,MAAA,CAAO2C,MAAM8J,GAAG,CAAA;IAClB;EACF;AACF,CAAA;ACpCO,MAAMG,mBAA4D,GAAA;EACvEvG,IAAA,EAAM,CAAC2F,IAAA,EAAMhB,IACX,KAAA,iEAGE,GAAGA,KAAKQ,OAAQ,CAAAtF,GAAA,CAAKqF,KACnB,IAAA,iBACW5K,cAAAA,CAAAA,OAAA,CAAMC,IAAK,CAAA2K,KAAA,CAAMU,QAAQ,CAAA,mBAC/BtL,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAA0K,KAAA,CAAM1F,OAAO,CAAA,cAAKlF,cAAM,CAAAI,OAAA,CAAAE,IAAA,CAAK,QAAG,CAAA,cAAKN,cAAM,CAAAI,OAAA,CAAAF,MAAA,CAAO0K,MAAMsB,MAAM,CAAA,EAChF,CAAE1L,KAAK,EAAE,CAAA,CACX,CACF,CAAEA,KAAK,IAAI,CAAA;EACb+K,IAAA,EAAM,CAACrM,GAAA,EAAKmL,IAAS,KAAA;IACnB,OAAO8B,IAAK,CAAAA,IAAA,CAAAZ,IAAA,CAAKrM,GAAK,EAAAmL,IAAI,CAAC,CAAA;EAC7B,CAAA;EACAuB,UAAU,MAAM,CAEhB,CAAA;EACA5J,KAAO,EAAA,CAACqJ,IAAM,EAAAU,KAAA,EAAOD,GAAQ,KAAA;IAE3BM,OAAA,CAAQpK,MAAM8J,GAAG,CAAA;EACnB;AACF,CAAA;AAEA,eAAeP,IAAA,CAAKrM,KAAmBmL,IAA+B,EAAA;EAC9D,MAAA;IAACjL;EAAO,CAAA,GAAAF,GAAA;EAEH,KAAA,MAAA0L,KAAA,IAASP,KAAKQ,OAAS,EAAA;IAChC,MAAMC,UAAa,GAAAjL,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAArF,GAAA,EAAKwL,MAAM1F,OAAO,CAAA;IAClD,MAAM8F,UAAa,GAAAnL,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAArF,GAAA,EAAKwL,MAAMsB,MAAM,CAAA;IAC3C,MAAAG,SAAA,GAAYxM,aAAAA,CAAAA,OAAK,CAAAgK,OAAA,CAAQmB,UAAU,CAAA;IAEzC,MAAMpB,eAAAA,CAAAA,QAAOyC,SAAS,CAAA;IAGhB,MAAAC,GAAA,GAAMpH,QAAQ4F,UAAU,CAAA;IAE9B,IAAIyB,cAAiB,eAAK1M,aAAK,CAAAO,OAAA,CAAAN,QAAA,CAASuM,WAAWvB,UAAU,CAAA,CAAA;IAGzD,IAAAyB,cAAA,CAAeC,UAAW,CAAA,KAAK,CAAG,EAAA;MACnBD,cAAA,GAAAA,cAAA,CAAeE,MAAM,CAAC,CAAA;IACzC;IAEA,MAAM7K,IAAO,GAAA,4BACS2K,cAAA,SACpB,EAAA,EACA,GAAGG,MAAO,CAAAC,IAAA,CAAKL,GAAG,CAAA,CAAE/G,IAAKqH,CAAA,2BAAsBA,CAAA,oBAAWA,CAAI,MAAA,CAAA,EAC9D,EAAA,CACF,CAAEpM,KAAK,IAAI,CAAA;IAEL,MAAAsJ,YAAA,CAAUkB,UAAY,EAAApJ,IAAA,EAAM,MAAM,CAAA;EAC1C;AACF;ACjDO,SAASiL,iBAAiB/L,OAElB,EAAA;EACP,MAAA;IAACgM;EAAc,CAAA,GAAAhM,OAAA;EAErB,MAAMiM,QAAW,GAAA;IACfpN,KAAKyM,OAAQ,CAAAzM,GAAA;IACbuC,MAAMkK,OAAQ,CAAAlK,IAAA;IACdF,OAAOoK,OAAQ,CAAApK;EAAA,CACjB;EAEA,MAAM7C,WAA4B,EAAC;EAE3BiN,OAAA,CAAAzM,GAAA,GAAM;IAAA,kCAAIqN,IAAoB;MAApBA,IAAoB;IAAA;IAAA,OAAA7N,QAAA,CAASyH,KAAK;MAACQ,IAAA,EAAM,KAAO;MAAA4F;IAAA,CAAK,CAAA;EAAA;EAC/DZ,OAAA,CAAAlK,IAAA,GAAO;IAAA,mCAAI8K,IAAoB;MAApBA,IAAoB;IAAA;IAAA,OAAA7N,QAAA,CAASyH,KAAK;MAACQ,IAAA,EAAM,MAAQ;MAAA4F;IAAA,CAAK,CAAA;EAAA;EACjEZ,OAAA,CAAApK,KAAA,GAAQ;IAAA,mCAAIgL,IAAoB;MAApBA,IAAoB;IAAA;IAAA,OAAA7N,QAAA,CAASyH,KAAK;MAACQ,IAAA,EAAM,OAAS;MAAA4F;IAAA,CAAK,CAAA;EAAA;EAEpE,OAAA;IACL7N,QAAA;IACA8N,SAAS,MAAM;MACbb,OAAA,CAAQzM,MAAMoN,QAAS,CAAApN,GAAA;MACvByM,OAAA,CAAQlK,OAAO6K,QAAS,CAAA7K,IAAA;MACxBkK,OAAA,CAAQpK,QAAQ+K,QAAS,CAAA/K,KAAA;MAEzB8K,UAAA,CAAW3N,QAAQ,CAAA;IACrB;EAAA,CACF;AACF;ACrBgB,SAAA+N,mBAAA,CACdhO,KACAiO,SACc,EAAA;EAAA;EAtBhB,IAAA7C,EAAA,EAAAC,EAAA,EAAA6C,EAAA,EAAAC,EAAA;EAuBE,MAAM;IAACtD,MAAA;IAAQuD,OAAS;IAAAC;EAAA,CAAU,GAAAJ,SAAA;EAC5B,MAAA;IAAC3C,MAAQ;IAAApL,GAAA;IAAKoO,OAAS,EAAAC,QAAA;IAAUC,MAAQ;IAAAC,QAAA;IAAU/J,QAAU;IAAAvE,MAAA;IAAQuO,GAAK;IAAAxM;EAAA,CAAM,GAAAlC,GAAA;EACtF,MAAM2O,SAAY,GAAAH,MAAA,CAAOE,GAAI,CAAAxG,IAAA,IAAQ,UAAY,CAAA,CAAA2C,MAAA,CAAA;EAC3C,MAAA+D,MAAA,YAAStD,iCAAQsD,MAAU,yCAAA,KAAA;EACjC,MAAMxL,MAAS,GAAAzC,aAAA,CAAAO,OAAA,CAAKN,QAAS,CAAAV,GAAA,EAAKwE,QAAQ,CAAA;EAE1C,MAAMmK,cAAcrB,MAAO,CAAAsB,WAAA,CACzBtB,MAAO,CAAA7B,OAAA,CAAA,CAAA,CAAQP,EAAG,GAAAlJ,EAAA,CAAAoJ,MAAA,KAAH,mBAAW1J,OAAQ,CAAAmN,KAAA,KAAS,EAAE,EAAE1I,GAAI,CAAA,SAAgB;IAAA,IAAf,CAACqC,GAAA,EAAKsG,GAAG,CAAM;IA9BvE5D,IAAAA,GAAAA;IA+BM,OAAO,CAAC1C,GAAA,EAAK/H,aAAAA,CAAAA,OAAK,CAAA4E,OAAA,CAAQrF,OAAKkL,GAAA,GAAAlJ,EAAA,CAAGoJ,MAAH,KAAA,IAAA,GAAA,KAAA,CAAA,GAAAF,IAAWxJ,OAAQ,CAAAqN,OAAA,KAAW,GAAK,EAAAD,GAAA,CAAI,EAAE,CAAC,CAAA;EAAA,CAC1E,CAAA,CACH;EAEA,MAAMrD,OAAU,GAAAsC,SAAA,CAAUtC,OAAQ,CAAAtF,GAAA,CAAKqF,KAAU,IAAA;IACxC,OAAA;MACL,GAAGA,KAAA;MACHlF,IAAA,EAAM7F,aAAAA,CAAAA,QAAKC,QAAS,CAAAwC,MAAA,EAAQsI,MAAMlJ,MAAM,CAAA,CAAEqJ,OAAQ,CAAA,WAAA,EAAa,EAAE;IAAA,CACnE;EACF,CAAA,EAAG,CAAE,CAAA,CAAA;EAEL,MAAMqD,SACJ,GAAAX,QAAA,IAAYf,MAAO,CAAAC,IAAA,CAAKc,QAAQ,CAAE,CAAAlI,GAAA,CAAK1B,UAAA,IAAehE,aAAAA,CAAAA,OAAK,CAAAW,IAAA,CAAKoN,GAAI,CAAAlI,IAAA,EAAM7B,UAAU,CAAC,CAAA;EAEvF,MAAMwK,WAAc,GAAAZ,QAAA,IAAYf,MAAO,CAAA4B,MAAA,CAAOb,QAAQ,CAAE,CAAAlI,GAAA,CAAKgJ,CAAA,IAAM1O,aAAAA,CAAAA,OAAK,CAAA4E,OAAA,CAAQrF,GAAK,EAAAmP,CAAA,CAAEC,MAAM,CAAC,CAAA;EAE9F,MAAMC,eAAe/B,MAAO,CAAAsB,WAAA,CAC1BtB,OAAO7B,OAAQ,CAAA,CAAAL,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAQkE,WAAU,EAAE,EAAEnJ,GAAI,CAAA;IAAA,IAAC,CAACqC,GAAK,EAAAsG,GAAG;WAAM,CAACtG,GAAA,EAAK+G,KAAKC,SAAU,CAAAV,GAAG,CAAC,CAAC;EAAA,EAAA,CACrF;EAEA,MAAMW,cAAiB,GAAA,CACrB9D,wBAAQ,CAAA;IACN+D,iBAAmB,EAAA,IAAA;IACnBR,MAAQ,EAAA;MACN,IAAIV,GAAI,CAAAlI,IAAA,KAAS,sBACb;QAAC,GAAG+I;OACJ,GAAA;QACE,2BAAA,EAA8BM,GAAQ,IAAA;UACpC,MAAMjE,UAAa,GAAA,IAAA,GAAOjL,aAAAA,CAAAA,OAAK,CAAAC,QAAA,CAASV,KAAK2P,GAAG,CAAA;UAChD,MAAMnE,QAAQC,OAAQ,CAAAmE,IAAA,CAAMT,CAAM,IAAAA,CAAA,CAAEC,WAAW1D,UAAU,CAAA;UAEzD,IAAI,CAACF,KAAO,EAAA;YAEFwB,OAAA,CAAApK,KAAA,wCAAsC8I,UAAY,EAAA;YAEnD,OAAA,MAAA;UACT;UAEA,OAAO6D,IAAK,CAAAC,SAAA,CACV/O,qBAAA,CAAKC,SAASV,GAAK,EAAAS,qBAAA,CAAK4E,QAAQnC,MAAQ,EAAAsI,KAAA,CAAMlF,IAAO,GAAAmI,SAAS,CAAC,CAAA,CACjE;QACF,CAAA;QACA,wBAAA,EAA0Bc,IAAK,CAAAC,SAAA,CAAU7E,MAAM,CAAA;QAC/C,yBAAA,EAA2B4E,IAAK,CAAAC,SAAA,CAAUtB,OAAO,CAAA;QACjD,2BAA2BqB,IAAK,CAAAC,SAAA,CAAUjO,QAAQsO,GAAI,CAAAC,WAAA,IAAetB,IAAIuB,OAAO,CAAA;QAChF,GAAGV;MACL,CAAA;IACN;EAAA,CACD,CAAA,EACDW,sBAAM,CAAA;IACJvE,OAAA,EAAS;MAAC,GAAGkD;IAAW;EAAA,CACzB,CAAA,EACDsB,6BAAY,CAAA;IAEVC,SAAShC,OAAY,KAAA,SAAA;IAErBiC,YAAY,CAAC,MAAA,EAAQ,QAAQ,KAAO,EAAA,MAAA,EAAQ,SAAS,OAAO,CAAA;IAC5DC,cAAgB,EAAA;EAAA,CACjB,CAAA,EACDC,yBAAS,EAAA,EACTC,qBAAK,EAAA,EACLC,wBAAQ,CAAA;IACNC,GAAA,WAAKpF,iCAAQoF,GAAO,yCAAA,WAAA;IACpBC,UAAA,WAAYrF,iCAAQqF,UAAc,yCAAA,eAAA;IAClCC,WAAA,WAAatF,iCAAQsF,WAAe,yCAAA,UAAA;IACpCC,eAAA,WAAiBvF,iCAAQuF,eAAmB,yCAAA,OAAA;IAC5CxC,MAAA;IACAhL,QAAA,EAAUrD,GAAI,CAAAkC,EAAA,CAAGqJ,UAAc,IAAA;EAAA,CAChC,CAAA,EACDuF,gCAAqB,CAAA;IACnBC,OAAS,EAAA,KAAA;IACTC,OAAA,EAAA,CAAS3F,EAAQ,GAAAC,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAA2F,KAAA,KAAR,IAAe,GAAA,KAAA,CAAA,GAAA5F,EAAA,CAAA2F,OAAA;IACxBE,OAAS,EAAA,CACP,CACE,mBAAA,EACA;MAACC,OAAS,EAAAzC,GAAA,CAAI0C,YAAgB,IAAAC,mBAAAA,CAAAA,0BAAA;MAA4BC,SAAS;IAAK,CAAA,CAC1E;EACF,CACD,CAAA,EACD1C,UACE2C,eAAAA,CAAAA,OAAO,CAAA;IACLC,QAAU,EAAA;MAERC,UAAY,EAAA;IACd,CAAA;IACAjP,MAAQ,EAAA;MACNkP,QAAA,EAAU,CAACC,KAAA,EAAOC,OAAY,KAAA;QAC5B,MAAMvQ,OAAOuQ,OAAQ,CAAAC,KAAA;QACrB,MAAM3J,OAAO0J,OAAQ,CAAA1J,IAAA;QAGrB,IAAIA,QAAQ,UAAY,EAAA;UAEf,OAAA,4BAAA,CAA6B4J,KAAKzQ,IAAI,CAAA;QAC/C;QAEO,OAAA,KAAA;MACT;IACF;EAAA,CACD,CAAA,CACL,CAAEhB,OAAO0R,OAAO,CAAA;EAEV,MAAAC,WAAA,GAAA,CAAc9D,EAAQ,GAAA5C,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAA2G,MAAA,KAAR,IAAgB,GAAA,KAAA,CAAA,GAAA/D,EAAA,CAAA8C,OAAA;EAEpC,MAAMA,OAAU,GAAAkB,KAAA,CAAMC,OAAQ,CAAAH,WAAW,IACrCrC,cAAe,CAAAxL,MAAA,CAAO6N,WAAW,CAAA,GACjCI,mBAAsB,CAAAA,qBAAA,CAAA,CAAAjE,EAAA,GAAA7C,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAQ2G,MAAR,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA9D,EAAA,CAAgB6C,SAASrB,cAAc,CAAA;EAE1D,OAAA;IACL0C,YAAc,EAAA;MACZC,OAAS,EAAApS,GAAA;MAETuO,QAAA,EAAU,CAAC8D,EAAA,EAAIC,QAAa,KAAA;QAEtB,IAAAtD,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,SAAA,CAAWzH,SAAS8K,EAAK,CAAA,EAAA;UACpB,OAAA,IAAA;QACT;QAGI,IAAAC,QAAA,KAAaD,GAAGjF,UAAW,CAAA,GAAG,KAAKiF,EAAG,CAAAjF,UAAA,CAAW,GAAG,CAAI,CAAA,EAAA;UAC1D,MAAMmF,SAAS9R,aAAK,CAAAO,OAAA,CAAAqE,OAAA,CAAQ5E,aAAAA,CAAAA,QAAKgK,OAAQ,CAAA6H,QAAQ,GAAGD,EAAE,CAAA;UAElD,IAAApD,WAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,WAAA,CAAa1H,SAASgL,MAAS,CAAA,EAAA;YAC1BtS,MAAA,CAAA6C,IAAA,yEACuDrC,aAAAA,CAAAA,OAAK,CAAAC,QAAA,CAC/DV,GAAA,EACAuS,MAAA,CACF,EACF;YAEO,OAAA,IAAA;UACT;QACF;QAEM,MAAAC,OAAA,GAAUH,EAAG,CAAAI,KAAA,CAAM,GAAG,CAAA;QAEtB,MAAAnM,IAAA,GAAOkM,OAAQ,CAAA,CAAA,CAAA,CAAGpF,UAAW,CAAA,GAAG,CAAI,aAAGoF,OAAQ,CAAA,CAAA,CAAA,cAAMA,OAAQ,CAAA,CAAA,CAAA,IAAOA,OAAQ,CAAA,CAAA,CAAA;QAElF,IAAIlM,IAAQ,IAAAiI,QAAA,CAAShH,QAAS,CAAAjB,IAAI,CAAG,EAAA;UAC5B,OAAA,IAAA;QACT;QAEO,OAAA,KAAA;MACT,CAAA;MAEAoM,KAAO,EAAAjH,OAAA,CAAQkH,MAAuC,CAAA,CAACC,KAAKpH,KAAU,KAAA;QACpE,OAAO;UAAC,GAAGoH,GAAA;UAAK,CAACpH,KAAM,CAAAlF,IAAA,GAAOkF,MAAM4D;SAAM;MAC5C,CAAA,EAAG,EAAE,CAAA;MAEL0B,OAAA;MAEA+B,SAAW,EAAA;QACTC,uBAAyB,EAAA;MAC3B;IACF,CAAA;IACAC,aAAe,EAAA;MACbC,gBAAgB,MAAM;QACd,MAAAC,KAAA,GAAQxE,SAAU,CAAAgE,KAAA,CAAM,GAAG,CAAA;QAE7B,IAAAQ,KAAA,CAAM3S,WAAW,CAAG,EAAA;UACtB,uCAAgC2S,KAAM,CAAA,CAAA,CAAA;QACxC;QAEA,sCAA+BxE,SAAA;MACjC,CAAA;MACAyE,OAAS,EAAAxE,MAAA;MACTyE,GAAK,EAAAjQ,MAAA;MACLkQ,gBAAgB,MAAM;QACd,MAAAH,KAAA,GAAQxE,SAAU,CAAAgE,KAAA,CAAM,GAAG,CAAA;QAE7B,IAAAQ,KAAA,CAAM3S,WAAW,CAAG,EAAA;UACtB,wBAAiB2S,KAAM,CAAA,CAAA,CAAA;QACzB;QAEA,uBAAgBxE,SAAA;MAClB,CAAA;MACA4E,QAAU,EAAA,IAAA;MACV1I,MAAA;MACA2I,OAAS,EAAA,QAAA;MACTC,qBAAuB,EAAA7E,MAAA;MACvB8E,SAAA,WAAWpI,iCAAQoI,SAAa,yCAAA,IAAA;MAChCC,sBAAwB,EAAA;IAC1B;EAAA,CACF;AACF;AC7MO,MAAMC,UAAsC,GAAA;EACjDpN,IAAA,EAAM,CAACxG,GAAA,EAAKmL,IACV,KAAA,kDAEerK,cAAAA,CAAAA,OAAA,CAAME,MAAO,CAAAmK,IAAA,CAAKN,MAAM,CAAA,gBAErC,GAAGM,IAAK,CAAAkD,MAAA,CAAOhI,GAAI,CAACC,qBAAexF,sBAAA,CAAME,MAAO,CAAAsF,CAAC,CAAG,CAAA,CAAA,gBAEpD,GAAG6E,KAAKQ,OAAQ,CAAAtF,GAAA,CAAKgJ,CACnB,IAAA,qBAEKvO,cAAM,CAAAI,OAAA,CAAAH,IAAA,CAAKJ,aAAAA,CAAAA,OAAK,CAAAW,IAAA,CAAKtB,IAAI0O,GAAI,CAAAlI,IAAA,EAAM6I,CAAE,CAAA1O,IAAI,CAAC,CAAA,mBAC1CG,cAAA,CAAAI,OAAA,CAAMF,MAAO,CAAAqO,CAAA,CAAEC,MAAM,CAAA,cAAKxO,cAAM,CAAAI,OAAA,CAAAE,IAAA,CAAK,QAAG,CAAA,cAAKN,cAAM,CAAAI,OAAA,CAAAF,MAAA,CAAOqO,EAAE7M,MAAM,CAAA,EACvE,CAAElB,KAAK,EAAE,CAAA,CACX,CACF,CAAEA,KAAK,IAAI,CAAA;EACb+K,IAAA,EAAM,CAACrM,GAAA,EAAKmL,IAAS,KAAA;IACZ,OAAA,IAAImB,IAAAA,CAAAA,UAAW,CAACC,QAAa,IAAA;MAClCsH,WAAA,CAAY7T,GAAK,EAAAmL,IAAI,CAClB,CAAAqB,IAAA,CAAMT,MAAW,IAAA;QAChBQ,QAAA,CAASE,KAAKV,MAAM,CAAA;QACpBQ,QAAA,CAASG,QAAS,EAAA;MAAA,CACnB,EACAC,KAAM,CAACC,OAAQL,QAAS,CAAAzJ,KAAA,CAAM8J,GAAG,CAAC,CAAA;IAAA,CACtC,CAAA;EACH,CAAA;EACAF,UAAU,MAAM,CAEhB,CAAA;EACA5J,KAAO,EAAA,CAACqJ,IAAM,EAAAU,KAAA,EAAOD,GAAQ,KAAA;IAE3BM,OAAA,CAAQpK,MAAM8J,GAAG,CAAA;EACnB;AACF,CAAA;AAEA,eAAeiH,WAAA,CAAY7T,KAAmBmL,IAAkB,EAAA;EAC9D,MAAM;IAACzG,QAAA;IAAUwE,KAAO;IAAA/I;EAAA,CAAU,GAAAH,GAAA;EAClC,MAAMoD,MAAS,GAAAzC,aAAAA,CAAAA,OAAA,CAAKC,QAAS,CAAAZ,GAAA,CAAIE,KAAKwE,QAAQ,CAAA;EAG9C,MAAMoP,aAAanG,gBAAiB,CAAA;IAClCC,UAAA,EAAa3N,QAAa,IAAA;MACxB,KAAA,MAAWK,OAAOL,QAAU,EAAA;QAC1B,MAAMoB,IAAO,GAAA0S,MAAA,CAAOzT,GAAI,CAAAwN,IAAA,CAAK,CAAE,CAAA,CAAA;QAE3B,IAAAxN,GAAA,CAAIoC,SAAS,qBAAuB,EAAA;UACtC;QACF;QAEI,IAAArB,IAAA,CAAKiM,UAAW,CAAA,yBAAyB,CAAG,EAAA;UAC9C;QACF;QAEI,IAAAjM,IAAA,CAAKiM,UAAW,CAAA,qCAAqC,CAAG,EAAA;UAC1D;QACF;QAEI,IAAAhN,GAAA,CAAI4H,SAAS,KAAO,EAAA;UACf/H,MAAA,CAAAkI,IAAA,CAAK,GAAG/H,GAAA,CAAIwN,IAAI,CAAA;QACzB;QAEI,IAAAxN,GAAA,CAAI4H,SAAS,MAAQ,EAAA;UAChB/H,MAAA,CAAA6C,IAAA,CAAK,GAAG1C,GAAA,CAAIwN,IAAI,CAAA;QACzB;QAEI,IAAAxN,GAAA,CAAI4H,SAAS,OAAS,EAAA;UACjB/H,MAAA,CAAA2C,KAAA,CAAM,GAAGxC,GAAA,CAAIwN,IAAI,CAAA;QAC1B;MACF;IACF;EAAA,CACD,CAAA;EAEG,IAAA;IACF,MAAM;MAACuE,YAAc;MAAAY;IAAA,CAAiB,GAAAjF,mBAAA,CAAoBhO,KAAKmL,IAAI,CAAA;IAG7D,MAAA6I,MAAA,GAAS,MAAM/B,aAAO,CAAA;MAC1B,GAAGI,YAAA;MACH4B,OAAOC,OAAS,EAAA;QACdJ,UAAA,CAAW7T,SAASyH,IAAK,CAAA;UACvBQ,IAAM,EAAA,MAAA;UACNxF,MAAMwR,OAAQ,CAAAxR,IAAA;UACdoL,IAAA,EAAM,CAACoG,OAAA,CAAQ9R,OAAO;QAAA,CACvB,CAAA;MACH;IAAA,CACD,CAAA;IAID,MAAM;MAACI;IAAM,CAAA,GAAI,MAAMwR,MAAA,CAAOG,SAASlB,aAAa,CAAA;IAEpD,KAAA,MAAWmB,gBAAgB5R,MAAQ,EAAA;MAC7B,IAAA4R,YAAA,CAAalM,SAAS,OAAS,EAAA;QACjCgB,KAAA,CAAMxB,IAAK,CAAA;UACTQ,IAAM,EAAA,OAAA;UACNvH,IAAM,EAAAA,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAAnC,MAAA,EAAQgR,aAAa7R,QAAQ;QAAA,CACjD,CAAA;MAAA,CACI,MAAA;QACL2G,KAAA,CAAMxB,IAAK,CAAA;UACTQ,IAAM,EAAA,OAAA;UACNvH,IAAM,EAAAA,aAAAA,CAAAA,OAAA,CAAK4E,OAAQ,CAAAnC,MAAA,EAAQgR,aAAa7R,QAAQ;QAAA,CACjD,CAAA;MACH;IACF;IAGM,MAAAyR,MAAA,CAAOK,MAAMpB,aAAa,CAAA;IAGhC,MAAMe,OAAOM,KAAM,EAAA;IAGnBR,UAAA,CAAW/F,OAAQ,EAAA;WACZnB,GAAP,EAAA;IAEAkH,UAAA,CAAW/F,OAAQ,EAAA;IACb,MAAAnB,GAAA;EACR;AACF;ACxHO,MAAM2H,eAAoE,GAAA;EAC/E/N,IAAA,EAAM,CAACxG,GAAA,EAAKmL,IACV,8CAAkCA,KAAKkD,MAAO,CAAA/M,IAAA,CAAK,KAAK,CAAA,sBACtD6J,IAAK,CAAAN,MAAA,uBACMM,IAAA,CAAKQ,QACftF,GAAI,CAACgJ,eAASvO,sBAAA,CAAM2B,IAAK,CAAA9B,aAAAA,CAAAA,OAAA,CAAKW,IAAK,CAAAtB,GAAA,CAAI0O,IAAIlI,IAAM,EAAA6I,CAAA,CAAE1O,IAAI,CAAC,CAAM,eAAA0O,CAAA,CAAEC,uBAAaD,CAAE,CAAA7M,MAAA,CAAQ,CACvF,CAAAlB,IAAA,CAAK,WAAW,CAAA,CAAA;EACrB+K,IAAA,EAAM,CAACrM,GAAA,EAAKmL,IAAS,KAAA;IACnB,MAAM;MAACkH,YAAc;MAAAY;IAAA,CAAiB,GAAAjF,mBAAA,CAAoBhO,KAAKmL,IAAI,CAAA;IAE5D,OAAA,IAAImB,IAAAA,CAAAA,UAAW,CAACC,QAAa,IAAA;MAClC,MAAMiI,YAAmC,GAAA;QACvC,GAAGnC,YAAA;QACH7P,MAAQ,EAAAyQ;MAAA,CACV;MAEM,MAAAwB,OAAA,GAAUC,aAAYF,YAAY,CAAA;MAEhCC,OAAA,CAAAE,EAAA,CAAG,OAAS,EAACC,KAAU,IAAA;QAC7BrI,QAAA,CAASE,KAAKmI,KAAK,CAAA;MAAA,CACpB,CAAA;MAED,OAAO,MAAM;QACXH,OAAA,CAAQH,KAAM,EAAA;MAAA,CAChB;IAAA,CACD,CAAA;EACH,CAAA;EACA5H,QAAU,EAAA,CAAC1M,GAAK,EAAAmL,IAAA,EAAMyJ,KAAU,KAAA;IACxB,MAAA;MAACzU;IAAU,CAAA,GAAAH,GAAA;IAEb,IAAA4U,KAAA,CAAMlS,SAAS,YAAc,EAAA;MACxBvC,MAAA,CAAA0U,OAAA,0CAC6B1J,IAAK,CAAAkD,MAAA,CAAO/M,IAAK,CAAA,KAAK,uBACtD6J,IAAK,CAAAN,MAAA,uBACMM,IAAA,CAAKQ,QACftF,GAAI,CAACgJ,eAASvO,sBAAA,CAAM2B,IAAK,CAAA9B,aAAAA,CAAAA,OAAA,CAAKW,IAAK,CAAAtB,GAAA,CAAI0O,IAAIlI,IAAM,EAAA6I,CAAA,CAAE1O,IAAI,CAAC,CAAM,eAAA0O,CAAA,CAAEC,uBAAaD,CAAE,CAAA7M,MAAA,CAAQ,CACvF,CAAAlB,IAAA,CAAK,WAAW,CAAA,EACrB;MACAnB,MAAA,CAAOM,IAAI,EAAE,CAAA;MAEb;IACF;IAEI,IAAAmU,KAAA,CAAMlS,SAAS,cAAgB,EAAA;MACjC;IACF;IAEI,IAAAkS,KAAA,CAAMlS,SAAS,KAAO,EAAA;MACxB;IACF;IAEI,IAAAkS,KAAA,CAAMlS,SAAS,OAAS,EAAA;MACnBvC,MAAA,CAAA2C,KAAA,CAAM8R,KAAM,CAAAlS,IAAA,EAAMkS,KAAK,CAAA;MAE9B;IACF;IAEI,IAAAA,KAAA,CAAMlS,SAAS,OAAS,EAAA;MAC1B;IACF;EACF,CAAA;EACAI,KAAO,EAAA,CAAC9C,GAAK,EAAA6M,KAAA,EAAOD,GAAQ,KAAA;IACpB,MAAA;MAACzM;IAAU,CAAA,GAAAH,GAAA;IAEjB,IAAI4M,eAAe/J,KAAO,EAAA;MACxB1C,MAAA,CAAOM,IAAImM,GAAG,CAAA;IAChB;EACF;AACF,CAAA;AClEO,MAAMkI,iBAAuC,GAAA;EAClD,WAAa,EAAA5I,OAAA;EACb,UAAY,EAAA0H,UAAA;EACZ,mBAAqB,EAAA7G;AACvB,CAAA;AAGO,MAAMgI,iBAAuC,GAAA;EAClD,WAAa,EAAAjI,YAAA;EACb,UAAY,EAAAyH;AACd,CAAA;;;;;;;"}
1
+ {"version":3,"file":"index-49daefad.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/node/reexportCjsTask.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","import {writeFile} from 'fs/promises'\nimport path from 'path'\nimport chalk from 'chalk'\nimport mkdirp from 'mkdirp'\nimport {from} from 'rxjs'\nimport {BuildContext} from '../../core'\nimport {NodeReExportFromCJSTask, TaskHandler} from '../types'\n\n/** @internal */\nexport const nodeReexportCjsTask: TaskHandler<NodeReExportFromCJSTask> = {\n name: (_ctx, task) =>\n [\n `Re-export CommonJS module in ESM wrapper…`,\n ` entries:`,\n ...task.entries.map((entry) =>\n [\n ` - ${chalk.cyan(entry.importId)}: `,\n `${chalk.yellow(entry.require)} ${chalk.gray('→')} ${chalk.yellow(entry.import)}`,\n ].join('')\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return from(exec(ctx, task))\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 exec(ctx: BuildContext, task: NodeReExportFromCJSTask) {\n const {cwd} = ctx\n\n for (const entry of task.entries) {\n const sourcePath = path.resolve(cwd, entry.require)\n const targetPath = path.resolve(cwd, entry.import)\n const targetDir = path.dirname(targetPath)\n\n await mkdirp(targetDir)\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(sourcePath)\n\n let relativeImport = `./${path.relative(targetDir, sourcePath)}`\n\n // Strip leading \"./\" from relative import\n if (relativeImport.startsWith('./.')) {\n relativeImport = relativeImport.slice(2)\n }\n\n const code = [\n `import cjs from '${relativeImport}';`,\n '',\n ...Object.keys(mod).map((k) => `export const ${k} = cjs.${k};`),\n '',\n ].join('\\n')\n\n await writeFile(targetPath, code, 'utf8')\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 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: config?.babel?.plugins,\n presets: [\n [\n '@babel/preset-env',\n {targets: pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY, modules: false},\n ],\n ],\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 hoistTransitiveImports: false,\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 {nodeReexportCjsTask} from './node/reexportCjsTask'\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 'node:reexport-cjs': nodeReexportCjsTask,\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","nodeReexportCjsTask","import","from","console","targetDir","mod","relativeImport","startsWith","slice","Object","keys","k","createConsoleSpy","onRestored","original","args","restore","resolveRollupConfig","buildTask","_c","_d","runtime","target","exports","_exports","extMap","external","pkg","outputExt","minify","pathAliases","fromEntries","paths","val","baseUrl","exportIds","sourcePaths","values","e","source","replacements","define","JSON","stringify","defaultPlugins","preventAssignment","arg","find","env","PKG_VERSION","version","alias","nodeResolve","browser","extensions","preferBuiltins","commonjs","json","esbuild","jsx","jsxFactory","jsxFragment","jsxImportSource","getBabelOutputPlugin","babelrc","plugins","babel","presets","targets","browserslist","DEFAULT_BROWSERSLIST_QUERY","modules","terser","compress","directives","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","resolveConfigProperty","inputOptions","context","id","importer","idPath","idParts","split","input","reduce","acc","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","parts","compact","dir","entryFileNames","esModule","interop","minifyInternalExports","sourcemap","hoistTransitiveImports","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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"}
@@ -101,6 +101,7 @@ const pkgSchema = zod.z.object({
101
101
  exports: zod.z.optional(zod.z.record(zod.z.union([zod.z.custom(val => /^\.\/.*\.json$/.test(val)), zod.z.object({
102
102
  types: zod.z.optional(zod.z.string()),
103
103
  source: zod.z.string(),
104
+ require: zod.z.optional(zod.z.string()),
104
105
  browser: zod.z.optional(zod.z.object({
105
106
  source: zod.z.string(),
106
107
  require: zod.z.optional(zod.z.string()),
@@ -111,7 +112,6 @@ const pkgSchema = zod.z.object({
111
112
  require: zod.z.optional(zod.z.string()),
112
113
  import: zod.z.optional(zod.z.string())
113
114
  })),
114
- require: zod.z.optional(zod.z.string()),
115
115
  import: zod.z.optional(zod.z.string()),
116
116
  default: zod.z.string()
117
117
  })]))),
@@ -129,7 +129,31 @@ async function loadPkg(options) {
129
129
  });
130
130
  if (!pkgPath) throw new Error("no package.json found");
131
131
  const buf = await fs__default.default.readFile(pkgPath);
132
- return validatePkg(JSON.parse(buf.toString()));
132
+ const raw = JSON.parse(buf.toString());
133
+ validatePkg(raw);
134
+ return raw;
135
+ }
136
+ function assertFirst(a, arr) {
137
+ const aIdx = arr.indexOf(a);
138
+ if (aIdx === -1) {
139
+ return true;
140
+ }
141
+ return aIdx === 0;
142
+ }
143
+ function assertLast(a, arr) {
144
+ const aIdx = arr.indexOf(a);
145
+ if (aIdx === -1) {
146
+ return true;
147
+ }
148
+ return aIdx === arr.length - 1;
149
+ }
150
+ function assertOrder(a, b, arr) {
151
+ const aIdx = arr.indexOf(a);
152
+ const bIdx = arr.indexOf(b);
153
+ if (aIdx === -1 || bIdx === -1) {
154
+ return true;
155
+ }
156
+ return aIdx < bIdx;
133
157
  }
134
158
  async function loadPkgWithReporting(options) {
135
159
  const {
@@ -140,8 +164,29 @@ async function loadPkgWithReporting(options) {
140
164
  const pkg = await loadPkg({
141
165
  cwd
142
166
  });
143
- if (pkg.type === void 0) {
144
- logger.warn('no "type" field in package.json, defaulting to "commonjs"');
167
+ if (pkg.exports) {
168
+ const _exports = Object.entries(pkg.exports);
169
+ for (const [expPath, exp] of _exports) {
170
+ if (typeof exp === "string") {
171
+ continue;
172
+ }
173
+ const keys = Object.keys(exp);
174
+ if (!assertFirst("types", keys)) {
175
+ logger.warn("exports[\"".concat(expPath, "\"]: the `types` property should be the first property"));
176
+ }
177
+ if (!assertOrder("require", "import", keys)) {
178
+ logger.warn("exports[\"".concat(expPath, "\"]: the `require` property should come before the `import` property"));
179
+ }
180
+ if (!assertOrder("require", "node", keys)) {
181
+ logger.warn("exports[\"".concat(expPath, "\"]: the `require` property should come before the `node` property"));
182
+ }
183
+ if (!assertOrder("node", "import", keys)) {
184
+ logger.warn("exports[\"".concat(expPath, "\"]: the `node` property should come before `import` property"));
185
+ }
186
+ if (!assertLast("default", keys)) {
187
+ logger.warn("exports[\"".concat(expPath, "\"]: the `default` property should be the last property"));
188
+ }
189
+ }
145
190
  }
146
191
  return pkg;
147
192
  } catch (err) {
@@ -204,8 +249,8 @@ function parseExports(options) {
204
249
  require: pkg.main && pkg.browser[pkg.main],
205
250
  import: pkg.module && pkg.browser[pkg.module]
206
251
  },
207
- import: pkg.module,
208
252
  require: pkg.main,
253
+ import: pkg.module,
209
254
  default: pkg.module || pkg.main || ""
210
255
  };
211
256
  const extraExports = [];
@@ -528,4 +573,4 @@ exports.loadTSConfig = loadTSConfig;
528
573
  exports.parseExports = parseExports;
529
574
  exports.resolveBuildContext = resolveBuildContext;
530
575
  exports.resolveConfigProperty = resolveConfigProperty;
531
- //# sourceMappingURL=resolveBuildContext-702e3fb6.cjs.map
576
+ //# sourceMappingURL=resolveBuildContext-c51eac50.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBuildContext-c51eac50.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/helpers.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 require: z.optional(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.optional(z.string()),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\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 const raw = JSON.parse(buf.toString())\n\n validatePkg(raw)\n\n return raw\n}\n","/** @internal */\nexport function assertFirst<T>(a: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n\n // if not found, then we don't care\n if (aIdx === -1) {\n return true\n }\n\n return aIdx === 0\n}\n\n/** @internal */\nexport function assertLast<T>(a: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n\n // if not found, then we don't care\n if (aIdx === -1) {\n return true\n }\n\n return aIdx === arr.length - 1\n}\n\n/** @internal */\nexport function assertOrder<T>(a: T, b: T, arr: T[]): boolean {\n const aIdx = arr.indexOf(a)\n const bIdx = arr.indexOf(b)\n\n // if either is not found, then we don't care\n if (aIdx === -1 || bIdx === -1) {\n return true\n }\n\n return aIdx < bIdx\n}\n","import chalk from 'chalk'\nimport {ZodError} from 'zod'\nimport {Logger} from '../../logger'\nimport {assertFirst, assertLast, assertOrder} from './helpers'\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 // validate exports\n if (pkg.exports) {\n const _exports = Object.entries(pkg.exports)\n\n for (const [expPath, exp] of _exports) {\n if (typeof exp === 'string') {\n continue\n }\n\n const keys = Object.keys(exp)\n\n if (!assertFirst('types', keys)) {\n logger.warn(`exports[\"${expPath}\"]: the \\`types\\` property should be the first property`)\n }\n\n if (!assertOrder('require', 'import', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`require\\` property should come before the \\`import\\` property`\n )\n }\n\n if (!assertOrder('require', 'node', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`require\\` property should come before the \\`node\\` property`\n )\n }\n\n if (!assertOrder('node', 'import', keys)) {\n logger.warn(\n `exports[\"${expPath}\"]: the \\`node\\` property should come before \\`import\\` property`\n )\n }\n\n if (!assertLast('default', keys)) {\n logger.warn(`exports[\"${expPath}\"]: the \\`default\\` property should be the last property`)\n }\n }\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 continue\n }\n\n logger.error(issue)\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 require: pkg.main,\n import: pkg.module,\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?.source && exportEntry.node.import,\n exportEntry.node?.source && 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","raw","JSON","toString","assertFirst","a","arr","aIdx","indexOf","assertLast","length","assertOrder","b","bIdx","loadPkgWithReporting","logger","pkg","_exports","Object","entries","expPath","exp","keys","warn","err","ZodError","issue","issues","code","error","formatPath","chalk","magenta","expected","received","join","process","exit","segments","map","s","idx","validateExports","extMap","ext","errors","endsWith","commonjs","push","_path","esm","parseExports","strict","rootExport","_exported","extraExports","exportPath","exportEntry","assign","extraExport","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","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","external","outputPaths","values","flatMap","_a","_b","_c","_d","p","commonDistPath","configDistPath","dist","distPath","ctx","files","runtime"],"mappings":"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"}
@@ -2,12 +2,12 @@
2
2
 
3
3
  var path = require('path');
4
4
  var rxjs = require('rxjs');
5
- var resolveBuildContext = require('./resolveBuildContext-702e3fb6.cjs');
5
+ var resolveBuildContext = require('./resolveBuildContext-c51eac50.cjs');
6
6
  require('fs/promises');
7
7
  require('pkg-up');
8
8
  require('typescript');
9
9
  var fs = require('fs');
10
- var index = require('./index-a01cf661.cjs');
10
+ var index = require('./index-49daefad.cjs');
11
11
  var operators = require('rxjs/operators');
12
12
  var globby = require('globby');
13
13
  var chokidar = require('chokidar');
@@ -225,4 +225,4 @@ async function watch(options) {
225
225
  });
226
226
  }
227
227
  exports.watch = watch;
228
- //# sourceMappingURL=watch-533fe913.cjs.map
228
+ //# sourceMappingURL=watch-6cfbe78a.cjs.map