@sanity/pkg-utils 1.20.1 → 1.20.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 (35) hide show
  1. package/dist/_chunks/{build-bcb33ba5.js → build-983490bb.js} +16 -14
  2. package/dist/_chunks/build-983490bb.js.map +1 -0
  3. package/dist/_chunks/{buildAction-f240dab8.js → buildAction-240dc427.js} +6 -6
  4. package/dist/_chunks/{buildAction-f240dab8.js.map → buildAction-240dc427.js.map} +1 -1
  5. package/dist/_chunks/{check-1ea361f5.js → check-6c4e87a9.js} +24 -24
  6. package/dist/_chunks/check-6c4e87a9.js.map +1 -0
  7. package/dist/_chunks/{checkAction-16be1201.js → checkAction-abd2cc3d.js} +4 -4
  8. package/dist/_chunks/{checkAction-16be1201.js.map → checkAction-abd2cc3d.js.map} +1 -1
  9. package/dist/_chunks/handleError-4062ca45.js +17 -0
  10. package/dist/_chunks/{handleError-65cf3242.js.map → handleError-4062ca45.js.map} +1 -1
  11. package/dist/_chunks/{index-79fdb33f.js → index-60a8ccaf.js} +96 -78
  12. package/dist/_chunks/index-60a8ccaf.js.map +1 -0
  13. package/dist/_chunks/{resolveBuildContext-f2feec19.js → resolveBuildContext-904acf0f.js} +46 -45
  14. package/dist/_chunks/resolveBuildContext-904acf0f.js.map +1 -0
  15. package/dist/_chunks/{watch-02c85f8a.js → watch-580faef0.js} +21 -19
  16. package/dist/_chunks/{watch-02c85f8a.js.map → watch-580faef0.js.map} +1 -1
  17. package/dist/_chunks/{watchAction-9cb9681b.js → watchAction-aabcb0fb.js} +6 -6
  18. package/dist/_chunks/{watchAction-9cb9681b.js.map → watchAction-aabcb0fb.js.map} +1 -1
  19. package/dist/cli.js +8 -8
  20. package/dist/cli.js.map +1 -1
  21. package/dist/index.esm.js +38 -22
  22. package/dist/index.esm.js.map +1 -1
  23. package/dist/index.js +6 -6
  24. package/dist/index.js.map +1 -1
  25. package/package.json +39 -39
  26. package/src/global.ts +6 -0
  27. package/src/node/core/config/loadConfig.ts +7 -9
  28. package/src/node/spinner.ts +1 -1
  29. package/src/node/tasks/rollup/resolveRollupConfig.ts +5 -8
  30. package/src/node/tasks/rollup/rollupTask.ts +23 -4
  31. package/dist/_chunks/build-bcb33ba5.js.map +0 -1
  32. package/dist/_chunks/check-1ea361f5.js.map +0 -1
  33. package/dist/_chunks/handleError-65cf3242.js +0 -17
  34. package/dist/_chunks/index-79fdb33f.js.map +0 -1
  35. package/dist/_chunks/resolveBuildContext-f2feec19.js.map +0 -1
package/dist/index.js CHANGED
@@ -3,11 +3,11 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  });
6
- var resolveBuildContext = require('./_chunks/resolveBuildContext-f2feec19.js');
7
- var build = require('./_chunks/build-bcb33ba5.js');
8
- var index = require('./_chunks/index-79fdb33f.js');
9
- var check = require('./_chunks/check-1ea361f5.js');
10
- var watch = require('./_chunks/watch-02c85f8a.js');
6
+ var resolveBuildContext = require('./_chunks/resolveBuildContext-904acf0f.js');
7
+ var build = require('./_chunks/build-983490bb.js');
8
+ var index = require('./_chunks/index-60a8ccaf.js');
9
+ var check = require('./_chunks/check-6c4e87a9.js');
10
+ var watch = require('./_chunks/watch-580faef0.js');
11
11
  require('path');
12
12
  require('esbuild-register/dist/node');
13
13
  require('pkg-up');
@@ -35,8 +35,8 @@ require('@rollup/plugin-commonjs');
35
35
  require('@rollup/plugin-json');
36
36
  require('@rollup/plugin-node-resolve');
37
37
  require('@rollup/plugin-replace');
38
+ require('@rollup/plugin-terser');
38
39
  require('rollup-plugin-esbuild');
39
- require('rollup-plugin-terser');
40
40
  require('esbuild');
41
41
  require('treeify');
42
42
  require('pretty-bytes');
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,SAASA,YAAY,CAACC,aAAa,EAAE;EAC1C,OAAOA,aAAa;AACtB;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","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;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/pkg-utils",
3
- "version": "1.20.1",
3
+ "version": "1.20.3",
4
4
  "author": "Sanity.io <hello@sanity.io>",
5
5
  "license": "MIT",
6
6
  "description": "Simple utilities for modern npm packages.",
@@ -53,73 +53,73 @@
53
53
  "watch": "node -r esbuild-register scripts/watch"
54
54
  },
55
55
  "dependencies": {
56
- "@babel/core": "^7.19.0",
57
- "@babel/types": "^7.19.0",
58
- "@babel/plugin-proposal-object-rest-spread": "^7.18.9",
59
- "@babel/preset-env": "^7.19.0",
60
- "@microsoft/api-extractor": "^7.29.5",
61
- "@microsoft/tsdoc-config": "^0.16.1",
62
- "@rollup/plugin-alias": "^3.1.9",
63
- "@rollup/plugin-babel": "^5.3.1",
64
- "@rollup/plugin-commonjs": "^22.0.2",
65
- "@rollup/plugin-json": "^4.1.0",
66
- "@rollup/plugin-node-resolve": "^13.3.0",
67
- "@rollup/plugin-replace": "^4.0.0",
68
- "browserslist": "^4.21.3",
69
- "cac": "^6.7.12",
56
+ "@babel/core": "^7.20.5",
57
+ "@babel/plugin-proposal-object-rest-spread": "^7.20.2",
58
+ "@babel/preset-env": "^7.20.2",
59
+ "@babel/types": "^7.20.5",
60
+ "@microsoft/api-extractor": "^7.33.7",
61
+ "@microsoft/tsdoc-config": "^0.16.2",
62
+ "@rollup/plugin-alias": "^4.0.2",
63
+ "@rollup/plugin-babel": "^6.0.3",
64
+ "@rollup/plugin-commonjs": "^23.0.4",
65
+ "@rollup/plugin-json": "^5.0.2",
66
+ "@rollup/plugin-node-resolve": "^15.0.1",
67
+ "@rollup/plugin-replace": "^5.0.1",
68
+ "@rollup/plugin-terser": "^0.2.0",
69
+ "browserslist": "^4.21.4",
70
+ "cac": "^6.7.14",
70
71
  "chalk": "^4.1.2",
71
72
  "chokidar": "^3.5.3",
72
- "esbuild": "^0.15.5",
73
- "esbuild-register": "^3.3.3",
73
+ "esbuild": "^0.16.3",
74
+ "esbuild-register": "^3.4.1",
74
75
  "find-config": "^1.0.0",
75
76
  "globby": "^11.1.0",
76
- "jsonc-parser": "^3.1.0",
77
+ "jsonc-parser": "^3.2.0",
77
78
  "mkdirp": "^1.0.4",
78
79
  "pkg-up": "^3.1.0",
79
- "prettier": "^2.7.1",
80
+ "prettier": "^2.8.1",
80
81
  "pretty-bytes": "^5.6.0",
81
- "recast": "^0.21.5",
82
+ "recast": "^0.22.0",
82
83
  "rimraf": "^3.0.2",
83
- "rollup": "^2.78.1",
84
- "rollup-plugin-esbuild": "^4.9.3",
85
- "rollup-plugin-terser": "^7.0.2",
86
- "rxjs": "^7.5.6",
84
+ "rollup": "^3.7.1",
85
+ "rollup-plugin-esbuild": "^5.0.0",
86
+ "rxjs": "^7.6.0",
87
87
  "treeify": "^1.1.0",
88
88
  "uuid": "^9.0.0",
89
- "zod": "^3.18.0"
89
+ "zod": "^3.19.1"
90
90
  },
