@sanity/pkg-utils 2.3.11 → 2.3.13-canary.0

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 (264) hide show
  1. package/dist/build.js +69 -0
  2. package/dist/build.js.map +1 -0
  3. package/dist/check.js +152 -0
  4. package/dist/check.js.map +1 -0
  5. package/dist/cli.cjs +6 -6
  6. package/dist/cli.cjs.map +1 -1
  7. package/dist/consoleSpy.js +49 -0
  8. package/dist/consoleSpy.js.map +1 -0
  9. package/dist/core/config/defineConfig.js +5 -0
  10. package/dist/core/config/defineConfig.js.map +1 -0
  11. package/dist/core/config/findConfigFile.js +21 -0
  12. package/dist/core/config/findConfigFile.js.map +1 -0
  13. package/dist/core/config/loadConfig.js +34 -0
  14. package/dist/core/config/loadConfig.js.map +1 -0
  15. package/dist/core/config/resolveConfigProperty.js +9 -0
  16. package/dist/core/config/resolveConfigProperty.js.map +1 -0
  17. package/dist/core/defaults.js +3 -0
  18. package/dist/core/defaults.js.map +1 -0
  19. package/dist/core/findCommonPath.js +28 -0
  20. package/dist/core/findCommonPath.js.map +1 -0
  21. package/dist/core/isRecord.js +5 -0
  22. package/dist/core/isRecord.js.map +1 -0
  23. package/dist/core/pkg/helpers.js +24 -0
  24. package/dist/core/pkg/helpers.js.map +1 -0
  25. package/dist/core/pkg/loadPkg.js +18 -0
  26. package/dist/core/pkg/loadPkg.js.map +1 -0
  27. package/dist/core/pkg/loadPkgWithReporting.js +107 -0
  28. package/dist/core/pkg/loadPkgWithReporting.js.map +1 -0
  29. package/dist/core/pkg/parseExports.js +75 -0
  30. package/dist/core/pkg/parseExports.js.map +1 -0
  31. package/dist/core/pkg/pkgExt.js +29 -0
  32. package/dist/core/pkg/pkgExt.js.map +1 -0
  33. package/dist/core/pkg/validateExports.js +19 -0
  34. package/dist/core/pkg/validateExports.js.map +1 -0
  35. package/dist/core/pkg/validatePkg.js +49 -0
  36. package/dist/core/pkg/validatePkg.js.map +1 -0
  37. package/dist/core/template/createFromTemplate.js +59 -0
  38. package/dist/core/template/createFromTemplate.js.map +1 -0
  39. package/dist/core/template/define.js +5 -0
  40. package/dist/core/template/define.js.map +1 -0
  41. package/dist/core/ts/loadTSConfig.js +15 -0
  42. package/dist/core/ts/loadTSConfig.js.map +1 -0
  43. package/dist/fileExists.js +11 -0
  44. package/dist/fileExists.js.map +1 -0
  45. package/dist/getFilesize.js +8 -0
  46. package/dist/getFilesize.js.map +1 -0
  47. package/dist/globFiles.js +7 -0
  48. package/dist/globFiles.js.map +1 -0
  49. package/dist/index.cjs +44 -30
  50. package/dist/index.cjs.map +1 -1
  51. package/dist/index.d.ts +4 -2
  52. package/dist/index.js +24 -2505
  53. package/dist/index.js.map +1 -1
  54. package/dist/init.js +42 -0
  55. package/dist/init.js.map +1 -0
  56. package/dist/isEmptyDirectory.js +6 -0
  57. package/dist/isEmptyDirectory.js.map +1 -0
  58. package/dist/logger.js +37 -0
  59. package/dist/logger.js.map +1 -0
  60. package/dist/package.json.cjs +8 -0
  61. package/dist/package.json.cjs.map +1 -0
  62. package/dist/printExtractMessages.js +32 -0
  63. package/dist/printExtractMessages.js.map +1 -0
  64. package/dist/printPackageTree.js +92 -0
  65. package/dist/printPackageTree.js.map +1 -0
  66. package/dist/resolveBrowserTarget.js +27 -0
  67. package/dist/resolveBrowserTarget.js.map +1 -0
  68. package/dist/resolveBrowserslistVersions.js +44 -0
  69. package/dist/resolveBrowserslistVersions.js.map +1 -0
  70. package/dist/resolveBuildContext.js +109 -0
  71. package/dist/resolveBuildContext.js.map +1 -0
  72. package/dist/resolveBuildTasks.js +140 -0
  73. package/dist/resolveBuildTasks.js.map +1 -0
  74. package/dist/resolveNodeTarget.js +12 -0
  75. package/dist/resolveNodeTarget.js.map +1 -0
  76. package/dist/resolveWatchTasks.js +103 -0
  77. package/dist/resolveWatchTasks.js.map +1 -0
  78. package/dist/spinner.js +15 -0
  79. package/dist/spinner.js.map +1 -0
  80. package/dist/{_chunks/buildAction-b2571e76.cjs → src/cli/buildAction.cjs} +6 -3
  81. package/dist/src/cli/buildAction.cjs.map +1 -0
  82. package/dist/{_chunks/checkAction-c3e5da35.cjs → src/cli/checkAction.cjs} +6 -3
  83. package/dist/src/cli/checkAction.cjs.map +1 -0
  84. package/dist/{_chunks/handleError-13d87f55.cjs → src/cli/handleError.cjs} +4 -1
  85. package/dist/src/cli/handleError.cjs.map +1 -0
  86. package/dist/{_chunks/initAction-2abd8576.cjs → src/cli/initAction.cjs} +6 -3
  87. package/dist/src/cli/initAction.cjs.map +1 -0
  88. package/dist/{_chunks/watchAction-79480cb8.cjs → src/cli/watchAction.cjs} +6 -3
  89. package/dist/src/cli/watchAction.cjs.map +1 -0
  90. package/dist/src/node/build.cjs +74 -0
  91. package/dist/src/node/build.cjs.map +1 -0
  92. package/dist/src/node/check.cjs +164 -0
  93. package/dist/src/node/check.cjs.map +1 -0
  94. package/dist/src/node/consoleSpy.cjs +54 -0
  95. package/dist/src/node/consoleSpy.cjs.map +1 -0
  96. package/dist/src/node/core/config/defineConfig.cjs +10 -0
  97. package/dist/src/node/core/config/defineConfig.cjs.map +1 -0
  98. package/dist/src/node/core/config/findConfigFile.cjs +33 -0
  99. package/dist/src/node/core/config/findConfigFile.cjs.map +1 -0
  100. package/dist/src/node/core/config/loadConfig.cjs +46 -0
  101. package/dist/src/node/core/config/loadConfig.cjs.map +1 -0
  102. package/dist/src/node/core/config/resolveConfigProperty.cjs +14 -0
  103. package/dist/src/node/core/config/resolveConfigProperty.cjs.map +1 -0
  104. package/dist/src/node/core/defaults.cjs +8 -0
  105. package/dist/src/node/core/defaults.cjs.map +1 -0
  106. package/dist/src/node/core/findCommonPath.cjs +40 -0
  107. package/dist/src/node/core/findCommonPath.cjs.map +1 -0
  108. package/dist/src/node/core/isRecord.cjs +10 -0
  109. package/dist/src/node/core/isRecord.cjs.map +1 -0
  110. package/dist/src/node/core/pkg/helpers.cjs +31 -0
  111. package/dist/src/node/core/pkg/helpers.cjs.map +1 -0
  112. package/dist/src/node/core/pkg/loadPkg.cjs +30 -0
  113. package/dist/src/node/core/pkg/loadPkg.cjs.map +1 -0
  114. package/dist/src/node/core/pkg/loadPkgWithReporting.cjs +118 -0
  115. package/dist/src/node/core/pkg/loadPkgWithReporting.cjs.map +1 -0
  116. package/dist/src/node/core/pkg/parseExports.cjs +80 -0
  117. package/dist/src/node/core/pkg/parseExports.cjs.map +1 -0
  118. package/dist/src/node/core/pkg/pkgExt.cjs +35 -0
  119. package/dist/src/node/core/pkg/pkgExt.cjs.map +1 -0
  120. package/dist/src/node/core/pkg/validateExports.cjs +24 -0
  121. package/dist/src/node/core/pkg/validateExports.cjs.map +1 -0
  122. package/dist/src/node/core/pkg/validatePkg.cjs +54 -0
  123. package/dist/src/node/core/pkg/validatePkg.cjs.map +1 -0
  124. package/dist/src/node/core/template/createFromTemplate.cjs +70 -0
  125. package/dist/src/node/core/template/createFromTemplate.cjs.map +1 -0
  126. package/dist/src/node/core/template/define.cjs +10 -0
  127. package/dist/src/node/core/template/define.cjs.map +1 -0
  128. package/dist/src/node/core/ts/loadTSConfig.cjs +26 -0
  129. package/dist/src/node/core/ts/loadTSConfig.cjs.map +1 -0
  130. package/dist/src/node/fileExists.cjs +16 -0
  131. package/dist/src/node/fileExists.cjs.map +1 -0
  132. package/dist/src/node/getFilesize.cjs +19 -0
  133. package/dist/src/node/getFilesize.cjs.map +1 -0
  134. package/dist/src/node/globFiles.cjs +19 -0
  135. package/dist/src/node/globFiles.cjs.map +1 -0
  136. package/dist/src/node/init.cjs +47 -0
  137. package/dist/src/node/init.cjs.map +1 -0
  138. package/dist/src/node/isEmptyDirectory.cjs +11 -0
  139. package/dist/src/node/isEmptyDirectory.cjs.map +1 -0
  140. package/dist/src/node/logger.cjs +48 -0
  141. package/dist/src/node/logger.cjs.map +1 -0
  142. package/dist/src/node/printExtractMessages.cjs +44 -0
  143. package/dist/src/node/printExtractMessages.cjs.map +1 -0
  144. package/dist/src/node/printPackageTree.cjs +105 -0
  145. package/dist/src/node/printPackageTree.cjs.map +1 -0
  146. package/dist/src/node/resolveBrowserTarget.cjs +32 -0
  147. package/dist/src/node/resolveBrowserTarget.cjs.map +1 -0
  148. package/dist/src/node/resolveBrowserslistVersions.cjs +55 -0
  149. package/dist/src/node/resolveBrowserslistVersions.cjs.map +1 -0
  150. package/dist/src/node/resolveBuildContext.cjs +120 -0
  151. package/dist/src/node/resolveBuildContext.cjs.map +1 -0
  152. package/dist/{_chunks/build-62cd452e.cjs → src/node/resolveBuildTasks.cjs} +8 -80
  153. package/dist/src/node/resolveBuildTasks.cjs.map +1 -0
  154. package/dist/src/node/resolveNodeTarget.cjs +17 -0
  155. package/dist/src/node/resolveNodeTarget.cjs.map +1 -0
  156. package/dist/src/node/resolveWatchTasks.cjs +115 -0
  157. package/dist/src/node/resolveWatchTasks.cjs.map +1 -0
  158. package/dist/src/node/spinner.cjs +26 -0
  159. package/dist/src/node/spinner.cjs.map +1 -0
  160. package/dist/src/node/tasks/dts/DtsError.cjs +17 -0
  161. package/dist/src/node/tasks/dts/DtsError.cjs.map +1 -0
  162. package/dist/src/node/tasks/dts/buildTypes.cjs +50 -0
  163. package/dist/src/node/tasks/dts/buildTypes.cjs.map +1 -0
  164. package/dist/src/node/tasks/dts/createApiExtractorConfig.cjs +52 -0
  165. package/dist/src/node/tasks/dts/createApiExtractorConfig.cjs.map +1 -0
  166. package/dist/src/node/tasks/dts/createTSDocConfig.cjs +37 -0
  167. package/dist/src/node/tasks/dts/createTSDocConfig.cjs.map +1 -0
  168. package/dist/src/node/tasks/dts/doExtract.cjs +88 -0
  169. package/dist/src/node/tasks/dts/doExtract.cjs.map +1 -0
  170. package/dist/src/node/tasks/dts/dtsTask.cjs +44 -0
  171. package/dist/src/node/tasks/dts/dtsTask.cjs.map +1 -0
  172. package/dist/src/node/tasks/dts/dtsWatchTask.cjs +47 -0
  173. package/dist/src/node/tasks/dts/dtsWatchTask.cjs.map +1 -0
  174. package/dist/src/node/tasks/dts/extractModuleBlocks.cjs +38 -0
  175. package/dist/src/node/tasks/dts/extractModuleBlocks.cjs.map +1 -0
  176. package/dist/src/node/tasks/dts/extractTypes.cjs +90 -0
  177. package/dist/src/node/tasks/dts/extractTypes.cjs.map +1 -0
  178. package/dist/src/node/tasks/dts/getExtractMessagesConfig.cjs +73 -0
  179. package/dist/src/node/tasks/dts/getExtractMessagesConfig.cjs.map +1 -0
  180. package/dist/src/node/tasks/dts/printDiagnostic.cjs +48 -0
  181. package/dist/src/node/tasks/dts/printDiagnostic.cjs.map +1 -0
  182. package/dist/src/node/tasks/index.cjs +26 -0
  183. package/dist/src/node/tasks/index.cjs.map +1 -0
  184. package/dist/src/node/tasks/node/reexportCjsTask.cjs +64 -0
  185. package/dist/src/node/tasks/node/reexportCjsTask.cjs.map +1 -0
  186. package/dist/src/node/tasks/rollup/resolveRollupConfig.cjs +207 -0
  187. package/dist/src/node/tasks/rollup/resolveRollupConfig.cjs.map +1 -0
  188. package/dist/src/node/tasks/rollup/rollupTask.cjs +116 -0
  189. package/dist/src/node/tasks/rollup/rollupTask.cjs.map +1 -0
  190. package/dist/src/node/tasks/rollup/rollupWatchTask.cjs +72 -0
  191. package/dist/src/node/tasks/rollup/rollupWatchTask.cjs.map +1 -0
  192. package/dist/{_chunks/init-2377e6e5.cjs → src/node/templates/default/template.cjs} +23 -112
  193. package/dist/src/node/templates/default/template.cjs.map +1 -0
  194. package/dist/src/node/watch.cjs +90 -0
  195. package/dist/src/node/watch.cjs.map +1 -0
  196. package/dist/src/node/watchConfigFiles.cjs +40 -0
  197. package/dist/src/node/watchConfigFiles.cjs.map +1 -0
  198. package/dist/src/node/watchFiles.cjs +33 -0
  199. package/dist/src/node/watchFiles.cjs.map +1 -0
  200. package/dist/tasks/dts/DtsError.js +12 -0
  201. package/dist/tasks/dts/DtsError.js.map +1 -0
  202. package/dist/tasks/dts/buildTypes.js +39 -0
  203. package/dist/tasks/dts/buildTypes.js.map +1 -0
  204. package/dist/tasks/dts/createApiExtractorConfig.js +41 -0
  205. package/dist/tasks/dts/createApiExtractorConfig.js.map +1 -0
  206. package/dist/tasks/dts/createTSDocConfig.js +32 -0
  207. package/dist/tasks/dts/createTSDocConfig.js.map +1 -0
  208. package/dist/tasks/dts/doExtract.js +76 -0
  209. package/dist/tasks/dts/doExtract.js.map +1 -0
  210. package/dist/tasks/dts/dtsTask.js +33 -0
  211. package/dist/tasks/dts/dtsTask.js.map +1 -0
  212. package/dist/tasks/dts/dtsWatchTask.js +36 -0
  213. package/dist/tasks/dts/dtsWatchTask.js.map +1 -0
  214. package/dist/tasks/dts/extractModuleBlocks.js +26 -0
  215. package/dist/tasks/dts/extractModuleBlocks.js.map +1 -0
  216. package/dist/tasks/dts/extractTypes.js +77 -0
  217. package/dist/tasks/dts/extractTypes.js.map +1 -0
  218. package/dist/tasks/dts/getExtractMessagesConfig.js +68 -0
  219. package/dist/tasks/dts/getExtractMessagesConfig.js.map +1 -0
  220. package/dist/tasks/dts/printDiagnostic.js +35 -0
  221. package/dist/tasks/dts/printDiagnostic.js.map +1 -0
  222. package/dist/tasks/index.js +16 -0
  223. package/dist/tasks/index.js.map +1 -0
  224. package/dist/tasks/node/reexportCjsTask.js +52 -0
  225. package/dist/tasks/node/reexportCjsTask.js.map +1 -0
  226. package/dist/tasks/rollup/resolveRollupConfig.js +189 -0
  227. package/dist/tasks/rollup/resolveRollupConfig.js.map +1 -0
  228. package/dist/tasks/rollup/rollupTask.js +104 -0
  229. package/dist/tasks/rollup/rollupTask.js.map +1 -0
  230. package/dist/tasks/rollup/rollupWatchTask.js +60 -0
  231. package/dist/tasks/rollup/rollupWatchTask.js.map +1 -0
  232. package/dist/templates/default/template.js +366 -0
  233. package/dist/templates/default/template.js.map +1 -0
  234. package/dist/watch.js +79 -0
  235. package/dist/watch.js.map +1 -0
  236. package/dist/watchConfigFiles.js +29 -0
  237. package/dist/watchConfigFiles.js.map +1 -0
  238. package/dist/watchFiles.js +22 -0
  239. package/dist/watchFiles.js.map +1 -0
  240. package/package.json +3 -2
  241. package/src/node/core/pkg/loadPkgWithReporting.ts +91 -18
  242. package/src/node/core/pkg/types.ts +4 -2
  243. package/src/node/core/pkg/validatePkg.ts +31 -3
  244. package/src/node/resolveBuildTasks.ts +2 -2
  245. package/src/node/tasks/node/reexportCjsTask.ts +1 -1
  246. package/src/node/tasks/rollup/resolveRollupConfig.ts +4 -0
  247. package/src/node/tasks/rollup/rollupTask.ts +8 -0
  248. package/dist/_chunks/build-62cd452e.cjs.map +0 -1
  249. package/dist/_chunks/buildAction-b2571e76.cjs.map +0 -1
  250. package/dist/_chunks/check-0665cb35.cjs +0 -250
  251. package/dist/_chunks/check-0665cb35.cjs.map +0 -1
  252. package/dist/_chunks/checkAction-c3e5da35.cjs.map +0 -1
  253. package/dist/_chunks/consoleSpy-d738cb9f.cjs +0 -550
  254. package/dist/_chunks/consoleSpy-d738cb9f.cjs.map +0 -1
  255. package/dist/_chunks/handleError-13d87f55.cjs.map +0 -1
  256. package/dist/_chunks/index-ad3fa5bb.cjs +0 -865
  257. package/dist/_chunks/index-ad3fa5bb.cjs.map +0 -1
  258. package/dist/_chunks/init-2377e6e5.cjs.map +0 -1
  259. package/dist/_chunks/initAction-2abd8576.cjs.map +0 -1
  260. package/dist/_chunks/logger-c593f06b.cjs +0 -97
  261. package/dist/_chunks/logger-c593f06b.cjs.map +0 -1
  262. package/dist/_chunks/watch-425eab1e.cjs +0 -231
  263. package/dist/_chunks/watch-425eab1e.cjs.map +0 -1
  264. package/dist/_chunks/watchAction-79480cb8.cjs.map +0 -1
