@sanity/pkg-utils 2.3.13-canary.1 → 2.3.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/{build-fabfa3af.cjs → build-e6e2708e.cjs} +4 -4
- package/dist/_chunks/{build-fabfa3af.cjs.map → build-e6e2708e.cjs.map} +1 -1
- package/dist/_chunks/{buildAction-dae78abb.cjs → buildAction-4d12b69c.cjs} +2 -2
- package/dist/_chunks/{buildAction-dae78abb.cjs.map → buildAction-4d12b69c.cjs.map} +1 -1
- package/dist/_chunks/{check-332a2bb9.cjs → check-0665cb35.cjs} +3 -3
- package/dist/_chunks/{check-332a2bb9.cjs.map → check-0665cb35.cjs.map} +1 -1
- package/dist/_chunks/{checkAction-c39d7dbf.cjs → checkAction-c3e5da35.cjs} +2 -2
- package/dist/_chunks/{checkAction-c39d7dbf.cjs.map → checkAction-c3e5da35.cjs.map} +1 -1
- package/dist/_chunks/{consoleSpy-686c350b.cjs → consoleSpy-d738cb9f.cjs} +12 -52
- package/dist/_chunks/consoleSpy-d738cb9f.cjs.map +1 -0
- package/dist/_chunks/{index-1811ae9f.cjs → index-70f8931a.cjs} +7 -25
- package/dist/_chunks/index-70f8931a.cjs.map +1 -0
- package/dist/_chunks/{init-e45c0c31.cjs → init-2377e6e5.cjs} +2 -2
- package/dist/_chunks/{init-e45c0c31.cjs.map → init-2377e6e5.cjs.map} +1 -1
- package/dist/_chunks/{initAction-48ce747a.cjs → initAction-2abd8576.cjs} +2 -2
- package/dist/_chunks/{initAction-48ce747a.cjs.map → initAction-2abd8576.cjs.map} +1 -1
- package/dist/_chunks/{logger-718e11be.cjs → logger-c593f06b.cjs} +6 -8
- package/dist/_chunks/logger-c593f06b.cjs.map +1 -0
- package/dist/_chunks/{watch-4e565bee.cjs → watch-d390d5e4.cjs} +4 -4
- package/dist/_chunks/{watch-4e565bee.cjs.map → watch-d390d5e4.cjs.map} +1 -1
- package/dist/_chunks/{watchAction-a5721084.cjs → watchAction-63c8a721.cjs} +2 -2
- package/dist/_chunks/{watchAction-a5721084.cjs.map → watchAction-63c8a721.cjs.map} +1 -1
- package/dist/cli.cjs +5 -5
- package/dist/index.cjs +7 -7
- package/dist/index.d.ts +2 -9
- package/dist/index.js +19 -78
- package/dist/index.js.map +1 -1
- package/package.json +2 -3
- package/src/node/core/config/types.ts +0 -5
- package/src/node/core/pkg/loadPkgWithReporting.ts +18 -91
- package/src/node/core/pkg/types.ts +2 -4
- package/src/node/core/pkg/validatePkg.ts +3 -5
- package/src/node/tasks/rollup/resolveRollupConfig.ts +4 -10
- package/src/node/tasks/rollup/rollupTask.ts +0 -20
- package/dist/_chunks/consoleSpy-686c350b.cjs.map +0 -1
- package/dist/_chunks/index-1811ae9f.cjs.map +0 -1
- package/dist/_chunks/logger-718e11be.cjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-70f8931a.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/resolveRollupConfig.ts","../../src/node/tasks/rollup/rollupTask.ts","../../src/node/tasks/rollup/rollupWatchTask.ts","../../src/node/tasks/index.ts"],"sourcesContent":["import {ExtractorMessage} from '@microsoft/api-extractor'\nimport chalk from 'chalk'\nimport path from 'path'\n\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 chalk from 'chalk'\nimport path from 'path'\nimport ts from 'typescript'\n\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'\n\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 {IConfigFile, IExtractorMessagesConfig} from '@microsoft/api-extractor'\nimport path from 'path'\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 {TSDocConfigFile} from '@microsoft/tsdoc-config'\nimport {readFile} from 'fs/promises'\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'\n\nimport {PkgConfigOptions, PkgRuleLevel} 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 {\n Extractor,\n ExtractorConfig,\n ExtractorMessage,\n ExtractorResult,\n} from '@microsoft/api-extractor'\nimport fs from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport path from 'path'\nimport prettier from 'prettier'\n\nimport {BuildFile, PkgConfigOptions} 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 await 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 {ExtractorMessage} from '@microsoft/api-extractor'\nimport path from 'path'\nimport rimraf from 'rimraf'\n\nimport {BuildContext} from '../../core'\nimport {buildTypes} from './buildTypes'\nimport {DtsError} from './DtsError'\nimport {extractTypes} from './extractTypes'\nimport {DtsResult, DtsTask, DtsWatchTask} from './types'\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'\n\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'\n\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 chalk from 'chalk'\nimport {writeFile} from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport path from 'path'\nimport {from} from 'rxjs'\n\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 = compileESMWrapper(mod, relativeImport)\n\n await writeFile(targetPath, code, 'utf8')\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction compileESMWrapper(mod: any, relativeImport: string) {\n const keys = Object.keys(mod).filter((k) => k !== '__esModule')\n\n let code = `import cjs from '${relativeImport}';\\n`\n\n if (keys.length) {\n code += `\\n`\n code += keys\n .filter((k) => (mod.__esModule ? k !== 'default' : true))\n .map((k) => `export const ${k} = cjs.${k};\\n`)\n .join('')\n }\n\n code += `\\n`\n\n if (mod.__esModule) {\n // If there is no default export, we shouldn't add it as it'll be undefined\n if ('default' in mod) {\n code += `export default cjs.default;\\n`\n }\n } else {\n code += `export default cjs;\\n`\n }\n\n return code\n}\n","import 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 path from 'path'\nimport {InputOptions, OutputOptions, Plugin} from 'rollup'\nimport esbuild from 'rollup-plugin-esbuild'\n\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 chalk from 'chalk'\nimport path from 'path'\nimport {rollup} from 'rollup'\nimport {Observable} from 'rxjs'\n\nimport {createConsoleSpy} from '../../consoleSpy'\nimport {BuildContext} from '../../core'\nimport {RollupTask, TaskHandler} from '../types'\nimport {resolveRollupConfig} from './resolveRollupConfig'\n\n/** @internal */\nexport const rollupTask: TaskHandler<RollupTask> = {\n name: (ctx, task) => {\n const bundleEntries = task.entries.filter((e) => e.path.includes('__$$bundle_'))\n const entries = task.entries.filter((e) => !e.path.includes('__$$bundle_'))\n\n const targetLines = task.target.length\n ? [` target:`, ...task.target.map((t) => ` - ${chalk.yellow(t)}`)]\n : []\n\n const bundlesLines = bundleEntries.length\n ? [\n ' bundles:',\n ...bundleEntries.map((e) =>\n [\n ` - `,\n `${chalk.yellow(e.source)} ${chalk.gray('→')} ${chalk.yellow(e.output)}`,\n ].join(''),\n ),\n ]\n : []\n\n const entriesLines = entries.length\n ? [\n ' entries:',\n ...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 ]\n : []\n\n return [\n `Build javascript files...`,\n ` format: ${chalk.yellow(task.format)}`,\n ...targetLines,\n ...bundlesLines,\n ...entriesLines,\n ].join('\\n')\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 chalk from 'chalk'\nimport path from 'path'\nimport {RollupWatcherEvent, RollupWatchOptions, watch as rollupWatch} from 'rollup'\nimport {Observable} from 'rxjs'\n\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 './dts'\nexport * from './rollup'\nexport * from './types'\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","concat","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","diagnostics","emitSkipped","diag","DtsError","constructor","_defineProperty","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","_ref","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","doExtract","task","_a","_b","config","configPath","results","rootDir","entry","entries","sourcePath","replace","targetPath","result","extract","some","rimraf","dtsTask","_ctx","importId","exec","Observable","observer","then","next","complete","catch","err","_task","dtsWatchTask","nodeReexportCjsTask","import","from","console","targetDir","mod","relativeImport","startsWith","slice","compileESMWrapper","keys","Object","k","__esModule","resolveRollupConfig","buildTask","_ref2","_ref5","_ref6","_ref7","_ref8","_ref9","_c","_d","runtime","target","exports","_exports","extMap","external","pkg","outputExt","minify","pathAliases","fromEntries","paths","_ref3","val","baseUrl","exportIds","sourcePaths","values","e","source","replacements","define","_ref4","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","bundleEntries","targetLines","bundlesLines","entriesLines","execPromise","consoleSpy","createConsoleSpy","onRestored","String","args","bundle","onwarn","warning","generate","chunkOrAsset","write","close","restore","rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","buildTaskHandlers","watchTaskHandlers"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ var fs = require('fs/promises');
|
|
|
6
6
|
var mkdirp = require('mkdirp');
|
|
7
7
|
var path = require('path');
|
|
8
8
|
var prompts = require('prompts');
|
|
9
|
-
var logger = require('./logger-
|
|
9
|
+
var logger = require('./logger-c593f06b.cjs');
|
|
10
10
|
var getLatestVersion = require('get-latest-version');
|
|
11
11
|
var gitUrlParse = require('git-url-parse');
|
|
12
12
|
var outdent = require('outdent');
|
|
@@ -466,4 +466,4 @@ async function ensurePackagePath(packagePath) {
|
|
|
466
466
|
exports.createFromTemplate = createFromTemplate;
|
|
467
467
|
exports.defineTemplateOption = defineTemplateOption;
|
|
468
468
|
exports.init = init;
|
|
469
|
-
//# sourceMappingURL=init-
|
|
469
|
+
//# sourceMappingURL=init-2377e6e5.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-e45c0c31.cjs","sources":["../../src/node/core/template/createFromTemplate.ts","../../src/node/core/template/define.ts","../../src/node/isEmptyDirectory.ts","../../src/node/templates/default/template.ts","../../src/node/init.ts"],"sourcesContent":["import {writeFile} from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport {dirname, relative, resolve} from 'path'\nimport prompts from 'prompts'\n\nimport {Logger} from '../../logger'\nimport {PkgTemplate} from './types'\n\nconst promptsTypes = {\n string: 'text' as const,\n}\n\n/** @internal */\nexport async function createFromTemplate(options: {\n cwd: string\n logger: Logger\n packagePath: string\n template: PkgTemplate\n}): Promise<void> {\n const {cwd, logger, packagePath, template: templateOrResolver} = options\n\n const template =\n typeof templateOrResolver === 'function'\n ? await templateOrResolver({cwd, logger, packagePath})\n : templateOrResolver\n\n logger.log('create new package at', relative(cwd, packagePath))\n\n const templateOptions: Record<string, string> = {}\n\n for (const templateOption of template.options) {\n const templateValidate = templateOption.validate\n\n const res = await prompts(\n {\n type: promptsTypes[templateOption.type],\n name: templateOption.name,\n message: templateOption.description,\n validate: templateValidate ? (prev) => templateValidate(prev) : undefined,\n initial:\n typeof templateOption.initial === 'function'\n ? templateOption.initial(templateOptions)\n : templateOption.initial,\n },\n {onCancel: () => process.exit(0)},\n )\n\n templateOptions[templateOption.name] = templateOption.parse\n ? templateOption.parse(res[templateOption.name])\n : res[templateOption.name]\n }\n\n const features: Record<string, boolean> = {}\n\n for (const templateFeature of template.features) {\n const res = templateFeature.optional\n ? await prompts(\n {\n type: 'confirm',\n name: 'confirm',\n message: `use ${templateFeature.name}?`,\n initial: templateFeature.initial,\n },\n {onCancel: () => process.exit(0)},\n )\n : undefined\n\n features[templateFeature.name] = res?.confirm || !templateFeature.optional\n }\n\n const files = await template.getFiles(templateOptions, features)\n\n files.sort((a, b) => {\n return a.name.localeCompare(b.name)\n })\n\n for (const file of files) {\n const filePath = resolve(packagePath, file.name)\n\n await mkdirp(dirname(filePath))\n await writeFile(filePath, file.contents.trim() + '\\n')\n\n logger.success(`wrote ${relative(cwd, filePath)}`)\n }\n}\n","import {PkgTemplateOption} from './types'\n\n/** @public */\nexport function defineTemplateOption<T>(option: PkgTemplateOption<T>): PkgTemplateOption<T> {\n return option\n}\n","import {readdir} from 'fs/promises'\n\nexport async function isEmptyDirectory(dirPath: string): Promise<boolean> {\n return (await readdir(dirPath)).length === 0\n}\n","import getLatestVersion from 'get-latest-version'\nimport gitUrlParse from 'git-url-parse'\nimport {outdent} from 'outdent'\nimport parseGitConfig from 'parse-git-config'\nimport {resolve} from 'path'\nimport prettier, {Config as PrettierConfig} from 'prettier'\n\nimport {defineTemplateOption, isRecord, PackageJSON, PkgTemplate, PkgTemplateFile} from '../../core'\n\nconst RE_NAME = /^(?:@(?:[a-z0-9-*~][a-z0-9-*._~]*)\\/)?[a-z0-9-~][a-z0-9-._~]*$/i\n\nexport const defaultTemplate: PkgTemplate = async ({cwd, logger, packagePath}) => {\n const gitConfig = await parseGitConfig({cwd, type: 'global'})\n\n return {\n options: [\n defineTemplateOption<{owner: string; name: string}>({\n name: 'repo',\n type: 'string',\n description: 'git url',\n validate: (v) => {\n if (!v) return true\n\n try {\n gitUrlParse(v)\n\n return true\n } catch (err) {\n return 'invalid git url'\n }\n },\n parse: (v) => {\n if (!v) return null\n\n const result = gitUrlParse(v)\n\n return {source: result.source, owner: result.owner, name: result.name}\n },\n }),\n defineTemplateOption({\n name: 'pkgName',\n type: 'string',\n description: 'package name',\n initial: (options) => options.repo?.name || undefined,\n validate: (v) => {\n if (!v) return 'package name is required'\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n return 'invalid package name'\n }\n\n return true\n },\n parse: (v) => {\n if (!v) {\n throw new Error('package name is required')\n }\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n throw new Error('invalid package name')\n }\n\n const [scope, name] = v.split('/')\n\n return {scope, name, fullName: v}\n },\n }),\n defineTemplateOption({\n name: 'description',\n type: 'string',\n description: 'package description',\n }),\n defineTemplateOption({\n name: 'authorName',\n type: 'string',\n description: 'package author name',\n initial: gitConfig?.user?.name,\n }),\n defineTemplateOption({\n name: 'authorEmail',\n type: 'string',\n description: 'package author email',\n initial: gitConfig?.user?.email,\n }),\n defineTemplateOption({\n name: 'license',\n type: 'string',\n description: 'package license',\n initial: 'MIT',\n validate: (v) => {\n if (!v) return 'license is required'\n\n return true\n },\n }),\n ],\n\n features: [\n {\n name: 'eslint',\n optional: true,\n initial: true,\n },\n {\n name: 'typescript',\n optional: true,\n initial: true,\n },\n ],\n\n async getFiles(options, features) {\n const {pkgName, repo} = options\n const {fullName: name} = pkgName\n\n const author =\n [options.authorName, options.authorEmail && `<${options.authorEmail}>`]\n .filter(Boolean)\n .join(' ') ?? undefined\n\n const prettierConfig: PrettierConfig = {\n bracketSpacing: false,\n printWidth: 100,\n semi: false,\n singleQuote: true,\n tabWidth: 2,\n plugins: ['prettier-plugin-packagejson'],\n overrides: [\n {\n files: ['*.yml'],\n options: {\n singleQuote: false,\n },\n },\n ],\n }\n\n const pkgJson: PackageJSON & {\n prettier?: PrettierConfig\n ['lint-staged']?: Record<string, string[]>\n } = {\n name,\n version: '0.0.0',\n description: options.description ?? undefined,\n keywords: [],\n license: options.license,\n author,\n type: 'module',\n exports: {\n '.': {\n types: undefined,\n source: features.typescript ? './src/index.ts' : './src/index.js',\n require: './dist/index.cjs',\n import: './dist/index.js',\n default: './dist/index.js',\n },\n './package.json': './package.json',\n },\n main: './dist/index.cjs',\n module: './dist/index.js',\n source: features.typescript ? './src/index.ts' : './src/index.js',\n files: ['dist', 'src'],\n scripts: {\n build: 'run-s clean pkg:build pkg:check',\n clean: 'rimraf dist',\n format: 'prettier --write --cache --ignore-unknown .',\n 'pkg:build': 'pkg build --strict',\n 'pkg:check': 'pkg check --strict',\n },\n prettier: prettierConfig,\n 'lint-staged': {\n '*': ['prettier --write --cache --ignore-unknown'],\n },\n dependencies: {},\n devDependencies: {\n '@sanity/pkg-utils': '*',\n 'lint-staged': '*',\n 'npm-run-all': '*',\n prettier: '*',\n 'prettier-plugin-packagejson': '*',\n rimraf: '*',\n },\n engines: {\n node: '>=18.0.0',\n },\n }\n\n const files: PkgTemplateFile[] = []\n\n // .editorconfig\n files.push({\n name: '.editorconfig',\n contents: outdent`\n root = true\n\n [*]\n charset = utf-8\n indent_style = space\n indent_size = 2\n end_of_line = lf\n insert_final_newline = true\n trim_trailing_whitespace = true\n `,\n })\n\n // .gitignore\n files.push({\n name: '.gitignore',\n contents: outdent`\n *.local\n *.log\n\n .DS_Store\n etc\n dist\n node_modules\n `,\n })\n\n files.push({\n name: '.prettierignore',\n contents: outdent`\n /dist\n /pnpm-lock.yaml\n `,\n })\n\n if (repo) {\n pkgJson.repository = {\n type: 'git',\n url: `git+ssh://git@${repo.source}/${repo.owner}/${repo.name}.git`,\n }\n pkgJson.bugs = {\n url: `https://${repo.source}/${repo.owner}/${repo.name}/issues`,\n }\n pkgJson.homepage = `https://${repo.source}/${repo.owner}/${repo.name}#readme`\n }\n\n if (features.typescript) {\n pkgJson.types = './dist/index.d.ts'\n\n const mainExport = pkgJson.exports?.['.']\n\n if (isRecord(mainExport)) {\n mainExport.types = './dist/index.d.ts'\n }\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n ['type:check']: 'tsc --build',\n }\n\n const devDependencies = pkgJson.devDependencies\n\n if (isRecord(devDependencies)) {\n devDependencies['typescript'] = '*'\n }\n }\n\n if (features.eslint) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfig: any = {\n root: true,\n env: {\n browser: true,\n es6: true,\n node: true,\n },\n extends: ['eslint:recommended', 'plugin:prettier/recommended'],\n parserOptions: {\n ecmaVersion: 2020,\n sourceType: 'module',\n },\n plugins: ['import', 'prettier'],\n rules: {\n 'no-console': 'error',\n 'no-shadow': 'error',\n 'no-warning-comments': ['warn', {location: 'start', terms: ['todo', 'fixme']}],\n },\n }\n\n files.push({\n name: '.eslintignore',\n contents: outdent`\n /dist\n `,\n })\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n lint: features.typescript\n ? 'eslint . --ext .cjs,.js,.ts,.tsx'\n : 'eslint . --ext .cjs,.js',\n }\n\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n eslint: '*',\n 'eslint-config-prettier': '*',\n 'eslint-plugin-import': '*',\n 'eslint-plugin-prettier': '*',\n }\n\n if (features.typescript) {\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n '@typescript-eslint/eslint-plugin': '*',\n '@typescript-eslint/parser': '*',\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfigOverride: any = {\n files: ['**/*.ts', '**/*.tsx'],\n parser: '@typescript-eslint/parser',\n parserOptions: {\n project: ['./tsconfig.json'],\n },\n extends: [\n 'eslint:recommended',\n 'plugin:prettier/recommended',\n 'plugin:@typescript-eslint/eslint-recommended',\n 'plugin:@typescript-eslint/recommended',\n ].filter(Boolean),\n plugins: ['import', '@typescript-eslint', 'prettier'].filter(Boolean),\n rules: {\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/interface-name-prefix': 'off',\n '@typescript-eslint/member-delimiter-style': 'off',\n '@typescript-eslint/no-empty-interface': 'off',\n },\n }\n\n eslintConfig.overrides = [eslintConfigOverride]\n }\n\n files.push({\n name: '.eslintrc.cjs',\n contents: await format(\n resolve(packagePath, '.eslintrc.cjs'),\n outdent`\n 'use strict'\n\n /** @type import('eslint').Linter.Config */\n module.exports = ${JSON.stringify(eslintConfig, null, 2)}\n `,\n prettierConfig,\n ),\n })\n }\n\n if (features.typescript) {\n files.push({\n name: 'tsconfig.settings.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.settings.json'),\n outdent`\n {\n \"compilerOptions\": {\n \"module\": \"ES2020\",\n \"target\": \"ES2020\",\n \"declaration\": true,\n \"declarationMap\": true,\n \"sourceMap\": true,\n\n // Strict type-checking\n \"strict\": true,\n \"noImplicitAny\": true,\n \"strictNullChecks\": true,\n \"strictFunctionTypes\": true,\n \"strictPropertyInitialization\": true,\n \"noImplicitThis\": true,\n \"alwaysStrict\": true,\n\n // Additional checks\n \"noUnusedLocals\": true,\n \"noUnusedParameters\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n\n // Module resolution\n \"moduleResolution\": \"node\",\n \"allowSyntheticDefaultImports\": true,\n \"esModuleInterop\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.dist.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.dist.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"emitDeclarationOnly\": true,\n \"resolveJsonModule\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./*.cjs\", \"./*.ts\", \"./package.config.ts\", \"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"noEmit\": true,\n \"allowJs\": true,\n \"resolveJsonModule\": true,\n }\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // source file\n if (features.typescript) {\n files.push({\n name: 'package.config.ts',\n contents: await format(\n resolve(packagePath, 'package.config.ts'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n\n // the path to the tsconfig file for distributed builds\n tsconfig: 'tsconfig.dist.json',\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.ts',\n contents: await format(\n resolve(packagePath, 'src/index.ts'),\n outdent`\n /** @public */\n export function main(): void {\n //\n }\n `,\n prettierConfig,\n ),\n })\n } else {\n files.push({\n name: 'package.config.js',\n contents: await format(\n resolve(packagePath, 'package.config.js'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.js',\n contents: await format(\n resolve(packagePath, 'src/index.js'),\n outdent`\n /** @public */\n export function main() {\n //\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // Resolve latest dependencies\n try {\n pkgJson.dependencies = await resolveLatestDeps(pkgJson.dependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n // Resolve latest devDependencies\n try {\n pkgJson.devDependencies = await resolveLatestDeps(pkgJson.devDependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n files.push({\n name: 'package.json',\n contents: await format(\n resolve(packagePath, 'package.json'),\n JSON.stringify(pkgJson, null, 2),\n prettierConfig,\n ),\n })\n\n return files\n },\n }\n}\n\nfunction format(filepath: string, input: string, prettierOptions: PrettierConfig) {\n return prettier.format(input, {...prettierOptions, filepath})\n}\n\nasync function resolveLatestDeps(deps: Record<string, string>) {\n const depsEntries = Object.entries(deps)\n const latestDeps: Record<string, string> = {}\n\n for (const entry of depsEntries) {\n const [name, version] = entry\n const latestVersion = await getLatestVersion(name, version)\n\n latestDeps[name] = latestVersion ? `^${latestVersion}` : version\n }\n\n return latestDeps\n}\n","import {lstat} from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport {resolve} from 'path'\n\nimport {createFromTemplate} from './core/template'\nimport {fileExists} from './fileExists'\nimport {isEmptyDirectory} from './isEmptyDirectory'\nimport {createLogger} from './logger'\nimport {defaultTemplate} from './templates'\n\n/** @public */\nexport async function init(options: {cwd: string; path: string}): Promise<void> {\n if (!options.cwd) {\n throw new Error('Missing required option: cwd')\n }\n\n if (!options.path) {\n throw new Error('Missing required option: path')\n }\n\n const logger = createLogger()\n\n const packagePath = resolve(options.cwd, options.path)\n\n await ensurePackagePath(packagePath)\n\n await createFromTemplate({\n cwd: options.cwd,\n logger,\n template: defaultTemplate,\n packagePath,\n })\n}\n\nasync function ensurePackagePath(packagePath: string): Promise<void> {\n const exists = fileExists(packagePath)\n\n if (!exists) {\n await mkdirp(packagePath)\n\n return\n }\n\n const dir = (await lstat(packagePath)).isDirectory()\n\n if (!dir) {\n throw new Error('the package path is a file, not a directory')\n }\n\n const empty = await isEmptyDirectory(packagePath)\n\n if (!empty) {\n throw new Error('the package directory is not empty')\n }\n}\n"],"names":["promptsTypes","string","createFromTemplate","options","cwd","logger","packagePath","template","templateOrResolver","log","relative","templateOptions","templateOption","templateValidate","validate","res","prompts","default","type","name","message","description","prev","initial","onCancel","process","exit","parse","features","templateFeature","optional","concat","confirm","files","getFiles","sort","a","b","localeCompare","file","filePath","resolve","mkdirp","dirname","writeFile","contents","trim","success","defineTemplateOption","option","isEmptyDirectory","dirPath","readdir","length","RE_NAME","defaultTemplate","_ref","_a","_b","gitConfig","parseGitConfig","v","gitUrlParse","err","result","source","owner","repo","match","exec","Error","scope","split","fullName","user","email","_filter$join","_options$description","pkgName","author","authorName","authorEmail","filter","Boolean","join","prettierConfig","bracketSpacing","printWidth","semi","singleQuote","tabWidth","plugins","overrides","pkgJson","version","keywords","license","exports","types","typescript","require","import","main","module","scripts","build","clean","format","prettier","dependencies","devDependencies","rimraf","engines","node","push","outdent","_templateObject","_taggedTemplateLiteral","_templateObject2","_templateObject3","repository","url","bugs","homepage","mainExport","isRecord","eslint","eslintConfig","root","env","browser","es6","extends","parserOptions","ecmaVersion","sourceType","rules","location","terms","_templateObject4","lint","eslintConfigOverride","parser","project","_templateObject5","JSON","stringify","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_pkgJson$dependencies","resolveLatestDeps","error","warn","_pkgJson$devDependenc","filepath","input","prettierOptions","deps","depsEntries","Object","entries","latestDeps","entry","latestVersion","getLatestVersion","init","path","createLogger","ensurePackagePath","exists","fileExists","dir","lstat","isDirectory","empty"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init-2377e6e5.cjs","sources":["../../src/node/core/template/createFromTemplate.ts","../../src/node/core/template/define.ts","../../src/node/isEmptyDirectory.ts","../../src/node/templates/default/template.ts","../../src/node/init.ts"],"sourcesContent":["import {writeFile} from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport {dirname, relative, resolve} from 'path'\nimport prompts from 'prompts'\n\nimport {Logger} from '../../logger'\nimport {PkgTemplate} from './types'\n\nconst promptsTypes = {\n string: 'text' as const,\n}\n\n/** @internal */\nexport async function createFromTemplate(options: {\n cwd: string\n logger: Logger\n packagePath: string\n template: PkgTemplate\n}): Promise<void> {\n const {cwd, logger, packagePath, template: templateOrResolver} = options\n\n const template =\n typeof templateOrResolver === 'function'\n ? await templateOrResolver({cwd, logger, packagePath})\n : templateOrResolver\n\n logger.log('create new package at', relative(cwd, packagePath))\n\n const templateOptions: Record<string, string> = {}\n\n for (const templateOption of template.options) {\n const templateValidate = templateOption.validate\n\n const res = await prompts(\n {\n type: promptsTypes[templateOption.type],\n name: templateOption.name,\n message: templateOption.description,\n validate: templateValidate ? (prev) => templateValidate(prev) : undefined,\n initial:\n typeof templateOption.initial === 'function'\n ? templateOption.initial(templateOptions)\n : templateOption.initial,\n },\n {onCancel: () => process.exit(0)},\n )\n\n templateOptions[templateOption.name] = templateOption.parse\n ? templateOption.parse(res[templateOption.name])\n : res[templateOption.name]\n }\n\n const features: Record<string, boolean> = {}\n\n for (const templateFeature of template.features) {\n const res = templateFeature.optional\n ? await prompts(\n {\n type: 'confirm',\n name: 'confirm',\n message: `use ${templateFeature.name}?`,\n initial: templateFeature.initial,\n },\n {onCancel: () => process.exit(0)},\n )\n : undefined\n\n features[templateFeature.name] = res?.confirm || !templateFeature.optional\n }\n\n const files = await template.getFiles(templateOptions, features)\n\n files.sort((a, b) => {\n return a.name.localeCompare(b.name)\n })\n\n for (const file of files) {\n const filePath = resolve(packagePath, file.name)\n\n await mkdirp(dirname(filePath))\n await writeFile(filePath, file.contents.trim() + '\\n')\n\n logger.success(`wrote ${relative(cwd, filePath)}`)\n }\n}\n","import {PkgTemplateOption} from './types'\n\n/** @public */\nexport function defineTemplateOption<T>(option: PkgTemplateOption<T>): PkgTemplateOption<T> {\n return option\n}\n","import {readdir} from 'fs/promises'\n\nexport async function isEmptyDirectory(dirPath: string): Promise<boolean> {\n return (await readdir(dirPath)).length === 0\n}\n","import getLatestVersion from 'get-latest-version'\nimport gitUrlParse from 'git-url-parse'\nimport {outdent} from 'outdent'\nimport parseGitConfig from 'parse-git-config'\nimport {resolve} from 'path'\nimport prettier, {Config as PrettierConfig} from 'prettier'\n\nimport {defineTemplateOption, isRecord, PackageJSON, PkgTemplate, PkgTemplateFile} from '../../core'\n\nconst RE_NAME = /^(?:@(?:[a-z0-9-*~][a-z0-9-*._~]*)\\/)?[a-z0-9-~][a-z0-9-._~]*$/i\n\nexport const defaultTemplate: PkgTemplate = async ({cwd, logger, packagePath}) => {\n const gitConfig = await parseGitConfig({cwd, type: 'global'})\n\n return {\n options: [\n defineTemplateOption<{owner: string; name: string}>({\n name: 'repo',\n type: 'string',\n description: 'git url',\n validate: (v) => {\n if (!v) return true\n\n try {\n gitUrlParse(v)\n\n return true\n } catch (err) {\n return 'invalid git url'\n }\n },\n parse: (v) => {\n if (!v) return null\n\n const result = gitUrlParse(v)\n\n return {source: result.source, owner: result.owner, name: result.name}\n },\n }),\n defineTemplateOption({\n name: 'pkgName',\n type: 'string',\n description: 'package name',\n initial: (options) => options.repo?.name || undefined,\n validate: (v) => {\n if (!v) return 'package name is required'\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n return 'invalid package name'\n }\n\n return true\n },\n parse: (v) => {\n if (!v) {\n throw new Error('package name is required')\n }\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n throw new Error('invalid package name')\n }\n\n const [scope, name] = v.split('/')\n\n return {scope, name, fullName: v}\n },\n }),\n defineTemplateOption({\n name: 'description',\n type: 'string',\n description: 'package description',\n }),\n defineTemplateOption({\n name: 'authorName',\n type: 'string',\n description: 'package author name',\n initial: gitConfig?.user?.name,\n }),\n defineTemplateOption({\n name: 'authorEmail',\n type: 'string',\n description: 'package author email',\n initial: gitConfig?.user?.email,\n }),\n defineTemplateOption({\n name: 'license',\n type: 'string',\n description: 'package license',\n initial: 'MIT',\n validate: (v) => {\n if (!v) return 'license is required'\n\n return true\n },\n }),\n ],\n\n features: [\n {\n name: 'eslint',\n optional: true,\n initial: true,\n },\n {\n name: 'typescript',\n optional: true,\n initial: true,\n },\n ],\n\n async getFiles(options, features) {\n const {pkgName, repo} = options\n const {fullName: name} = pkgName\n\n const author =\n [options.authorName, options.authorEmail && `<${options.authorEmail}>`]\n .filter(Boolean)\n .join(' ') ?? undefined\n\n const prettierConfig: PrettierConfig = {\n bracketSpacing: false,\n printWidth: 100,\n semi: false,\n singleQuote: true,\n tabWidth: 2,\n plugins: ['prettier-plugin-packagejson'],\n overrides: [\n {\n files: ['*.yml'],\n options: {\n singleQuote: false,\n },\n },\n ],\n }\n\n const pkgJson: PackageJSON & {\n prettier?: PrettierConfig\n ['lint-staged']?: Record<string, string[]>\n } = {\n name,\n version: '0.0.0',\n description: options.description ?? undefined,\n keywords: [],\n license: options.license,\n author,\n type: 'module',\n exports: {\n '.': {\n types: undefined,\n source: features.typescript ? './src/index.ts' : './src/index.js',\n require: './dist/index.cjs',\n import: './dist/index.js',\n default: './dist/index.js',\n },\n './package.json': './package.json',\n },\n main: './dist/index.cjs',\n module: './dist/index.js',\n source: features.typescript ? './src/index.ts' : './src/index.js',\n files: ['dist', 'src'],\n scripts: {\n build: 'run-s clean pkg:build pkg:check',\n clean: 'rimraf dist',\n format: 'prettier --write --cache --ignore-unknown .',\n 'pkg:build': 'pkg build --strict',\n 'pkg:check': 'pkg check --strict',\n },\n prettier: prettierConfig,\n 'lint-staged': {\n '*': ['prettier --write --cache --ignore-unknown'],\n },\n dependencies: {},\n devDependencies: {\n '@sanity/pkg-utils': '*',\n 'lint-staged': '*',\n 'npm-run-all': '*',\n prettier: '*',\n 'prettier-plugin-packagejson': '*',\n rimraf: '*',\n },\n engines: {\n node: '>=18.0.0',\n },\n }\n\n const files: PkgTemplateFile[] = []\n\n // .editorconfig\n files.push({\n name: '.editorconfig',\n contents: outdent`\n root = true\n\n [*]\n charset = utf-8\n indent_style = space\n indent_size = 2\n end_of_line = lf\n insert_final_newline = true\n trim_trailing_whitespace = true\n `,\n })\n\n // .gitignore\n files.push({\n name: '.gitignore',\n contents: outdent`\n *.local\n *.log\n\n .DS_Store\n etc\n dist\n node_modules\n `,\n })\n\n files.push({\n name: '.prettierignore',\n contents: outdent`\n /dist\n /pnpm-lock.yaml\n `,\n })\n\n if (repo) {\n pkgJson.repository = {\n type: 'git',\n url: `git+ssh://git@${repo.source}/${repo.owner}/${repo.name}.git`,\n }\n pkgJson.bugs = {\n url: `https://${repo.source}/${repo.owner}/${repo.name}/issues`,\n }\n pkgJson.homepage = `https://${repo.source}/${repo.owner}/${repo.name}#readme`\n }\n\n if (features.typescript) {\n pkgJson.types = './dist/index.d.ts'\n\n const mainExport = pkgJson.exports?.['.']\n\n if (isRecord(mainExport)) {\n mainExport.types = './dist/index.d.ts'\n }\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n ['type:check']: 'tsc --build',\n }\n\n const devDependencies = pkgJson.devDependencies\n\n if (isRecord(devDependencies)) {\n devDependencies['typescript'] = '*'\n }\n }\n\n if (features.eslint) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfig: any = {\n root: true,\n env: {\n browser: true,\n es6: true,\n node: true,\n },\n extends: ['eslint:recommended', 'plugin:prettier/recommended'],\n parserOptions: {\n ecmaVersion: 2020,\n sourceType: 'module',\n },\n plugins: ['import', 'prettier'],\n rules: {\n 'no-console': 'error',\n 'no-shadow': 'error',\n 'no-warning-comments': ['warn', {location: 'start', terms: ['todo', 'fixme']}],\n },\n }\n\n files.push({\n name: '.eslintignore',\n contents: outdent`\n /dist\n `,\n })\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n lint: features.typescript\n ? 'eslint . --ext .cjs,.js,.ts,.tsx'\n : 'eslint . --ext .cjs,.js',\n }\n\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n eslint: '*',\n 'eslint-config-prettier': '*',\n 'eslint-plugin-import': '*',\n 'eslint-plugin-prettier': '*',\n }\n\n if (features.typescript) {\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n '@typescript-eslint/eslint-plugin': '*',\n '@typescript-eslint/parser': '*',\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfigOverride: any = {\n files: ['**/*.ts', '**/*.tsx'],\n parser: '@typescript-eslint/parser',\n parserOptions: {\n project: ['./tsconfig.json'],\n },\n extends: [\n 'eslint:recommended',\n 'plugin:prettier/recommended',\n 'plugin:@typescript-eslint/eslint-recommended',\n 'plugin:@typescript-eslint/recommended',\n ].filter(Boolean),\n plugins: ['import', '@typescript-eslint', 'prettier'].filter(Boolean),\n rules: {\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/interface-name-prefix': 'off',\n '@typescript-eslint/member-delimiter-style': 'off',\n '@typescript-eslint/no-empty-interface': 'off',\n },\n }\n\n eslintConfig.overrides = [eslintConfigOverride]\n }\n\n files.push({\n name: '.eslintrc.cjs',\n contents: await format(\n resolve(packagePath, '.eslintrc.cjs'),\n outdent`\n 'use strict'\n\n /** @type import('eslint').Linter.Config */\n module.exports = ${JSON.stringify(eslintConfig, null, 2)}\n `,\n prettierConfig,\n ),\n })\n }\n\n if (features.typescript) {\n files.push({\n name: 'tsconfig.settings.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.settings.json'),\n outdent`\n {\n \"compilerOptions\": {\n \"module\": \"ES2020\",\n \"target\": \"ES2020\",\n \"declaration\": true,\n \"declarationMap\": true,\n \"sourceMap\": true,\n\n // Strict type-checking\n \"strict\": true,\n \"noImplicitAny\": true,\n \"strictNullChecks\": true,\n \"strictFunctionTypes\": true,\n \"strictPropertyInitialization\": true,\n \"noImplicitThis\": true,\n \"alwaysStrict\": true,\n\n // Additional checks\n \"noUnusedLocals\": true,\n \"noUnusedParameters\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n\n // Module resolution\n \"moduleResolution\": \"node\",\n \"allowSyntheticDefaultImports\": true,\n \"esModuleInterop\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.dist.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.dist.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"emitDeclarationOnly\": true,\n \"resolveJsonModule\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./*.cjs\", \"./*.ts\", \"./package.config.ts\", \"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"noEmit\": true,\n \"allowJs\": true,\n \"resolveJsonModule\": true,\n }\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // source file\n if (features.typescript) {\n files.push({\n name: 'package.config.ts',\n contents: await format(\n resolve(packagePath, 'package.config.ts'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n\n // the path to the tsconfig file for distributed builds\n tsconfig: 'tsconfig.dist.json',\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.ts',\n contents: await format(\n resolve(packagePath, 'src/index.ts'),\n outdent`\n /** @public */\n export function main(): void {\n //\n }\n `,\n prettierConfig,\n ),\n })\n } else {\n files.push({\n name: 'package.config.js',\n contents: await format(\n resolve(packagePath, 'package.config.js'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.js',\n contents: await format(\n resolve(packagePath, 'src/index.js'),\n outdent`\n /** @public */\n export function main() {\n //\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // Resolve latest dependencies\n try {\n pkgJson.dependencies = await resolveLatestDeps(pkgJson.dependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n // Resolve latest devDependencies\n try {\n pkgJson.devDependencies = await resolveLatestDeps(pkgJson.devDependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n files.push({\n name: 'package.json',\n contents: await format(\n resolve(packagePath, 'package.json'),\n JSON.stringify(pkgJson, null, 2),\n prettierConfig,\n ),\n })\n\n return files\n },\n }\n}\n\nfunction format(filepath: string, input: string, prettierOptions: PrettierConfig) {\n return prettier.format(input, {...prettierOptions, filepath})\n}\n\nasync function resolveLatestDeps(deps: Record<string, string>) {\n const depsEntries = Object.entries(deps)\n const latestDeps: Record<string, string> = {}\n\n for (const entry of depsEntries) {\n const [name, version] = entry\n const latestVersion = await getLatestVersion(name, version)\n\n latestDeps[name] = latestVersion ? `^${latestVersion}` : version\n }\n\n return latestDeps\n}\n","import {lstat} from 'fs/promises'\nimport {mkdirp} from 'mkdirp'\nimport {resolve} from 'path'\n\nimport {createFromTemplate} from './core/template'\nimport {fileExists} from './fileExists'\nimport {isEmptyDirectory} from './isEmptyDirectory'\nimport {createLogger} from './logger'\nimport {defaultTemplate} from './templates'\n\n/** @public */\nexport async function init(options: {cwd: string; path: string}): Promise<void> {\n if (!options.cwd) {\n throw new Error('Missing required option: cwd')\n }\n\n if (!options.path) {\n throw new Error('Missing required option: path')\n }\n\n const logger = createLogger()\n\n const packagePath = resolve(options.cwd, options.path)\n\n await ensurePackagePath(packagePath)\n\n await createFromTemplate({\n cwd: options.cwd,\n logger,\n template: defaultTemplate,\n packagePath,\n })\n}\n\nasync function ensurePackagePath(packagePath: string): Promise<void> {\n const exists = fileExists(packagePath)\n\n if (!exists) {\n await mkdirp(packagePath)\n\n return\n }\n\n const dir = (await lstat(packagePath)).isDirectory()\n\n if (!dir) {\n throw new Error('the package path is a file, not a directory')\n }\n\n const empty = await isEmptyDirectory(packagePath)\n\n if (!empty) {\n throw new Error('the package directory is not empty')\n }\n}\n"],"names":["promptsTypes","string","createFromTemplate","options","cwd","logger","packagePath","template","templateOrResolver","log","relative","templateOptions","templateOption","templateValidate","validate","res","prompts","default","type","name","message","description","prev","initial","onCancel","process","exit","parse","features","templateFeature","optional","concat","confirm","files","getFiles","sort","a","b","localeCompare","file","filePath","resolve","mkdirp","dirname","writeFile","contents","trim","success","defineTemplateOption","option","isEmptyDirectory","dirPath","readdir","length","RE_NAME","defaultTemplate","_ref","_a","_b","gitConfig","parseGitConfig","v","gitUrlParse","err","result","source","owner","repo","match","exec","Error","scope","split","fullName","user","email","_filter$join","_options$description","pkgName","author","authorName","authorEmail","filter","Boolean","join","prettierConfig","bracketSpacing","printWidth","semi","singleQuote","tabWidth","plugins","overrides","pkgJson","version","keywords","license","exports","types","typescript","require","import","main","module","scripts","build","clean","format","prettier","dependencies","devDependencies","rimraf","engines","node","push","outdent","_templateObject","_taggedTemplateLiteral","_templateObject2","_templateObject3","repository","url","bugs","homepage","mainExport","isRecord","eslint","eslintConfig","root","env","browser","es6","extends","parserOptions","ecmaVersion","sourceType","rules","location","terms","_templateObject4","lint","eslintConfigOverride","parser","project","_templateObject5","JSON","stringify","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_pkgJson$dependencies","resolveLatestDeps","error","warn","_pkgJson$devDependenc","filepath","input","prettierOptions","deps","depsEntries","Object","entries","latestDeps","entry","latestVersion","getLatestVersion","init","path","createLogger","ensurePackagePath","exists","fileExists","dir","lstat","isDirectory","empty"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var init = require('./init-
|
|
3
|
+
var init = require('./init-2377e6e5.cjs');
|
|
4
4
|
var handleError = require('./handleError-13d87f55.cjs');
|
|
5
5
|
async function initAction(options) {
|
|
6
6
|
try {
|
|
@@ -13,4 +13,4 @@ async function initAction(options) {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
exports.initAction = initAction;
|
|
16
|
-
//# sourceMappingURL=initAction-
|
|
16
|
+
//# sourceMappingURL=initAction-2abd8576.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initAction-
|
|
1
|
+
{"version":3,"file":"initAction-2abd8576.cjs","sources":["../../src/cli/initAction.ts"],"sourcesContent":["import {init} from '../node/init'\nimport {handleError} from './handleError'\n\nexport async function initAction(options: {path: string}): Promise<void> {\n try {\n await init({\n cwd: process.cwd(),\n path: options.path,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["initAction","options","init","cwd","process","path","err","handleError"],"mappings":";;;;AAGA,eAAsBA,WAAWC,OAAwC,EAAA;EACnE,IAAA;IACF,MAAMC,SAAK,CAAA;MACTC,GAAA,EAAKC,QAAQD,GAAI,CAAA,CAAA;MACjBE,MAAMJ,OAAQ,CAAAI;IAAA,CACf,CAAA;WACMC,GAAK,EAAA;IACZC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
|
|
@@ -37,20 +37,18 @@ const pkgSchema = zod.z.object({
|
|
|
37
37
|
exports: zod.z.optional(zod.z.record(zod.z.union([zod.z.custom(val => /^\.\/.*\.json$/.test(val)), zod.z.object({
|
|
38
38
|
types: zod.z.optional(zod.z.string()),
|
|
39
39
|
source: zod.z.string(),
|
|
40
|
+
require: zod.z.optional(zod.z.string()),
|
|
40
41
|
browser: zod.z.optional(zod.z.object({
|
|
41
42
|
source: zod.z.string(),
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
require: zod.z.optional(zod.z.string()),
|
|
44
|
+
import: zod.z.optional(zod.z.string())
|
|
44
45
|
})),
|
|
45
46
|
node: zod.z.optional(zod.z.object({
|
|
46
47
|
source: zod.z.optional(zod.z.string()),
|
|
47
|
-
|
|
48
|
-
import: zod.z.optional(zod.z.string())
|
|
49
|
-
require: zod.z.optional(zod.z.string())
|
|
48
|
+
require: zod.z.optional(zod.z.string()),
|
|
49
|
+
import: zod.z.optional(zod.z.string())
|
|
50
50
|
})),
|
|
51
|
-
module: zod.z.optional(zod.z.string()),
|
|
52
51
|
import: zod.z.optional(zod.z.string()),
|
|
53
|
-
require: zod.z.optional(zod.z.string()),
|
|
54
52
|
default: zod.z.string()
|
|
55
53
|
})]))),
|
|
56
54
|
browserslist: zod.z.optional(zod.z.array(zod.z.string()))
|
|
@@ -96,4 +94,4 @@ exports.createLogger = createLogger;
|
|
|
96
94
|
exports.fileExists = fileExists;
|
|
97
95
|
exports.isRecord = isRecord;
|
|
98
96
|
exports.validatePkg = validatePkg;
|
|
99
|
-
//# sourceMappingURL=logger-
|
|
97
|
+
//# sourceMappingURL=logger-c593f06b.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger-c593f06b.cjs","sources":["../../src/node/fileExists.ts","../../src/node/core/isRecord.ts","../../src/node/core/pkg/validatePkg.ts","../../src/node/logger.ts"],"sourcesContent":["import {statSync} from 'fs'\n\n/** @internal */\nexport function fileExists(filePath: string): boolean {\n try {\n statSync(filePath)\n\n return true\n } catch (_) {\n return false\n }\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 {z} from 'zod'\n\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 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"],"names":["fileExists","filePath","statSync","_","isRecord","value","Boolean","Array","isArray","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","require","import","node","default","browserslist","array","validatePkg","input","parse","createLogger","log","console","arguments","info","_len","length","args","_key","chalk","blue","warn","_len2","_key2","yellow","error","_len3","_key3","red","success","_len4","_key4","green"],"mappings":";;;;;;;;;;;AAGO,SAASA,WAAWC,QAA2B,EAAA;EAChD,IAAA;IACFC,EAAA,CAAAA,QAAA,CAASD,QAAQ,CAAA;IAEV,OAAA,IAAA;WACAE,CAAG,EAAA;IACH,OAAA,KAAA;EACT;AACF;ACVO,SAASC,SAASC,KAAkD,EAAA;EAClE,OAAAC,OAAA,CAAQD,KAAK,CAAK,IAAA,CAACE,MAAMC,OAAQ,CAAAH,KAAK,CAAK,IAAA,OAAOA,KAAU,KAAA,QAAA;AACrE;ACCA,MAAMI,SAAA,GAAYC,MAAEC,MAAO,CAAA;EACzBC,IAAA,EAAMF,GAAAA,CAAAA,EAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEI,KAAK,CAAC,UAAA,EAAY,QAAQ,CAAC,CAAC,CAAA;EAC/CC,IAAA,EAAML,MAAEM,MAAO,CAAA,CAAA;EACfC,OAAA,EAASP,MAAEM,MAAO,CAAA,CAAA;EAClBE,OAAA,EAASR,MAAEM,MAAO,CAAA,CAAA;EAClBG,GAAA,EAAKT,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAEU,OAAOV,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC,CAAA;EACpCK,YAAA,EAAcX,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAEU,OAAOV,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC,CAAA;EAC7CM,eAAA,EAAiBZ,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAEU,OAAOV,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC,CAAA;EAChDO,gBAAA,EAAkBb,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAEU,OAAOV,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC,CAAA;EACjDQ,MAAQ,EAAAd,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;EAC7BS,IAAM,EAAAf,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;EAC3BU,OAAA,EAAShB,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAEU,OAAOV,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC,CAAA;EACxCW,MAAQ,EAAAjB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;EAC7BY,KAAO,EAAAlB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;EAC5Ba,SAASnB,GAAE,CAAAA,CAAA,CAAAG,QAAA,CACTH,GAAAA,CAAAA,CAAE,CAAAU,MAAA,CACAV,GAAAA,CAAAA,EAAEoB,KAAM,CAAA,CACNpB,MAAEqB,MAA2B,CAACC,OAAQ,gBAAiB,CAAAC,IAAA,CAAKD,GAAa,CAAC,CAAA,EAC1EtB,GAAAA,CAAAA,EAAEC,MAAO,CAAA;IACPiB,KAAO,EAAAlB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;IAC5BQ,MAAA,EAAQd,MAAEM,MAAO,CAAA,CAAA;IACjBkB,OAAS,EAAAxB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;IAC9BU,SAAShB,GAAE,CAAAA,CAAA,CAAAG,QAAA,CACTH,GAAAA,CAAAA,EAAEC,MAAO,CAAA;MACPa,MAAA,EAAQd,MAAEM,MAAO,CAAA,CAAA;MACjBkB,OAAS,EAAAxB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;MAC9BmB,MAAQ,EAAAzB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ;IAAA,CAC9B,CACH,CAAA;IACAoB,MAAM1B,GAAE,CAAAA,CAAA,CAAAG,QAAA,CACNH,GAAAA,CAAAA,EAAEC,MAAO,CAAA;MACPa,MAAQ,EAAAd,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;MAC7BkB,OAAS,EAAAxB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;MAC9BmB,MAAQ,EAAAzB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ;IAAA,CAC9B,CACH,CAAA;IACAmB,MAAQ,EAAAzB,GAAAA,CAAAA,CAAA,CAAEG,QAAS,CAAAH,GAAA,CAAAA,CAAA,CAAEM,QAAQ,CAAA;IAC7BqB,OAAA,EAAS3B,MAAEM,MAAO,CAAA;EAAA,CACnB,CAAA,CACF,CACH,CACF,CAAA;EACAsB,YAAA,EAAc5B,MAAEG,QAAS,CAAAH,GAAAA,CAAAA,CAAA,CAAE6B,MAAM7B,GAAE,CAAAA,CAAA,CAAAM,MAAA,CAAA,CAAQ,CAAC;AAC9C,CAAC,CAAA;AAEM,SAASwB,YAAYC,KAA6B,EAAA;EAChD,OAAAhC,SAAA,CAAUiC,MAAMD,KAAK,CAAA;AAC9B;ACvCO,SAASE,YAAuBA,CAAA,EAAA;EAC9B,OAAA;IAAA;IAELC,GAAA,EAAK,SAAAA,CAAA,EAAa;MACRC,OAAA,CAAAD,GAAA,CAAI,GAAAE,SAAO,CAAA;IACrB,CAAA;IACAC,IAAA,EAAM,SAAAA,CAAA,EAAa;MAAA,SAAAC,IAAA,GAAAF,SAAA,CAAAG,MAAA,EAATC,IAAS,OAAA3C,KAAA,CAAAyC,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;QAATD,IAAS,CAAAC,IAAA,IAAAL,SAAA,CAAAK,IAAA;MAAA;MACjBN,OAAA,CAAQD,IAAIQ,sBAAM,CAAAC,IAAA,CAAK,QAAQ,CAAA,EAAG,GAAGH,IAAI,CAAA;IAC3C,CAAA;IACAI,IAAA,EAAM,SAAAA,CAAA,EAAa;MAAA,SAAAC,KAAA,GAAAT,SAAA,CAAAG,MAAA,EAATC,IAAS,OAAA3C,KAAA,CAAAgD,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAATN,IAAS,CAAAM,KAAA,IAAAV,SAAA,CAAAU,KAAA;MAAA;MACjBX,OAAA,CAAQD,IAAIQ,sBAAM,CAAAK,MAAA,CAAO,WAAW,CAAA,EAAG,GAAGP,IAAI,CAAA;IAChD,CAAA;IACAQ,KAAA,EAAO,SAAAA,CAAA,EAAa;MAAA,SAAAC,KAAA,GAAAb,SAAA,CAAAG,MAAA,EAATC,IAAS,OAAA3C,KAAA,CAAAoD,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAATV,IAAS,CAAAU,KAAA,IAAAd,SAAA,CAAAc,KAAA;MAAA;MAClBf,OAAA,CAAQD,IAAIQ,sBAAM,CAAAS,GAAA,CAAI,SAAS,CAAA,EAAG,GAAGX,IAAI,CAAA;IAC3C,CAAA;IACAY,OAAA,EAAS,SAAAA,CAAA,EAAa;MAAA,SAAAC,KAAA,GAAAjB,SAAA,CAAAG,MAAA,EAATC,IAAS,OAAA3C,KAAA,CAAAwD,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAATd,IAAS,CAAAc,KAAA,IAAAlB,SAAA,CAAAkB,KAAA;MAAA;MACpBnB,OAAA,CAAQD,IAAIQ,sBAAM,CAAAa,KAAA,CAAM,WAAW,CAAA,EAAG,GAAGf,IAAI,CAAA;IAC/C;IAAA;EAAA,CAEF;AACF;;;;;"}
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
var path = require('path');
|
|
4
4
|
var rxjs = require('rxjs');
|
|
5
|
-
var consoleSpy = require('./consoleSpy-
|
|
5
|
+
var consoleSpy = require('./consoleSpy-d738cb9f.cjs');
|
|
6
6
|
require('fs/promises');
|
|
7
7
|
require('pkg-up');
|
|
8
|
-
var logger = require('./logger-
|
|
8
|
+
var logger = require('./logger-c593f06b.cjs');
|
|
9
9
|
require('mkdirp');
|
|
10
10
|
require('prompts');
|
|
11
11
|
require('typescript');
|
|
12
12
|
var fs = require('fs');
|
|
13
|
-
var index = require('./index-
|
|
13
|
+
var index = require('./index-70f8931a.cjs');
|
|
14
14
|
var operators = require('rxjs/operators');
|
|
15
15
|
var globby = require('globby');
|
|
16
16
|
var chokidar = require('chokidar');
|
|
@@ -228,4 +228,4 @@ async function watch(options) {
|
|
|
228
228
|
});
|
|
229
229
|
}
|
|
230
230
|
exports.watch = watch;
|
|
231
|
-
//# sourceMappingURL=watch-
|
|
231
|
+
//# sourceMappingURL=watch-d390d5e4.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-4e565bee.cjs","sources":["../../src/node/resolveWatchTasks.ts","../../src/node/globFiles.ts","../../src/node/watchFiles.ts","../../src/node/watchConfigFiles.ts","../../src/node/watch.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\n\nimport {BuildContext, PkgExport, PkgFormat, PkgRuntime} from './core'\nimport {DtsWatchTask, RollupTaskEntry, RollupWatchTask, WatchTask} from './tasks'\n\n/** @internal */\nexport function resolveWatchTasks(ctx: BuildContext): WatchTask[] {\n const {config, cwd, pkg, target} = ctx\n const tasks: WatchTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp}) as PkgExport & {_path: string},\n )\n\n const dtsTask: DtsWatchTask = {\n type: 'watch:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupWatchTask> = {}\n\n function addRollupTaskEntry(format: PkgFormat, runtime: PkgRuntime, entry: RollupTaskEntry) {\n const buildId = `${format}:${runtime}`\n\n if (rollupTasks[buildId]) {\n rollupTasks[buildId].entries.push(entry)\n } else {\n rollupTasks[buildId] = {\n type: 'watch:js',\n buildId,\n entries: [entry],\n runtime,\n format,\n target: target[runtime],\n }\n }\n }\n\n // Parse `dts` tasks\n for (const exp of exports) {\n const importId = path.join(pkg.name, exp._path)\n\n if (exp.types) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPath: exp.types,\n })\n }\n }\n\n // Parse rollup:commonjs:* tasks\n for (const exp of exports) {\n const output = exp.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:commonjs:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:* tasks\n for (const exp of exports) {\n const output = exp.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n tasks.push(...Object.values(rollupTasks))\n\n // Write legacy exports files\n if (config?.legacyExports) {\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(\n /\\.[^/.]+$/,\n '',\n )\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [`// AUTO-GENERATED – DO NOT EDIT`, `export * from '${relativeTargetPath}'`, ``].join(\n '\\n',\n ),\n )\n }\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\nimport path from 'path'\n\nexport function globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns.map((pattern) => pattern.split(path.sep).join(path.posix.sep)))\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function watchFiles(patterns: string[]): Observable<FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string,\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', handleFileEvent)\n\n return () => {\n watcher.off('all', handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\n\nimport {globFiles} from './globFiles'\nimport {Logger} from './logger'\nimport {watchFiles} from './watchFiles'\n\nexport async function watchConfigFiles(options: {\n cwd: string\n logger: Logger\n}): Promise<Observable<string[]>> {\n const {cwd, logger} = options\n\n const initialFiles = await globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n logger.log(\n '--------------------------------------------------------------------------------',\n )\n logger.info(path.relative(cwd, fileEvent.file), 'changed')\n logger.log('')\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged(),\n )\n}\n","import path from 'path'\nimport {switchMap} from 'rxjs'\n\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {TaskHandler, WatchTask, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const logger = createLogger()\n\n const configFiles$ = await watchConfigFiles({cwd, logger})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await loadPkgWithReporting({cwd, logger})\n const config = await loadConfig({cwd})\n const extMap = getPkgExtMap({legacyExports: config?.legacyExports ?? false})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\n }),\n )\n\n ctx$.subscribe(async (ctx) => {\n const watchTasks = resolveWatchTasks(ctx)\n\n for (const task of watchTasks) {\n const handler = watchTaskHandlers[task.type] as TaskHandler<WatchTask, unknown>\n const result$ = handler.exec(ctx, task)\n\n result$.subscribe({\n error: (err) => {\n ctx.logger.error(err)\n ctx.logger.log()\n\n process.exit(1)\n },\n next: (result) => {\n handler.complete(ctx, task, result)\n },\n complete: () => {\n ctx.logger.success(handler.name(ctx, task))\n ctx.logger.log()\n },\n })\n }\n })\n}\n"],"names":["resolveWatchTasks","ctx","_a","_b","_c","_d","_e","config","cwd","pkg","target","tasks","exports","Object","entries","map","_ref","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","concat","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","resolve","globFiles","patterns","globby","pattern","split","default","sep","posix","watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","file","next","on","off","close","watchConfigFiles","options","logger","initialFiles","fileEvent$","pipe","scan","files","fileEvent","filter","f","log","info","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","createLogger","configFiles$","ctx$","switchMap","configFiles","_ref2","packageJsonPath","find","Error","loadPkgWithReporting","loadConfig","extMap","getPkgExtMap","resolveBuildContext","subscribe","watchTasks","task","handler","watchTaskHandlers","result$","exec","error","err","process","exit","result","complete","success"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"watch-d390d5e4.cjs","sources":["../../src/node/resolveWatchTasks.ts","../../src/node/globFiles.ts","../../src/node/watchFiles.ts","../../src/node/watchConfigFiles.ts","../../src/node/watch.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\n\nimport {BuildContext, PkgExport, PkgFormat, PkgRuntime} from './core'\nimport {DtsWatchTask, RollupTaskEntry, RollupWatchTask, WatchTask} from './tasks'\n\n/** @internal */\nexport function resolveWatchTasks(ctx: BuildContext): WatchTask[] {\n const {config, cwd, pkg, target} = ctx\n const tasks: WatchTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp}) as PkgExport & {_path: string},\n )\n\n const dtsTask: DtsWatchTask = {\n type: 'watch:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupWatchTask> = {}\n\n function addRollupTaskEntry(format: PkgFormat, runtime: PkgRuntime, entry: RollupTaskEntry) {\n const buildId = `${format}:${runtime}`\n\n if (rollupTasks[buildId]) {\n rollupTasks[buildId].entries.push(entry)\n } else {\n rollupTasks[buildId] = {\n type: 'watch:js',\n buildId,\n entries: [entry],\n runtime,\n format,\n target: target[runtime],\n }\n }\n }\n\n // Parse `dts` tasks\n for (const exp of exports) {\n const importId = path.join(pkg.name, exp._path)\n\n if (exp.types) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPath: exp.types,\n })\n }\n }\n\n // Parse rollup:commonjs:* tasks\n for (const exp of exports) {\n const output = exp.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:commonjs:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:* tasks\n for (const exp of exports) {\n const output = exp.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n tasks.push(...Object.values(rollupTasks))\n\n // Write legacy exports files\n if (config?.legacyExports) {\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(\n /\\.[^/.]+$/,\n '',\n )\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [`// AUTO-GENERATED – DO NOT EDIT`, `export * from '${relativeTargetPath}'`, ``].join(\n '\\n',\n ),\n )\n }\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\nimport path from 'path'\n\nexport function globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns.map((pattern) => pattern.split(path.sep).join(path.posix.sep)))\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function watchFiles(patterns: string[]): Observable<FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string,\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', handleFileEvent)\n\n return () => {\n watcher.off('all', handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\n\nimport {globFiles} from './globFiles'\nimport {Logger} from './logger'\nimport {watchFiles} from './watchFiles'\n\nexport async function watchConfigFiles(options: {\n cwd: string\n logger: Logger\n}): Promise<Observable<string[]>> {\n const {cwd, logger} = options\n\n const initialFiles = await globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n logger.log(\n '--------------------------------------------------------------------------------',\n )\n logger.info(path.relative(cwd, fileEvent.file), 'changed')\n logger.log('')\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged(),\n )\n}\n","import path from 'path'\nimport {switchMap} from 'rxjs'\n\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {TaskHandler, WatchTask, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const logger = createLogger()\n\n const configFiles$ = await watchConfigFiles({cwd, logger})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await loadPkgWithReporting({cwd, logger})\n const config = await loadConfig({cwd})\n const extMap = getPkgExtMap({legacyExports: config?.legacyExports ?? false})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\n }),\n )\n\n ctx$.subscribe(async (ctx) => {\n const watchTasks = resolveWatchTasks(ctx)\n\n for (const task of watchTasks) {\n const handler = watchTaskHandlers[task.type] as TaskHandler<WatchTask, unknown>\n const result$ = handler.exec(ctx, task)\n\n result$.subscribe({\n error: (err) => {\n ctx.logger.error(err)\n ctx.logger.log()\n\n process.exit(1)\n },\n next: (result) => {\n handler.complete(ctx, task, result)\n },\n complete: () => {\n ctx.logger.success(handler.name(ctx, task))\n ctx.logger.log()\n },\n })\n }\n })\n}\n"],"names":["resolveWatchTasks","ctx","_a","_b","_c","_d","_e","config","cwd","pkg","target","tasks","exports","Object","entries","map","_ref","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","concat","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","resolve","globFiles","patterns","globby","pattern","split","default","sep","posix","watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","file","next","on","off","close","watchConfigFiles","options","logger","initialFiles","fileEvent$","pipe","scan","files","fileEvent","filter","f","log","info","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","createLogger","configFiles$","ctx$","switchMap","configFiles","_ref2","packageJsonPath","find","Error","loadPkgWithReporting","loadConfig","extMap","getPkgExtMap","resolveBuildContext","subscribe","watchTasks","task","handler","watchTaskHandlers","result$","exec","error","err","process","exit","result","complete","success"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var watch = require('./watch-
|
|
3
|
+
var watch = require('./watch-d390d5e4.cjs');
|
|
4
4
|
var handleError = require('./handleError-13d87f55.cjs');
|
|
5
5
|
async function watchAction(options) {
|
|
6
6
|
try {
|
|
@@ -14,4 +14,4 @@ async function watchAction(options) {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
exports.watchAction = watchAction;
|
|
17
|
-
//# sourceMappingURL=watchAction-
|
|
17
|
+
//# sourceMappingURL=watchAction-63c8a721.cjs.map
|