91
91
  "devDependencies": {
92
- "@commitlint/cli": "^17.0.3",
93
- "@commitlint/config-conventional": "^17.0.3",
92
+ "@commitlint/cli": "^17.3.0",
93
+ "@commitlint/config-conventional": "^17.3.0",
94
94
  "@sanity/pkg-utils": "workspace:*",
95
- "@sanity/semantic-release-preset": "^2.0.0",
96
- "@types/babel__core": "^7.1.19",
95
+ "@sanity/semantic-release-preset": "^2.0.3",
96
+ "@types/babel__core": "^7.1.20",
97
97
  "@types/cpx": "^1.5.2",
98
98
  "@types/find-config": "^1.0.1",
99
99
  "@types/mkdirp": "^1.0.2",
100
- "@types/node": "^18.7.13",
101
- "@types/prettier": "^2.7.0",
100
+ "@types/node": "^18.11.12",
101
+ "@types/prettier": "^2.7.1",
102
102
  "@types/rimraf": "^3.0.2",
103
103
  "@types/treeify": "^1.0.0",
104
104
  "@types/uuid": "^8.3.4",
105
- "@typescript-eslint/eslint-plugin": "^5.35.1",
106
- "@typescript-eslint/parser": "^5.35.1",
107
- "commitizen": "^4.2.5",
105
+ "@typescript-eslint/eslint-plugin": "^5.46.0",
106
+ "@typescript-eslint/parser": "^5.46.0",
107
+ "commitizen": "^4.2.6",
108
108
  "cpx": "^1.5.0",
109
109
  "cz-conventional-changelog": "^3.3.0",
110
- "eslint": "^8.23.0",
110
+ "eslint": "^8.29.0",
111
111
  "eslint-config-prettier": "^8.5.0",
112
112
  "eslint-plugin-import": "^2.26.0",
113
113
  "eslint-plugin-prettier": "^4.2.1",
114
- "husky": "^8.0.1",
114
+ "husky": "^8.0.2",
115
115
  "lint-staged": "^12.5.0",
116
116
  "outdent": "^0.8.0",
117
117
  "npm-run-all": "^4.1.5",
118
- "rollup-plugin-visualizer": "^5.8.2",
118
+ "rollup-plugin-visualizer": "^5.8.3",
119
119
  "semantic-release": "^19.0.5",
120
120
  "ts-node": "^10.9.1",
121
- "typescript": "^4.7.4",
122
- "vitest": "^0.22.1"
121
+ "typescript": "^4.9.4",
122
+ "vitest": "^0.25.6"
123
123
  },
124
124
  "peerDependencies": {
125
125
  "typescript": "^4.7"
package/src/global.ts ADDED
@@ -0,0 +1,6 @@
1
+ declare global {
2
+ // eslint-disable-next-line no-var
3
+ var __DEV__: boolean
4
+ }
5
+
6
+ export {}
@@ -25,16 +25,14 @@ export async function loadConfig(options: {cwd: string}): Promise<PkgConfigOptio
25
25
  return undefined
26
26
  }
27
27
 
28
- try {
29
- const {unregister} = register({extensions: ['.js', '.mjs', '.ts']})
28
+ const esbuildOptions = {extensions: ['.js', '.mjs', '.ts']}
30
29
 
31
- // eslint-disable-next-line @typescript-eslint/no-var-requires
32
- const mod = require(configFile)
30
+ const {unregister} = globalThis.__DEV__ ? {unregister: () => undefined} : register(esbuildOptions)
33
31
 
34
- unregister()
32
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
33
+ const mod = require(configFile)
35
34
 
36
- return mod?.default || mod || undefined
37
- } catch (_) {
38
- return undefined
39
- }
35
+ unregister()
36
+
37
+ return mod?.default || mod || undefined
40
38
  }