@@ -2,97 +2,42 @@
2
2
 
3
3
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
4
4
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
5
- var fs = require('fs/promises');
6
- var mkdirp = require('mkdirp');
7
- var path = require('path');
8
- var prompts = require('prompts');
9
- var logger = require('./logger-c593f06b.cjs');
5
+ Object.defineProperty(exports, '__esModule', {
6
+ value: true
7
+ });
10
8
  var getLatestVersion = require('get-latest-version');
11
9
  var gitUrlParse = require('git-url-parse');
12
10
  var outdent = require('outdent');
13
11
  var parseGitConfig = require('parse-git-config');
12
+ var path = require('path');
14
13
  var prettier = require('prettier');
15
14
  require('esbuild-register/dist/node');
16
15
  require('pkg-up');
17
16
  require('find-config');
18
17
  require('fs');
18
+ var isRecord = require('../../core/isRecord.cjs');
19
+ require('fs/promises');
20
+ require('../../core/pkg/validatePkg.cjs');
19
21
  require('chalk');
20
22
  require('zod');
23
+ require('mkdirp');
24
+ require('prompts');
25
+ var define = require('../../core/template/define.cjs');
21
26
  require('typescript');
22
27
  function _interopDefaultCompat(e) {
23
28
  return e && typeof e === 'object' && 'default' in e ? e : {
24
29
  default: e
25
30
  };
26
31
  }
