@sanity/pkg-utils 2.0.0-beta.1 → 2.0.0-beta.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 (53) hide show
  1. package/dist/_chunks/{build-30149f1c.cjs → build-270096bd.cjs} +15 -7
  2. package/dist/_chunks/build-270096bd.cjs.map +1 -0
  3. package/dist/_chunks/{buildAction-7e75c8b7.cjs → buildAction-87a1a82b.cjs} +4 -4
  4. package/dist/_chunks/{buildAction-7e75c8b7.cjs.map → buildAction-87a1a82b.cjs.map} +1 -1
  5. package/dist/_chunks/{check-0f269395.cjs → check-5451f989.cjs} +28 -19
  6. package/dist/_chunks/check-5451f989.cjs.map +1 -0
  7. package/dist/_chunks/{checkAction-8b9632b6.cjs → checkAction-f67b99f8.cjs} +3 -3
  8. package/dist/_chunks/{checkAction-8b9632b6.cjs.map → checkAction-f67b99f8.cjs.map} +1 -1
  9. package/dist/_chunks/{index-db00ad50.cjs → index-a0acce24.cjs} +169 -65
  10. package/dist/_chunks/index-a0acce24.cjs.map +1 -0
  11. package/dist/_chunks/{resolveBuildContext-e938cee6.cjs → resolveBuildContext-2fe45294.cjs} +75 -52
  12. package/dist/_chunks/resolveBuildContext-2fe45294.cjs.map +1 -0
  13. package/dist/_chunks/{watch-73fd460f.cjs → watch-dbc7e975.cjs} +19 -11
  14. package/dist/_chunks/watch-dbc7e975.cjs.map +1 -0
  15. package/dist/_chunks/{watchAction-ffba41fd.cjs → watchAction-c5e16765.cjs} +4 -4
  16. package/dist/_chunks/{watchAction-ffba41fd.cjs.map → watchAction-c5e16765.cjs.map} +1 -1
  17. package/dist/cli.cjs +4 -4
  18. package/dist/index.cjs +19 -17
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.ts +39 -16
  21. package/dist/index.js +505 -353
  22. package/dist/index.js.map +1 -1
  23. package/package.json +4 -4
  24. package/src/node/build.ts +16 -3
  25. package/src/node/check.ts +6 -4
  26. package/src/node/core/contexts/buildContext.ts +4 -8
  27. package/src/node/core/index.ts +0 -1
  28. package/src/node/core/pkg/index.ts +1 -0
  29. package/src/node/core/pkg/loadPkgWithReporting.ts +11 -20
  30. package/src/node/core/pkg/parseExports.ts +4 -2
  31. package/src/node/core/pkg/pkgExt.ts +38 -0
  32. package/src/node/core/pkg/validateExports.ts +4 -4
  33. package/src/node/index.ts +3 -2
  34. package/src/node/logger.ts +33 -0
  35. package/src/node/printPackageTree.ts +11 -11
  36. package/src/node/resolveBuildContext.ts +16 -26
  37. package/src/node/spinner.ts +3 -3
  38. package/src/node/tasks/dts/buildTypes.ts +7 -22
  39. package/src/node/tasks/dts/doExtract.ts +2 -2
  40. package/src/node/tasks/dts/dtsTask.ts +7 -4
  41. package/src/node/tasks/dts/printDiagnostic.ts +42 -0
  42. package/src/node/tasks/rollup/consoleSpy.ts +41 -0
  43. package/src/node/tasks/rollup/resolveRollupConfig.ts +21 -10
  44. package/src/node/tasks/rollup/rollupTask.ts +87 -51
  45. package/src/node/tasks/rollup/rollupWatchTask.ts +0 -1
  46. package/src/node/watch.ts +8 -4
  47. package/src/node/watchConfigFiles.ts +9 -8
  48. package/dist/_chunks/build-30149f1c.cjs.map +0 -1
  49. package/dist/_chunks/check-0f269395.cjs.map +0 -1
  50. package/dist/_chunks/index-db00ad50.cjs.map +0 -1
  51. package/dist/_chunks/resolveBuildContext-e938cee6.cjs.map +0 -1
  52. package/dist/_chunks/watch-73fd460f.cjs.map +0 -1
  53. package/src/node/core/constants.ts +0 -14
@@ -29,16 +29,6 @@ var findConfig__default = /*#__PURE__*/_interopDefaultCompat(findConfig);
29
29
  var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
30
30
  var ts__default = /*#__PURE__*/_interopDefaultCompat(ts);
31
31
  var browserslist__default = /*#__PURE__*/_interopDefaultCompat(browserslist);
32
- const MODULE_EXT = {
33
- commonjs: {
34
- commonjs: ".js",
35
- esm: ".mjs"
36
- },
37
- module: {
38
- commonjs: ".cjs",
39
- esm: ".js"
40
- }
41
- };
42
32
  const DEFAULT_BROWSERSLIST_QUERY = ["> 0.2% and supports es6-module and supports es6-module-dynamic-import", "not dead", "not IE 11", "maintained node versions"];