@@ -5,7 +5,7 @@ import chalk from 'chalk'
5
5
  export function createSpinner(msg: string): {complete: () => void; error: () => void} {
6
6
  const startTime = Date.now()
7
7
 
8
- console.log(`${chalk.yellow('run ')} ${msg}`)
8
+ console.log(` ${msg}`)
9
9
 
10
10
  return {
11
11
  complete: () => {
@@ -5,9 +5,9 @@ import commonjs from '@rollup/plugin-commonjs'
5
5
  import json from '@rollup/plugin-json'
6
6
  import {nodeResolve} from '@rollup/plugin-node-resolve'
7
7
  import replace from '@rollup/plugin-replace'
8
+ import terser from '@rollup/plugin-terser'
8
9
  import {InputOptions, OutputOptions, Plugin} from 'rollup'
9
10
  import esbuild from 'rollup-plugin-esbuild'
10
- import {terser} from 'rollup-plugin-terser'
11
11
  import {
12
12
  BuildContext,
13
13
  DEFAULT_BROWSERSLIST_QUERY,
@@ -179,12 +179,6 @@ export function resolveRollupConfig(
179
179
  return {...acc, [entry.name]: entry.source}
180
180
  }, {}),
181
181
 
182
- onwarn(warning, rollupWarn) {
183
- if (!warning.code || !['CIRCULAR_DEPENDENCY'].includes(warning.code)) {
184
- rollupWarn(warning)
185
- }
186
- },
187
-
188
182
  plugins,
189
183
 
190
184
  treeshake: {
@@ -193,10 +187,13 @@ export function resolveRollupConfig(
193
187
  },
194
188
  outputOptions: {
195
189
  chunkFileNames: () => `_chunks/[name]-[hash]${outputExt}`,
190
+ compact: minify,
196
191
  dir: outDir,
197
192
  entryFileNames: () => (outputExt === '.esm.js' ? `[name].js` : `[name]${outputExt}`),
193
+ esModule: true,
198
194
  format,
199
- exports: 'auto',
195
+ interop: 'compat',
196
+ minifyInternalExports: minify,
200
197
  sourcemap: config?.sourcemap ?? true,
201
198
  },
202
199
  }
@@ -40,18 +40,37 @@ async function execPromise(ctx: BuildContext, task: RollupTask) {
40
40
  const {files, distPath} = ctx
41
41
  const outDir = path.relative(ctx.cwd, distPath)
42
42
 
43
+ const _console = {
44
+ log: console.log,
45
+ warn: console.warn,
46
+ error: console.error,
47
+ }
48
+
43
49
  const {inputOptions, outputOptions} = resolveRollupConfig(ctx, task)
44
50
 
45
- // Create bundle
46
- const bundle = await rollup(inputOptions)
51
+ console.log = () => undefined
52
+ console.warn = () => undefined
53
+ console.error = () => undefined
47
54
 
48
- // an array of file names this bundle depends on
49
- // console.log(bundle.watchFiles)
55
+ // Create bundle
56
+ const bundle = await rollup({
57
+ ...inputOptions,
58
+ onwarn(warning) {
59
+ if (!warning.code || !['CIRCULAR_DEPENDENCY'].includes(warning.code)) {
60
+ // rollupWarn(warning)
61
+ _console.warn.bind(console)(chalk.yellow('warn '), warning.message)
62
+ }
63
+ },
64
+ })
50
65
 
51
66
  // generate output specific code in-memory
52
67
  // you can call this function multiple times on the same bundle object
53
68
  const {output} = await bundle.generate(outputOptions)
54
69
 
70
+ console.log = _console.log
71
+ console.warn = _console.warn
72
+ console.error = _console.error
73
+
55
74
  for (const chunkOrAsset of output) {
56
75
  if (chunkOrAsset.type === 'asset') {
57
76
  files.push({
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-bcb33ba5.js","sources":["../../src/node/resolveBuildTasks.ts","../../src/node/spinner.ts","../../src/node/build.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport {PkgExport, PkgFormat, PkgRuntime, BuildContext} from './core'\nimport {BuildTask, DtsTask, RollupTask, RollupTaskEntry} from './tasks'\n\n/** @internal */\nexport function resolveBuildTasks(ctx: BuildContext): BuildTask[] {\n const {config, cwd, pkg, target} = ctx\n\n const bundles = config?.bundles || []\n\n const tasks: BuildTask[] = []\n\n const exports = Object.entries(ctx.exports || {}).map(\n ([_path, exp]) => ({_path, ...exp} as PkgExport & {_path: string})\n )\n\n const dtsTask: DtsTask = {\n type: 'build:dts',\n entries: [],\n }\n\n const rollupTasks: Record<string, RollupTask> = {}\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: 'build: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 // Add dts task\n if (dtsTask.entries.length) {\n tasks.push(dtsTask)\n }\n\n if (!ctx.emitDeclarationOnly) {\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: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: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: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 for (const bundle of bundles) {\n if (bundle.require) {\n addRollupTaskEntry('commonjs', bundle.runtime || ctx.runtime, {\n path: '__bundle__',\n source: bundle.source,\n output: bundle.require,\n })\n }\n\n if (bundle.import) {\n addRollupTaskEntry('commonjs', bundle.runtime || ctx.runtime, {\n path: '__bundle__',\n source: bundle.source,\n output: bundle.import,\n })\n }\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\n return tasks\n}\n","/* eslint-disable no-console */\n\nimport chalk from 'chalk'\n\nexport function createSpinner(msg: string): {complete: () => void; error: () => void} {\n const startTime = Date.now()\n\n console.log(`${chalk.yellow('run ')} ${msg}`)\n\n return {\n complete: () => {\n console.log(`${chalk.green('ok ')} ${chalk.gray(`${Date.now() - startTime}ms`)}`)\n },\n error: () => {\n console.log(`${chalk.red(`failed`)} ${chalk.gray(`${Date.now() - startTime}ms`)}`)\n },\n }\n}\n","import {loadConfig, loadPkgWithReporting} from './core'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveBuildTasks} from './resolveBuildTasks'\nimport {createSpinner} from './spinner'\nimport {BuildTask, TaskHandler, buildTaskHandlers} from './tasks'\n\n/**\n * Build the distribution files of a npm package.\n *\n * @example\n * ```ts\n * import {build} from '@sanity/pkg-utils'\n *\n * build({\n * cwd: process.cwd(),\n * tsconfig: 'tsconfig.dist.json,\n * }).then(() => {\n * console.log('successfully built')\n * }).catch((err) => {\n * console.log(`build error: ${err.message}`)\n * })\n * ```\n *\n * @public\n */\nexport async function build(options: {\n cwd: string\n emitDeclarationOnly?: boolean\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, emitDeclarationOnly, strict = false, tsconfig: tsconfigOption} = options\n\n const pkg = await loadPkgWithReporting({cwd})\n const config = await loadConfig({cwd})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n const ctx = await resolveBuildContext({config, cwd, emitDeclarationOnly, pkg, strict, tsconfig})\n\n const buildTasks = resolveBuildTasks(ctx)\n\n for (const task of buildTasks) {\n const handler = buildTaskHandlers[task.type] as TaskHandler<BuildTask>\n const taskName = handler.name(ctx, task)\n\n const spinner = createSpinner(taskName)\n\n try {\n const result = await handler.exec(ctx, task).toPromise()\n\n spinner.complete()\n ctx.logger.log()\n\n handler.complete(ctx, task, result)\n } catch (err) {\n spinner.error()\n\n if (err instanceof Error) {\n const RE_CWD = new RegExp(`${cwd}`, 'g')\n\n ctx.logger.error(err.message.replace(RE_CWD, '.'))\n ctx.logger.log()\n }\n\n handler.error(ctx, task, err)\n\n process.exit(1)\n }\n }\n}\n"],"names":["resolveBuildTasks","ctx","_a","_b","_c","_d","_e","config","cwd","pkg","target","bundles","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","length","emitDeclarationOnly","output","require","import","browser","bundle","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","resolve","createSpinner","msg","startTime","Date","now","console","log","chalk","yellow","complete","green","gray","error","red","build","options","strict","tsconfig","tsconfigOption","loadPkgWithReporting","loadConfig","resolveBuildContext","buildTasks","task","handler","buildTaskHandlers","taskName","spinner","result","exec","toPromise","logger","err","Error","RE_CWD","RegExp","message","process","exit"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"check-1ea361f5.js","sources":["../../src/node/getFilesize.ts","../../src/node/printPackageTree.ts","../../src/node/check.ts"],"sourcesContent":["import {statSync} from 'fs'\nimport prettyBytes from 'pretty-bytes'\n\nexport function getFilesize(file: string): string {\n const stats = statSync(file)\n\n return prettyBytes(stats.size)\n}\n","import fs from 'fs'\nimport path from 'path'\nimport chalk from 'chalk'\nimport treeify from 'treeify'\nimport {PkgExport, BuildContext} from './core'\nimport {getFilesize} from './getFilesize'\n\nexport function fileExists(file: string): boolean {\n try {\n fs.accessSync(file)\n\n return true\n } catch (_) {\n return false\n }\n}\n\nfunction getFileInfo(cwd: string, filePath: string) {\n const p = path.resolve(cwd, filePath)\n const exists = fileExists(p)\n const size = exists ? getFilesize(p) : undefined\n\n return {exists, size}\n}\n\nexport function printPackageTree(ctx: BuildContext): void {\n const {cwd, exports, logger, pkg} = ctx\n\n if (!exports) return\n\n logger.log(`${chalk.blue(pkg.name)}@${chalk.green(pkg.version)}`)\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const tree: Record<string, any> = {}\n\n if (pkg.bin) {\n tree.bin = pkg.bin\n }\n\n function fileInfo(file: string) {\n const info = getFileInfo(cwd, file)\n\n if (!info.size) {\n return `${chalk.gray(file)} ${chalk.red('does not exist')}`\n }\n\n return `${file} ${chalk.gray(info.size)}`\n }\n\n tree.exports = Object.fromEntries(\n Object.entries(exports)\n .filter(([, entry]) => entry._exported)\n .map(([exportPath, entry]) => {\n const exp: Omit<PkgExport, '_exported'> = {\n source: entry.source,\n types: undefined,\n browser: undefined,\n node: undefined,\n import: undefined,\n require: undefined,\n default: entry.default,\n }\n\n if (entry.types) {\n exp.types = fileInfo(entry.types)\n } else {\n delete exp.types\n }\n\n if (entry.browser) {\n exp.browser = {source: entry.browser.source}\n\n if (entry.browser.import) exp.browser.import = fileInfo(entry.browser.import)\n if (entry.browser.require) exp.browser.require = fileInfo(entry.browser.require)\n } else {\n delete exp.browser\n }\n\n if (entry.node) {\n exp.node = {source: entry.node.source}\n\n if (entry.node.import) exp.node.import = fileInfo(entry.node.import)\n if (entry.node.require) exp.node.require = fileInfo(entry.node.require)\n } else {\n delete exp.node\n }\n\n if (entry.import) {\n exp.import = fileInfo(entry.import)\n } else {\n delete exp.import\n }\n\n if (entry.require) {\n exp.require = fileInfo(entry.require)\n } else {\n delete exp.require\n }\n\n exp.default = fileInfo(entry.default)\n\n return [chalk.green(path.join(pkg.name, exportPath)), exp]\n })\n )\n\n logger.log(treeify.asTree(tree, true, true))\n}\n","import path from 'path'\nimport esbuild, {BuildFailure} from 'esbuild'\nimport {loadConfig, loadPkgWithReporting} from './core'\nimport {fileExists, printPackageTree} from './printPackageTree'\nimport {resolveBuildContext} from './resolveBuildContext'\n\n/** @public */\nexport async function check(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const pkg = await loadPkgWithReporting({cwd})\n const config = await loadConfig({cwd})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n const ctx = await resolveBuildContext({config, cwd, pkg, strict, tsconfig})\n const {logger} = ctx\n\n printPackageTree(ctx)\n\n if (strict) {\n const missingFiles: string[] = []\n\n // Check if there are missing files\n for (const [, exp] of Object.entries(ctx.exports || {})) {\n if (exp.source && !fileExists(path.resolve(cwd, exp.source))) {\n missingFiles.push(exp.source)\n }\n\n if (exp.require && !fileExists(path.resolve(cwd, exp.require))) {\n missingFiles.push(exp.require)\n }\n\n if (exp.import && !fileExists(path.resolve(cwd, exp.import))) {\n missingFiles.push(exp.import)\n }\n\n if (exp.types && !fileExists(path.resolve(cwd, exp.types))) {\n missingFiles.push(exp.types)\n }\n }\n\n if (missingFiles.length) {\n logger.error('missing files')\n process.exit(1)\n }\n\n // Check if the files are resolved\n const _paths: {require: string[]; import: string[]} = {\n require: [],\n import: [],\n }\n\n for (const exp of Object.values(ctx.exports || {})) {\n if (!exp._exported) continue\n if (exp.require) _paths.require.push(exp.require)\n if (exp.import) _paths.import.push(exp.import)\n }\n\n const external = Object.keys(pkg.dependencies || {}).concat(\n Object.keys(pkg.devDependencies || {})\n )\n\n if (_paths.import.length) {\n const code = _paths.import.map((id) => `import('${id}')`).join('\\n')\n\n try {\n const esbuildResult = await esbuild.build({\n external,\n stdin: {\n contents: code,\n loader: 'js',\n resolveDir: cwd,\n },\n format: 'esm',\n bundle: true,\n logLevel: 'silent',\n // otherwise output maps to stdout as we're using stdin\n outfile: '/dev/null',\n platform: 'node',\n })\n\n if (esbuildResult.warnings.length > 0) {\n logger.warn(...esbuildResult.warnings)\n }\n } catch (err) {\n const {errors} = err as BuildFailure\n\n for (const _err of errors) {\n if (_err.location) {\n logger.error(_err.detail || _err.text)\n logger.error(`${_err.location.line} | ${_err.location.lineText}`)\n logger.error(\n 'in',\n `./${_err.location.file}:${_err.location.line}:${_err.location.column}`\n )\n } else {\n logger.error(_err.detail || _err.text)\n }\n\n logger.log()\n }\n\n process.exit(1)\n }\n }\n\n if (_paths.require.length) {\n const code = _paths.require.map((id) => `require('${id}')`).join('\\n')\n\n const esbuildResult = await esbuild.build({\n external,\n stdin: {\n contents: code,\n loader: 'js',\n resolveDir: cwd,\n },\n format: 'cjs',\n bundle: true,\n // otherwise output maps to stdout as we're using stdin\n outfile: '/dev/null',\n platform: 'node',\n })\n\n if (esbuildResult.errors.length > 0) {\n // throw new Error(esbuildResult.errors.join(', '))\n logger.error(esbuildResult.errors.join(', '))\n process.exit(1)\n }\n\n if (esbuildResult.warnings.length > 0) {\n logger.warn(...esbuildResult.warnings)\n }\n }\n }\n}\n"],"names":["getFilesize","file","stats","statSync","prettyBytes","size","fileExists","fs","accessSync","_","getFileInfo","cwd","filePath","p","path","resolve","exists","printPackageTree","ctx","exports","logger","pkg","log","chalk","blue","name","green","version","tree","bin","fileInfo","info","gray","red","Object","fromEntries","entries","filter","entry","_exported","map","exportPath","exp","source","types","browser","node","import","require","default","join","treeify","asTree","check","options","strict","tsconfig","tsconfigOption","loadPkgWithReporting","config","loadConfig","resolveBuildContext","missingFiles","push","length","error","process","exit","_paths","values","external","keys","dependencies","concat","devDependencies","code","id","esbuildResult","esbuild","build","stdin","contents","loader","resolveDir","format","bundle","logLevel","outfile","platform","warnings","warn","err","errors","_err","location","detail","text","line","lineText","column"],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- var chalk = require('chalk');
4
- function _interopDefaultLegacy(e) {
5
- return e && typeof e === 'object' && 'default' in e ? e : {
6
- 'default': e
7
- };
8
- }
9
- var chalk__default = /*#__PURE__*/_interopDefaultLegacy(chalk);
10
- function handleError(err) {
11
- if (err instanceof Error) {
12
- console.error(chalk__default["default"].red("error"), err.message);
13
- }
14
- process.exit(1);
15
- }
16
- exports.handleError = handleError;
17
- //# sourceMappingURL=handleError-65cf3242.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-79fdb33f.js","sources":["../../src/node/printExtractMessages.ts","../../src/node/tasks/dts/buildTypes.ts","../../src/node/tasks/dts/DtsError.ts","../../src/node/tasks/dts/createApiExtractorConfig.ts","../../src/node/tasks/dts/createTSDocConfig.ts","../../src/node/tasks/dts/extractModuleBlocks.ts","../../src/node/tasks/dts/getExtractMessagesConfig.ts","../../src/node/tasks/dts/extractTypes.ts","../../src/node/tasks/dts/doExtract.ts","../../src/node/tasks/dts/dtsTask.ts","../../src/node/tasks/dts/dtsWatchTask.ts","../../src/node/tasks/rollup/resolveRollupConfig.ts","../../src/node/tasks/rollup/rollupTask.ts","../../src/node/tasks/rollup/rollupWatchTask.ts","../../src/node/tasks/index.ts"],"sourcesContent":["import path from 'path'\nimport {ExtractorMessage} from '@microsoft/api-extractor'\nimport chalk from 'chalk'\nimport {BuildContext} from './core'\n\nexport function printExtractMessages(ctx: BuildContext, messages: ExtractorMessage[]): void {\n const {cwd, logger} = ctx\n\n const warnings = messages.filter((msg) => msg.logLevel === 'warning')\n\n if (warnings.length) {\n logger.log()\n }\n\n for (const msg of warnings) {\n const sourceFilePath = msg.sourceFilePath && path.relative(cwd, msg.sourceFilePath)\n\n if (msg.messageId === 'TS6307') {\n // Ignore this warning:\n // > TS6307: <filename> is not in project file list.\n // > Projects must list all files or use an 'include' pattern.\n continue\n }\n\n logger.log(\n [\n `${chalk.cyan(sourceFilePath || '?')}`,\n `:${chalk.yellow(msg.sourceFileLine)}:${chalk.yellow(msg.sourceFileColumn)}`,\n ` - ${chalk.yellow('warning')} ${chalk.gray(msg.messageId)}\\n`,\n msg.text,\n '\\n',\n ].join('')\n )\n }\n\n const errors: ExtractorMessage[] = messages.filter((msg) => msg.logLevel === 'error')\n\n if (!warnings.length && errors.length) {\n logger.log('')\n }\n\n for (const msg of errors) {\n const sourceFilePath = msg.sourceFilePath && path.relative(cwd, msg.sourceFilePath)\n\n logger.log(\n [\n `${chalk.cyan(sourceFilePath || '?')}`,\n `:${chalk.yellow(msg.sourceFileLine)}:${chalk.yellow(msg.sourceFileColumn)}`,\n ` - ${chalk.red('error')} ${chalk.gray(msg.messageId)}\\n`,\n msg.text,\n '\\n',\n ].join('')\n )\n }\n\n if (errors.length) {\n process.exit(1)\n }\n}\n","/* eslint-disable no-console */\n\nimport ts from 'typescript'\n\nexport const formatHost: ts.FormatDiagnosticsHost = {\n getCurrentDirectory: () => ts.sys.getCurrentDirectory(),\n getNewLine: () => ts.sys.newLine,\n getCanonicalFileName: ts.sys.useCaseSensitiveFileNames ? (f) => f : (f) => f.toLowerCase(),\n}\n\n/** @internal */\nexport async function buildTypes(options: {\n cwd: string\n outDir: string\n tsconfig: ts.ParsedCommandLine\n strict: boolean\n}): Promise<void> {\n const {outDir, tsconfig, strict = false} = options\n\n const compilerOptions: ts.CompilerOptions = {\n ...tsconfig.options,\n declaration: true,\n declarationDir: outDir,\n emitDeclarationOnly: true,\n noEmit: false,\n outDir,\n }\n\n const program = ts.createProgram(tsconfig.fileNames, compilerOptions)\n\n const emitResult = program.emit()\n\n const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics)\n\n // TODO: improve logging\n allDiagnostics.forEach((diagnostic) => {\n if (diagnostic.file && diagnostic.start) {\n const {line, character} = ts.getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start)\n const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n')\n\n console.log(`${diagnostic.file.fileName} ${line + 1}:${character + 1}\\n${message}`)\n } else {\n console.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\\n'))\n }\n })\n\n if (emitResult.emitSkipped) {\n const errors = allDiagnostics.filter((diag) => diag.category === ts.DiagnosticCategory.Error)\n\n if (errors.length) {\n console.error(ts.formatDiagnostics(errors, formatHost))\n\n if (strict) {\n throw new Error('failed to compile TypeScript definitions')\n }\n }\n }\n}\n","import {ExtractorMessage} from '@microsoft/api-extractor'\n\n/** @internal */\nexport class DtsError extends Error {\n messages: ExtractorMessage[]\n\n constructor(message: string, messages: ExtractorMessage[]) {\n super(message)\n this.messages = messages\n }\n}\n","import path from 'path'\nimport {IConfigFile, IExtractorMessagesConfig} from '@microsoft/api-extractor'\n\nexport function createApiExtractorConfig(options: {\n distPath: string\n exportPath: string\n filePath: string\n messages: IExtractorMessagesConfig\n projectFolder: string\n mainEntryPointFilePath: string\n tsconfigPath: string\n}): IConfigFile {\n const {\n distPath,\n exportPath,\n filePath,\n messages,\n projectFolder,\n mainEntryPointFilePath,\n tsconfigPath,\n } = options\n\n return {\n apiReport: {\n enabled: false,\n reportFileName: '<unscopedPackageName>.api.md',\n },\n // bundledPackages: [],\n compiler: {\n tsconfigFilePath: tsconfigPath,\n },\n docModel: {\n enabled: false,\n apiJsonFilePath: path.resolve(distPath, `${exportPath}.api.json`),\n },\n dtsRollup: {\n enabled: true,\n untrimmedFilePath: path.resolve(distPath, filePath),\n // betaTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-beta.d.ts')),\n // publicTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-public.d.ts')),\n },\n tsdocMetadata: {\n enabled: false,\n },\n messages,\n mainEntryPointFilePath,\n projectFolder,\n }\n}\n","import {readFile} from 'fs/promises'\nimport {TSDocConfigFile} from '@microsoft/tsdoc-config'\nimport {parse} from 'jsonc-parser'\n\n/** @public */\nexport interface TSDocCustomTag {\n name: string\n syntaxKind: 'block' | 'modifier'\n allowMultiple?: boolean\n}\n\n/** @internal */\nexport async function createTSDocConfig(opts: {\n customTags: TSDocCustomTag[]\n}): Promise<TSDocConfigFile | undefined> {\n const {customTags} = opts\n\n if (customTags.length === 0) {\n return undefined\n }\n\n const tsDocBaseBuf = await readFile(\n require.resolve('@microsoft/api-extractor/extends/tsdoc-base.json')\n )\n\n // Include the definitions that are required for API Extractor\n // extends: ['@microsoft/api-extractor/extends/tsdoc-base.json'],\n const tsDocBaseConfig = parse(tsDocBaseBuf.toString())\n\n // Define custom tags and specify how they should be parsed\n const tagDefinitions = (tsDocBaseConfig.tagDefinitions || []).concat(\n customTags.map((t) => ({\n tagName: `@${t.name}`,\n syntaxKind: t.syntaxKind,\n allowMultiple: t.allowMultiple,\n }))\n )\n\n // Indicate that custom tags are supported by your tooling.\n // (Without this, warnings may be reported saying that a tag is unsupported.)\n const supportForTags = {...tsDocBaseConfig.supportForTags}\n\n for (const customTag of customTags) {\n supportForTags[`@${customTag.name}`] = true\n }\n\n return TSDocConfigFile.loadFromObject({\n ...tsDocBaseConfig,\n noStandardTags: false,\n tagDefinitions,\n supportForTags,\n })\n}\n","import type {File} from '@babel/types'\nimport {ExtractorResult} from '@microsoft/api-extractor'\nimport {parse, print} from 'recast'\nimport typeScriptParser from 'recast/parsers/typescript'\nimport {Program} from 'typescript'\n\n/**\n * A workaround to find all module blocks in extract TS files.\n * @internal\n * */\nexport async function extractModuleBlocksFromTypes({\n tsOutDir,\n extractResult,\n}: {\n tsOutDir: string\n extractResult: ExtractorResult\n}): Promise<string[]> {\n const program = extractResult.compilerState.program as Program\n const moduleBlocks: string[] = []\n\n // all program files, including node_modules\n const allProgramFiles = [...program.getSourceFiles()]\n\n // just our compiled files used in the program\n const sourceFiles = allProgramFiles.filter((sourceFile) => sourceFile.fileName.includes(tsOutDir))\n\n for (const sourceFile of sourceFiles) {\n if (sourceFile.text.includes('declare module')) {\n moduleBlocks.push(...extractModuleBlocks(sourceFile.text))\n }\n }\n\n return moduleBlocks\n}\n\n/** @internal */\nexport function extractModuleBlocks(fileContent: string): string[] {\n const ast = parse(fileContent, {\n parser: typeScriptParser,\n }) as File\n\n return ast.program.body\n .filter((node) => node.type === 'TSModuleDeclaration')\n .map((node) => print(node).code)\n}\n","import {ExtractorLogLevel, IExtractorMessagesConfig} from '@microsoft/api-extractor'\nimport {PkgRuleLevel, PkgConfigOptions} from '../../core'\n\nconst LOG_LEVELS: Record<PkgRuleLevel, ExtractorLogLevel> = {\n error: 'error' as ExtractorLogLevel.Error,\n info: 'info' as ExtractorLogLevel.Info,\n off: 'none' as ExtractorLogLevel.None,\n warn: 'warning' as ExtractorLogLevel.Warning,\n}\n\n/** @internal */\nexport function getExtractMessagesConfig(options: {\n rules: NonNullable<PkgConfigOptions['extract']>['rules']\n}): IExtractorMessagesConfig {\n const {rules} = options\n\n function ruleToLogLevel(\n key: keyof NonNullable<NonNullable<PkgConfigOptions['extract']>['rules']>,\n defaultLevel?: ExtractorLogLevel\n ) {\n const r = rules?.[key]\n\n return (r ? LOG_LEVELS[r] : defaultLevel || 'warning') as ExtractorLogLevel\n }\n\n return {\n compilerMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n },\n },\n\n extractorMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n\n 'ae-forgotten-export': {\n logLevel: ruleToLogLevel('ae-forgotten-export', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-incompatible-release-tags': {\n logLevel: ruleToLogLevel('ae-incompatible-release-tags', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-internal-missing-underscore': {\n logLevel: ruleToLogLevel('ae-internal-missing-underscore'),\n addToApiReportFile: false,\n },\n\n 'ae-missing-release-tag': {\n logLevel: ruleToLogLevel('ae-missing-release-tag', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'ae-wrong-input-file-type': {\n logLevel: 'none' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n },\n\n tsdocMessageReporting: {\n default: {\n logLevel: 'warning' as ExtractorLogLevel,\n addToApiReportFile: false,\n },\n\n 'tsdoc-link-tag-unescaped-text': {\n logLevel: ruleToLogLevel('tsdoc-link-tag-unescaped-text', 'warning' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'tsdoc-undefined-tag': {\n logLevel: ruleToLogLevel('tsdoc-undefined-tag', 'error' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n\n 'tsdoc-unsupported-tag': {\n logLevel: ruleToLogLevel('tsdoc-unsupported-tag', 'none' as ExtractorLogLevel),\n addToApiReportFile: false,\n },\n },\n }\n}\n","import fs from 'fs/promises'\nimport path from 'path'\nimport {\n Extractor,\n ExtractorConfig,\n ExtractorMessage,\n ExtractorResult,\n} from '@microsoft/api-extractor'\nimport mkdirp from 'mkdirp'\nimport prettier from 'prettier'\nimport {PkgConfigOptions, BuildFile} from '../../core'\nimport {createApiExtractorConfig} from './createApiExtractorConfig'\nimport {createTSDocConfig} from './createTSDocConfig'\nimport {extractModuleBlocksFromTypes} from './extractModuleBlocks'\nimport {getExtractMessagesConfig} from './getExtractMessagesConfig'\n\nexport async function extractTypes(options: {\n customTags: NonNullable<PkgConfigOptions['extract']>['customTags']\n cwd: string\n distPath: string\n exportPath: string\n filePath: string\n files: BuildFile[]\n projectPath: string\n rules?: NonNullable<PkgConfigOptions['extract']>['rules']\n sourceTypesPath: string\n tmpPath: string\n tsconfigPath: string\n}): Promise<{extractorResult: ExtractorResult; messages: ExtractorMessage[]}> {\n const {\n customTags,\n distPath,\n exportPath,\n files,\n filePath,\n projectPath,\n rules,\n sourceTypesPath,\n tmpPath,\n tsconfigPath,\n } = options\n\n const tsdocConfigFile = await createTSDocConfig({\n customTags: customTags || [],\n })\n\n const extractorConfig: ExtractorConfig = ExtractorConfig.prepare({\n configObject: createApiExtractorConfig({\n distPath,\n exportPath,\n filePath,\n messages: getExtractMessagesConfig({rules}),\n projectFolder: projectPath,\n mainEntryPointFilePath: sourceTypesPath,\n tsconfigPath,\n }),\n configObjectFullPath: undefined,\n tsdocConfigFile,\n packageJsonFullPath: path.resolve(projectPath, 'package.json'),\n })\n\n const messages: ExtractorMessage[] = []\n\n // Invoke API Extractor\n const extractorResult = Extractor.invoke(extractorConfig, {\n // Equivalent to the \"--local\" command-line parameter\n localBuild: true,\n // Equivalent to the \"--verbose\" command-line parameter\n showVerboseMessages: true,\n // handle messages\n messageCallback(message: ExtractorMessage) {\n messages.push(message)\n message.handled = true\n },\n })\n\n const typesPath = path.resolve(distPath, filePath)\n const typesBuf = await fs.readFile(typesPath)\n const prettierConfig = await prettier.resolveConfig(typesPath)\n\n await mkdirp(path.dirname(typesPath))\n\n const moduleBlocks = await extractModuleBlocksFromTypes({\n extractResult: extractorResult,\n tsOutDir: tmpPath,\n })\n\n const code = [typesBuf.toString(), ...moduleBlocks].join('\\n\\n')\n\n await fs.writeFile(\n typesPath,\n prettier.format(code, {\n ...prettierConfig,\n filepath: typesPath,\n })\n )\n\n // Add to `files` in context\n files.push({\n type: 'types',\n path: typesPath,\n })\n\n return {extractorResult, messages}\n}\n","import path from 'path'\nimport {promisify} from 'util'\nimport {ExtractorMessage} from '@microsoft/api-extractor'\nimport rimrafCallback from 'rimraf'\nimport {BuildContext} from '../../core'\nimport {buildTypes} from './buildTypes'\nimport {DtsError} from './DtsError'\nimport {extractTypes} from './extractTypes'\nimport {DtsResult, DtsTask, DtsWatchTask} from './types'\n\nconst rimraf = promisify(rimrafCallback)\n\n/**\n * - Build type definitions to a temporary directory using TypeScript compiler.\n * - Create a type definition bundle for each export entry.\n * - When done, remove the temporary directory.\n */\nexport async function doExtract(\n ctx: BuildContext,\n task: DtsTask | DtsWatchTask\n): Promise<DtsResult> {\n const {config, cwd, files, strict, ts} = ctx\n\n if (!ts.config || !ts.configPath) {\n return {type: 'dts', messages: [], results: []}\n }\n\n const {outDir, rootDir = cwd} = ts.config.options\n\n if (!outDir) {\n throw new Error('tsconfig.json is missing `compilerOptions.outDir`')\n }\n\n const tmpPath = path.resolve(outDir, '__tmp__')\n\n await buildTypes({cwd, outDir: tmpPath, strict, tsconfig: ts.config})\n const messages: ExtractorMessage[] = []\n\n const results: {sourcePath: string; filePath: string}[] = []\n\n for (const entry of task.entries) {\n const exportPath = entry.exportPath === '.' ? './index' : entry.exportPath\n\n const sourceTypesPath = path.resolve(\n tmpPath,\n path.relative(rootDir, path.resolve(cwd, entry.sourcePath)).replace(/\\.ts$/, '.d.ts')\n )\n\n const targetPath = path.resolve(cwd, entry.targetPath)\n const filePath = path.relative(outDir, targetPath)\n const result = await extractTypes({\n customTags: config?.extract?.customTags,\n cwd,\n distPath: outDir,\n exportPath,\n files,\n filePath: filePath,\n projectPath: cwd,\n rules: config?.extract?.rules,\n sourceTypesPath: sourceTypesPath,\n tmpPath,\n tsconfigPath: path.resolve(cwd, ts.configPath || 'tsconfig.json'),\n })\n\n messages.push(...result.messages)\n\n if (result.messages.some((msg) => msg.logLevel === 'error')) {\n await rimraf(tmpPath)\n\n throw new DtsError('encountered errors when extracting types', result.messages)\n }\n\n results.push({sourcePath: path.resolve(cwd, entry.sourcePath), filePath: targetPath})\n }\n\n await rimraf(tmpPath)\n\n return {type: 'dts', messages, results}\n}\n","import chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {printExtractMessages} from '../../printExtractMessages'\nimport {TaskHandler} from '../types'\nimport {doExtract} from './doExtract'\nimport {DtsError} from './DtsError'\nimport {DtsResult, DtsTask} from './types'\n\n/** @internal */\nexport const dtsTask: TaskHandler<DtsTask, DtsResult> = {\n name: (_ctx, task) =>\n [\n `build type definitions`,\n ...task.entries.map(\n (entry) =>\n ` ${chalk.blue(entry.importId)}: ${entry.sourcePath} -> ${entry.targetPath}`\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return new Observable((observer) => {\n doExtract(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => {\n observer.error(err)\n })\n })\n },\n complete: (ctx, _task, result) => {\n printExtractMessages(ctx, result.messages)\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof DtsError) {\n printExtractMessages(ctx, err.messages)\n } else if (err instanceof Error) {\n logger.error(err)\n }\n },\n}\n","import chalk from 'chalk'\nimport {Observable} from 'rxjs'\nimport {printExtractMessages} from '../../printExtractMessages'\nimport {TaskHandler} from '../types'\nimport {doExtract} from './doExtract'\nimport {DtsError} from './DtsError'\nimport {DtsResult, DtsWatchTask} from './types'\n\n/** @internal */\nexport const dtsWatchTask: TaskHandler<DtsWatchTask, DtsResult> = {\n name: (_ctx, task) =>\n [\n `build type definitions`,\n ...task.entries.map(\n (entry) =>\n ` ${chalk.blue(entry.importId)}: ${entry.sourcePath} -> ${entry.targetPath}`\n ),\n ].join('\\n'),\n exec: (ctx, task) => {\n return new Observable((observer) => {\n doExtract(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => observer.error(err))\n })\n },\n complete: (ctx, _task, result) => {\n const {logger} = ctx\n\n printExtractMessages(ctx, result.messages)\n\n logger.warn('watching typescript definitions is currently not supported')\n logger.log()\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof DtsError) {\n printExtractMessages(ctx, err.messages)\n } else if (err instanceof Error) {\n logger.error(err)\n }\n },\n}\n","import path from 'path'\nimport alias from '@rollup/plugin-alias'\nimport {getBabelOutputPlugin} from '@rollup/plugin-babel'\nimport commonjs from '@rollup/plugin-commonjs'\nimport json from '@rollup/plugin-json'\nimport {nodeResolve} from '@rollup/plugin-node-resolve'\nimport replace from '@rollup/plugin-replace'\nimport {InputOptions, OutputOptions, Plugin} from 'rollup'\nimport esbuild from 'rollup-plugin-esbuild'\nimport {terser} from 'rollup-plugin-terser'\nimport {\n BuildContext,\n DEFAULT_BROWSERSLIST_QUERY,\n MODULE_EXT,\n resolveConfigProperty,\n} from '../../core'\nimport {RollupTask, RollupWatchTask} from '../types'\n\nexport interface RollupConfig {\n inputOptions: InputOptions\n outputOptions: OutputOptions\n}\n\n/** @internal */\nexport function resolveRollupConfig(\n ctx: BuildContext,\n buildTask: RollupTask | RollupWatchTask\n): RollupConfig {\n const {format, runtime, target} = buildTask\n const {config, cwd, exports: _exports, external, distPath, logger, pkg, ts} = ctx\n const outputExt = MODULE_EXT[pkg.type][format]\n const minify = config?.minify ?? true\n const outDir = path.relative(cwd, distPath)\n\n const pathAliases = Object.fromEntries(\n Object.entries(ts.config?.options.paths || {}).map(([key, val]) => {\n return [key, path.resolve(cwd, ts.config?.options.baseUrl || '.', val[0])]\n })\n )\n\n const entries = buildTask.entries.map((entry) => {\n return {\n ...entry,\n name: path.relative(outDir, entry.output).replace(/\\.[^/.]+$/, ''),\n }\n }, {})\n\n const exportIds =\n _exports && Object.keys(_exports).map((exportPath) => path.join(pkg.name, exportPath))\n\n const sourcePaths = _exports && Object.values(_exports).map((e) => path.resolve(cwd, e.source))\n\n const replacements = Object.fromEntries(\n Object.entries(config?.define || {}).map(([key, val]) => [key, JSON.stringify(val)])\n )\n\n const defaultPlugins = [\n replace({\n preventAssignment: true,\n values: {\n ...(pkg.name === '@sanity/pkg-utils'\n ? {...replacements}\n : {\n 'process.env.PKG_FILE_PATH': (arg) => {\n const sourcePath = './' + path.relative(cwd, arg)\n const entry = entries.find((e) => e.source === sourcePath)\n\n if (!entry) {\n // eslint-disable-next-line no-console\n console.error(`could not find source entry: ${sourcePath}`)\n\n return 'null'\n }\n\n return JSON.stringify(\n path.relative(cwd, path.resolve(outDir, entry.name + outputExt))\n )\n },\n 'process.env.PKG_FORMAT': JSON.stringify(format),\n 'process.env.PKG_RUNTIME': JSON.stringify(runtime),\n 'process.env.PKG_VERSION': JSON.stringify(process.env.PKG_VERSION || pkg.version),\n ...replacements,\n }),\n },\n }),\n alias({\n entries: {...pathAliases},\n }),\n nodeResolve({\n // mainFields: ['module', 'jsnext', 'main'],\n browser: runtime === 'browser',\n // exportConditions: [runtime === 'node' ? 'node' : 'browser'],\n extensions: ['.cjs', '.mjs', '.js', '.jsx', '.json', '.node'],\n preferBuiltins: true, // runtime === 'node',\n }),\n commonjs({\n esmExternals: false,\n extensions: ['.js'],\n // include: /\\/node_modules\\//,\n // requireReturnsDefault: 'namespace',\n }),\n json(),\n esbuild({\n jsx: config?.jsx ?? 'automatic',\n jsxFactory: config?.jsxFactory ?? 'createElement',\n jsxFragment: config?.jsxFragment ?? 'Fragment',\n jsxImportSource: config?.jsxImportSource ?? 'react',\n target,\n tsconfig: ctx.ts.configPath || 'tsconfig.json',\n }),\n getBabelOutputPlugin({\n babelrc: false,\n plugins: ['@babel/plugin-proposal-object-rest-spread'],\n presets: [['@babel/preset-env', {targets: pkg.browserslist || DEFAULT_BROWSERSLIST_QUERY}]],\n }),\n minify &&\n terser({\n output: {\n comments: (_node, comment) => {\n const text = comment.value\n const type = comment.type\n\n // Check if this is a multiline comment\n if (type == 'comment2') {\n // Keep licensing comments\n return /@preserve|@license|@cc_on/i.test(text)\n }\n\n return false\n },\n },\n }),\n ].filter(Boolean) as Plugin[]\n\n const userPlugins = config?.rollup?.plugins\n\n const plugins = Array.isArray(userPlugins)\n ? defaultPlugins.concat(userPlugins)\n : resolveConfigProperty(config?.rollup?.plugins, defaultPlugins)\n\n return {\n inputOptions: {\n context: cwd,\n\n external: (id, importer) => {\n // Check if the id is a self-referencing import\n if (exportIds?.includes(id)) {\n return true\n }\n\n // Check if the id is a file path that points to an exported source file\n if (importer && (id.startsWith('.') || id.startsWith('/'))) {\n const idPath = path.resolve(path.dirname(importer), id)\n\n if (sourcePaths?.includes(idPath)) {\n logger.warn(\n `detected self-referencing import – treating as external: ${path.relative(\n cwd,\n idPath\n )}`\n )\n\n return true\n }\n }\n\n const idParts = id.split('/')\n\n const name = idParts[0].startsWith('@') ? `${idParts[0]}/${idParts[1]}` : idParts[0]\n\n if (name && external.includes(name)) {\n return true\n }\n\n return false\n },\n\n input: entries.reduce<{[entryAlias: string]: string}>((acc, entry) => {\n return {...acc, [entry.name]: entry.source}\n }, {}),\n\n onwarn(warning, rollupWarn) {\n if (!warning.code || !['CIRCULAR_DEPENDENCY'].includes(warning.code)) {\n rollupWarn(warning)\n }\n },\n\n plugins,\n\n treeshake: {\n propertyReadSideEffects: false,\n },\n },\n outputOptions: {\n chunkFileNames: () => `_chunks/[name]-[hash]${outputExt}`,\n dir: outDir,\n entryFileNames: () => (outputExt === '.esm.js' ? `[name].js` : `[name]${outputExt}`),\n format,\n exports: 'auto',\n sourcemap: config?.sourcemap ?? true,\n },\n }\n}\n","/* eslint-disable no-console */\n\nimport path from 'path'\nimport chalk from 'chalk'\nimport {rollup} from 'rollup'\nimport {Observable} from 'rxjs'\nimport {BuildContext} from '../../core'\nimport {RollupTask, TaskHandler} from '../types'\nimport {resolveRollupConfig} from './resolveRollupConfig'\n\n/** @internal */\nexport const rollupTask: TaskHandler<RollupTask> = {\n name: (ctx, task) =>\n `build javascript files (target ${task.target.join(' + ')}, format ${\n task.format\n })\\n ${task.entries\n .map((e) => `${chalk.blue(path.join(ctx.pkg.name, e.path))}: ${e.source} -> ${e.output}`)\n .join('\\n ')}`,\n exec: (ctx, task) => {\n return new Observable((observer) => {\n execPromise(ctx, task)\n .then((result) => {\n observer.next(result)\n observer.complete()\n })\n .catch((err) => observer.error(err))\n })\n },\n complete: () => {\n //\n },\n error: (_ctx, _task, err) => {\n if (err instanceof Error) {\n console.log(err)\n }\n },\n}\n\nasync function execPromise(ctx: BuildContext, task: RollupTask) {\n const {files, distPath} = ctx\n const outDir = path.relative(ctx.cwd, distPath)\n\n const {inputOptions, outputOptions} = resolveRollupConfig(ctx, task)\n\n // Create bundle\n const bundle = await rollup(inputOptions)\n\n // an array of file names this bundle depends on\n // console.log(bundle.watchFiles)\n\n // generate output specific code in-memory\n // you can call this function multiple times on the same bundle object\n const {output} = await bundle.generate(outputOptions)\n\n for (const chunkOrAsset of output) {\n if (chunkOrAsset.type === 'asset') {\n files.push({\n type: 'asset',\n path: path.resolve(outDir, chunkOrAsset.fileName),\n })\n } else {\n files.push({\n type: 'chunk',\n path: path.resolve(outDir, chunkOrAsset.fileName),\n })\n }\n }\n\n // or write the bundle to disk\n await bundle.write(outputOptions)\n\n // closes the bundle\n await bundle.close()\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport {RollupWatcherEvent, RollupWatchOptions, watch as rollupWatch} from 'rollup'\nimport {Observable} from 'rxjs'\nimport {RollupWatchTask, TaskHandler} from '../types'\nimport {resolveRollupConfig} from './resolveRollupConfig'\n\n/** @internal */\nexport const rollupWatchTask: TaskHandler<RollupWatchTask, RollupWatcherEvent> = {\n name: (ctx, task) =>\n `build javascript files (target ${task.target.join(' + ')}, format ${\n task.format\n })\\n ${task.entries\n .map((e) => `${chalk.blue(path.join(ctx.pkg.name, e.path))}: ${e.source} -> ${e.output}`)\n .join('\\n ')}`,\n exec: (ctx, task) => {\n const {inputOptions, outputOptions} = resolveRollupConfig(ctx, task)\n\n return new Observable((observer) => {\n const watchOptions: RollupWatchOptions = {\n ...inputOptions,\n output: outputOptions,\n }\n\n const watcher = rollupWatch(watchOptions)\n\n watcher.on('event', (event) => {\n observer.next(event)\n })\n\n return () => {\n watcher.close()\n }\n })\n },\n complete: (ctx, task, event) => {\n const {logger} = ctx\n\n if (event.code === 'BUNDLE_END') {\n logger.success(\n `build javascript files (target ${task.target.join(' + ')}, format ${\n task.format\n })\\n ${task.entries\n .map((e) => `${chalk.blue(path.join(ctx.pkg.name, e.path))}: ${e.source} -> ${e.output}`)\n .join('\\n ')}`\n )\n logger.log('')\n\n return\n }\n\n if (event.code === 'BUNDLE_START') {\n return\n }\n\n if (event.code === 'END') {\n return\n }\n\n if (event.code === 'ERROR') {\n // logger.log('')\n logger.error(event.code, event)\n\n return\n }\n\n if (event.code === 'START') {\n return\n }\n },\n error: (ctx, _task, err) => {\n const {logger} = ctx\n\n if (err instanceof Error) {\n logger.log(err)\n }\n },\n}\n","import {dtsTask, dtsWatchTask} from './dts'\nimport {rollupTask, rollupWatchTask} from './rollup'\nimport {BuildTaskHandlers, WatchTaskHandlers} from './types'\n\nexport * from './types'\nexport * from './dts'\nexport * from './rollup'\n\n/** @internal */\nexport const buildTaskHandlers: BuildTaskHandlers = {\n 'build:dts': dtsTask,\n 'build:js': rollupTask,\n}\n\n/** @internal */\nexport const watchTaskHandlers: WatchTaskHandlers = {\n 'watch:dts': dtsWatchTask,\n 'watch:js': rollupWatchTask,\n}\n"],"names":["printExtractMessages","ctx","messages","cwd","logger","warnings","filter","msg","logLevel","length","log","sourceFilePath","path","relative","messageId","chalk","cyan","yellow","sourceFileLine","sourceFileColumn","gray","text","join","errors","red","process","exit","formatHost","getCurrentDirectory","ts","sys","getNewLine","newLine","getCanonicalFileName","useCaseSensitiveFileNames","f","toLowerCase","buildTypes","options","outDir","tsconfig","strict","compilerOptions","declaration","declarationDir","emitDeclarationOnly","noEmit","program","createProgram","fileNames","emitResult","emit","allDiagnostics","getPreEmitDiagnostics","concat","diagnostics","forEach","diagnostic","file","start","line","character","getLineAndCharacterOfPosition","message","flattenDiagnosticMessageText","messageText","console","fileName","emitSkipped","diag","category","DiagnosticCategory","Error","error","formatDiagnostics","DtsError","constructor","createApiExtractorConfig","distPath","exportPath","filePath","projectFolder","mainEntryPointFilePath","tsconfigPath","apiReport","enabled","reportFileName","compiler","tsconfigFilePath","docModel","apiJsonFilePath","resolve","dtsRollup","untrimmedFilePath","tsdocMetadata","createTSDocConfig","opts","customTags","tsDocBaseBuf","readFile","require","tsDocBaseConfig","parse","toString","tagDefinitions","map","t","tagName","name","syntaxKind","allowMultiple","supportForTags","customTag","TSDocConfigFile","loadFromObject","noStandardTags","extractModuleBlocksFromTypes","tsOutDir","extractResult","compilerState","moduleBlocks","allProgramFiles","getSourceFiles","sourceFiles","sourceFile","includes","push","extractModuleBlocks","fileContent","ast","parser","typeScriptParser","body","node","type","print","code","LOG_LEVELS","info","off","warn","getExtractMessagesConfig","rules","ruleToLogLevel","key","defaultLevel","r","compilerMessageReporting","default","extractorMessageReporting","addToApiReportFile","tsdocMessageReporting","extractTypes","files","projectPath","sourceTypesPath","tmpPath","tsdocConfigFile","extractorConfig","ExtractorConfig","prepare","configObject","configObjectFullPath","packageJsonFullPath","extractorResult","Extractor","invoke","localBuild","showVerboseMessages","messageCallback","handled","typesPath","typesBuf","fs","prettierConfig","prettier","resolveConfig","mkdirp","dirname","writeFile","format","filepath","rimraf","promisify","rimrafCallback","doExtract","task","_a","_b","config","configPath","results","rootDir","entry","entries","sourcePath","replace","targetPath","result","extract","some","dtsTask","_ctx","blue","importId","exec","Observable","observer","then","next","complete","catch","err","_task","dtsWatchTask","resolveRollupConfig","buildTask","_c","runtime","target","exports","_exports","external","pkg","outputExt","MODULE_EXT","minify","pathAliases","Object","fromEntries","paths","val","_a2","baseUrl","output","exportIds","keys","sourcePaths","values","e","source","replacements","define","JSON","stringify","defaultPlugins","preventAssignment","arg","find","env","PKG_VERSION","version","alias","nodeResolve","browser","extensions","preferBuiltins","commonjs","esmExternals","json","esbuild","jsx","jsxFactory","jsxFragment","jsxImportSource","getBabelOutputPlugin","babelrc","plugins","presets","targets","browserslist","DEFAULT_BROWSERSLIST_QUERY","terser","comments","_node","comment","value","test","Boolean","userPlugins","rollup","Array","isArray","resolveConfigProperty","inputOptions","context","id","importer","startsWith","idPath","idParts","split","input","reduce","acc","onwarn","warning","rollupWarn","treeshake","propertyReadSideEffects","outputOptions","chunkFileNames","dir","entryFileNames","sourcemap","rollupTask","execPromise","bundle","generate","chunkOrAsset","write","close","rollupWatchTask","watchOptions","watcher","rollupWatch","on","event","success","buildTaskHandlers","watchTaskHandlers"],"mappings":"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"}