27
- var prompts__default = /*#__PURE__*/_interopDefaultCompat(prompts);
28
32
  var getLatestVersion__default = /*#__PURE__*/_interopDefaultCompat(getLatestVersion);
29
33
  var gitUrlParse__default = /*#__PURE__*/_interopDefaultCompat(gitUrlParse);
30
34
  var parseGitConfig__default = /*#__PURE__*/_interopDefaultCompat(parseGitConfig);
31
35
  var prettier__default = /*#__PURE__*/_interopDefaultCompat(prettier);
32
- const promptsTypes = {
33
- string: "text"
34
- };
35
- async function createFromTemplate(options) {
36
- const {
37
- cwd,
38
- logger,
39
- packagePath,
40
- template: templateOrResolver
41
- } = options;
42
- const template = typeof templateOrResolver === "function" ? await templateOrResolver({
43
- cwd,
44
- logger,
45
- packagePath
46
- }) : templateOrResolver;
47
- logger.log("create new package at", path.relative(cwd, packagePath));
48
- const templateOptions = {};
49
- for (const templateOption of template.options) {
50
- const templateValidate = templateOption.validate;
51
- const res = await prompts__default.default({
52
- type: promptsTypes[templateOption.type],
53
- name: templateOption.name,
54
- message: templateOption.description,
55
- validate: templateValidate ? prev => templateValidate(prev) : void 0,
56
- initial: typeof templateOption.initial === "function" ? templateOption.initial(templateOptions) : templateOption.initial
57
- }, {
58
- onCancel: () => process.exit(0)
59
- });
60
- templateOptions[templateOption.name] = templateOption.parse ? templateOption.parse(res[templateOption.name]) : res[templateOption.name];
61
- }
62
- const features = {};
63
- for (const templateFeature of template.features) {
64
- const res = templateFeature.optional ? await prompts__default.default({
65
- type: "confirm",
66
- name: "confirm",
67
- message: "use ".concat(templateFeature.name, "?"),
68
- initial: templateFeature.initial
69
- }, {
70
- onCancel: () => process.exit(0)
71
- }) : void 0;
72
- features[templateFeature.name] = (res == null ? void 0 : res.confirm) || !templateFeature.optional;
73
- }
74
- const files = await template.getFiles(templateOptions, features);
75
- files.sort((a, b) => {
76
- return a.name.localeCompare(b.name);
77
- });
78
- for (const file of files) {
79
- const filePath = path.resolve(packagePath, file.name);
80
- await mkdirp.mkdirp(path.dirname(filePath));
81
- await fs.writeFile(filePath, file.contents.trim() + "\n");
82
- logger.success("wrote ".concat(path.relative(cwd, filePath)));
83
- }
84
- }
85
- function defineTemplateOption(option) {
86
- return option;
87
- }
88
- async function isEmptyDirectory(dirPath) {
89
- return (await fs.readdir(dirPath)).length === 0;
90
- }
91
36
  const RE_NAME = /^(?:@(?:[a-z0-9-*~][a-z0-9-*._~]*)\/)?[a-z0-9-~][a-z0-9-._~]*$/i;
92
37
  const defaultTemplate = async _ref => {
93
38
  let {
94
39
  cwd,
95
- logger: logger$1,
40
+ logger,
96
41
  packagePath
97
42
  } = _ref;
98
43
  var _a, _b;
@@ -101,7 +46,7 @@ const defaultTemplate = async _ref => {
101
46
  type: "global"
102
47
  });