43
33
  function isRecord(value) {
44
34
  return Boolean(value) && !Array.isArray(value) && typeof value === "object";
@@ -153,21 +143,23 @@ async function loadPkg(options) {
153
143
  return validatePkg(JSON.parse(buf.toString()));
154
144
  }
155
145
  async function loadPkgWithReporting(options) {
146
+ const {
147
+ cwd,
148
+ logger
149
+ } = options;
156
150
  try {
157
- const pkg = await loadPkg(options);
158
- if (pkg.type === "commonjs") {
159
- console.warn(["".concat(chalk__default.default.yellow("warn"), " "), 'Packages with `"type": "commonjs"` may not be compatible with popular bundlers like ', "webpack and rollup, and projects such as Astro and SvelteKit. Please consider using ", '`"type": "module"` instead.'].join(""));
160
- }
161
- return pkg;
151
+ return await loadPkg({
152
+ cwd
153
+ });
162
154
  } catch (err) {
163
155
  if (err instanceof zod.ZodError) {
164
156
  for (const issue of err.issues) {
165
157
  if (issue.code === "invalid_type") {
166
- console.error(["".concat(chalk__default.default.red("fail"), " `").concat(formatPath(issue.path), "` "), "in `./package.json` must be of type ".concat(chalk__default.default.magenta(issue.expected), " "), "(received ".concat(chalk__default.default.magenta(issue.received), ")")].join(""));
158
+ logger.error(["`".concat(formatPath(issue.path), "` "), "in `./package.json` must be of type ".concat(chalk__default.default.magenta(issue.expected), " "), "(received ".concat(chalk__default.default.magenta(issue.received), ")")].join(""));
167
159
  }
168
160
  }
169
161
  } else {
170
- console.error(err);
162
+ logger.error(err);
171
163
  }
172
164
  process.exit(1);
173
165
  }
@@ -186,9 +178,10 @@ function formatPath(segments) {
186
178
  }
187
179
  function validateExports(_exports, options) {
188
180
  const {
181
+ extMap,
189
182
  pkg
190
183
  } = options;
191
- const ext = MODULE_EXT[pkg.type];
184
+ const ext = extMap[pkg.type];
192
185
  const errors = [];
193
186
  for (const exp of _exports) {
194
187
  if (exp.require && !exp.require.endsWith(ext.commonjs)) {
@@ -202,6 +195,7 @@ function validateExports(_exports, options) {
202
195
  }
203
196
  function parseExports(options) {
204
197
  const {
198
+ extMap,
205
199
  pkg,
206
200
  strict
207
201
  } = options;
@@ -261,6 +255,7 @@ function parseExports(options) {
261
255
  }
262
256
  const _exports = [rootExport, ...extraExports];
263
257
  errors.push(...validateExports(_exports, {
258
+ extMap,
264
259
  pkg
265
260
  }));
266
261
  if (errors.length) {
@@ -268,6 +263,29 @@ function parseExports(options) {
268
263
  }
269
264
  return _exports;
270
265
  }
266
+ const DEFAULT_PKG_EXT_MAP = {
267
+ commonjs: {
268
+ commonjs: ".js",
269
+ esm: ".mjs"
270
+ },
271
+ module: {
272
+ commonjs: ".cjs",
273
+ esm: ".js"
274
+ }
275
+ };
276
+ function getPkgExtMap(options) {
277
+ const {
278
+ legacyExports
279
+ } = options;
280
+ const ret = _objectSpread({}, DEFAULT_PKG_EXT_MAP);
281
+ if (legacyExports) {
282
+ ret["commonjs"] = {
283
+ commonjs: ".js",
284
+ esm: ".esm.js"
285
+ };
286
+ }
287
+ return ret;
288
+ }
271
289
  async function loadTSConfig(options) {
272
290
  const {
273
291
  cwd,
@@ -280,6 +298,37 @@ async function loadTSConfig(options) {
280
298
  const configFile = ts__default.default.readConfigFile(configPath, ts__default.default.sys.readFile);
281
299
  return ts__default.default.parseJsonConfigFileContent(configFile.config, ts__default.default.sys, cwd);
282
300
  }
301
+ function createLogger() {
302
+ return {
303
+ log: function () {
304
+ console.log(...arguments);
305
+ },
306
+ info: function () {
307
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
308
+ args[_key] = arguments[_key];
309
+ }
310
+ console.log(chalk__default.default.blue("[info]"), ...args);
311
+ },
312
+ warn: function () {
313
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
314
+ args[_key2] = arguments[_key2];
315
+ }
316
+ console.log(chalk__default.default.yellow("[warning]"), ...args);
317
+ },
318
+ error: function () {
319
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
320
+ args[_key3] = arguments[_key3];
321
+ }
322
+ console.log(chalk__default.default.red("[error]"), ...args);
323
+ },
324
+ success: function () {
325
+ for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
326
+ args[_key4] = arguments[_key4];
327
+ }
328
+ console.log(chalk__default.default.green("[success]"), ...args);
329
+ }
330
+ };
331
+ }
283
332
  function pathContains(containerPath, itemPath) {
284
333
  return !path__default.default.relative(containerPath, itemPath).startsWith("..");
285
334
  }
@@ -381,48 +430,18 @@ function resolveNodeTarget(versions) {
381
430
  }
382
431
  return target;
383
432
  }
384
- function createLogger() {
385
- return {
386
- log: function () {
387
- console.log(...arguments);
388
- },
389
- info: function () {
390
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
391
- args[_key] = arguments[_key];
392
- }
393
- console.log(chalk__default.default.blue(" info"), ...args);
394
- },
395
- warn: function () {
396
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
397
- args[_key2] = arguments[_key2];
398
- }
399
- console.log(chalk__default.default.yellow(" warn"), ...args);
400
- },
401
- error: function () {
402
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
403
- args[_key3] = arguments[_key3];
404
- }
405
- console.log(chalk__default.default.red(" fail"), ...args);
406
- },
407
- success: function () {
408
- for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
409
- args[_key4] = arguments[_key4];
410
- }
411
- console.log(chalk__default.default.green(" ok "), ...args);
412
- }
413
- };
414
- }
415
433
  async function resolveBuildContext(options) {
416
434
  var _ref;
417
435
  const {
418
436
  config,
419
437
  cwd,
420
438
  emitDeclarationOnly = false,
439
+ extMap,
440
+ logger,
421
441
  pkg,
422
442
  strict,
423
443
  tsconfig: tsconfigPath
424
444
  } = options;
425
- const logger = createLogger();
426
445
  const tsconfig = await loadTSConfig({
427
446
  cwd,
428
447
  tsconfigPath
@@ -442,6 +461,7 @@ async function resolveBuildContext(options) {
442
461
  node: nodeTarget
443
462
  };
444
463
  const parsedExports = parseExports({
464
+ extMap,
445
465
  pkg,
446
466
  strict
447
467
  }).reduce((acc, x) => {
@@ -483,6 +503,7 @@ async function resolveBuildContext(options) {
483
503
  emitDeclarationOnly,
484
504
  exports,
485
505
  external,
506
+ extMap,
486
507
  files: [],
487
508
  logger,
488
509
  pkg,
@@ -497,7 +518,9 @@ async function resolveBuildContext(options) {
497
518
  return ctx;
498
519
  }
499
520
  exports.DEFAULT_BROWSERSLIST_QUERY = DEFAULT_BROWSERSLIST_QUERY;
500
- exports.MODULE_EXT = MODULE_EXT;
521
+ exports.DEFAULT_PKG_EXT_MAP = DEFAULT_PKG_EXT_MAP;
522
+ exports.createLogger = createLogger;
523
+ exports.getPkgExtMap = getPkgExtMap;
501
524
  exports.isRecord = isRecord;
502
525
  exports.loadConfig = loadConfig;
503
526
  exports.loadPkg = loadPkg;
@@ -506,4 +529,4 @@ exports.loadTSConfig = loadTSConfig;
506
529
  exports.parseExports = parseExports;
507
530
  exports.resolveBuildContext = resolveBuildContext;
508
531
  exports.resolveConfigProperty = resolveConfigProperty;
509
- //# sourceMappingURL=resolveBuildContext-e938cee6.cjs.map
532
+ //# sourceMappingURL=resolveBuildContext-2fe45294.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBuildContext-2fe45294.cjs","sources":["../../src/node/core/defaults.ts","../../src/node/core/isRecord.ts","../../src/node/core/config/findConfigFile.ts","../../src/node/core/config/loadConfig.ts","../../src/node/core/config/resolveConfigProperty.ts","../../src/node/core/pkg/validatePkg.ts","../../src/node/core/pkg/loadPkg.ts","../../src/node/core/pkg/loadPkgWithReporting.ts","../../src/node/core/pkg/validateExports.ts","../../src/node/core/pkg/parseExports.ts","../../src/node/core/pkg/pkgExt.ts","../../src/node/core/ts/loadTSConfig.ts","../../src/node/logger.ts","../../src/node/core/findCommonPath.ts","../../src/node/resolveBrowserslistVersions.ts","../../src/node/resolveBrowserTarget.ts","../../src/node/resolveNodeTarget.ts","../../src/node/resolveBuildContext.ts"],"sourcesContent":["/** @public */\nexport const DEFAULT_BROWSERSLIST_QUERY = [\n '> 0.2% and supports es6-module and supports es6-module-dynamic-import',\n 'not dead',\n 'not IE 11',\n 'maintained node versions',\n]\n","/** @internal */\nexport function isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && !Array.isArray(value) && typeof value === 'object'\n}\n","import {stat} from 'fs/promises'\nimport path from 'path'\nimport findConfig from 'find-config'\n\nconst CONFIG_FILE_NAMES = [\n 'package.config.ts',\n 'package.config.js',\n 'package.config.cjs',\n 'package.config.mjs',\n]\n\nexport async function findConfigFile(cwd: string): Promise<string | undefined> {\n const pkgJsonPath = findConfig('package.json', {cwd})\n\n if (!pkgJsonPath) return undefined\n\n const pkgPath = path.dirname(pkgJsonPath)\n\n for (const fileName of CONFIG_FILE_NAMES) {\n const configPath = path.resolve(pkgPath, fileName)\n\n const exists = await fileExists(configPath)\n\n if (exists) {\n return configPath\n }\n }\n\n return undefined\n}\n\nasync function fileExists(filePath: string) {\n try {\n await stat(filePath)\n\n return true\n } catch (_) {\n return false\n }\n}\n","import path from 'path'\nimport {register} from 'esbuild-register/dist/node'\nimport pkgUp from 'pkg-up'\nimport {findConfigFile} from './findConfigFile'\nimport {PkgConfigOptions} from './types'\n\n/** @internal */\nexport async function loadConfig(options: {cwd: string}): Promise<PkgConfigOptions | undefined> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) return undefined\n\n const root = path.dirname(pkgPath)\n\n const configFile = await findConfigFile(root)\n\n if (!configFile) {\n return undefined\n }\n\n // Do not accept config files outside of the root\n if (!configFile.startsWith(cwd)) {\n return undefined\n }\n\n const esbuildOptions = {extensions: ['.js', '.mjs', '.ts']}\n\n const {unregister} = globalThis.__DEV__ ? {unregister: () => undefined} : register(esbuildOptions)\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(configFile)\n\n unregister()\n\n return mod?.default || mod || undefined\n}\n","import {PkgConfigProperty, PkgConfigPropertyResolver} from './types'\n\n/** @internal */\nexport function resolveConfigProperty<T>(\n prop: PkgConfigProperty<T> | undefined,\n initialValue: T\n): T {\n if (!prop) return initialValue\n\n if (typeof prop === 'function') {\n return (prop as PkgConfigPropertyResolver<T>)(initialValue)\n }\n\n return prop\n}\n","import {z} from 'zod'\nimport {PackageJSON} from './types'\n\nconst pkgSchema = z.object({\n type: z.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 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.string(),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\n require: z.optional(z.string()),\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 const pkg = pkgSchema.parse(input)\n\n return {...pkg, type: pkg.type || 'commonjs'}\n}\n","import fs from 'fs/promises'\nimport pkgUp from 'pkg-up'\nimport {PackageJSON} from './types'\nimport {validatePkg} from './validatePkg'\n\n/** @internal */\nexport async function loadPkg(options: {cwd: string}): Promise<PackageJSON> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) throw new Error('no package.json found')\n\n const buf = await fs.readFile(pkgPath)\n\n return validatePkg(JSON.parse(buf.toString()))\n}\n","import chalk from 'chalk'\nimport {ZodError} from 'zod'\nimport {Logger} from '../../logger'\nimport {loadPkg} from './loadPkg'\nimport {PackageJSON} from './types'\n\n/** @internal */\nexport async function loadPkgWithReporting(options: {\n cwd: string\n logger: Logger\n}): Promise<PackageJSON> {\n const {cwd, logger} = options\n\n try {\n return await loadPkg({cwd})\n } catch (err) {\n if (err instanceof ZodError) {\n for (const issue of err.issues) {\n if (issue.code === 'invalid_type') {\n logger.error(\n [\n `\\`${formatPath(issue.path)}\\` `,\n `in \\`./package.json\\` must be of type ${chalk.magenta(issue.expected)} `,\n `(received ${chalk.magenta(issue.received)})`,\n ].join('')\n )\n }\n }\n } else {\n logger.error(err)\n }\n\n process.exit(1)\n }\n}\n\nfunction formatPath(segments: Array<string | number>) {\n return segments\n .map((s, idx) => {\n if (idx === 0) return s\n\n if (typeof s === 'number') {\n return `[${s}]`\n }\n\n if (s.startsWith('.')) {\n return `[\"${s}\"]`\n }\n\n return `.${s}`\n })\n .join('')\n}\n","import {PkgExport} from '../config'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\n\nexport function validateExports(\n _exports: (PkgExport & {_path: string})[],\n options: {extMap: PkgExtMap; pkg: PackageJSON}\n): string[] {\n const {extMap, pkg} = options\n const ext = extMap[pkg.type]\n\n const errors: string[] = []\n\n for (const exp of _exports) {\n if (exp.require && !exp.require.endsWith(ext.commonjs)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].require\\` must end with \"${ext.commonjs}\"`\n )\n }\n\n if (exp.import && !exp.import.endsWith(ext.esm)) {\n errors.push(\n `package.json with \\`type: \"${pkg.type}\"\\` - \\`exports[\"${exp._path}\"].import\\` must end with \"${ext.esm}\"`\n )\n }\n }\n\n return errors\n}\n","import {PkgExport} from '../config'\nimport {isRecord} from '../isRecord'\nimport {PkgExtMap} from './pkgExt'\nimport {PackageJSON} from './types'\nimport {validateExports} from './validateExports'\n\n/** @internal */\nexport function parseExports(options: {\n extMap: PkgExtMap\n pkg: PackageJSON\n strict: boolean\n}): (PkgExport & {_path: string})[] {\n const {extMap, pkg, strict} = options\n\n const rootExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: '.',\n types: pkg.types,\n source: pkg.source || '',\n browser: pkg.browser && {\n source: pkg.source || '',\n require: pkg.main && pkg.browser[pkg.main],\n import: pkg.module && pkg.browser[pkg.module],\n },\n import: pkg.module,\n require: pkg.main,\n default: pkg.module || pkg.main || '',\n }\n\n const extraExports: (PkgExport & {_path: string})[] = []\n\n const errors: string[] = []\n\n if (pkg.exports) {\n if (strict && !pkg.exports['./package.json']) {\n errors.push('package.json: `exports[\"./package.json\"] must be declared.')\n }\n\n for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {\n if (exportPath.endsWith('.json')) {\n if (exportPath === './package.json') {\n if (exportEntry !== './package.json') {\n errors.push('package.json: `exports[\"./package.json\"] must be \"./package.json\".')\n }\n }\n } else if (isRecord(exportEntry)) {\n if (exportPath === '.') {\n if (\n exportEntry.require &&\n rootExport.require &&\n exportEntry.require !== rootExport.require\n ) {\n errors.push(\n 'package.json: mismatch between \"main\" and \"exports.require\". These must be equal.'\n )\n }\n\n if (exportEntry.import && rootExport.import && exportEntry.import !== rootExport.import) {\n errors.push(\n 'package.json: mismatch between \"module\" and \"exports.import\" These must be equal.'\n )\n }\n\n if (exportEntry.types && rootExport.types && exportEntry.types !== rootExport.types) {\n errors.push(\n 'package.json: mismatch between \"types\" and \"exports.types\". These must be equal.'\n )\n }\n\n if (exportEntry.source && rootExport.source && exportEntry.source !== rootExport.source) {\n errors.push(\n 'package.json: mismatch between \"source\" and \"exports.source\". These must be equal.'\n )\n }\n\n Object.assign(rootExport, exportEntry)\n } else {\n const extraExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: exportPath,\n ...exportEntry,\n }\n\n extraExports.push(extraExport)\n }\n } else {\n errors.push('package.json: exports must be an object')\n }\n }\n }\n\n const _exports = [rootExport, ...extraExports]\n\n errors.push(...validateExports(_exports, {extMap, pkg}))\n\n if (errors.length) {\n throw new Error('\\n- ' + errors.join('\\n- '))\n }\n\n return _exports\n}\n","/** @internal */\nexport interface PkgExtMap {\n commonjs: {commonjs: string; esm: string}\n module: {commonjs: string; esm: string}\n}\n\n/** @internal */\nexport const DEFAULT_PKG_EXT_MAP: PkgExtMap = {\n // pkg.type: \"commonjs\"\n commonjs: {\n commonjs: '.js',\n esm: '.mjs',\n },\n\n // pkg.type: \"module\"\n module: {\n commonjs: '.cjs',\n esm: '.js',\n },\n}\n\n/** @internal */\nexport function getPkgExtMap(options: {legacyExports: boolean}): PkgExtMap {\n const {legacyExports} = options\n\n const ret = {...DEFAULT_PKG_EXT_MAP}\n\n // Fall back to legacy file extensions for package.json with `\"type\": \"commonjs\"`\n // NOTE: Not supported by Node 14+ and will be removed in a future version\n if (legacyExports) {\n ret['commonjs'] = {\n commonjs: '.js',\n esm: '.esm.js',\n }\n }\n\n return ret\n}\n","import ts from 'typescript'\n\n/** @internal */\nexport async function loadTSConfig(options: {\n cwd: string\n tsconfigPath: string\n}): Promise<ts.ParsedCommandLine> {\n const {cwd, tsconfigPath} = options\n\n const configPath = ts.findConfigFile(cwd, ts.sys.fileExists, tsconfigPath)\n\n if (!configPath) {\n throw new Error(`could not find a valid '${tsconfigPath}'`)\n }\n\n const configFile = ts.readConfigFile(configPath, ts.sys.readFile)\n\n return ts.parseJsonConfigFileContent(configFile.config, ts.sys, cwd)\n}\n","import chalk from 'chalk'\n\n/** @internal */\nexport interface Logger {\n log: (...args: unknown[]) => void\n info: (...args: unknown[]) => void\n warn: (...args: unknown[]) => void\n error: (...args: unknown[]) => void\n success: (...args: unknown[]) => void\n}\n\n/** @internal */\nexport function createLogger(): Logger {\n return {\n /* eslint-disable no-console */\n log: (...args) => {\n console.log(...args)\n },\n info: (...args) => {\n console.log(chalk.blue('[info]'), ...args)\n },\n warn: (...args) => {\n console.log(chalk.yellow('[warning]'), ...args)\n },\n error: (...args) => {\n console.log(chalk.red('[error]'), ...args)\n },\n success: (...args) => {\n console.log(chalk.green('[success]'), ...args)\n },\n /* eslint-enable no-console */\n }\n}\n","import path from 'path'\n\nexport function pathContains(containerPath: string, itemPath: string): boolean {\n return !path.relative(containerPath, itemPath).startsWith('..')\n}\n\nexport function findCommonDirPath(filePaths: string[]): string | undefined {\n let ret: string | undefined = undefined\n\n for (const filePath of filePaths) {\n let dirPath = path.dirname(filePath)\n\n if (!ret) {\n ret = dirPath\n continue\n }\n\n while (dirPath !== ret) {\n dirPath = path.dirname(dirPath)\n\n if (dirPath === ret) {\n break\n }\n\n if (pathContains(dirPath, ret)) {\n ret = dirPath\n break\n }\n\n if (dirPath === '.') return undefined\n }\n }\n\n return ret\n}\n","import browserslist from 'browserslist'\n\nexport interface PackageTargetVersions {\n chrome: string[]\n ff: string[]\n edge: string[]\n iosSaf: string[]\n saf: string[]\n opera: string[]\n node: string[]\n}\n\nfunction sortAsNumber(a: string, b: string) {\n const aVersion = Number(a)\n const bVersion = Number(b)\n\n return aVersion - bVersion\n}\n\nexport function resolveBrowserslistVersions(query: string[]): PackageTargetVersions {\n const result = browserslist(query)\n\n const entries = result.map((key) => {\n const [name, version] = key.split(' ')\n\n return {name, version: version.split('-')[0].split('.')[0]}\n })\n\n const andChr = entries.filter((b) => b.name === 'and_chr')\n const andFf = entries.filter((b) => b.name === 'and_ff')\n const chrome = entries.filter((b) => b.name === 'chrome')\n const edge = entries.filter((b) => b.name === 'edge')\n const ff = entries.filter((b) => b.name === 'firefox')\n const iosSaf = entries.filter((b) => b.name === 'ios_saf')\n const saf = entries.filter((b) => b.name === 'safari')\n const opera = entries.filter((b) => b.name === 'opera')\n const node = entries.filter((b) => b.name === 'node')\n\n // versions\n const versions: PackageTargetVersions = {\n chrome: andChr.concat(chrome).map((b) => b.version),\n ff: andFf.concat(ff).map((b) => b.version),\n edge: edge.map((b) => b.version),\n iosSaf: iosSaf.map((b) => b.version),\n saf: saf.map((b) => b.version),\n opera: opera.map((b) => b.version),\n node: node.map((b) => b.version),\n }\n\n // sort\n versions.chrome.sort(sortAsNumber)\n versions.ff.sort(sortAsNumber)\n versions.edge.sort(sortAsNumber)\n versions.iosSaf.sort(sortAsNumber)\n versions.saf.sort(sortAsNumber)\n versions.opera.sort(sortAsNumber)\n versions.node.sort(sortAsNumber)\n\n return versions\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveBrowserTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.chrome.length) {\n target.push(`chrome${versions.chrome[0]}`)\n }\n\n if (versions.ff.length) {\n target.push(`firefox${versions.ff[0]}`)\n }\n\n if (versions.edge.length) {\n target.push(`edge${versions.edge[0]}`)\n }\n\n if (versions.iosSaf.length) {\n target.push(`ios${versions.iosSaf[0]}`)\n }\n\n if (versions.saf.length) {\n target.push(`safari${versions.saf[0]}`)\n }\n\n if (versions.opera.length) {\n target.push(`opera${versions.opera[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import {PackageTargetVersions} from './resolveBrowserslistVersions'\n\nexport function resolveNodeTarget(versions: PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.node.length) {\n target.push(`node${versions.node[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import path from 'path'\nimport {\n PkgConfigOptions,\n PkgExports,\n PkgRuntime,\n BuildContext,\n DEFAULT_BROWSERSLIST_QUERY,\n loadTSConfig,\n PackageJSON,\n parseExports,\n resolveConfigProperty,\n PkgExtMap,\n} from './core'\nimport {findCommonDirPath, pathContains} from './core/findCommonPath'\nimport {Logger} from './logger'\nimport {resolveBrowserslistVersions} from './resolveBrowserslistVersions'\nimport {resolveBrowserTarget} from './resolveBrowserTarget'\nimport {resolveNodeTarget} from './resolveNodeTarget'\n\nexport async function resolveBuildContext(options: {\n config?: PkgConfigOptions\n cwd: string\n emitDeclarationOnly?: boolean\n extMap: PkgExtMap\n logger: Logger\n pkg: PackageJSON\n strict: boolean\n tsconfig: string\n}): Promise<BuildContext> {\n const {\n config,\n cwd,\n emitDeclarationOnly = false,\n extMap,\n logger,\n pkg,\n strict,\n tsconfig: tsconfigPath,\n } = options\n const tsconfig = await loadTSConfig({cwd, tsconfigPath})\n const targetVersions = resolveBrowserslistVersions(pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY)\n const nodeTarget = resolveNodeTarget(targetVersions)\n const webTarget = resolveBrowserTarget(targetVersions)\n\n if (!nodeTarget) {\n throw new Error('no matching `node` target')\n }\n\n if (!webTarget) {\n throw new Error('no matching `web` target')\n }\n\n const target: Record<PkgRuntime, string[]> = {\n '*': webTarget.concat(nodeTarget),\n browser: webTarget,\n node: nodeTarget,\n }\n\n const parsedExports = parseExports({extMap, pkg, strict}).reduce<PkgExports>((acc, x) => {\n const {_path: exportPath, ...exportEntry} = x\n\n return {...acc, [exportPath]: exportEntry}\n }, {})\n\n const exports = resolveConfigProperty(config?.exports, parsedExports)\n\n const parsedExternal = [\n ...(pkg.dependencies ? Object.keys(pkg.dependencies) : []),\n ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : []),\n ]\n\n // Merge externals if an array is provided, replace if it's a function\n const external =\n config && Array.isArray(config.external)\n ? [...parsedExternal, ...config.external]\n : resolveConfigProperty(config?.external, parsedExternal)\n\n const outputPaths = Object.values(exports)\n .flatMap((exportEntry) => {\n return [\n exportEntry.import,\n exportEntry.require,\n exportEntry.browser?.import,\n exportEntry.browser?.require,\n exportEntry.node?.import,\n exportEntry.node?.require,\n ].filter(Boolean) as string[]\n })\n .map((p) => path.resolve(cwd, p))\n\n const commonDistPath = findCommonDirPath(outputPaths)\n\n if (commonDistPath === cwd) {\n throw new Error(\n 'all output files must share a common parent directory which is not the root package directory'\n )\n }\n\n if (commonDistPath && !pathContains(cwd, commonDistPath)) {\n throw new Error('all output files must be located within the package')\n }\n\n const configDistPath = config?.dist ? path.resolve(cwd, config.dist) : undefined\n\n if (\n configDistPath &&\n commonDistPath &&\n configDistPath !== commonDistPath &&\n !pathContains(configDistPath, commonDistPath)\n ) {\n logger.log(`did you mean to configure \\`dist: './${path.relative(cwd, commonDistPath)}'\\`?`)\n\n throw new Error('all output files must be located with the configured `dist` path')\n }\n\n const distPath = configDistPath || commonDistPath\n\n if (!distPath) {\n throw new Error('could not detect `dist` path')\n }\n\n const ctx: BuildContext = {\n config,\n cwd,\n distPath,\n emitDeclarationOnly,\n exports,\n external,\n extMap,\n files: [],\n logger,\n pkg,\n runtime: config?.runtime ?? '*',\n strict,\n target,\n ts: {\n config: tsconfig,\n configPath: tsconfigPath,\n },\n }\n\n return ctx\n}\n"],"names":["DEFAULT_BROWSERSLIST_QUERY","isRecord","value","Boolean","Array","isArray","CONFIG_FILE_NAMES","findConfigFile","cwd","pkgJsonPath","findConfig","default","pkgPath","path","dirname","fileName","configPath","resolve","exists","fileExists","filePath","stat","_","loadConfig","options","pkgUp","root","configFile","startsWith","esbuildOptions","extensions","unregister","globalThis","__DEV__","register","mod","require","resolveConfigProperty","prop","initialValue","pkgSchema","z","object","type","enum","name","string","version","license","bin","optional","record","dependencies","devDependencies","peerDependencies","source","main","browser","module","types","exports","union","custom","val","test","import","node","browserslist","array","validatePkg","input","pkg","parse","loadPkg","Error","buf","fs","readFile","JSON","toString","loadPkgWithReporting","logger","err","ZodError","issue","issues","code","error","formatPath","chalk","magenta","expected","received","join","process","exit","segments","map","s","idx","validateExports","_exports","extMap","ext","errors","exp","endsWith","commonjs","push","_path","esm","parseExports","strict","rootExport","_exported","extraExports","exportPath","exportEntry","Object","entries","assign","extraExport","length","DEFAULT_PKG_EXT_MAP","getPkgExtMap","legacyExports","ret","loadTSConfig","tsconfigPath","ts","sys","readConfigFile","parseJsonConfigFileContent","config","createLogger","log","console","info","args","blue","warn","yellow","red","success","green","pathContains","containerPath","itemPath","relative","findCommonDirPath","filePaths","dirPath","sortAsNumber","a","b","aVersion","Number","bVersion","resolveBrowserslistVersions","query","result","key","split","andChr","filter","andFf","chrome","edge","ff","iosSaf","saf","opera","versions","concat","sort","resolveBrowserTarget","target","resolveNodeTarget","resolveBuildContext","emitDeclarationOnly","tsconfig","targetVersions","nodeTarget","webTarget","parsedExports","reduce","acc","x","parsedExternal","keys","external","outputPaths","values","flatMap","_a","_b","_c","_d","p","commonDistPath","configDistPath","dist","distPath","ctx","files","runtime"],"mappings":"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"}
@@ -7,13 +7,12 @@ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typ
7
7
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
8
8
  var path = require('path');
9
9
  var rxjs = require('rxjs');
10
- var resolveBuildContext = require('./resolveBuildContext-e938cee6.cjs');
10
+ var resolveBuildContext = require('./resolveBuildContext-2fe45294.cjs');
11
11
  require('fs/promises');
12
12
  require('pkg-up');
13
13
  require('typescript');
14
14
  var fs = require('fs');
15
- var index = require('./index-db00ad50.cjs');
16
- var chalk = require('chalk');
15
+ var index = require('./index-a0acce24.cjs');
17
16
  var operators = require('rxjs/operators');
18
17
  var globby = require('globby');
19
18
  var chokidar = require('chokidar');
@@ -24,7 +23,6 @@ function _interopDefaultCompat(e) {
24
23
  }
25
24
  var path__default = /*#__PURE__*/_interopDefaultCompat(path);
26
25
  var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
27
- var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
28
26
  var globby__default = /*#__PURE__*/_interopDefaultCompat(globby);
29
27
  var chokidar__default = /*#__PURE__*/_interopDefaultCompat(chokidar);
30
28
  function resolveWatchTasks(ctx) {
@@ -148,7 +146,8 @@ function watchFiles(patterns) {
148
146
  }
149
147
  async function watchConfigFiles(options) {
150
148
  const {
151
- cwd
149
+ cwd,
150
+ logger
152
151
  } = options;
153
152
  const initialFiles = await globFiles([path__default.default.resolve(cwd, "package.json"), path__default.default.resolve(cwd, "package.config.cjs"), path__default.default.resolve(cwd, "package.config.js"), path__default.default.resolve(cwd, "package.config.ts")]);
154
153
  const fileEvent$ = watchFiles([path__default.default.resolve(cwd, "package.json"), path__default.default.resolve(cwd, "package.config.cjs"), path__default.default.resolve(cwd, "package.config.js"), path__default.default.resolve(cwd, "package.config.ts")]);
@@ -160,9 +159,9 @@ async function watchConfigFiles(options) {
160
159
  return files.filter(f => f !== fileEvent.file);
161
160
  }
162
161
  if (fileEvent.type === "change") {
163
- console.log("--------------------------------------------------------------------------------");
164
- console.log(chalk__default.default.blue("info "), path__default.default.relative(cwd, fileEvent.file), "changed");
165
- console.log("");
162
+ logger.log("--------------------------------------------------------------------------------");
163
+ logger.info(path__default.default.relative(cwd, fileEvent.file), "changed");
164
+ logger.log("");
166
165
  return files.slice(0);
167
166
  }
168
167
  return files;
@@ -174,25 +173,34 @@ async function watch(options) {
174
173
  strict = false,
175
174
  tsconfig: tsconfigOption
176
175
  } = options;
176
+ const logger = resolveBuildContext.createLogger();
177
177
  const configFiles$ = await watchConfigFiles({
178
- cwd
178
+ cwd,
179
+ logger
179
180
  });
180
181
  const ctx$ = configFiles$.pipe(rxjs.switchMap(async configFiles => {
182
+ var _ref2;
181
183
  const files = configFiles.map(f => path__default.default.relative(cwd, f));
182
184
  const packageJsonPath = files.find(f => f === "package.json");
183
185
  if (!packageJsonPath) {
184
186
  throw new Error("missing package.json");
185
187
  }
186
188
  const pkg = await resolveBuildContext.loadPkgWithReporting({
187
- cwd
189
+ cwd,
190
+ logger
188
191
  });
189
192
  const config = await resolveBuildContext.loadConfig({
190
193
  cwd
191
194
  });
195
+ const extMap = resolveBuildContext.getPkgExtMap({
196
+ legacyExports: (_ref2 = config == null ? void 0 : config.legacyExports) !== null && _ref2 !== void 0 ? _ref2 : false
197
+ });
192
198
  const tsconfig = tsconfigOption || (config == null ? void 0 : config.tsconfig) || "tsconfig.json";
193
199
  return resolveBuildContext.resolveBuildContext({
194
200
  config,
195
201
  cwd,
202
+ extMap,
203
+ logger,
196
204
  pkg,
197
205
  strict,
198
206
  tsconfig
@@ -221,4 +229,4 @@ async function watch(options) {
221
229
  });
222
230
  }
223
231
  exports.watch = watch;
224
- //# sourceMappingURL=watch-73fd460f.cjs.map
232
+ //# sourceMappingURL=watch-dbc7e975.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch-dbc7e975.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 {config, cwd, pkg, target} = ctx\n const tasks: WatchTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp} as PkgExport & {_path: string})\n )\n\n const dtsTask: DtsWatchTask = {\n type: 'watch:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupWatchTask> = {}\n\n function addRollupTaskEntry(format: PkgFormat, runtime: PkgRuntime, entry: RollupTaskEntry) {\n const buildId = `${format}:${runtime}`\n\n if (rollupTasks[buildId]) {\n rollupTasks[buildId].entries.push(entry)\n } else {\n rollupTasks[buildId] = {\n type: 'watch:js',\n buildId,\n entries: [entry],\n runtime,\n format,\n target: target[runtime],\n }\n }\n }\n\n // Parse `dts` tasks\n for (const exp of exports) {\n const importId = path.join(pkg.name, exp._path)\n\n if (exp.types) {\n dtsTask.entries.push({\n importId,\n exportPath: exp._path,\n sourcePath: exp.source,\n targetPath: exp.types,\n })\n }\n }\n\n // Parse rollup:commonjs:* tasks\n for (const exp of exports) {\n const output = exp.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:commonjs:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.require\n\n if (!output) continue\n\n addRollupTaskEntry('commonjs', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:* tasks\n for (const exp of exports) {\n const output = exp.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', ctx.runtime, {\n path: exp._path,\n source: exp.source,\n output,\n })\n }\n\n // Parse rollup:esm:browser tasks\n for (const exp of exports) {\n const output = exp.browser?.import\n\n if (!output) continue\n\n addRollupTaskEntry('esm', 'browser', {\n path: exp._path,\n source: exp.browser?.source || exp.source,\n output,\n })\n }\n\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n tasks.push(...Object.values(rollupTasks))\n\n // Write legacy exports files\n if (config?.legacyExports) {\n for (const exp of exports) {\n if (exp._exported && exp._path !== '.') {\n const relativeTargetPath = (exp.browser?.import || exp.import || '').replace(\n /\\.[^/.]+$/,\n ''\n )\n\n if (relativeTargetPath) {\n fs.writeFileSync(\n path.resolve(cwd, `${exp._path}.js`),\n [`// AUTO-GENERATED – DO NOT EDIT`, `export * from '${relativeTargetPath}'`, ``].join(\n '\\n'\n )\n )\n }\n }\n }\n }\n\n return tasks\n}\n","import globby from 'globby'\n\nexport function globFiles(patterns: string[]): Promise<string[]> {\n return globby(patterns)\n}\n","import chokidar from 'chokidar'\nimport {Observable} from 'rxjs'\n\nexport interface FileEvent {\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'\n file: string\n}\n\nexport function watchFiles(patterns: string[]): Observable<FileEvent> {\n return new Observable((observer) => {\n const watcher = chokidar.watch(patterns, {\n ignoreInitial: true,\n })\n\n function handleFileEvent(\n type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir',\n file: string\n ) {\n observer.next({type, file})\n }\n\n watcher.on('all', handleFileEvent)\n\n return () => {\n watcher.off('all', handleFileEvent)\n watcher.close()\n }\n })\n}\n","import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\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'\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {WatchTask, TaskHandler, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const 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","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","output","require","browser","import","length","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","default","resolve","globFiles","patterns","globby","watchFiles","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","file","next","on","off","close","watchConfigFiles","options","logger","initialFiles","fileEvent$","pipe","scan","files","fileEvent","concat","filter","f","log","info","relative","slice","startWith","distinctUntilChanged","strict","tsconfig","tsconfigOption","createLogger","configFiles$","ctx$","switchMap","configFiles","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,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var watch = require('./watch-73fd460f.cjs');
3
+ var watch = require('./watch-dbc7e975.cjs');
4
4
  var handleError = require('./handleError-4062ca45.cjs');
5
5
  require('path');
6
6
  require('rxjs');
7
- require('./resolveBuildContext-e938cee6.cjs');
7
+ require('./resolveBuildContext-2fe45294.cjs');
8
8
  require('esbuild-register/dist/node');
9
9
  require('pkg-up');
10
10
  require('fs/promises');
@@ -14,7 +14,7 @@ require('zod');
14
14
  require('typescript');
15
15
  require('browserslist');
16
16
  require('fs');
17
- require('./index-db00ad50.cjs');
17
+ require('./index-a0acce24.cjs');
18
18
  require('util');
19
19
  require('rimraf');
20
20
  require('@microsoft/api-extractor');
@@ -48,4 +48,4 @@ async function watchAction(options) {
48
48
  }
49
49
  }
50
50
  exports.watchAction = watchAction;
51
- //# sourceMappingURL=watchAction-ffba41fd.cjs.map
51
+ //# sourceMappingURL=watchAction-c5e16765.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"watchAction-ffba41fd.cjs","sources":["../../src/cli/watchAction.ts"],"sourcesContent":["import {watch} from '../node/watch'\nimport {handleError} from './handleError'\n\nexport async function watchAction(options: {strict?: boolean; tsconfig?: string}): Promise<void> {\n try {\n await watch({\n cwd: process.cwd(),\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["watchAction","options","watch","cwd","process","strict","tsconfig","err","handleError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,eAAsBA,YAAYC,OAA+D,EAAA;EAC3F,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,EAAA;MACjBE,QAAQJ,OAAQ,CAAAI,MAAA;MAChBC,UAAUL,OAAQ,CAAAK;IAAA,CACnB,CAAA;WACMC,GAAP,EAAA;IACAC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
1
+ {"version":3,"file":"watchAction-c5e16765.cjs","sources":["../../src/cli/watchAction.ts"],"sourcesContent":["import {watch} from '../node/watch'\nimport {handleError} from './handleError'\n\nexport async function watchAction(options: {strict?: boolean; tsconfig?: string}): Promise<void> {\n try {\n await watch({\n cwd: process.cwd(),\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["watchAction","options","watch","cwd","process","strict","tsconfig","err","handleError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,eAAsBA,YAAYC,OAA+D,EAAA;EAC3F,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,EAAA;MACjBE,QAAQJ,OAAQ,CAAAI,MAAA;MAChBC,UAAUL,OAAQ,CAAAK;IAAA,CACnB,CAAA;WACMC,GAAP,EAAA;IACAC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
package/dist/cli.cjs CHANGED
@@ -7,13 +7,13 @@ function _interopDefaultCompat(e) {
7
7
  };
8
8
  }
9
9
  var cac__default = /*#__PURE__*/_interopDefaultCompat(cac);
10
- var version = "2.0.0-beta.1";
10
+ var version = "2.0.0-beta.3";
11
11
  const cli = cac__default.default();
12
12
  cli.command("", "Check").option("--strict", "Strict mode").option("--tsconfig [tsconfig]", "[string] tsconfig.json").action(async options => {
13
13
  const {
14
14
  checkAction: statusAction
15
15
  } = await Promise.resolve().then(function () {
16
- return require('./_chunks/checkAction-8b9632b6.cjs');
16
+ return require('./_chunks/checkAction-f67b99f8.cjs');
17
17
  });
18
18
  return statusAction(options);
19
19
  });
@@ -21,7 +21,7 @@ cli.command("build", "Build package").option("--emitDeclarationOnly", "Emit d.ts
21
21
  const {
22
22
  buildAction
23
23
  } = await Promise.resolve().then(function () {
24
- return require('./_chunks/buildAction-7e75c8b7.cjs');
24
+ return require('./_chunks/buildAction-87a1a82b.cjs');
25
25
  });
26
26
  return buildAction(options);
27
27
  });
@@ -29,7 +29,7 @@ cli.command("watch", "Watch package").option("--strict", "Strict mode").option("
29
29
  const {
30
30
  watchAction
31
31
  } = await Promise.resolve().then(function () {
32
- return require('./_chunks/watchAction-ffba41fd.cjs');
32
+ return require('./_chunks/watchAction-c5e16765.cjs');
33
33
  });
34
34
  return watchAction(options);
35
35
  });
package/dist/index.cjs CHANGED
@@ -3,21 +3,24 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  });
6
- var resolveBuildContext = require('./_chunks/resolveBuildContext-e938cee6.cjs');
7
- var build = require('./_chunks/build-30149f1c.cjs');
8
- var index = require('./_chunks/index-db00ad50.cjs');
9
- var check = require('./_chunks/check-0f269395.cjs');
10
- var watch = require('./_chunks/watch-73fd460f.cjs');
6
+ var build = require('./_chunks/build-270096bd.cjs');
7
+ var check = require('./_chunks/check-5451f989.cjs');
8
+ var resolveBuildContext = require('./_chunks/resolveBuildContext-2fe45294.cjs');
9
+ var index = require('./_chunks/index-a0acce24.cjs');
10
+ var watch = require('./_chunks/watch-dbc7e975.cjs');
11
+ require('fs/promises');
12
+ require('pkg-up');
13
+ require('typescript');
14
+ require('fs');
11
15
  require('path');
16
+ require('chalk');
17
+ require('esbuild');
18
+ require('treeify');
19
+ require('pretty-bytes');
12
20
  require('esbuild-register/dist/node');
13
- require('pkg-up');
14
- require('fs/promises');
15
21
  require('find-config');
16
- require('chalk');
17
22
  require('zod');
18
- require('typescript');
19
23
  require('browserslist');
20
- require('fs');
21
24
  require('rxjs');
22
25
  require('util');
23
26
  require('rimraf');
@@ -37,17 +40,19 @@ require('@rollup/plugin-node-resolve');
37
40
  require('@rollup/plugin-replace');
38
41
  require('@rollup/plugin-terser');
39
42
  require('rollup-plugin-esbuild');
40
- require('esbuild');
41
- require('treeify');
42
- require('pretty-bytes');
43
43
  require('rxjs/operators');
44
44
  require('globby');
45
45
  require('chokidar');
46
46
  function defineConfig(configOptions) {
47
47
  return configOptions;
48
48
  }
49
+ exports.build = build.build;
50
+ exports.resolveBuildTasks = build.resolveBuildTasks;
51
+ exports.check = check.check;
49
52
  exports.DEFAULT_BROWSERSLIST_QUERY = resolveBuildContext.DEFAULT_BROWSERSLIST_QUERY;
50
- exports.MODULE_EXT = resolveBuildContext.MODULE_EXT;
53
+ exports.DEFAULT_PKG_EXT_MAP = resolveBuildContext.DEFAULT_PKG_EXT_MAP;
54
+ exports.createLogger = resolveBuildContext.createLogger;
55
+ exports.getPkgExtMap = resolveBuildContext.getPkgExtMap;
51
56
  exports.isRecord = resolveBuildContext.isRecord;
52
57
  exports.loadConfig = resolveBuildContext.loadConfig;
53
58
  exports.loadPkg = resolveBuildContext.loadPkg;
@@ -55,8 +60,6 @@ exports.loadPkgWithReporting = resolveBuildContext.loadPkgWithReporting;
55
60
  exports.loadTSConfig = resolveBuildContext.loadTSConfig;
56
61
  exports.parseExports = resolveBuildContext.parseExports;
57
62
  exports.resolveConfigProperty = resolveBuildContext.resolveConfigProperty;
58
- exports.build = build.build;
59
- exports.resolveBuildTasks = build.resolveBuildTasks;
60
63
  exports.buildTaskHandlers = index.buildTaskHandlers;
61
64
  exports.dtsTask = index.dtsTask;
62
65
  exports.dtsWatchTask = index.dtsWatchTask;
@@ -64,7 +67,6 @@ exports.getExtractMessagesConfig = index.getExtractMessagesConfig;
64
67
  exports.rollupTask = index.rollupTask;
65
68
  exports.rollupWatchTask = index.rollupWatchTask;
66
69
  exports.watchTaskHandlers = index.watchTaskHandlers;
67
- exports.check = check.check;
68
70
  exports.watch = watch.watch;
69
71
  exports.defineConfig = defineConfig;
70
72
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/node/core/config/defineConfig.ts"],"sourcesContent":["import {PkgConfigOptions} from './types'\n\n/** @public */\nexport function defineConfig(configOptions: PkgConfigOptions): PkgConfigOptions {\n return configOptions\n}\n"],"names":["defineConfig","configOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,SAASA,aAAaC,aAAmD,EAAA;EACvE,OAAAA,aAAA;AACT;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/node/core/config/defineConfig.ts"],"sourcesContent":["import {PkgConfigOptions} from './types'\n\n/** @public */\nexport function defineConfig(configOptions: PkgConfigOptions): PkgConfigOptions {\n return configOptions\n}\n"],"names":["defineConfig","configOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,SAASA,aAAaC,aAAmD,EAAA;EACvE,OAAAA,aAAA;AACT;;;;;;;;;;;;;;;;;;;;;;;"}