@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
@@ -15,6 +15,7 @@ export async function loadPkgWithReporting(options: {
15
15
 
16
16
  try {
17
17
  const pkg = await loadPkg({cwd})
18
+ let shouldError = false
18
19
 
19
20
  // validate exports
20
21
  if (pkg.exports) {
@@ -28,33 +29,105 @@ export async function loadPkgWithReporting(options: {
28
29
  const keys = Object.keys(exp)
29
30
 
30
31
  if (!assertFirst('types', keys)) {
31
- logger.warn(`exports["${expPath}"]: the \`types\` property should be the first property`)
32
+ shouldError = true
33
+ logger.error(`exports["${expPath}"]: the \`types\` property should be the first property`)
32
34
  }
33
35
 
34
- if (!assertOrder('require', 'import', keys)) {
35
- logger.warn(
36
- `exports["${expPath}"]: the \`require\` property should come before the \`import\` property`,
37
- )
38
- }
39
-
40
- if (!assertOrder('require', 'node', keys)) {
41
- logger.warn(
42
- `exports["${expPath}"]: the \`require\` property should come before the \`node\` property`,
43
- )
44
- }
45
-
46
- if (!assertOrder('node', 'import', keys)) {
47
- logger.warn(
48
- `exports["${expPath}"]: the \`node\` property should come before \`import\` property`,
49
- )
36
+ if (exp.node) {
37
+ const nodeKeys = Object.keys(exp.node)
38
+
39
+ if (!assertOrder('module', 'import', nodeKeys)) {
40
+ shouldError = true
41
+ logger.error(
42
+ `exports["${expPath}"]: the \`node.module\` property should come before the \`node.import\` property`,
43
+ )
44
+ }
45
+
46
+ if (!assertOrder('import', 'require', nodeKeys)) {
47
+ logger.warn(
48
+ `exports["${expPath}"]: the \`node.import\` property should come before the \`node.require\` property`,
49
+ )
50
+ }
51
+
52
+ if (!assertOrder('module', 'require', nodeKeys)) {
53
+ logger.warn(
54
+ `exports["${expPath}"]: the \`node.module\` property should come before \`node.require\` property`,
55
+ )
56
+ }
57
+
58
+ if (exp.import && exp.node.import && !assertOrder('node', 'import', keys)) {
59
+ shouldError = true
60
+ logger.error(
61
+ `exports["${expPath}"]: the \`node\` property should come before the \`import\` property`,
62
+ )
63
+ }
64
+
65
+ if (exp.module && exp.node.module && !assertOrder('node', 'module', keys)) {
66
+ shouldError = true
67
+ logger.error(
68
+ `exports["${expPath}"]: the \`node\` property should come before the \`module\` property`,
69
+ )
70
+ }
71
+
72
+ // If there's a `node.import` property but not a `node.require` we can assume `node.import` is wrapping `import` and `node.module` should be added for bundlers
73
+ if (exp.node.import && !exp.node.require && !exp.node.module) {
74
+ shouldError = true
75
+ logger.error(
76
+ `exports["${expPath}"]: the \`node.module\` property should be added so bundlers don't unintentionally try to bundle \`node.import\``,
77
+ )
78
+ }
79
+
80
+ if (
81
+ exp.node.import &&
82
+ !exp.node.require &&
83
+ exp.node.module &&
84
+ exp.import &&
85
+ exp.node.module !== exp.import
86
+ ) {
87
+ shouldError = true
88
+ logger.error(
89
+ `exports["${expPath}"]: the \`node.module\` property should match \`import\``,
90
+ )
91
+ }
92
+
93
+ if (exp.require && exp.node.require && exp.require === exp.node.require) {
94
+ shouldError = true
95
+ logger.error(
96
+ `exports["${expPath}"]: the \`node.require\` property isn't necessary as it's identical to \`require\``,
97
+ )
98
+ } else if (exp.require && exp.node.require && !assertOrder('node', 'require', keys)) {
99
+ shouldError = true
100
+ logger.error(
101
+ `exports["${expPath}"]: the \`node\` property should come before the \`require\` property`,
102
+ )
103
+ }
104
+ } else {
105
+ if (!assertOrder('import', 'require', keys)) {
106
+ logger.warn(
107
+ `exports["${expPath}"]: the \`import\` property should come before the \`require\` property`,
108
+ )
109
+ }
110
+
111
+ if (!assertOrder('module', 'import', keys)) {
112
+ logger.warn(
113
+ `exports["${expPath}"]: the \`module\` property should come before \`import\` property`,
114
+ )
115
+ }
50
116
  }
51
117
 
52
118
  if (!assertLast('default', keys)) {
53
- logger.warn(`exports["${expPath}"]: the \`default\` property should be the last property`)
119
+ shouldError = true
120
+ logger.error(
121
+ `exports["${expPath}"]: the \`default\` property should be the last property`,
122
+ )
54
123
  }
55
124
  }
56
125
  }
57
126
 
127
+ if (shouldError) {
128
+ process.exit(1)
129
+ }
130
+
58
131
  return pkg
59
132
  } catch (err) {
60
133
  if (err instanceof ZodError) {
@@ -19,14 +19,16 @@ export interface PackageJSON {
19
19
  types?: string
20
20
  browser?: {
21
21
  source: string
22
- require?: string
23
22
  import?: string
23
+ require?: string
24
24
  }
25
25
  node?: {
26
26
  source?: string
27
- require?: string
27
+ module?: string
28
28
  import?: string
29
+ require?: string
29
30
  }
31
+ module?: string
30
32
  import?: string
31
33
  require?: string
32
34
  default: string
@@ -1,6 +1,7 @@
1
1
  import {z} from 'zod'
2
2
 
3
3
  import {PackageJSON} from './types'
4
+ import { assertFirst } from './helpers';
4
5
 
5
6
  const pkgSchema = z.object({
6
7
  type: z.optional(z.enum(['commonjs', 'module'])),
@@ -23,23 +24,50 @@ const pkgSchema = z.object({
23
24
  z.object({
24
25
  types: z.optional(z.string()),
25
26
  source: z.string(),
26
- require: z.optional(z.string()),
27
27
  browser: z.optional(
28
28
  z.object({
29
29
  source: z.string(),
30
- require: z.optional(z.string()),
31
30
  import: z.optional(z.string()),
31
+ require: z.optional(z.string()),
32
32
  }),
33
33
  ),
34
+ module: z.optional(z.string()),
34
35
  node: z.optional(
35
36
  z.object({
36
37
  source: z.optional(z.string()),
37
- require: z.optional(z.string()),
38
38
  import: z.optional(z.string()),
39
+ require: z.optional(z.string()),
39
40
  }),
40
41
  ),
41
42
  import: z.optional(z.string()),
43
+ require: z.optional(z.string()),
42
44
  default: z.string(),
45
+ }).superRefine((val, ctx) => {
46
+ const keys = Object.keys(val)
47
+
48
+ if (!assertFirst('types', keys)) {
49
+ ctx.addIssue({
50
+ code: z.ZodIssueCode.custom,
51
+ message:`the \`types\` property should be the first property`,
52
+ });
53
+ }
54
+
55
+ // if (val.length > 3) {
56
+ // ctx.addIssue({
57
+ // code: z.ZodIssueCode.too_big,
58
+ // maximum: 3,
59
+ // type: "array",
60
+ // inclusive: true,
61
+ // message: "Too many items 😡",
62
+ // });
63
+ // }
64
+
65
+ // if (val.length !== new Set(val).size) {
66
+ // ctx.addIssue({
67
+ // code: z.ZodIssueCode.custom,
68
+ // message: `No duplicates allowed.`,
69
+ // });
70
+ // }
43
71
  }),
44
72
  ]),
45
73
  ),
@@ -164,7 +164,7 @@ export function resolveBuildTasks(ctx: BuildContext): BuildTask[] {
164
164
  exp.node &&
165
165
  !exp.node.source &&
166
166
  exp.node.import &&
167
- exp.node.require &&
167
+ (exp.node.require || exp.require) &&
168
168
  (exp.node.import.endsWith('.cjs.js') || exp.node.import.endsWith('.cjs.mjs'))
169
169
  ) {
170
170
  const importId = path.join(pkg.name, exp._path)
@@ -172,7 +172,7 @@ export function resolveBuildTasks(ctx: BuildContext): BuildTask[] {
172
172
  nodeReexportCjsEntries.push({
173
173
  importId,
174
174
  import: exp.node.import,
175
- require: exp.node.require,
175
+ require: (exp.node.require || exp.require)!,
176
176
  })
177
177
  }
178
178
  }
@@ -76,7 +76,7 @@ function compileESMWrapper(mod: any, relativeImport: string) {
76
76
 
77
77
  if (mod.__esModule) {
78
78
  // If there is no default export, we shouldn't add it as it'll be undefined
79
- if ('default' in keys) {
79
+ if ('default' in mod) {
80
80
  code += `export default cjs.default;\n`
81
81
  }
82
82
  } else {
@@ -8,6 +8,7 @@ import terser from '@rollup/plugin-terser'
8
8
  import path from 'path'
9
9
  import {InputOptions, OutputOptions, Plugin} from 'rollup'
10
10
  import esbuild from 'rollup-plugin-esbuild'
11
+ import preserveDirectives from 'rollup-plugin-preserve-directives'
11
12
 
12
13
  import {BuildContext, DEFAULT_BROWSERSLIST_QUERY, resolveConfigProperty} from '../../core'
13
14
  import {RollupTask, RollupWatchTask} from '../types'
@@ -130,6 +131,8 @@ export function resolveRollupConfig(
130
131
  },
131
132
  },
132
133
  }),
134
+ // Allows marking export files with `'use client'` at the top
135
+ preserveDirectives(),
133
136
  ].filter(Boolean) as Plugin[]
134
137
 
135
138
  const userPlugins = config?.rollup?.plugins
@@ -212,6 +215,7 @@ export function resolveRollupConfig(
212
215
  minifyInternalExports: minify,
213
216
  sourcemap: config?.sourcemap ?? true,
214
217
  hoistTransitiveImports: false,
218
+ preserveModules: true,
215
219
  },
216
220
  }
217
221
  }
@@ -114,6 +114,14 @@ async function execPromise(ctx: BuildContext, task: RollupTask) {
114
114
  const bundle = await rollup({
115
115
  ...inputOptions,
116
116
  onwarn(warning) {
117
+ if (
118
+ warning.message.includes(
119
+ 'Module level directives cause errors when bundled, "use client" in',
120
+ )
121
+ ) {
122
+ // Ignore the directive warning until the preserveDirectives plugin does it automatically: https://github.com/Ephem/rollup-plugin-preserve-directives#rollup-plugin-preserve-directives-warning
123
+ return
124
+ }
117
125
  consoleSpy.messages.push({
118
126
  type: 'warn',
119
127
  code: warning.code,
@@ -1 +0,0 @@
1
- {"version":3,"file":"build-62cd452e.cjs","sources":["../../src/node/resolveBuildTasks.ts","../../src/node/spinner.ts","../../src/node/build.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\n\nimport {BuildContext, PkgExport, PkgFormat, PkgRuntime} from './core'\nimport {BuildTask, DtsTask, NodeReExportFromCJSTask, 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 const idx = bundles.indexOf(bundle)\n\n if (bundle.require) {\n addRollupTaskEntry('commonjs', bundle.runtime || ctx.runtime, {\n path: `__$$bundle_cjs_${idx}$$__`,\n source: bundle.source,\n output: bundle.require,\n })\n }\n\n if (bundle.import) {\n addRollupTaskEntry('esm', bundle.runtime || ctx.runtime, {\n path: `__$$bundle_esm_${idx}$$__`,\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 const nodeReexportCjsEntries: NodeReExportFromCJSTask['entries'] = []\n\n // Parse tasks to re-export from CommonJS for Node.js\n for (const exp of exports) {\n if (\n exp.node &&\n !exp.node.source &&\n exp.node.import &&\n exp.node.require &&\n (exp.node.import.endsWith('.cjs.js') || exp.node.import.endsWith('.cjs.mjs'))\n ) {\n const importId = path.join(pkg.name, exp._path)\n\n nodeReexportCjsEntries.push({\n importId,\n import: exp.node.import,\n require: exp.node.require,\n })\n }\n }\n\n if (nodeReexportCjsEntries.length) {\n tasks.push({\n type: 'node:reexport-cjs',\n entries: nodeReexportCjsEntries,\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(msg)\n\n return {\n complete: () => {\n console.log(`${chalk.green('[success]')} ${chalk.gray(`${Date.now() - startTime}ms`)}`)\n },\n error: () => {\n console.log(`${chalk.red(`[error]`)} ${chalk.gray(`${Date.now() - startTime}ms`)}`)\n },\n }\n}\n","import {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {createLogger} from './logger'\nimport {resolveBuildContext} from './resolveBuildContext'\nimport {resolveBuildTasks} from './resolveBuildTasks'\nimport {createSpinner} from './spinner'\nimport {BuildTask, buildTaskHandlers, TaskHandler} 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 const logger = createLogger()\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 const ctx = await resolveBuildContext({\n config,\n cwd,\n emitDeclarationOnly,\n extMap,\n logger,\n pkg,\n strict,\n tsconfig,\n })\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","_ref","_path","exp","dtsTask","type","rollupTasks","addRollupTaskEntry","format","runtime","entry","buildId","concat","push","importId","path","join","name","types","exportPath","sourcePath","source","targetPath","length","emitDeclarationOnly","output","require","import","browser","bundle","idx","indexOf","values","legacyExports","_exported","relativeTargetPath","replace","fs","writeFileSync","resolve","nodeReexportCjsEntries","node","endsWith","createSpinner","msg","startTime","Date","now","console","log","complete","chalk","green","default","gray","error","red","build","options","_ref2","strict","tsconfig","tsconfigOption","logger","createLogger","loadPkgWithReporting","loadConfig","extMap","getPkgExtMap","resolveBuildContext","buildTasks","task","handler","buildTaskHandlers","taskName","spinner","result","exec","toPromise","err","Error","RE_CWD","RegExp","message","process","exit"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildAction-b2571e76.cjs","sources":["../../src/cli/buildAction.ts"],"sourcesContent":["import {build} from '../node/build'\nimport {handleError} from './handleError'\n\nexport async function buildAction(options: {\n emitDeclarationOnly?: boolean\n strict?: boolean\n tsconfig?: string\n}): Promise<void> {\n try {\n await build({\n cwd: process.cwd(),\n emitDeclarationOnly: options.emitDeclarationOnly,\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["buildAction","options","build","cwd","process","emitDeclarationOnly","strict","tsconfig","err","handleError"],"mappings":";;;;AAGA,eAAsBA,YAAYC,OAIhB,EAAA;EACZ,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,CAAA,CAAA;MACjBE,qBAAqBJ,OAAQ,CAAAI,mBAAA;MAC7BC,QAAQL,OAAQ,CAAAK,MAAA;MAChBC,UAAUN,OAAQ,CAAAM;IAAA,CACnB,CAAA;WACMC,GAAK,EAAA;IACZC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}
@@ -1,250 +0,0 @@
1
- 'use strict';
2
-
3
- var esbuild = require('esbuild');
4
- var path = require('path');
5
- var consoleSpy = require('./consoleSpy-d738cb9f.cjs');
6
- require('fs/promises');
7
- require('pkg-up');
8
- var logger = require('./logger-c593f06b.cjs');
9
- require('mkdirp');
10
- require('prompts');
11
- require('typescript');
12
- var chalk = require('chalk');
13
- var treeify = require('treeify');
14
- var fs = require('fs');
15
- var prettyBytes = require('pretty-bytes');
16
- function _interopDefaultCompat(e) {
17
- return e && typeof e === 'object' && 'default' in e ? e : {
18
- default: e
19
- };
20
- }
21
- var esbuild__default = /*#__PURE__*/_interopDefaultCompat(esbuild);
22
- var path__default = /*#__PURE__*/_interopDefaultCompat(path);
23
- var chalk__default = /*#__PURE__*/_interopDefaultCompat(chalk);
24
- var treeify__default = /*#__PURE__*/_interopDefaultCompat(treeify);
25
- var prettyBytes__default = /*#__PURE__*/_interopDefaultCompat(prettyBytes);
26
- function getFilesize(file) {
27
- const stats = fs.statSync(file);
28
- return prettyBytes__default.default(stats.size);
29
- }
30
- function getFileInfo(cwd, filePath) {
31
- const p = path__default.default.resolve(cwd, filePath);
32
- const exists = logger.fileExists(p);
33
- const size = exists ? getFilesize(p) : void 0;
34
- return {
35
- exists,
36
- size
37
- };
38
- }
39
- function printPackageTree(ctx) {
40
- const {
41
- cwd,
42
- exports,
43
- logger,
44
- pkg
45
- } = ctx;
46
- if (!exports) return;
47
- logger.log("".concat(chalk__default.default.blue(pkg.name), "@").concat(chalk__default.default.green(pkg.version)));
48
- const tree = {};
49
- if (pkg.type) {
50
- tree.type = chalk__default.default.yellow(pkg.type);
51
- }
52
- if (pkg.bin) {
53
- tree.bin = Object.fromEntries(Object.entries(pkg.bin).map(_ref => {
54
- let [name, file] = _ref;
55
- return [chalk__default.default.cyan(name), fileInfo(file)];
56
- }));
57
- }
58
- function fileInfo(file) {
59
- const info = getFileInfo(cwd, file);
60
- if (!info.size) {
61
- return "".concat(chalk__default.default.gray(file), " ").concat(chalk__default.default.red("does not exist"));
62
- }
63
- return "".concat(chalk__default.default.yellow(file), " ").concat(chalk__default.default.gray(info.size));
64
- }
65
- tree.exports = Object.fromEntries(Object.entries(exports).filter(_ref2 => {
66
- let [, entry] = _ref2;
67
- return entry._exported;
68
- }).map(_ref3 => {
69
- let [exportPath, entry] = _ref3;
70
- const exp = {
71
- types: void 0,
72
- source: fileInfo(entry.source),
73
- browser: void 0,
74
- require: void 0,
75
- node: void 0,
76
- import: void 0,
77
- default: fileInfo(entry.default)
78
- };
79
- if (entry.types) {
80
- exp.types = fileInfo(entry.types);
81
- } else {
82
- delete exp.types;
83
- }
84
- if (entry.browser) {
85
- exp.browser = {
86
- source: fileInfo(entry.browser.source)
87
- };
88
- if (entry.browser.import) exp.browser.import = fileInfo(entry.browser.import);
89
- if (entry.browser.require) exp.browser.require = fileInfo(entry.browser.require);
90
- } else {
91
- delete exp.browser;
92
- }
93
- if (entry.require) {
94
- exp.require = fileInfo(entry.require);
95
- } else {
96
- delete exp.require;
97
- }
98
- if (entry.node) {
99
- exp.node = {};
100
- if (entry.node.source) exp.node.source = fileInfo(entry.node.source);
101
- if (entry.node.import) exp.node.import = fileInfo(entry.node.import);
102
- if (entry.node.require) exp.node.require = fileInfo(entry.node.require);
103
- } else {
104
- delete exp.node;
105
- }
106
- if (entry.import) {
107
- exp.import = fileInfo(entry.import);
108
- } else {
109
- delete exp.import;
110
- }
111
- return [chalk__default.default.cyan(path__default.default.join(pkg.name, exportPath)), exp];
112
- }));
113
- logger.log(treeify__default.default.asTree(tree, true, true));
114
- }
115
- async function check(options) {
116
- var _ref4;
117
- const {
118
- cwd,
119
- strict = false,
120
- tsconfig: tsconfigOption
121
- } = options;
122
- const logger$1 = logger.createLogger();
123
- const pkg = await consoleSpy.loadPkgWithReporting({
124
- cwd,
125
- logger: logger$1
126
- });
127
- const config = await consoleSpy.loadConfig({
128
- cwd
129
- });
130
- const extMap = consoleSpy.getPkgExtMap({
131
- legacyExports: (_ref4 = config == null ? void 0 : config.legacyExports) !== null && _ref4 !== void 0 ? _ref4 : false
132
- });
133
- const tsconfig = tsconfigOption || (config == null ? void 0 : config.tsconfig) || "tsconfig.json";
134
- const ctx = await consoleSpy.resolveBuildContext({
135
- config,
136
- cwd,
137
- extMap,
138
- logger: logger$1,
139
- pkg,
140
- strict,
141
- tsconfig
142
- });
143
- printPackageTree(ctx);
144
- if (strict) {
145
- const missingFiles = [];
146
- for (const [, exp] of Object.entries(ctx.exports || {})) {
147
- if (exp.source && !logger.fileExists(path__default.default.resolve(cwd, exp.source))) {
148
- missingFiles.push(exp.source);
149
- }
150
- if (exp.require && !logger.fileExists(path__default.default.resolve(cwd, exp.require))) {
151
- missingFiles.push(exp.require);
152
- }
153
- if (exp.import && !logger.fileExists(path__default.default.resolve(cwd, exp.import))) {
154
- missingFiles.push(exp.import);
155
- }
156
- if (exp.types && !logger.fileExists(path__default.default.resolve(cwd, exp.types))) {
157
- missingFiles.push(exp.types);
158
- }
159
- }
160
- if (missingFiles.length) {
161
- logger$1.error("missing files");
162
- process.exit(1);
163
- }
164
- const exportPaths = {
165
- require: [],
166
- import: []
167
- };
168
- for (const exp of Object.values(ctx.exports || {})) {
169
- if (!exp._exported) continue;
170
- if (exp.require) exportPaths.require.push(exp.require);
171
- if (exp.import) exportPaths.import.push(exp.import);
172
- }
173
- const external = [...Object.keys(pkg.dependencies || {}), ...Object.keys(pkg.devDependencies || {})];
174
- const consoleSpy$1 = consoleSpy.createConsoleSpy();
175
- if (exportPaths.import.length) {
176
- checkExports(exportPaths.import, {
177
- cwd,
178
- external,
179
- format: "esm",
180
- logger: logger$1
181
- });
182
- }
183
- if (exportPaths.require.length) {
184
- checkExports(exportPaths.require, {
185
- cwd,
186
- external,
187
- format: "cjs",
188
- logger: logger$1
189
- });
190
- }
191
- consoleSpy$1.restore();
192
- }
193
- }
194
- async function checkExports(exportPaths, options) {
195
- const {
196
- cwd,
197
- external,
198
- format,
199
- logger
200
- } = options;
201
- const code = exportPaths.map(id => format ? "import('".concat(id, "');") : "require('".concat(id, "');")).join("\n");
202
- try {
203
- const esbuildResult = await esbuild__default.default.build({
204
- bundle: true,
205
- external,
206
- format,
207
- logLevel: "silent",
208
- // otherwise output maps to stdout as we're using stdin
209
- outfile: "/dev/null",
210
- platform: "node",
211
- stdin: {
212
- contents: code,
213
- loader: "js",
214
- resolveDir: cwd
215
- }
216
- });
217
- if (esbuildResult.errors.length > 0) {
218
- for (const msg of esbuildResult.errors) {
219
- printEsbuildMessage(logger.warn, msg);
220
- logger.log();
221
- }
222
- process.exit(1);
223
- }
224
- const esbuildWarnings = esbuildResult.warnings.filter(msg => {
225
- !(msg.detail || msg.text).includes("does not affect esbuild's own target setting");
226
- });
227
- for (const msg of esbuildWarnings) {
228
- printEsbuildMessage(logger.warn, msg);
229
- logger.log();
230
- }
231
- } catch (err) {
232
- const {
233
- errors
234
- } = err;
235
- for (const msg of errors) {
236
- printEsbuildMessage(logger.error, msg);
237
- logger.log();
238
- }
239
- process.exit(1);
240
- }
241
- }
242
- function printEsbuildMessage(log, msg) {
243
- if (msg.location) {
244
- log(["".concat(msg.detail || msg.text, "\n"), "".concat(msg.location.line, " | ").concat(msg.location.lineText, "\n"), "in ./".concat(msg.location.file, ":").concat(msg.location.line, ":").concat(msg.location.column)].join(""));
245
- } else {
246
- log(msg.detail || msg.text);
247
- }
248
- }
249
- exports.check = check;
250
- //# sourceMappingURL=check-0665cb35.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"check-0665cb35.cjs","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 chalk from 'chalk'\nimport path from 'path'\nimport treeify from 'treeify'\n\nimport {BuildContext, PkgExport} from './core'\nimport {fileExists} from './fileExists'\nimport {getFilesize} from './getFilesize'\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, unknown> = {}\n\n if (pkg.type) {\n tree.type = chalk.yellow(pkg.type)\n }\n\n if (pkg.bin) {\n tree.bin = Object.fromEntries(\n Object.entries(pkg.bin).map(([name, file]) => [chalk.cyan(name), fileInfo(file)]),\n )\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 `${chalk.yellow(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 types: undefined,\n source: fileInfo(entry.source),\n browser: undefined,\n require: undefined,\n node: undefined,\n import: undefined,\n default: fileInfo(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: fileInfo(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.require) {\n exp.require = fileInfo(entry.require)\n } else {\n delete exp.require\n }\n\n if (entry.node) {\n exp.node = {}\n\n if (entry.node.source) exp.node.source = fileInfo(entry.node.source)\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 return [chalk.cyan(path.join(pkg.name, exportPath)), exp]\n }),\n )\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n logger.log(treeify.asTree(tree as Record<string, any>, true, true))\n}\n","import esbuild, {BuildFailure} from 'esbuild'\nimport path from 'path'\n\nimport {createConsoleSpy} from './consoleSpy'\nimport {getPkgExtMap, loadConfig, loadPkgWithReporting} from './core'\nimport {fileExists} from './fileExists'\nimport {createLogger, Logger} from './logger'\nimport {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 const logger = createLogger()\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 const ctx = await resolveBuildContext({config, cwd, extMap, logger, pkg, strict, tsconfig})\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 exportPaths: {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) exportPaths.require.push(exp.require)\n if (exp.import) exportPaths.import.push(exp.import)\n }\n\n const external = [\n ...Object.keys(pkg.dependencies || {}),\n ...Object.keys(pkg.devDependencies || {}),\n ]\n\n const consoleSpy = createConsoleSpy()\n\n if (exportPaths.import.length) {\n checkExports(exportPaths.import, {cwd, external, format: 'esm', logger})\n }\n\n if (exportPaths.require.length) {\n checkExports(exportPaths.require, {cwd, external, format: 'cjs', logger})\n }\n\n consoleSpy.restore()\n }\n}\n\nasync function checkExports(\n exportPaths: string[],\n options: {cwd: string; external: string[]; format: 'esm' | 'cjs'; logger: Logger},\n) {\n const {cwd, external, format, logger} = options\n\n const code = exportPaths\n .map((id) => (format ? `import('${id}');` : `require('${id}');`))\n .join('\\n')\n\n try {\n const esbuildResult = await esbuild.build({\n bundle: true,\n external,\n format,\n logLevel: 'silent',\n // otherwise output maps to stdout as we're using stdin\n outfile: '/dev/null',\n platform: 'node',\n stdin: {\n contents: code,\n loader: 'js',\n resolveDir: cwd,\n },\n })\n\n if (esbuildResult.errors.length > 0) {\n for (const msg of esbuildResult.errors) {\n printEsbuildMessage(logger.warn, msg)\n\n logger.log()\n }\n\n process.exit(1)\n }\n\n const esbuildWarnings = esbuildResult.warnings.filter((msg) => {\n !(msg.detail || msg.text).includes(`does not affect esbuild's own target setting`)\n })\n\n for (const msg of esbuildWarnings) {\n printEsbuildMessage(logger.warn, msg)\n\n logger.log()\n }\n } catch (err) {\n const {errors} = err as BuildFailure\n\n for (const msg of errors) {\n printEsbuildMessage(logger.error, msg)\n\n logger.log()\n }\n\n process.exit(1)\n }\n}\n\nfunction printEsbuildMessage(log: (...args: unknown[]) => void, msg: esbuild.Message) {\n if (msg.location) {\n log(\n [\n `${msg.detail || msg.text}\\n`,\n `${msg.location.line} | ${msg.location.lineText}\\n`,\n `in ./${msg.location.file}:${msg.location.line}:${msg.location.column}`,\n ].join(''),\n )\n } else {\n log(msg.detail || msg.text)\n }\n}\n"],"names":["getFilesize","file","stats","statSync","prettyBytes","default","size","getFileInfo","cwd","filePath","p","path","resolve","exists","fileExists","printPackageTree","ctx","exports","logger","pkg","log","concat","chalk","blue","name","green","version","tree","type","yellow","bin","Object","fromEntries","entries","map","_ref","cyan","fileInfo","info","gray","red","filter","_ref2","entry","_exported","_ref3","exportPath","exp","types","source","browser","require","node","import","join","treeify","asTree","check","options","_ref4","strict","tsconfig","tsconfigOption","createLogger","loadPkgWithReporting","config","loadConfig","extMap","getPkgExtMap","legacyExports","resolveBuildContext","missingFiles","push","length","error","process","exit","exportPaths","values","external","keys","dependencies","devDependencies","consoleSpy","createConsoleSpy","checkExports","format","restore","code","id","esbuildResult","esbuild","build","bundle","logLevel","outfile","platform","stdin","contents","loader","resolveDir","errors","msg","printEsbuildMessage","warn","esbuildWarnings","warnings","detail","text","includes","err","location","line","lineText","column"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkAction-c3e5da35.cjs","sources":["../../src/cli/checkAction.ts"],"sourcesContent":["import {check} from '../node/check'\nimport {handleError} from './handleError'\n\nexport async function checkAction(options: {strict?: boolean; tsconfig?: string}): Promise<void> {\n try {\n await check({\n cwd: process.cwd(),\n strict: options.strict,\n tsconfig: options.tsconfig,\n })\n } catch (err) {\n handleError(err)\n }\n}\n"],"names":["checkAction","options","check","cwd","process","strict","tsconfig","err","handleError"],"mappings":";;;;AAGA,eAAsBA,YAAYC,OAA+D,EAAA;EAC3F,IAAA;IACF,MAAMC,WAAM,CAAA;MACVC,GAAA,EAAKC,QAAQD,GAAI,CAAA,CAAA;MACjBE,QAAQJ,OAAQ,CAAAI,MAAA;MAChBC,UAAUL,OAAQ,CAAAK;IAAA,CACnB,CAAA;WACMC,GAAK,EAAA;IACZC,WAAA,CAAAA,WAAA,CAAYD,GAAG,CAAA;EACjB;AACF;"}