@sanity/pkg-utils 5.1.2 → 5.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +1 -1
  2. package/dist/_chunks-cjs/build.cjs +36 -16
  3. package/dist/_chunks-cjs/build.cjs.map +1 -1
  4. package/dist/_chunks-cjs/check.cjs +4 -4
  5. package/dist/_chunks-cjs/check.cjs.map +1 -1
  6. package/dist/_chunks-cjs/consoleSpy.cjs +65 -40
  7. package/dist/_chunks-cjs/consoleSpy.cjs.map +1 -1
  8. package/dist/_chunks-cjs/handleError.cjs +3 -3
  9. package/dist/_chunks-cjs/index.cjs +77 -40
  10. package/dist/_chunks-cjs/index.cjs.map +1 -1
  11. package/dist/_chunks-cjs/init.cjs +3 -3
  12. package/dist/_chunks-cjs/logger.cjs +3 -3
  13. package/dist/_chunks-cjs/watch.cjs +8 -8
  14. package/dist/_chunks-cjs/watch.cjs.map +1 -1
  15. package/dist/cli.cjs +3 -3
  16. package/dist/index.cjs +2 -2
  17. package/dist/index.d.cts +21 -10
  18. package/dist/index.d.ts +21 -10
  19. package/dist/index.js +164 -84
  20. package/dist/index.js.map +1 -1
  21. package/package.json +2 -2
  22. package/src/node/build.ts +1 -3
  23. package/src/node/check.ts +2 -3
  24. package/src/node/core/contexts/buildContext.ts +4 -5
  25. package/src/node/core/pkg/parseExports.ts +35 -13
  26. package/src/node/core/pkg/pkgExt.ts +6 -19
  27. package/src/node/core/pkg/validateExports.ts +6 -5
  28. package/src/node/resolveBuildContext.ts +11 -11
  29. package/src/node/resolveBuildTasks.ts +49 -7
  30. package/src/node/tasks/dts/buildTypes.ts +5 -1
  31. package/src/node/tasks/dts/getTargetPaths.ts +6 -2
  32. package/src/node/tasks/index.ts +3 -2
  33. package/src/node/tasks/rollup/index.ts +1 -0
  34. package/src/node/tasks/rollup/resolveRollupConfig.ts +22 -31
  35. package/src/node/tasks/rollup/rollupLegacyTask.ts +144 -0
  36. package/src/node/tasks/rollup/rollupTask.ts +2 -2
  37. package/src/node/tasks/types.ts +16 -5
  38. package/src/node/watch.ts +3 -4
@@ -8,10 +8,10 @@ require("@sanity/browserslist-config");
8
8
  require("chalk");
9
9
  require("zod");
10
10
  require("typescript");
