@sanity/pkg-utils 1.8.1 → 1.8.2

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"_watch-259b1e4f.cjs","sources":["../src/node/_resolveWatchTasks.ts","../src/node/_globFiles.ts","../src/node/_watchFiles.ts","../src/node/_watchConfigFiles.ts","../src/node/watch.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport {PkgExport, PkgFormat, PkgRuntime, _BuildContext} from './_core'\nimport {_WatchTask, _DtsWatchTask, _RollupWatchTask, _RollupTaskEntry} from './_tasks'\n\n/** @internal */\nexport function _resolveWatchTasks(ctx: _BuildContext): _WatchTask[] {\n const {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 // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(/\\.[^/.]+$/, '')\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [\n `// AUTO-GENERATED – DO NOT EDIT`,\n ``,\n // `export {default} from '${relativeTargetPath}'`,\n `export * from '${relativeTargetPath}'`,\n ``,\n ].join('\\n')\n )\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\n\nexport function _globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns)\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface _FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function _watchFiles(patterns: string[]): Observable<_FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function _handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', _handleFileEvent)\n\n return () => {\n watcher.off('all', _handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\nimport {_globFiles} from './_globFiles'\nimport {_watchFiles} from './_watchFiles'\n\nexport async function _watchConfigFiles(options: {cwd: string}): Promise<Observable<string[]>> {\n const {cwd} = options\n\n const initialFiles = await _globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = _watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n /* eslint-disable no-console */\n console.log(\n '--------------------------------------------------------------------------------'\n )\n console.log(chalk.blue('info '), path.relative(cwd, fileEvent.file), 'changed')\n console.log('')\n /* eslint-enable no-console */\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged()\n )\n}\n","import path from 'path'\nimport {switchMap} from 'rxjs'\nimport {_loadConfig, _loadPkgWithReporting} from './_core'\nimport {_resolveBuildContext} from './_resolveBuildContext'\nimport {_resolveWatchTasks} from './_resolveWatchTasks'\nimport {_WatchTask, _TaskHandler, _watchTaskHandlers} from './_tasks'\nimport {_watchConfigFiles} from './_watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {cwd: string; tsconfig?: string}): Promise<void> {\n const {cwd, tsconfig = 'tsconfig.json'} = options\n\n const configFiles$ = await _watchConfigFiles({cwd})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const _files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = _files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await _loadPkgWithReporting({cwd})\n const config = await _loadConfig({cwd})\n\n return _resolveBuildContext({config, cwd, pkg, 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, any>\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","cwd","pkg","target","tasks","exports","Object","entries","map","_path","exp","dtsTask","type","rollupTasks","_addRollupTaskEntry","format","runtime","entry","buildId","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","_exported","relativeTargetPath","replace","fs","writeFileSync","resolve","_globFiles","patterns","globby","_watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","_handleFileEvent","file","next","on","off","close","_watchConfigFiles","options","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","console","log","chalk","blue","relative","slice","startWith","distinctUntilChanged","tsconfig","configFiles$","ctx$","switchMap","configFiles","_files","packageJsonPath","find","Error","_loadPkgWithReporting","config","_loadConfig","_resolveBuildContext","subscribe","watchTasks","task","handler","_watchTaskHandlers","result$","exec","error","err","logger","process","exit","result","complete","success"],"mappings":"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"}