103
48
  return {
104
- options: [defineTemplateOption({
49
+ options: [define.defineTemplateOption({
105
50
  name: "repo",
106
51
  type: "string",
107
52
  description: "git url",
@@ -123,7 +68,7 @@ const defaultTemplate = async _ref => {
123
68
  name: result.name
124
69
  };
125
70
  }
126
- }), defineTemplateOption({
71
+ }), define.defineTemplateOption({
127
72
  name: "pkgName",
128
73
  type: "string",
129
74
  description: "package name",
@@ -154,21 +99,21 @@ const defaultTemplate = async _ref => {
154
99
  fullName: v
155
100
  };
156
101
  }
157
- }), defineTemplateOption({
102
+ }), define.defineTemplateOption({
158
103
  name: "description",
159
104
  type: "string",
160
105
  description: "package description"
161
- }), defineTemplateOption({
106
+ }), define.defineTemplateOption({
162
107
  name: "authorName",
163
108
  type: "string",
164
109
  description: "package author name",
165
110
  initial: (_a = gitConfig == null ? void 0 : gitConfig.user) == null ? void 0 : _a.name
166
- }), defineTemplateOption({
111
+ }), define.defineTemplateOption({
167
112
  name: "authorEmail",
168
113
  type: "string",
169
114
  description: "package author email",
170
115
  initial: (_b = gitConfig == null ? void 0 : gitConfig.user) == null ? void 0 : _b.email
171
- }), defineTemplateOption({
116
+ }), define.defineTemplateOption({
172
117
  name: "license",
173
118
  type: "string",
174
119
  description: "package license",
@@ -284,7 +229,7 @@ const defaultTemplate = async _ref => {
284
229
  if (features.typescript) {
285
230
  pkgJson.types = "./dist/index.d.ts";
286
231
  const mainExport = (_a2 = pkgJson.exports) == null ? void 0 : _a2["."];
287
- if (logger.isRecord(mainExport)) {
232
+ if (isRecord.isRecord(mainExport)) {
288
233
  mainExport.types = "./dist/index.d.ts";
289
234
  }
290
235
  pkgJson.scripts = {
@@ -292,7 +237,7 @@ const defaultTemplate = async _ref => {
292
237
  ["type:check"]: "tsc --build"
293
238
  };
294
239
  const devDependencies = pkgJson.devDependencies;
295
- if (logger.isRecord(devDependencies)) {
240
+ if (isRecord.isRecord(devDependencies)) {
296
241
  devDependencies["typescript"] = "*";
297
242
  }
298
243
  }
@@ -399,13 +344,13 @@ const defaultTemplate = async _ref => {
399
344
  var _pkgJson$dependencies;
400
345
  pkgJson.dependencies = await resolveLatestDeps((_pkgJson$dependencies = pkgJson.dependencies) !== null && _pkgJson$dependencies !== void 0 ? _pkgJson$dependencies : {});
401
346
  } catch (error) {
402
- logger$1.warn(error instanceof Error ? error.message : error);
347
+ logger.warn(error instanceof Error ? error.message : error);
403
348
  }
404
349
  try {
405
350
  var _pkgJson$devDependenc;
406
351
  pkgJson.devDependencies = await resolveLatestDeps((_pkgJson$devDependenc = pkgJson.devDependencies) !== null && _pkgJson$devDependenc !== void 0 ? _pkgJson$devDependenc : {});
407
352
  } catch (error) {
408
- logger$1.warn(error instanceof Error ? error.message : error);
353
+ logger.warn(error instanceof Error ? error.message : error);
409
354
  }
410
355
  files.push({
411
356
  name: "package.json",
@@ -431,39 +376,5 @@ async function resolveLatestDeps(deps) {
431
376
  }
432
377
  return latestDeps;
433
378
  }
434
- async function init(options) {
435
- if (!options.cwd) {
436
- throw new Error("Missing required option: cwd");
437
- }
438
- if (!options.path) {
439
- throw new Error("Missing required option: path");
440
- }
441
- const logger$1 = logger.createLogger();
442
- const packagePath = path.resolve(options.cwd, options.path);
443
- await ensurePackagePath(packagePath);
444
- await createFromTemplate({
445
- cwd: options.cwd,
446
- logger: logger$1,
447
- template: defaultTemplate,
448
- packagePath
449
- });
450
- }
451
- async function ensurePackagePath(packagePath) {
452
- const exists = logger.fileExists(packagePath);
453
- if (!exists) {
454
- await mkdirp.mkdirp(packagePath);
455
- return;
456
- }
457
- const dir = (await fs.lstat(packagePath)).isDirectory();
458
- if (!dir) {
459
- throw new Error("the package path is a file, not a directory");
460
- }
461
- const empty = await isEmptyDirectory(packagePath);
462
- if (!empty) {
463
- throw new Error("the package directory is not empty");
464
- }
465
- }
466
- exports.createFromTemplate = createFromTemplate;
467
- exports.defineTemplateOption = defineTemplateOption;
468
- exports.init = init;
469
- //# sourceMappingURL=init-2377e6e5.cjs.map
379
+ exports.defaultTemplate = defaultTemplate;
380
+ //# sourceMappingURL=template.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.cjs","sources":["../../../../../src/node/templates/default/template.ts"],"sourcesContent":["import getLatestVersion from 'get-latest-version'\nimport gitUrlParse from 'git-url-parse'\nimport {outdent} from 'outdent'\nimport parseGitConfig from 'parse-git-config'\nimport {resolve} from 'path'\nimport prettier, {Config as PrettierConfig} from 'prettier'\n\nimport {defineTemplateOption, isRecord, PackageJSON, PkgTemplate, PkgTemplateFile} from '../../core'\n\nconst RE_NAME = /^(?:@(?:[a-z0-9-*~][a-z0-9-*._~]*)\\/)?[a-z0-9-~][a-z0-9-._~]*$/i\n\nexport const defaultTemplate: PkgTemplate = async ({cwd, logger, packagePath}) => {\n const gitConfig = await parseGitConfig({cwd, type: 'global'})\n\n return {\n options: [\n defineTemplateOption<{owner: string; name: string}>({\n name: 'repo',\n type: 'string',\n description: 'git url',\n validate: (v) => {\n if (!v) return true\n\n try {\n gitUrlParse(v)\n\n return true\n } catch (err) {\n return 'invalid git url'\n }\n },\n parse: (v) => {\n if (!v) return null\n\n const result = gitUrlParse(v)\n\n return {source: result.source, owner: result.owner, name: result.name}\n },\n }),\n defineTemplateOption({\n name: 'pkgName',\n type: 'string',\n description: 'package name',\n initial: (options) => options.repo?.name || undefined,\n validate: (v) => {\n if (!v) return 'package name is required'\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n return 'invalid package name'\n }\n\n return true\n },\n parse: (v) => {\n if (!v) {\n throw new Error('package name is required')\n }\n\n const match = RE_NAME.exec(v)\n\n if (!match) {\n throw new Error('invalid package name')\n }\n\n const [scope, name] = v.split('/')\n\n return {scope, name, fullName: v}\n },\n }),\n defineTemplateOption({\n name: 'description',\n type: 'string',\n description: 'package description',\n }),\n defineTemplateOption({\n name: 'authorName',\n type: 'string',\n description: 'package author name',\n initial: gitConfig?.user?.name,\n }),\n defineTemplateOption({\n name: 'authorEmail',\n type: 'string',\n description: 'package author email',\n initial: gitConfig?.user?.email,\n }),\n defineTemplateOption({\n name: 'license',\n type: 'string',\n description: 'package license',\n initial: 'MIT',\n validate: (v) => {\n if (!v) return 'license is required'\n\n return true\n },\n }),\n ],\n\n features: [\n {\n name: 'eslint',\n optional: true,\n initial: true,\n },\n {\n name: 'typescript',\n optional: true,\n initial: true,\n },\n ],\n\n async getFiles(options, features) {\n const {pkgName, repo} = options\n const {fullName: name} = pkgName\n\n const author =\n [options.authorName, options.authorEmail && `<${options.authorEmail}>`]\n .filter(Boolean)\n .join(' ') ?? undefined\n\n const prettierConfig: PrettierConfig = {\n bracketSpacing: false,\n printWidth: 100,\n semi: false,\n singleQuote: true,\n tabWidth: 2,\n plugins: ['prettier-plugin-packagejson'],\n overrides: [\n {\n files: ['*.yml'],\n options: {\n singleQuote: false,\n },\n },\n ],\n }\n\n const pkgJson: PackageJSON & {\n prettier?: PrettierConfig\n ['lint-staged']?: Record<string, string[]>\n } = {\n name,\n version: '0.0.0',\n description: options.description ?? undefined,\n keywords: [],\n license: options.license,\n author,\n type: 'module',\n exports: {\n '.': {\n types: undefined,\n source: features.typescript ? './src/index.ts' : './src/index.js',\n require: './dist/index.cjs',\n import: './dist/index.js',\n default: './dist/index.js',\n },\n './package.json': './package.json',\n },\n main: './dist/index.cjs',\n module: './dist/index.js',\n source: features.typescript ? './src/index.ts' : './src/index.js',\n files: ['dist', 'src'],\n scripts: {\n build: 'run-s clean pkg:build pkg:check',\n clean: 'rimraf dist',\n format: 'prettier --write --cache --ignore-unknown .',\n 'pkg:build': 'pkg build --strict',\n 'pkg:check': 'pkg check --strict',\n },\n prettier: prettierConfig,\n 'lint-staged': {\n '*': ['prettier --write --cache --ignore-unknown'],\n },\n dependencies: {},\n devDependencies: {\n '@sanity/pkg-utils': '*',\n 'lint-staged': '*',\n 'npm-run-all': '*',\n prettier: '*',\n 'prettier-plugin-packagejson': '*',\n rimraf: '*',\n },\n engines: {\n node: '>=18.0.0',\n },\n }\n\n const files: PkgTemplateFile[] = []\n\n // .editorconfig\n files.push({\n name: '.editorconfig',\n contents: outdent`\n root = true\n\n [*]\n charset = utf-8\n indent_style = space\n indent_size = 2\n end_of_line = lf\n insert_final_newline = true\n trim_trailing_whitespace = true\n `,\n })\n\n // .gitignore\n files.push({\n name: '.gitignore',\n contents: outdent`\n *.local\n *.log\n\n .DS_Store\n etc\n dist\n node_modules\n `,\n })\n\n files.push({\n name: '.prettierignore',\n contents: outdent`\n /dist\n /pnpm-lock.yaml\n `,\n })\n\n if (repo) {\n pkgJson.repository = {\n type: 'git',\n url: `git+ssh://git@${repo.source}/${repo.owner}/${repo.name}.git`,\n }\n pkgJson.bugs = {\n url: `https://${repo.source}/${repo.owner}/${repo.name}/issues`,\n }\n pkgJson.homepage = `https://${repo.source}/${repo.owner}/${repo.name}#readme`\n }\n\n if (features.typescript) {\n pkgJson.types = './dist/index.d.ts'\n\n const mainExport = pkgJson.exports?.['.']\n\n if (isRecord(mainExport)) {\n mainExport.types = './dist/index.d.ts'\n }\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n ['type:check']: 'tsc --build',\n }\n\n const devDependencies = pkgJson.devDependencies\n\n if (isRecord(devDependencies)) {\n devDependencies['typescript'] = '*'\n }\n }\n\n if (features.eslint) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfig: any = {\n root: true,\n env: {\n browser: true,\n es6: true,\n node: true,\n },\n extends: ['eslint:recommended', 'plugin:prettier/recommended'],\n parserOptions: {\n ecmaVersion: 2020,\n sourceType: 'module',\n },\n plugins: ['import', 'prettier'],\n rules: {\n 'no-console': 'error',\n 'no-shadow': 'error',\n 'no-warning-comments': ['warn', {location: 'start', terms: ['todo', 'fixme']}],\n },\n }\n\n files.push({\n name: '.eslintignore',\n contents: outdent`\n /dist\n `,\n })\n\n pkgJson.scripts = {\n ...pkgJson.scripts,\n lint: features.typescript\n ? 'eslint . --ext .cjs,.js,.ts,.tsx'\n : 'eslint . --ext .cjs,.js',\n }\n\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n eslint: '*',\n 'eslint-config-prettier': '*',\n 'eslint-plugin-import': '*',\n 'eslint-plugin-prettier': '*',\n }\n\n if (features.typescript) {\n pkgJson.devDependencies = {\n ...pkgJson.devDependencies,\n '@typescript-eslint/eslint-plugin': '*',\n '@typescript-eslint/parser': '*',\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const eslintConfigOverride: any = {\n files: ['**/*.ts', '**/*.tsx'],\n parser: '@typescript-eslint/parser',\n parserOptions: {\n project: ['./tsconfig.json'],\n },\n extends: [\n 'eslint:recommended',\n 'plugin:prettier/recommended',\n 'plugin:@typescript-eslint/eslint-recommended',\n 'plugin:@typescript-eslint/recommended',\n ].filter(Boolean),\n plugins: ['import', '@typescript-eslint', 'prettier'].filter(Boolean),\n rules: {\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/interface-name-prefix': 'off',\n '@typescript-eslint/member-delimiter-style': 'off',\n '@typescript-eslint/no-empty-interface': 'off',\n },\n }\n\n eslintConfig.overrides = [eslintConfigOverride]\n }\n\n files.push({\n name: '.eslintrc.cjs',\n contents: await format(\n resolve(packagePath, '.eslintrc.cjs'),\n outdent`\n 'use strict'\n\n /** @type import('eslint').Linter.Config */\n module.exports = ${JSON.stringify(eslintConfig, null, 2)}\n `,\n prettierConfig,\n ),\n })\n }\n\n if (features.typescript) {\n files.push({\n name: 'tsconfig.settings.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.settings.json'),\n outdent`\n {\n \"compilerOptions\": {\n \"module\": \"ES2020\",\n \"target\": \"ES2020\",\n \"declaration\": true,\n \"declarationMap\": true,\n \"sourceMap\": true,\n\n // Strict type-checking\n \"strict\": true,\n \"noImplicitAny\": true,\n \"strictNullChecks\": true,\n \"strictFunctionTypes\": true,\n \"strictPropertyInitialization\": true,\n \"noImplicitThis\": true,\n \"alwaysStrict\": true,\n\n // Additional checks\n \"noUnusedLocals\": true,\n \"noUnusedParameters\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n\n // Module resolution\n \"moduleResolution\": \"node\",\n \"allowSyntheticDefaultImports\": true,\n \"esModuleInterop\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.dist.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.dist.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"emitDeclarationOnly\": true,\n \"resolveJsonModule\": true\n }\n }\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'tsconfig.json',\n contents: await format(\n resolve(packagePath, 'tsconfig.json'),\n outdent`\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./*.cjs\", \"./*.ts\", \"./package.config.ts\", \"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"noEmit\": true,\n \"allowJs\": true,\n \"resolveJsonModule\": true,\n }\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // source file\n if (features.typescript) {\n files.push({\n name: 'package.config.ts',\n contents: await format(\n resolve(packagePath, 'package.config.ts'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n\n // the path to the tsconfig file for distributed builds\n tsconfig: 'tsconfig.dist.json',\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.ts',\n contents: await format(\n resolve(packagePath, 'src/index.ts'),\n outdent`\n /** @public */\n export function main(): void {\n //\n }\n `,\n prettierConfig,\n ),\n })\n } else {\n files.push({\n name: 'package.config.js',\n contents: await format(\n resolve(packagePath, 'package.config.js'),\n outdent`\n import {defineConfig} from '@sanity/pkg-utils'\n\n export default defineConfig({\n extract: {\n rules: {\n // do not require internal members to be prefixed with \\`_\\`\n 'ae-internal-missing-underscore': 'off',\n },\n },\n })\n `,\n prettierConfig,\n ),\n })\n\n files.push({\n name: 'src/index.js',\n contents: await format(\n resolve(packagePath, 'src/index.js'),\n outdent`\n /** @public */\n export function main() {\n //\n }\n `,\n prettierConfig,\n ),\n })\n }\n\n // Resolve latest dependencies\n try {\n pkgJson.dependencies = await resolveLatestDeps(pkgJson.dependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n // Resolve latest devDependencies\n try {\n pkgJson.devDependencies = await resolveLatestDeps(pkgJson.devDependencies ?? {})\n } catch (error) {\n logger.warn(error instanceof Error ? error.message : error)\n }\n\n files.push({\n name: 'package.json',\n contents: await format(\n resolve(packagePath, 'package.json'),\n JSON.stringify(pkgJson, null, 2),\n prettierConfig,\n ),\n })\n\n return files\n },\n }\n}\n\nfunction format(filepath: string, input: string, prettierOptions: PrettierConfig) {\n return prettier.format(input, {...prettierOptions, filepath})\n}\n\nasync function resolveLatestDeps(deps: Record<string, string>) {\n const depsEntries = Object.entries(deps)\n const latestDeps: Record<string, string> = {}\n\n for (const entry of depsEntries) {\n const [name, version] = entry\n const latestVersion = await getLatestVersion(name, version)\n\n latestDeps[name] = latestVersion ? `^${latestVersion}` : version\n }\n\n return latestDeps\n}\n"],"names":["RE_NAME","defaultTemplate","_ref","cwd","logger","packagePath","_a","_b","gitConfig","parseGitConfig","type","options","defineTemplateOption","name","description","validate","v","gitUrlParse","default","err","parse","result","source","owner","initial","repo","match","exec","Error","scope","split","fullName","user","email","features","optional","getFiles","_filter$join","_options$description","pkgName","author","authorName","authorEmail","filter","Boolean","join","prettierConfig","bracketSpacing","printWidth","semi","singleQuote","tabWidth","plugins","overrides","files","pkgJson","version","keywords","license","exports","types","typescript","require","import","main","module","scripts","build","clean","format","prettier","dependencies","devDependencies","rimraf","engines","node","push","contents","outdent","_templateObject","_taggedTemplateLiteral","_templateObject2","_templateObject3","repository","url","concat","bugs","homepage","mainExport","isRecord","eslint","eslintConfig","root","env","browser","es6","extends","parserOptions","ecmaVersion","sourceType","rules","location","terms","_templateObject4","lint","eslintConfigOverride","parser","project","resolve","_templateObject5","JSON","stringify","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_pkgJson$dependencies","resolveLatestDeps","error","warn","message","_pkgJson$devDependenc","filepath","input","prettierOptions","deps","depsEntries","Object","entries","latestDeps","entry","latestVersion","getLatestVersion"],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+ var path = require('path');
7
+ var rxjs = require('rxjs');
8
+ var loadConfig = require('./core/config/loadConfig.cjs');
9
+ require('fs/promises');
10
+ require('pkg-up');
11
+ require('./core/pkg/validatePkg.cjs');
12
+ var loadPkgWithReporting = require('./core/pkg/loadPkgWithReporting.cjs');
13
+ var pkgExt = require('./core/pkg/pkgExt.cjs');
14
+ require('mkdirp');
15
+ require('prompts');
16
+ require('typescript');
17
+ var logger = require('./logger.cjs');
18
+ var resolveBuildContext = require('./resolveBuildContext.cjs');
19
+ var resolveWatchTasks = require('./resolveWatchTasks.cjs');
20
+ var index = require('./tasks/index.cjs');
21
+ var watchConfigFiles = require('./watchConfigFiles.cjs');
22
+ function _interopDefaultCompat(e) {
23
+ return e && typeof e === 'object' && 'default' in e ? e : {
24
+ default: e
25
+ };
26
+ }
27
+ var path__default = /*#__PURE__*/_interopDefaultCompat(path);
28
+ async function watch(options) {
29
+ const {
30
+ cwd,
31
+ strict = false,
32
+ tsconfig: tsconfigOption
33
+ } = options;
34
+ const logger$1 = logger.createLogger();
35
+ const configFiles$ = await watchConfigFiles.watchConfigFiles({
36
+ cwd,
37
+ logger: logger$1
38
+ });
39
+ const ctx$ = configFiles$.pipe(rxjs.switchMap(async configFiles => {
40
+ var _ref;
41
+ const files = configFiles.map(f => path__default.default.relative(cwd, f));
42
+ const packageJsonPath = files.find(f => f === "package.json");
43
+ if (!packageJsonPath) {
44
+ throw new Error("missing package.json");
45
+ }
46
+ const pkg = await loadPkgWithReporting.loadPkgWithReporting({
47
+ cwd,
48
+ logger: logger$1
49
+ });
50
+ const config = await loadConfig.loadConfig({
51
+ cwd
52
+ });
53
+ const extMap = pkgExt.getPkgExtMap({
54
+ legacyExports: (_ref = config == null ? void 0 : config.legacyExports) !== null && _ref !== void 0 ? _ref : false
55
+ });
56
+ const tsconfig = tsconfigOption || (config == null ? void 0 : config.tsconfig) || "tsconfig.json";
57
+ return resolveBuildContext.resolveBuildContext({
58
+ config,
59
+ cwd,
60
+ extMap,
61
+ logger: logger$1,
62
+ pkg,
63
+ strict,
64
+ tsconfig
65
+ });
66
+ }));
67
+ ctx$.subscribe(async ctx => {
68
+ const watchTasks = resolveWatchTasks.resolveWatchTasks(ctx);
69
+ for (const task of watchTasks) {
70
+ const handler = index.watchTaskHandlers[task.type];
71
+ const result$ = handler.exec(ctx, task);
72
+ result$.subscribe({
73
+ error: err => {
74
+ ctx.logger.error(err);
75
+ ctx.logger.log();
76
+ process.exit(1);
77
+ },
78
+ next: result => {
79
+ handler.complete(ctx, task, result);
80
+ },
81
+ complete: () => {
82
+ ctx.logger.success(handler.name(ctx, task));
83
+ ctx.logger.log();
84
+ }
85
+ });
86
+ }
87
+ });
88
+ }
89
+ exports.watch = watch;
90
+ //# sourceMappingURL=watch.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch.cjs","sources":["../../../src/node/watch.ts"],"sourcesContent":["import path from 'path'\nimport {switchMap} from 'rxjs'\n\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveWatchTasks} from './resolveWatchTasks'\nimport {TaskHandler, WatchTask, watchTaskHandlers} from './tasks'\nimport {watchConfigFiles} from './watchConfigFiles'\n\n/** @public */\nexport async function watch(options: {\n cwd: string\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n const {cwd, strict = false, tsconfig: tsconfigOption} = options\n\n const logger = createLogger()\n\n const configFiles$ = await watchConfigFiles({cwd, logger})\n\n const ctx$ = configFiles$.pipe(\n switchMap(async (configFiles) => {\n const files = configFiles.map((f) => path.relative(cwd, f))\n\n const packageJsonPath = files.find((f) => f === 'package.json')\n\n if (!packageJsonPath) {\n throw new Error('missing package.json')\n }\n\n const pkg = await loadPkgWithReporting({cwd, logger})\n const config = await loadConfig({cwd})\n const extMap = getPkgExtMap({legacyExports: config?.legacyExports ?? false})\n const tsconfig = tsconfigOption || config?.tsconfig || 'tsconfig.json'\n\n return resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\n }),\n )\n\n ctx$.subscribe(async (ctx) => {\n const watchTasks = resolveWatchTasks(ctx)\n\n for (const task of watchTasks) {\n const handler = watchTaskHandlers[task.type] as TaskHandler<WatchTask, unknown>\n const result$ = handler.exec(ctx, task)\n\n result$.subscribe({\n error: (err) => {\n ctx.logger.error(err)\n ctx.logger.log()\n\n process.exit(1)\n },\n next: (result) => {\n handler.complete(ctx, task, result)\n },\n complete: () => {\n ctx.logger.success(handler.name(ctx, task))\n ctx.logger.log()\n },\n })\n }\n })\n}\n"],"names":["watch","options","cwd","strict","tsconfig","tsconfigOption","logger","createLogger","configFiles$","watchConfigFiles","ctx$","pipe","switchMap","configFiles","_ref","files","map","f","path","default","relative","packageJsonPath","find","Error","pkg","loadPkgWithReporting","config","loadConfig","extMap","getPkgExtMap","legacyExports","resolveBuildContext","subscribe","ctx","watchTasks","resolveWatchTasks","task","handler","watchTaskHandlers","type","result$","exec","error","err","log","process","exit","next","result","complete","success","name"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,eAAsBA,MAAMC,OAIV,EAAA;EAChB,MAAM;IAACC,GAAK;IAAAC,MAAA,GAAS,KAAO;IAAAC,QAAA,EAAUC;EAAkB,CAAA,GAAAJ,OAAA;EAExD,MAAMK,WAASC,MAAAA,CAAAA,YAAa,EAAA;EAE5B,MAAMC,eAAe,MAAMC,gBAAA,CAAAA,gBAAA,CAAiB;IAACP,GAAA;IAAKI,MAAAA,EAAAA;EAAO,CAAA,CAAA;EAEzD,MAAMI,OAAOF,YAAa,CAAAG,IAAA,CACxBC,IAAA,CAAAA,SAAA,CAAU,MAAOC,WAAgB,IAAA;IAAA,IAAAC,IAAA;IACzB,MAAAC,KAAA,GAAQF,YAAYG,GAAI,CAACC,KAAMC,aAAK,CAAAC,OAAA,CAAAC,QAAA,CAASlB,GAAK,EAAAe,CAAC,CAAC,CAAA;IAE1D,MAAMI,kBAAkBN,KAAM,CAAAO,IAAA,CAAML,CAAA,IAAMA,MAAM,cAAc,CAAA;IAE9D,IAAI,CAACI,eAAiB,EAAA;MACd,MAAA,IAAIE,MAAM,sBAAsB,CAAA;IACxC;IAEA,MAAMC,MAAM,MAAMC,oBAAA,CAAAA,oBAAA,CAAqB;MAACvB,GAAA;MAAKI,MAAAA,EAAAA;IAAO,CAAA,CAAA;IACpD,MAAMoB,MAAS,GAAA,MAAMC,UAAAA,CAAAA,UAAW,CAAA;MAACzB;IAAI,CAAA,CAAA;IACrC,MAAM0B,SAASC,MAAAA,CAAAA,YAAa,CAAA;MAACC,uBAAeJ,MAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAAI,aAAA,cAAAhB,IAAA,cAAAA,IAAA,GAAiB;IAAM,CAAA,CAAA;IACrE,MAAAV,QAAA,GAAWC,cAAkB,KAAAqB,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAQtB,QAAY,CAAA,IAAA,eAAA;IAEhD,OAAA2B,mBAAA,CAAAA,mBAAA,CAAoB;MAACL,MAAQ;MAAAxB,GAAA;MAAK0B;cAAQtB,QAAQ;MAAAkB,GAAA;MAAKrB,MAAQ;MAAAC;IAAA,CAAS,CAAA;EAAA,CAChF,CAAA,CACH;EAEKM,IAAA,CAAAsB,SAAA,CAAU,MAAOC,GAAQ,IAAA;IACtB,MAAAC,UAAA,GAAaC,oCAAkBF,GAAG,CAAA;IAExC,KAAA,MAAWG,QAAQF,UAAY,EAAA;MACvB,MAAAG,OAAA,GAAUC,KAAAA,CAAAA,iBAAkB,CAAAF,IAAA,CAAKG,IAAI,CAAA;MAC3C,MAAMC,OAAU,GAAAH,OAAA,CAAQI,IAAK,CAAAR,GAAA,EAAKG,IAAI,CAAA;MAEtCI,OAAA,CAAQR,SAAU,CAAA;QAChBU,KAAA,EAAQC,GAAQ,IAAA;UACVV,GAAA,CAAA3B,MAAA,CAAOoC,MAAMC,GAAG,CAAA;UACpBV,GAAA,CAAI3B,OAAOsC,GAAI,EAAA;UAEfC,OAAA,CAAQC,KAAK,CAAC,CAAA;QAChB,CAAA;QACAC,IAAA,EAAOC,MAAW,IAAA;UACRX,OAAA,CAAAY,QAAA,CAAShB,GAAK,EAAAG,IAAA,EAAMY,MAAM,CAAA;QACpC,CAAA;QACAC,UAAUA,CAAA,KAAM;UACdhB,GAAA,CAAI3B,OAAO4C,OAAQ,CAAAb,OAAA,CAAQc,IAAK,CAAAlB,GAAA,EAAKG,IAAI,CAAC,CAAA;UAC1CH,GAAA,CAAI3B,OAAOsC,GAAI,EAAA;QACjB;MAAA,CACD,CAAA;IACH;EAAA,CACD,CAAA;AACH;"}
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+ var path = require('path');
7
+ var operators = require('rxjs/operators');
8
+ var globFiles = require('./globFiles.cjs');
9
+ var watchFiles = require('./watchFiles.cjs');
10
+ function _interopDefaultCompat(e) {
11
+ return e && typeof e === 'object' && 'default' in e ? e : {
12
+ default: e
13
+ };
14
+ }
15
+ var path__default = /*#__PURE__*/_interopDefaultCompat(path);
16
+ async function watchConfigFiles(options) {
17
+ const {
18
+ cwd,
19
+ logger
20
+ } = options;
21
+ const initialFiles = await globFiles.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")]);
22
+ const fileEvent$ = watchFiles.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")]);
23
+ return fileEvent$.pipe(operators.scan((files, fileEvent) => {
24
+ if (fileEvent.type === "add") {
25
+ return files.concat(fileEvent.file);
26
+ }
27
+ if (fileEvent.type === "unlink") {
28
+ return files.filter(f => f !== fileEvent.file);
29
+ }
30
+ if (fileEvent.type === "change") {
31
+ logger.log("--------------------------------------------------------------------------------");
32
+ logger.info(path__default.default.relative(cwd, fileEvent.file), "changed");
33
+ logger.log("");
34
+ return files.slice(0);
35
+ }
36
+ return files;
37
+ }, initialFiles), operators.startWith(initialFiles), operators.distinctUntilChanged());
38
+ }
39
+ exports.watchConfigFiles = watchConfigFiles;
40
+ //# sourceMappingURL=watchConfigFiles.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watchConfigFiles.cjs","sources":["../../../src/node/watchConfigFiles.ts"],"sourcesContent":["import path from 'path'\nimport {Observable} from 'rxjs'\nimport {distinctUntilChanged, scan, startWith} from 'rxjs/operators'\n\nimport {globFiles} from './globFiles'\nimport {Logger} from './logger'\nimport {watchFiles} from './watchFiles'\n\nexport async function watchConfigFiles(options: {\n cwd: string\n logger: Logger\n}): Promise<Observable<string[]>> {\n const {cwd, logger} = options\n\n const initialFiles = await globFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n const fileEvent$ = watchFiles([\n path.resolve(cwd, 'package.json'),\n path.resolve(cwd, 'package.config.cjs'),\n path.resolve(cwd, 'package.config.js'),\n path.resolve(cwd, 'package.config.ts'),\n ])\n\n return fileEvent$.pipe(\n scan((files, fileEvent) => {\n if (fileEvent.type === 'add') {\n return files.concat(fileEvent.file)\n }\n\n if (fileEvent.type === 'unlink') {\n return files.filter((f) => f !== fileEvent.file)\n }\n\n if (fileEvent.type === 'change') {\n logger.log(\n '--------------------------------------------------------------------------------',\n )\n logger.info(path.relative(cwd, fileEvent.file), 'changed')\n logger.log('')\n\n return files.slice(0) // trigger update\n }\n\n return files\n }, initialFiles),\n startWith(initialFiles),\n distinctUntilChanged(),\n )\n}\n"],"names":["watchConfigFiles","options","cwd","logger","initialFiles","globFiles","path","resolve","fileEvent$","watchFiles","pipe","scan","files","fileEvent","type","concat","file","filter","f","log","info","relative","slice","startWith","distinctUntilChanged"],"mappings":";;;;;;;;;;;;;;;AAQA,eAAsBA,iBAAiBC,OAGL,EAAA;EAC1B,MAAA;IAACC,GAAK;IAAAC;EAAU,CAAA,GAAAF,OAAA;EAEhB,MAAAG,YAAA,GAAe,MAAMC,mBAAU,CAAA,CACnCC,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,cAAc,CAAA,EAChCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,oBAAoB,CAAA,EACtCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,EACrCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,CACtC,CAAA;EAED,MAAMM,aAAaC,UAAAA,CAAAA,UAAW,CAAA,CAC5BH,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,cAAc,CAAA,EAChCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,oBAAoB,CAAA,EACtCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,EACrCI,qBAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,CACtC,CAAA;EAED,OAAOM,UAAW,CAAAE,IAAA,CAChBC,cAAA,CAAK,CAACC,KAAA,EAAOC,SAAc,KAAA;IACrB,IAAAA,SAAA,CAAUC,SAAS,KAAO,EAAA;MACrB,OAAAF,KAAA,CAAMG,MAAO,CAAAF,SAAA,CAAUG,IAAI,CAAA;IACpC;IAEI,IAAAH,SAAA,CAAUC,SAAS,QAAU,EAAA;MAC/B,OAAOF,MAAMK,MAAO,CAACC,CAAM,IAAAA,CAAA,KAAML,UAAUG,IAAI,CAAA;IACjD;IAEI,IAAAH,SAAA,CAAUC,SAAS,QAAU,EAAA;MACxBX,MAAA,CAAAgB,GAAA,CACL,kFAAA,CACF;MACAhB,MAAA,CAAOiB,KAAKd,aAAAA,CAAAA,OAAK,CAAAe,QAAA,CAASnB,KAAKW,SAAU,CAAAG,IAAI,GAAG,SAAS,CAAA;MACzDb,MAAA,CAAOgB,IAAI,EAAE,CAAA;MAEN,OAAAP,KAAA,CAAMU,MAAM,CAAC,CAAA;IACtB;IAEO,OAAAV,KAAA;KACNR,YAAY,CAAA,EACfmB,SAAAA,CAAAA,UAAUnB,YAAY,CAAA,EACtBoB,8BAAqB,CAAA,CAAA,CACvB;AACF;"}
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', {
4
+ value: true
5
+ });
6
+ var chokidar = require('chokidar');
7
+ var rxjs = require('rxjs');
8
+ function _interopDefaultCompat(e) {
9
+ return e && typeof e === 'object' && 'default' in e ? e : {
10
+ default: e
11
+ };
12
+ }
13
+ var chokidar__default = /*#__PURE__*/_interopDefaultCompat(chokidar);
14
+ function watchFiles(patterns) {
15
+ return new rxjs.Observable(observer => {
16
+ const watcher = chokidar__default.default.watch(patterns, {
17
+ ignoreInitial: true
18
+ });
19
+ function handleFileEvent(type, file) {
20
+ observer.next({
21
+ type,
22
+ file
23
+ });
24
+ }
25
+ watcher.on("all", handleFileEvent);
26
+ return () => {
27
+ watcher.off("all", handleFileEvent);
28
+ watcher.close();
29
+ };
30
+ });
31
+ }
32
+ exports.watchFiles = watchFiles;
33
+ //# sourceMappingURL=watchFiles.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watchFiles.cjs","sources":["../../../src/node/watchFiles.ts"],"sourcesContent":["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"],"names":["watchFiles","patterns","Observable","observer","watcher","chokidar","watch","ignoreInitial","handleFileEvent","type","file","next","on","off","close"],"mappings":";;;;;;;;;;;;;AAQO,SAASA,WAAWC,QAA2C,EAAA;EAC7D,OAAA,IAAIC,IAAAA,CAAAA,UAAW,CAACC,QAAa,IAAA;IAC5B,MAAAC,OAAA,GAAUC,iBAAAA,CAAAA,OAAS,CAAAC,KAAA,CAAML,QAAU,EAAA;MACvCM,aAAe,EAAA;IAAA,CAChB,CAAA;IAEQ,SAAAC,eAAAA,CACPC,MACAC,IACA,EAAA;MACAP,QAAA,CAASQ,IAAK,CAAA;QAACF,IAAM;QAAAC;MAAK,CAAA,CAAA;IAC5B;IAEQN,OAAA,CAAAQ,EAAA,CAAG,OAAOJ,eAAe,CAAA;IAEjC,OAAO,MAAM;MACHJ,OAAA,CAAAS,GAAA,CAAI,OAAOL,eAAe,CAAA;MAClCJ,OAAA,CAAQU,KAAM,CAAA,CAAA;IAAA,CAChB;EAAA,CACD,CAAA;AACH;"}
@@ -0,0 +1,12 @@
1
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
+ 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); }
4
+ class DtsError extends Error {
5
+ constructor(message, messages) {
6
+ super(message);
7
+ _defineProperty(this, "messages", void 0);
8
+ this.messages = messages;
9
+ }
10
+ }
11
+ export { DtsError };
12
+ //# sourceMappingURL=DtsError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DtsError.js","sources":["../../../src/node/tasks/dts/DtsError.ts"],"sourcesContent":["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"],"names":["DtsError","Error","constructor","message","messages","_defineProperty"],"mappings":";;;AAGO,MAAMA,iBAAiBC,KAAM,CAAA;EAGlCC,WAAAA,CAAYC,SAAiBC,QAA8B,EAAA;IACzD,KAAA,CAAMD,OAAO,CAAA;IAAAE,eAAA;IACb,IAAA,CAAKD,QAAW,GAAAA,QAAA;EAClB;AACF;"}
@@ -0,0 +1,39 @@
1
+ import ts from 'typescript';
2
+ import { printDiagnostic } from './printDiagnostic.js';
3
+ async function buildTypes(options) {
4
+ const {
5
+ cwd,
6
+ logger,
7
+ outDir,
8
+ tsconfig,
9
+ strict = false
10
+ } = options;
11
+ const compilerOptions = {
12
+ ...tsconfig.options,
13
+ declaration: true,
14
+ declarationDir: outDir,
15
+ emitDeclarationOnly: true,
16
+ noEmit: false,
17
+ outDir
18
+ };
19
+ const program = ts.createProgram(tsconfig.fileNames, compilerOptions);
20
+ const emitResult = program.emit();
21
+ const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
22
+ for (const diagnostic of allDiagnostics) {
23
+ printDiagnostic({
24
+ cwd,
25
+ logger,
26
+ diagnostic
27
+ });
28
+ }
29
+ if (emitResult.emitSkipped) {
30
+ const errors = allDiagnostics.filter(diag => diag.category === ts.DiagnosticCategory.Error);
31
+ if (errors.length) {
32
+ if (strict) {
33
+ throw new Error("failed to compile TypeScript definitions");
34
+ }
35
+ }
36
+ }
37
+ }
38
+ export { buildTypes };
39
+ //# sourceMappingURL=buildTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildTypes.js","sources":["../../../src/node/tasks/dts/buildTypes.ts"],"sourcesContent":["import ts from 'typescript'\n\nimport {Logger} from '../../logger'\nimport {printDiagnostic} from './printDiagnostic'\n\n/** @internal */\nexport async function buildTypes(options: {\n cwd: string\n logger: Logger\n outDir: string\n tsconfig: ts.ParsedCommandLine\n strict: boolean\n}): Promise<void> {\n const {cwd, logger, outDir, tsconfig, strict = false} = options\n\n const compilerOptions: ts.CompilerOptions = {\n ...tsconfig.options,\n declaration: true,\n declarationDir: outDir,\n emitDeclarationOnly: true,\n noEmit: false,\n outDir,\n }\n\n const program = ts.createProgram(tsconfig.fileNames, compilerOptions)\n\n const emitResult = program.emit()\n\n const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics)\n\n for (const diagnostic of allDiagnostics) {\n printDiagnostic({cwd, logger, diagnostic})\n }\n\n if (emitResult.emitSkipped) {\n const errors = allDiagnostics.filter((diag) => diag.category === ts.DiagnosticCategory.Error)\n\n if (errors.length) {\n if (strict) {\n throw new Error('failed to compile TypeScript definitions')\n }\n }\n }\n}\n"],"names":["buildTypes","options","cwd","logger","outDir","tsconfig","strict","compilerOptions","declaration","declarationDir","emitDeclarationOnly","noEmit","program","ts","createProgram","fileNames","emitResult","emit","allDiagnostics","getPreEmitDiagnostics","concat","diagnostics","diagnostic","printDiagnostic","emitSkipped","errors","filter","diag","category","DiagnosticCategory","Error","length"],"mappings":";;AAMA,eAAsBA,WAAWC,OAMf,EAAA;EAChB,MAAM;IAACC,GAAK;IAAAC,MAAA;IAAQC;IAAQC,QAAU;IAAAC,MAAA,GAAS;EAAS,CAAA,GAAAL,OAAA;EAExD,MAAMM,eAAsC,GAAA;IAC1C,GAAGF,QAAS,CAAAJ,OAAA;IACZO,WAAa,EAAA,IAAA;IACbC,cAAgB,EAAAL,MAAA;IAChBM,mBAAqB,EAAA,IAAA;IACrBC,MAAQ,EAAA,KAAA;IACRP;EAAA,CACF;EAEA,MAAMQ,OAAU,GAAAC,EAAA,CAAGC,aAAc,CAAAT,QAAA,CAASU,WAAWR,eAAe,CAAA;EAE9D,MAAAS,UAAA,GAAaJ,QAAQK,IAAK,EAAA;EAEhC,MAAMC,iBAAiBL,EAAG,CAAAM,qBAAA,CAAsBP,OAAO,CAAE,CAAAQ,MAAA,CAAOJ,WAAWK,WAAW,CAAA;EAEtF,KAAA,MAAWC,cAAcJ,cAAgB,EAAA;IACvCK,eAAA,CAAgB;MAACrB,GAAA;MAAKC,MAAQ;MAAAmB;IAAW,CAAA,CAAA;EAC3C;EAEA,IAAIN,WAAWQ,WAAa,EAAA;IACpB,MAAAC,MAAA,GAASP,eAAeQ,MAAO,CAACC,QAASA,IAAK,CAAAC,QAAA,KAAaf,EAAG,CAAAgB,kBAAA,CAAmBC,KAAK,CAAA;IAE5F,IAAIL,OAAOM,MAAQ,EAAA;MACjB,IAAIzB,MAAQ,EAAA;QACJ,MAAA,IAAIwB,MAAM,0CAA0C,CAAA;MAC5D;IACF;EACF;AACF;"}
@@ -0,0 +1,41 @@
1
+ import path from 'path';
2
+ function createApiExtractorConfig(options) {
3
+ const {
4
+ distPath,
5
+ exportPath,
6
+ filePath,
7
+ messages,
8
+ projectFolder,
9
+ mainEntryPointFilePath,
10
+ tsconfigPath
11
+ } = options;
12
+ return {
13
+ apiReport: {
14
+ enabled: false,
15
+ reportFileName: "<unscopedPackageName>.api.md"
16
+ },
17
+ // bundledPackages: [],
18
+ compiler: {
19
+ tsconfigFilePath: tsconfigPath
20
+ },
21
+ docModel: {
22
+ enabled: false,
23
+ apiJsonFilePath: path.resolve(distPath, "".concat(exportPath, ".api.json"))
24
+ },
25
+ dtsRollup: {
26
+ enabled: true,
27
+ untrimmedFilePath: path.resolve(distPath, filePath)
28
+ // betaTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-beta.d.ts')),
29
+ // publicTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-public.d.ts')),
30
+ },
31
+
32
+ tsdocMetadata: {
33
+ enabled: false
34
+ },
35
+ messages,
36
+ mainEntryPointFilePath,
37
+ projectFolder
38
+ };
39
+ }
40
+ export { createApiExtractorConfig };
41
+ //# sourceMappingURL=createApiExtractorConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createApiExtractorConfig.js","sources":["../../../src/node/tasks/dts/createApiExtractorConfig.ts"],"sourcesContent":["import {IConfigFile, IExtractorMessagesConfig} from '@microsoft/api-extractor'\nimport path from 'path'\n\nexport function createApiExtractorConfig(options: {\n distPath: string\n exportPath: string\n filePath: string\n messages: IExtractorMessagesConfig\n projectFolder: string\n mainEntryPointFilePath: string\n tsconfigPath: string\n}): IConfigFile {\n const {\n distPath,\n exportPath,\n filePath,\n messages,\n projectFolder,\n mainEntryPointFilePath,\n tsconfigPath,\n } = options\n\n return {\n apiReport: {\n enabled: false,\n reportFileName: '<unscopedPackageName>.api.md',\n },\n // bundledPackages: [],\n compiler: {\n tsconfigFilePath: tsconfigPath,\n },\n docModel: {\n enabled: false,\n apiJsonFilePath: path.resolve(distPath, `${exportPath}.api.json`),\n },\n dtsRollup: {\n enabled: true,\n untrimmedFilePath: path.resolve(distPath, filePath),\n // betaTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-beta.d.ts')),\n // publicTrimmedFilePath: path.resolve(distPath, filePath.replace('.d.ts', '-public.d.ts')),\n },\n tsdocMetadata: {\n enabled: false,\n },\n messages,\n mainEntryPointFilePath,\n projectFolder,\n }\n}\n"],"names":["createApiExtractorConfig","options","distPath","exportPath","filePath","messages","projectFolder","mainEntryPointFilePath","tsconfigPath","apiReport","enabled","reportFileName","compiler","tsconfigFilePath","docModel","apiJsonFilePath","path","resolve","concat","dtsRollup","untrimmedFilePath","tsdocMetadata"],"mappings":";AAGO,SAASA,yBAAyBC,OAQzB,EAAA;EACR,MAAA;IACJC,QAAA;IACAC,UAAA;IACAC,QAAA;IACAC,QAAA;IACAC,aAAA;IACAC,sBAAA;IACAC;EACE,CAAA,GAAAP,OAAA;EAEG,OAAA;IACLQ,SAAW,EAAA;MACTC,OAAS,EAAA,KAAA;MACTC,cAAgB,EAAA;IAClB,CAAA;IAAA;IAEAC,QAAU,EAAA;MACRC,gBAAkB,EAAAL;IACpB,CAAA;IACAM,QAAU,EAAA;MACRJ,OAAS,EAAA,KAAA;MACTK,iBAAiBC,IAAK,CAAAC,OAAA,CAAQf,QAAU,KAAAgB,MAAA,CAAGf,UAAU,cAAW;IAClE,CAAA;IACAgB,SAAW,EAAA;MACTT,OAAS,EAAA,IAAA;MACTU,iBAAmB,EAAAJ,IAAA,CAAKC,OAAQ,CAAAf,QAAA,EAAUE,QAAQ;MAAA;MAAA;IAGpD,CAAA;;IACAiB,aAAe,EAAA;MACbX,OAAS,EAAA;IACX,CAAA;IACAL,QAAA;IACAE,sBAAA;IACAD;EAAA,CACF;AACF;"}
@@ -0,0 +1,32 @@
1
+ import { TSDocConfigFile } from '@microsoft/tsdoc-config';
2
+ import { readFile } from 'fs/promises';
3
+ import { parse } from 'jsonc-parser';
4
+ async function createTSDocConfig(opts) {
5
+ const {
6
+ customTags
7
+ } = opts;
8
+ if (customTags.length === 0) {
9
+ return void 0;
10
+ }
11
+ const tsDocBaseBuf = await readFile(require.resolve("@microsoft/api-extractor/extends/tsdoc-base.json"));
12
+ const tsDocBaseConfig = parse(tsDocBaseBuf.toString());
13
+ const tagDefinitions = (tsDocBaseConfig.tagDefinitions || []).concat(customTags.map(t => ({
14
+ tagName: "@".concat(t.name),
15
+ syntaxKind: t.syntaxKind,
16
+ allowMultiple: t.allowMultiple
17
+ })));
18
+ const supportForTags = {
19
+ ...tsDocBaseConfig.supportForTags
20
+ };
21
+ for (const customTag of customTags) {
22
+ supportForTags["@".concat(customTag.name)] = true;
23
+ }
24
+ return TSDocConfigFile.loadFromObject({
25
+ ...tsDocBaseConfig,
26
+ noStandardTags: false,
27
+ tagDefinitions,
28
+ supportForTags
29
+ });
30
+ }
31
+ export { createTSDocConfig };
32
+ //# sourceMappingURL=createTSDocConfig.js.map