11
- function _interopDefaultCompat(e) {
12
- return e && typeof e == "object" && "default" in e ? e : { default: e };
11
+ function _interopDefault(e) {
12
+ return e && e.__esModule ? e : { default: e };
13
13
  }
14
- var prompts__default = /* @__PURE__ */ _interopDefaultCompat(prompts), getLatestVersion__default = /* @__PURE__ */ _interopDefaultCompat(getLatestVersion), gitUrlParse__default = /* @__PURE__ */ _interopDefaultCompat(gitUrlParse), parseGitConfig__default = /* @__PURE__ */ _interopDefaultCompat(parseGitConfig), prettier__default = /* @__PURE__ */ _interopDefaultCompat(prettier);
14
+ var prompts__default = /* @__PURE__ */ _interopDefault(prompts), getLatestVersion__default = /* @__PURE__ */ _interopDefault(getLatestVersion), gitUrlParse__default = /* @__PURE__ */ _interopDefault(gitUrlParse), parseGitConfig__default = /* @__PURE__ */ _interopDefault(parseGitConfig), prettier__default = /* @__PURE__ */ _interopDefault(prettier);
15
15
  const promptsTypes = {
16
16
  string: "text"
17
17
  };
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  var fs = require("fs"), zod = require("zod"), chalk = require("chalk");
3
- function _interopDefaultCompat(e) {
4
- return e && typeof e == "object" && "default" in e ? e : { default: e };
3
+ function _interopDefault(e) {
4
+ return e && e.__esModule ? e : { default: e };
5
5
  }
6
- var chalk__default = /* @__PURE__ */ _interopDefaultCompat(chalk);
6
+ var chalk__default = /* @__PURE__ */ _interopDefault(chalk);
7
7
  function fileExists(filePath) {
8
8
  try {
9
9
  return fs.statSync(filePath), !0;
@@ -8,10 +8,10 @@ require("mkdirp");
8
8
  require("prompts");
9
9
  require("typescript");
10
10
  var fs = require("fs"), index = require("./index.cjs"), operators = require("rxjs/operators"), globby = require("globby"), chokidar = require("chokidar");
11
- function _interopDefaultCompat(e) {
12
- return e && typeof e == "object" && "default" in e ? e : { default: e };
11
+ function _interopDefault(e) {
12
+ return e && e.__esModule ? e : { default: e };
13
13
  }
14
- var path__default = /* @__PURE__ */ _interopDefaultCompat(path), fs__default = /* @__PURE__ */ _interopDefaultCompat(fs), globby__default = /* @__PURE__ */ _interopDefaultCompat(globby), chokidar__default = /* @__PURE__ */ _interopDefaultCompat(chokidar);
14
+ var path__default = /* @__PURE__ */ _interopDefault(path), fs__default = /* @__PURE__ */ _interopDefault(fs), globby__default = /* @__PURE__ */ _interopDefault(globby), chokidar__default = /* @__PURE__ */ _interopDefault(chokidar);
15
15
  function resolveWatchTasks(ctx) {
16
16
  const { config, cwd, pkg, target } = ctx, tasks = [], exports2 = Object.entries(ctx.exports || {}).map(
17
17
  ([_path, exp]) => ({ _path, ...exp })
@@ -36,17 +36,17 @@ function resolveWatchTasks(ctx) {
36
36
  importId,
37
37
  exportPath: exp._path,
38
38
  sourcePath: exp.source,
39
- targetPaths: index.getTargetPaths(pkg.type, exp)
39
+ targetPaths: consoleSpy.getTargetPaths(pkg.type, exp)
40
40
  }), exp.browser?.source?.endsWith(".ts") && dtsTask.entries.push({
41
41
  importId,
42
42
  exportPath: exp._path,
43
43
  sourcePath: exp.browser.source,
44
- targetPaths: index.getTargetPaths(pkg.type, exp.browser)
44
+ targetPaths: consoleSpy.getTargetPaths(pkg.type, exp.browser)
45
45
  }), exp.node?.source?.endsWith(".ts") && dtsTask.entries.push({
46
46
  importId,
47
47
  exportPath: exp._path,
48
48
  sourcePath: exp.node.source,
49
- targetPaths: index.getTargetPaths(pkg.type, exp.node)
49
+ targetPaths: consoleSpy.getTargetPaths(pkg.type, exp.node)
50
50
  });
51
51
  }
52
52
  for (const exp of exports2) {
@@ -141,8 +141,8 @@ async function watch(options) {
141
141
  rxjs.switchMap(async (configFiles) => {
142
142
  if (!configFiles.map((f) => path__default.default.relative(cwd, f)).find((f) => f === "package.json"))
143
143
  throw new Error("missing package.json");
144
- const pkg = await consoleSpy.loadPkgWithReporting({ cwd, logger: logger$1, strict }), config = await consoleSpy.loadConfig({ cwd }), extMap = consoleSpy.getPkgExtMap({ legacyExports: config?.legacyExports ?? !1 }), tsconfig = tsconfigOption || config?.tsconfig || "tsconfig.json";
145
- return consoleSpy.resolveBuildContext({ config, cwd, extMap, logger: logger$1, pkg, strict, tsconfig });
144
+ const pkg = await consoleSpy.loadPkgWithReporting({ cwd, logger: logger$1, strict }), config = await consoleSpy.loadConfig({ cwd }), tsconfig = tsconfigOption || config?.tsconfig || "tsconfig.json";
145
+ return consoleSpy.resolveBuildContext({ config, cwd, logger: logger$1, pkg, strict, tsconfig });
146
146
  })
147
147
  ).subscribe(async (ctx) => {
148
148
  const watchTasks = resolveWatchTasks(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"watch.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 type {BuildContext, PkgExport, PkgFormat, PkgRuntime} from './core'\nimport type {DtsWatchTask, RollupTaskEntry, RollupWatchTask, WatchTask} from './tasks'\nimport {getTargetPaths} from './tasks/dts/getTargetPaths'\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.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPaths: getTargetPaths(pkg.type, exp),\n })\n }\n\n if (exp.browser?.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.browser.source,\n targetPaths: getTargetPaths(pkg.type, exp.browser),\n })\n }\n\n if (exp.node?.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.node.source,\n targetPaths: getTargetPaths(pkg.type, exp.node),\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, strict})\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":["exports","path","getTargetPaths","fs","globby","Observable","chokidar","logger","scan","startWith","distinctUntilChanged","createLogger","switchMap","loadPkgWithReporting","loadConfig","getPkgExtMap","resolveBuildContext","watchTaskHandlers"],"mappings":"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"}
1
+ {"version":3,"file":"watch.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 type {BuildContext, PkgExport, PkgFormat, PkgRuntime} from './core'\nimport type {DtsWatchTask, RollupTaskEntry, RollupWatchTask, WatchTask} from './tasks'\nimport {getTargetPaths} from './tasks/dts/getTargetPaths'\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.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPaths: getTargetPaths(pkg.type, exp),\n })\n }\n\n if (exp.browser?.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.browser.source,\n targetPaths: getTargetPaths(pkg.type, exp.browser),\n })\n }\n\n if (exp.node?.source?.endsWith('.ts')) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.node.source,\n targetPaths: getTargetPaths(pkg.type, exp.node),\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 {loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {type TaskHandler, type 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, strict})\n const config = await loadConfig({cwd})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, 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":["exports","path","getTargetPaths","fs","globby","Observable","chokidar","logger","scan","startWith","distinctUntilChanged","createLogger","switchMap","loadPkgWithReporting","loadConfig","resolveBuildContext","watchTaskHandlers"],"mappings":";;;;;;;;;;;;;;AAQO,SAAS,kBAAkB,KAAgC;AAChE,QAAM,EAAC,QAAQ,KAAK,KAAK,OAAA,IAAU,KAC7B,QAAqB,CAAC,GAEtBA,WAAU,OAAO,QAAQ,IAAI,WAAW,CAAE,CAAA,EAAE;AAAA,IAChD,CAAC,CAAC,OAAO,GAAG,OAAO,EAAC,OAAO,GAAG;KAG1B,UAAwB;AAAA,IAC5B,MAAM;AAAA,IACN,SAAS,CAAC;AAAA,EAAA,GAGN,cAA+C,CAAA;AAE5C,WAAA,mBAAmB,QAAmB,SAAqB,OAAwB;AAC1F,UAAM,UAAU,GAAG,MAAM,IAAI,OAAO;AAEhC,gBAAY,OAAO,IACrB,YAAY,OAAO,EAAE,QAAQ,KAAK,KAAK,IAEvC,YAAY,OAAO,IAAI;AAAA,MACrB,MAAM;AAAA,MACN;AAAA,MACA,SAAS,CAAC,KAAK;AAAA,MACf;AAAA,MACA;AAAA,MACA,QAAQ,OAAO,OAAO;AAAA,IAAA;AAAA,EAG5B;AAGA,aAAW,OAAOA,UAAS;AACzB,UAAM,WAAWC,cAAAA,QAAK,KAAK,IAAI,MAAM,IAAI,KAAK;AAE1C,QAAI,QAAQ,SAAS,KAAK,KAC5B,QAAQ,QAAQ,KAAK;AAAA,MACnB;AAAA,MACA,YAAY,IAAI;AAAA,MAChB,YAAY,IAAI;AAAA,MAChB,aAAaC,WAAA,eAAe,IAAI,MAAM,GAAG;AAAA,IAAA,CAC1C,GAGC,IAAI,SAAS,QAAQ,SAAS,KAAK,KACrC,QAAQ,QAAQ,KAAK;AAAA,MACnB;AAAA,MACA,YAAY,IAAI;AAAA,MAChB,YAAY,IAAI,QAAQ;AAAA,MACxB,aAAaA,WAAAA,eAAe,IAAI,MAAM,IAAI,OAAO;AAAA,IAAA,CAClD,GAGC,IAAI,MAAM,QAAQ,SAAS,KAAK,KAClC,QAAQ,QAAQ,KAAK;AAAA,MACnB;AAAA,MACA,YAAY,IAAI;AAAA,MAChB,YAAY,IAAI,KAAK;AAAA,MACrB,aAAaA,WAAAA,eAAe,IAAI,MAAM,IAAI,IAAI;AAAA,IAAA,CAC/C;AAAA,EAEL;AAGA,aAAW,OAAOF,UAAS;AACzB,UAAM,SAAS,IAAI;AAEd,cAEL,mBAAmB,YAAY,IAAI,SAAS;AAAA,MAC1C,MAAM,IAAI;AAAA,MACV,QAAQ,IAAI;AAAA,MACZ;AAAA,IAAA,CACD;AAAA,EACH;AAGA,aAAW,OAAOA,UAAS;AACnB,UAAA,SAAS,IAAI,SAAS;AAEvB,cAEL,mBAAmB,YAAY,WAAW;AAAA,MACxC,MAAM,IAAI;AAAA,MACV,QAAQ,IAAI,SAAS,UAAU,IAAI;AAAA,MACnC;AAAA,IAAA,CACD;AAAA,EACH;AAGA,aAAW,OAAOA,UAAS;AACzB,UAAM,SAAS,IAAI;AAEd,cAEL,mBAAmB,OAAO,IAAI,SAAS;AAAA,MACrC,MAAM,IAAI;AAAA,MACV,QAAQ,IAAI;AAAA,MACZ;AAAA,IAAA,CACD;AAAA,EACH;AAGA,aAAW,OAAOA,UAAS;AACnB,UAAA,SAAS,IAAI,SAAS;AAEvB,cAEL,mBAAmB,OAAO,WAAW;AAAA,MACnC,MAAM,IAAI;AAAA,MACV,QAAQ,IAAI,SAAS,UAAU,IAAI;AAAA,MACnC;AAAA,IAAA,CACD;AAAA,EACH;AASA,MAPI,QAAQ,QAAQ,UAClB,MAAM,KAAK,OAAO,GAGpB,MAAM,KAAK,GAAG,OAAO,OAAO,WAAW,CAAC,GAGpC,QAAQ;AACV,eAAW,OAAOA;AAChB,UAAI,IAAI,aAAa,IAAI,UAAU,KAAK;AACtC,cAAM,sBAAsB,IAAI,SAAS,UAAU,IAAI,UAAU,IAAI;AAAA,UACnE;AAAA,UACA;AAAA,QAAA;AAGE,8BACFG,YAAG,QAAA;AAAA,UACDF,sBAAK,QAAQ,KAAK,GAAG,IAAI,KAAK,KAAK;AAAA,UACnC,CAAC,wCAAmC,kBAAkB,kBAAkB,KAAK,EAAE,EAAE;AAAA,YAC/E;AAAA;AAAA,UACF;AAAA,QAAA;AAAA,MAGN;AAAA;AAIG,SAAA;AACT;ACrJO,SAAS,UAAU,UAAuC;AAC/D,SAAOG,gBAAAA,QAAO,SAAS,IAAI,CAAC,YAAY,QAAQ,MAAMH,cAAK,QAAA,GAAG,EAAE,KAAKA,cAAAA,QAAK,MAAM,GAAG,CAAC,CAAC;AACvF;ACGO,SAAS,WAAW,UAA2C;AAC7D,SAAA,IAAII,KAAAA,WAAW,CAAC,aAAa;AAC5B,UAAA,UAAUC,kBAAAA,QAAS,MAAM,UAAU;AAAA,MACvC,eAAe;AAAA,IAAA,CAChB;AAEQ,aAAA,gBACP,MACA,MACA;AACA,eAAS,KAAK,EAAC,MAAM,KAAK,CAAA;AAAA,IAC5B;AAEA,WAAA,QAAQ,GAAG,OAAO,eAAe,GAE1B,MAAM;AACX,cAAQ,IAAI,OAAO,eAAe,GAClC,QAAQ;IAAM;AAAA,EAChB,CACD;AACH;ACpBA,eAAsB,iBAAiB,SAGL;AAChC,QAAM,EAAC,KAAK,QAAAC,QAAA,IAAU,SAEhB,eAAe,MAAM,UAAU;AAAA,IACnCN,sBAAK,QAAQ,KAAK,cAAc;AAAA,IAChCA,sBAAK,QAAQ,KAAK,oBAAoB;AAAA,IACtCA,sBAAK,QAAQ,KAAK,mBAAmB;AAAA,IACrCA,sBAAK,QAAQ,KAAK,mBAAmB;AAAA,EAAA,CACtC;AASD,SAPmB,WAAW;AAAA,IAC5BA,sBAAK,QAAQ,KAAK,cAAc;AAAA,IAChCA,sBAAK,QAAQ,KAAK,oBAAoB;AAAA,IACtCA,sBAAK,QAAQ,KAAK,mBAAmB;AAAA,IACrCA,sBAAK,QAAQ,KAAK,mBAAmB;AAAA,EACtC,CAAA,EAEiB;AAAA,IAChBO,UAAAA,KAAK,CAAC,OAAO,cACP,UAAU,SAAS,QACd,MAAM,OAAO,UAAU,IAAI,IAGhC,UAAU,SAAS,WACd,MAAM,OAAO,CAAC,MAAM,MAAM,UAAU,IAAI,IAG7C,UAAU,SAAS,YACrBD,QAAO;AAAA,MACL;AAAA,IAAA,GAEFA,QAAO,KAAKN,sBAAK,SAAS,KAAK,UAAU,IAAI,GAAG,SAAS,GACzDM,QAAO,IAAI,EAAE,GAEN,MAAM,MAAM,CAAC,KAGf,OACN,YAAY;AAAA,IACfE,UAAAA,UAAU,YAAY;AAAA,IACtBC,+BAAqB;AAAA,EAAA;AAEzB;AC1CA,eAAsB,MAAM,SAIV;AACV,QAAA,EAAC,KAAK,SAAS,IAAO,UAAU,eAAc,IAAI,SAElDH,WAASI,OAAAA;AAsBf,GApBqB,MAAM,iBAAiB,EAAC,KAAK,QAAAJ,SAAA,CAAO,GAE/B;AAAA,IACxBK,KAAA,UAAU,OAAO,gBAAgB;AAK/B,UAAI,CAJU,YAAY,IAAI,CAAC,MAAMX,cAAK,QAAA,SAAS,KAAK,CAAC,CAAC,EAE5B,KAAK,CAAC,MAAM,MAAM,cAAc;AAGtD,cAAA,IAAI,MAAM,sBAAsB;AAGxC,YAAM,MAAM,MAAMY,gCAAqB,EAAC,KAAK,QAAAN,UAAQ,OAAO,CAAA,GACtD,SAAS,MAAMO,WAAAA,WAAW,EAAC,IAAG,CAAC,GAC/B,WAAW,kBAAkB,QAAQ,YAAY;AAEhD,aAAAC,WAAA,oBAAoB,EAAC,QAAQ,KAAA,QAAKR,UAAQ,KAAK,QAAQ,UAAS;AAAA,IAAA,CACxE;AAAA,EAAA,EAGE,UAAU,OAAO,QAAQ;AACtB,UAAA,aAAa,kBAAkB,GAAG;AAExC,eAAW,QAAQ,YAAY;AACvB,YAAA,UAAUS,MAAAA,kBAAkB,KAAK,IAAI;AAC3B,cAAQ,KAAK,KAAK,IAAI,EAE9B,UAAU;AAAA,QAChB,OAAO,CAAC,QAAQ;AACV,cAAA,OAAO,MAAM,GAAG,GACpB,IAAI,OAAO,OAEX,QAAQ,KAAK,CAAC;AAAA,QAChB;AAAA,QACA,MAAM,CAAC,WAAW;AACR,kBAAA,SAAS,KAAK,MAAM,MAAM;AAAA,QACpC;AAAA,QACA,UAAU,MAAM;AACV,cAAA,OAAO,QAAQ,QAAQ,KAAK,KAAK,IAAI,CAAC,GAC1C,IAAI,OAAO,IAAI;AAAA,QACjB;AAAA,MAAA,CACD;AAAA,IACH;AAAA,EAAA,CACD;AACH;;"}
package/dist/cli.cjs CHANGED
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  var cac = require("cac");
3
- function _interopDefaultCompat(e) {
4
- return e && typeof e == "object" && "default" in e ? e : { default: e };
3
+ function _interopDefault(e) {
4
+ return e && e.__esModule ? e : { default: e };
5
5
  }
6
- var cac__default = /* @__PURE__ */ _interopDefaultCompat(cac), version = "5.1.2";
6
+ var cac__default = /* @__PURE__ */ _interopDefault(cac), version = "5.1.3";
7
7
  const cli = cac__default.default();
8
8
  cli.command("", "Check").alias("check").option("--strict", "Strict mode").option("--tsconfig [tsconfig]", "[string] tsconfig.json").action(async (options) => {
9
9
  const { checkAction } = await Promise.resolve().then(function() {
package/dist/index.cjs CHANGED
@@ -8,13 +8,12 @@ exports.build = build.build;
8
8
  exports.resolveBuildTasks = build.resolveBuildTasks;
9
9
  exports.check = check.check;
10
10
  exports.DEFAULT_BROWSERSLIST_QUERY = consoleSpy.DEFAULT_BROWSERSLIST_QUERY;
11
- exports.DEFAULT_PKG_EXT_MAP = consoleSpy.DEFAULT_PKG_EXT_MAP;
12
- exports.getPkgExtMap = consoleSpy.getPkgExtMap;
13
11
  exports.loadConfig = consoleSpy.loadConfig;
14
12
  exports.loadPkg = consoleSpy.loadPkg;
15
13
  exports.loadPkgWithReporting = consoleSpy.loadPkgWithReporting;
16
14
  exports.loadTSConfig = consoleSpy.loadTSConfig;
17
15
  exports.parseExports = consoleSpy.parseExports;
16
+ exports.pkgExtMap = consoleSpy.pkgExtMap;
18
17
  exports.resolveConfigProperty = consoleSpy.resolveConfigProperty;
19
18
  exports.createLogger = logger.createLogger;
20
19
  exports.isRecord = logger.isRecord;
@@ -25,6 +24,7 @@ exports.buildTaskHandlers = index.buildTaskHandlers;
25
24
  exports.dtsTask = index.dtsTask;
26
25
  exports.dtsWatchTask = index.dtsWatchTask;
27
26
  exports.getExtractMessagesConfig = index.getExtractMessagesConfig;
27
+ exports.rollupLegacyTask = index.rollupLegacyTask;
28
28
  exports.rollupTask = index.rollupTask;
29
29
  exports.rollupWatchTask = index.rollupWatchTask;
30
30
  exports.watchTaskHandlers = index.watchTaskHandlers;
package/dist/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type {ExtractorMessage} from '@microsoft/api-extractor'
2
2
  import {IExtractorMessagesConfig} from '@microsoft/api-extractor'
3
3
  import type {NormalizedOutputOptions} from 'rollup'
4
- import {Observable} from 'rxjs'
4
+ import type {Observable} from 'rxjs'
5
5
  import type {PluginItem} from '@babel/core'
6
6
  import type {Plugin as RollupPlugin} from 'rollup'
7
7
  import {RollupWatcherEvent} from 'rollup'
@@ -41,7 +41,6 @@ export declare interface BuildContext {
41
41
  distPath: string
42
42
  emitDeclarationOnly: boolean
43
43
  exports: PkgExports | undefined
44
- extMap: PkgExtMap
45
44
  external: string[]
46
45
  files: BuildFile[]
47
46
  logger: Logger
@@ -62,12 +61,13 @@ export declare interface BuildFile {
62
61
  }
63
62
 
64
63
  /** @internal */
65
- export declare type BuildTask = DtsTask | RollupTask
64
+ export declare type BuildTask = DtsTask | RollupTask | RollupLegacyTask
66
65
 
67
66
  /** @internal */
68
67
  export declare interface BuildTaskHandlers {
69
68
  'build:dts': TaskHandler<DtsTask, DtsResult>
70
69
  'build:js': TaskHandler<RollupTask>
70
+ 'build:legacy': TaskHandler<RollupLegacyTask>
71
71
  }
72
72
 
73
73
  /** @internal */
@@ -94,9 +94,6 @@ export declare function createLogger(): Logger
94
94
  /** @public */
95
95
  export declare const DEFAULT_BROWSERSLIST_QUERY: string[]
96
96
 
97
- /** @internal */
98
- export declare const DEFAULT_PKG_EXT_MAP: PkgExtMap
99
-
100
97
  /** @public */
101
98
  export declare function defineConfig(configOptions: PkgConfigOptions): PkgConfigOptions
102
99
 
@@ -146,9 +143,6 @@ export declare function getExtractMessagesConfig(options: {
146
143
  rules: NonNullable<PkgConfigOptions['extract']>['rules']
147
144
  }): IExtractorMessagesConfig
148
145
 
149
- /** @internal */
150
- export declare function getPkgExtMap(options: {legacyExports: boolean}): PkgExtMap
151
-
152
146
  /** @public */
153
147
  export declare function init(options: {cwd: string; path: string}): Promise<void>
154
148
 
@@ -261,9 +255,9 @@ export declare interface PackageJSON {
261
255
 
262
256
  /** @internal */
263
257
  export declare function parseExports(options: {
264
- extMap: PkgExtMap
265
258
  pkg: PackageJSON
266
259
  strict: boolean
260
+ legacyExports: boolean
267
261
  }): (PkgExport & {
268
262
  _path: string
269
263
  })[]
@@ -400,8 +394,12 @@ export declare interface PkgExtMap {
400
394
  commonjs: string
401
395
  esm: string
402
396
  }
397
+ legacy: string
403
398
  }
404
399
 
400
+ /** @internal */
401
+ export declare const pkgExtMap: PkgExtMap
402
+
405
403
  /** @public */
406
404
  export declare type PkgFormat = 'commonjs' | 'esm'
407
405
 
@@ -464,6 +462,19 @@ export declare function resolveConfigProperty<T>(
464
462
  initialValue: T,
465
463
  ): T
466
464
 
465
+ /** @internal */
466
+ export declare interface RollupLegacyTask {
467
+ type: 'build:legacy'
468
+ buildId: string
469
+ entries: RollupTaskEntry[]
470
+ runtime: PkgRuntime
471
+ format: 'esm'
472
+ target: string[]
473
+ }
474
+
475
+ /** @internal */
476
+ export declare const rollupLegacyTask: TaskHandler<RollupLegacyTask>
477
+
467
478
  export {RollupPlugin}
468
479
 
469
480
  /** @internal */
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type {ExtractorMessage} from '@microsoft/api-extractor'
2
2
  import {IExtractorMessagesConfig} from '@microsoft/api-extractor'
3
3
  import type {NormalizedOutputOptions} from 'rollup'
4
- import {Observable} from 'rxjs'
4
+ import type {Observable} from 'rxjs'
5
5
  import type {PluginItem} from '@babel/core'
6
6
  import type {Plugin as RollupPlugin} from 'rollup'
7
7
  import {RollupWatcherEvent} from 'rollup'
@@ -41,7 +41,6 @@ export declare interface BuildContext {
41
41
  distPath: string
42
42
  emitDeclarationOnly: boolean
43
43
  exports: PkgExports | undefined
44
- extMap: PkgExtMap
45
44
  external: string[]
46
45
  files: BuildFile[]
47
46
  logger: Logger
@@ -62,12 +61,13 @@ export declare interface BuildFile {
62
61
  }
63
62
 
64
63
  /** @internal */
65
- export declare type BuildTask = DtsTask | RollupTask
64
+ export declare type BuildTask = DtsTask | RollupTask | RollupLegacyTask
66
65
 
67
66
  /** @internal */
68
67
  export declare interface BuildTaskHandlers {
69
68
  'build:dts': TaskHandler<DtsTask, DtsResult>
70
69
  'build:js': TaskHandler<RollupTask>
70
+ 'build:legacy': TaskHandler<RollupLegacyTask>
71
71
  }
72
72
 
73
73
  /** @internal */
@@ -94,9 +94,6 @@ export declare function createLogger(): Logger
94
94
  /** @public */
95
95
  export declare const DEFAULT_BROWSERSLIST_QUERY: string[]
96
96
 
97
- /** @internal */
98
- export declare const DEFAULT_PKG_EXT_MAP: PkgExtMap
99
-
100
97
  /** @public */
101
98
  export declare function defineConfig(configOptions: PkgConfigOptions): PkgConfigOptions
102
99
 
@@ -146,9 +143,6 @@ export declare function getExtractMessagesConfig(options: {
146
143
  rules: NonNullable<PkgConfigOptions['extract']>['rules']
147
144
  }): IExtractorMessagesConfig
148
145
 
149
- /** @internal */
150
- export declare function getPkgExtMap(options: {legacyExports: boolean}): PkgExtMap
151
-
152
146
  /** @public */
153
147
  export declare function init(options: {cwd: string; path: string}): Promise<void>
154
148
 
@@ -261,9 +255,9 @@ export declare interface PackageJSON {
261
255
 
262
256
  /** @internal */
263
257
  export declare function parseExports(options: {
264
- extMap: PkgExtMap
265
258
  pkg: PackageJSON
266
259
  strict: boolean
260
+ legacyExports: boolean
267
261
  }): (PkgExport & {
268
262
  _path: string
269
263
  })[]
@@ -400,8 +394,12 @@ export declare interface PkgExtMap {
400
394
  commonjs: string
401
395
  esm: string
402
396
  }
397
+ legacy: string
403
398
  }
404
399
 
400
+ /** @internal */
401
+ export declare const pkgExtMap: PkgExtMap
402
+
405
403
  /** @public */
406
404
  export declare type PkgFormat = 'commonjs' | 'esm'
407
405
 
@@ -464,6 +462,19 @@ export declare function resolveConfigProperty<T>(
464
462
  initialValue: T,
465
463
  ): T
466
464
 
465
+ /** @internal */
466
+ export declare interface RollupLegacyTask {
467
+ type: 'build:legacy'
468
+ buildId: string
469
+ entries: RollupTaskEntry[]
470
+ runtime: PkgRuntime
471
+ format: 'esm'
472
+ target: string[]
473
+ }
474
+
475
+ /** @internal */
476
+ export declare const rollupLegacyTask: TaskHandler<RollupLegacyTask>
477
+
467
478
  export {RollupPlugin}
468
479
 
469
480
  /** @internal */