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

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 (261) hide show
  1. package/dist/{src/node/resolveBuildTasks.cjs → _chunks/build-fabfa3af.cjs} +78 -6
  2. package/dist/_chunks/build-fabfa3af.cjs.map +1 -0
  3. package/dist/{src/cli/buildAction.cjs → _chunks/buildAction-dae78abb.cjs} +3 -6
  4. package/dist/_chunks/buildAction-dae78abb.cjs.map +1 -0
  5. package/dist/_chunks/check-332a2bb9.cjs +250 -0
  6. package/dist/_chunks/check-332a2bb9.cjs.map +1 -0
  7. package/dist/{src/cli/checkAction.cjs → _chunks/checkAction-c39d7dbf.cjs} +3 -6
  8. package/dist/_chunks/checkAction-c39d7dbf.cjs.map +1 -0
  9. package/dist/_chunks/consoleSpy-686c350b.cjs +590 -0
  10. package/dist/_chunks/consoleSpy-686c350b.cjs.map +1 -0
  11. package/dist/{src/cli/handleError.cjs → _chunks/handleError-13d87f55.cjs} +1 -4
  12. package/dist/_chunks/handleError-13d87f55.cjs.map +1 -0
  13. package/dist/_chunks/index-1811ae9f.cjs +883 -0
  14. package/dist/_chunks/index-1811ae9f.cjs.map +1 -0
  15. package/dist/{src/node/templates/default/template.cjs → _chunks/init-e45c0c31.cjs} +112 -23
  16. package/dist/_chunks/init-e45c0c31.cjs.map +1 -0
  17. package/dist/{src/cli/initAction.cjs → _chunks/initAction-48ce747a.cjs} +3 -6
  18. package/dist/_chunks/initAction-48ce747a.cjs.map +1 -0
  19. package/dist/_chunks/logger-718e11be.cjs +99 -0
  20. package/dist/_chunks/logger-718e11be.cjs.map +1 -0
  21. package/dist/_chunks/watch-4e565bee.cjs +231 -0
  22. package/dist/_chunks/watch-4e565bee.cjs.map +1 -0
  23. package/dist/{src/cli/watchAction.cjs → _chunks/watchAction-a5721084.cjs} +3 -6
  24. package/dist/_chunks/watchAction-a5721084.cjs.map +1 -0
  25. package/dist/cli.cjs +6 -6
  26. package/dist/cli.cjs.map +1 -1
  27. package/dist/index.cjs +30 -44
  28. package/dist/index.cjs.map +1 -1
  29. package/dist/index.d.ts +5 -0
  30. package/dist/index.js +2564 -24
  31. package/dist/index.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/node/core/config/types.ts +5 -0
  34. package/src/node/core/pkg/validatePkg.ts +2 -28
  35. package/src/node/tasks/rollup/resolveRollupConfig.ts +8 -6
  36. package/src/node/tasks/rollup/rollupTask.ts +13 -1
  37. package/dist/build.js +0 -69
  38. package/dist/build.js.map +0 -1
  39. package/dist/check.js +0 -152
  40. package/dist/check.js.map +0 -1
  41. package/dist/consoleSpy.js +0 -49
  42. package/dist/consoleSpy.js.map +0 -1
  43. package/dist/core/config/defineConfig.js +0 -5
  44. package/dist/core/config/defineConfig.js.map +0 -1
  45. package/dist/core/config/findConfigFile.js +0 -21
  46. package/dist/core/config/findConfigFile.js.map +0 -1
  47. package/dist/core/config/loadConfig.js +0 -34
  48. package/dist/core/config/loadConfig.js.map +0 -1
  49. package/dist/core/config/resolveConfigProperty.js +0 -9
  50. package/dist/core/config/resolveConfigProperty.js.map +0 -1
  51. package/dist/core/defaults.js +0 -3
  52. package/dist/core/defaults.js.map +0 -1
  53. package/dist/core/findCommonPath.js +0 -28
  54. package/dist/core/findCommonPath.js.map +0 -1
  55. package/dist/core/isRecord.js +0 -5
  56. package/dist/core/isRecord.js.map +0 -1
  57. package/dist/core/pkg/helpers.js +0 -24
  58. package/dist/core/pkg/helpers.js.map +0 -1
  59. package/dist/core/pkg/loadPkg.js +0 -18
  60. package/dist/core/pkg/loadPkg.js.map +0 -1
  61. package/dist/core/pkg/loadPkgWithReporting.js +0 -107
  62. package/dist/core/pkg/loadPkgWithReporting.js.map +0 -1
  63. package/dist/core/pkg/parseExports.js +0 -75
  64. package/dist/core/pkg/parseExports.js.map +0 -1
  65. package/dist/core/pkg/pkgExt.js +0 -29
  66. package/dist/core/pkg/pkgExt.js.map +0 -1
  67. package/dist/core/pkg/validateExports.js +0 -19
  68. package/dist/core/pkg/validateExports.js.map +0 -1
  69. package/dist/core/pkg/validatePkg.js +0 -49
  70. package/dist/core/pkg/validatePkg.js.map +0 -1
  71. package/dist/core/template/createFromTemplate.js +0 -59
  72. package/dist/core/template/createFromTemplate.js.map +0 -1
  73. package/dist/core/template/define.js +0 -5
  74. package/dist/core/template/define.js.map +0 -1
  75. package/dist/core/ts/loadTSConfig.js +0 -15
  76. package/dist/core/ts/loadTSConfig.js.map +0 -1
  77. package/dist/fileExists.js +0 -11
  78. package/dist/fileExists.js.map +0 -1
  79. package/dist/getFilesize.js +0 -8
  80. package/dist/getFilesize.js.map +0 -1
  81. package/dist/globFiles.js +0 -7
  82. package/dist/globFiles.js.map +0 -1
  83. package/dist/init.js +0 -42
  84. package/dist/init.js.map +0 -1
  85. package/dist/isEmptyDirectory.js +0 -6
  86. package/dist/isEmptyDirectory.js.map +0 -1
  87. package/dist/logger.js +0 -37
  88. package/dist/logger.js.map +0 -1
  89. package/dist/package.json.cjs +0 -8
  90. package/dist/package.json.cjs.map +0 -1
  91. package/dist/printExtractMessages.js +0 -32
  92. package/dist/printExtractMessages.js.map +0 -1
  93. package/dist/printPackageTree.js +0 -92
  94. package/dist/printPackageTree.js.map +0 -1
  95. package/dist/resolveBrowserTarget.js +0 -27
  96. package/dist/resolveBrowserTarget.js.map +0 -1
  97. package/dist/resolveBrowserslistVersions.js +0 -44
  98. package/dist/resolveBrowserslistVersions.js.map +0 -1
  99. package/dist/resolveBuildContext.js +0 -109
  100. package/dist/resolveBuildContext.js.map +0 -1
  101. package/dist/resolveBuildTasks.js +0 -140
  102. package/dist/resolveBuildTasks.js.map +0 -1
  103. package/dist/resolveNodeTarget.js +0 -12
  104. package/dist/resolveNodeTarget.js.map +0 -1
  105. package/dist/resolveWatchTasks.js +0 -103
  106. package/dist/resolveWatchTasks.js.map +0 -1
  107. package/dist/spinner.js +0 -15
  108. package/dist/spinner.js.map +0 -1
  109. package/dist/src/cli/buildAction.cjs.map +0 -1
  110. package/dist/src/cli/checkAction.cjs.map +0 -1
  111. package/dist/src/cli/handleError.cjs.map +0 -1
  112. package/dist/src/cli/initAction.cjs.map +0 -1
  113. package/dist/src/cli/watchAction.cjs.map +0 -1
  114. package/dist/src/node/build.cjs +0 -74
  115. package/dist/src/node/build.cjs.map +0 -1
  116. package/dist/src/node/check.cjs +0 -164
  117. package/dist/src/node/check.cjs.map +0 -1
  118. package/dist/src/node/consoleSpy.cjs +0 -54
  119. package/dist/src/node/consoleSpy.cjs.map +0 -1
  120. package/dist/src/node/core/config/defineConfig.cjs +0 -10
  121. package/dist/src/node/core/config/defineConfig.cjs.map +0 -1
  122. package/dist/src/node/core/config/findConfigFile.cjs +0 -33
  123. package/dist/src/node/core/config/findConfigFile.cjs.map +0 -1
  124. package/dist/src/node/core/config/loadConfig.cjs +0 -46
  125. package/dist/src/node/core/config/loadConfig.cjs.map +0 -1
  126. package/dist/src/node/core/config/resolveConfigProperty.cjs +0 -14
  127. package/dist/src/node/core/config/resolveConfigProperty.cjs.map +0 -1
  128. package/dist/src/node/core/defaults.cjs +0 -8
  129. package/dist/src/node/core/defaults.cjs.map +0 -1
  130. package/dist/src/node/core/findCommonPath.cjs +0 -40
  131. package/dist/src/node/core/findCommonPath.cjs.map +0 -1
  132. package/dist/src/node/core/isRecord.cjs +0 -10
  133. package/dist/src/node/core/isRecord.cjs.map +0 -1
  134. package/dist/src/node/core/pkg/helpers.cjs +0 -31
  135. package/dist/src/node/core/pkg/helpers.cjs.map +0 -1
  136. package/dist/src/node/core/pkg/loadPkg.cjs +0 -30
  137. package/dist/src/node/core/pkg/loadPkg.cjs.map +0 -1
  138. package/dist/src/node/core/pkg/loadPkgWithReporting.cjs +0 -118
  139. package/dist/src/node/core/pkg/loadPkgWithReporting.cjs.map +0 -1
  140. package/dist/src/node/core/pkg/parseExports.cjs +0 -80
  141. package/dist/src/node/core/pkg/parseExports.cjs.map +0 -1
  142. package/dist/src/node/core/pkg/pkgExt.cjs +0 -35
  143. package/dist/src/node/core/pkg/pkgExt.cjs.map +0 -1
  144. package/dist/src/node/core/pkg/validateExports.cjs +0 -24
  145. package/dist/src/node/core/pkg/validateExports.cjs.map +0 -1
  146. package/dist/src/node/core/pkg/validatePkg.cjs +0 -54
  147. package/dist/src/node/core/pkg/validatePkg.cjs.map +0 -1
  148. package/dist/src/node/core/template/createFromTemplate.cjs +0 -70
  149. package/dist/src/node/core/template/createFromTemplate.cjs.map +0 -1
  150. package/dist/src/node/core/template/define.cjs +0 -10
  151. package/dist/src/node/core/template/define.cjs.map +0 -1
  152. package/dist/src/node/core/ts/loadTSConfig.cjs +0 -26
  153. package/dist/src/node/core/ts/loadTSConfig.cjs.map +0 -1
  154. package/dist/src/node/fileExists.cjs +0 -16
  155. package/dist/src/node/fileExists.cjs.map +0 -1
  156. package/dist/src/node/getFilesize.cjs +0 -19
  157. package/dist/src/node/getFilesize.cjs.map +0 -1
  158. package/dist/src/node/globFiles.cjs +0 -19
  159. package/dist/src/node/globFiles.cjs.map +0 -1
  160. package/dist/src/node/init.cjs +0 -47
  161. package/dist/src/node/init.cjs.map +0 -1
  162. package/dist/src/node/isEmptyDirectory.cjs +0 -11
  163. package/dist/src/node/isEmptyDirectory.cjs.map +0 -1
  164. package/dist/src/node/logger.cjs +0 -48
  165. package/dist/src/node/logger.cjs.map +0 -1
  166. package/dist/src/node/printExtractMessages.cjs +0 -44
  167. package/dist/src/node/printExtractMessages.cjs.map +0 -1
  168. package/dist/src/node/printPackageTree.cjs +0 -105
  169. package/dist/src/node/printPackageTree.cjs.map +0 -1
  170. package/dist/src/node/resolveBrowserTarget.cjs +0 -32
  171. package/dist/src/node/resolveBrowserTarget.cjs.map +0 -1
  172. package/dist/src/node/resolveBrowserslistVersions.cjs +0 -55
  173. package/dist/src/node/resolveBrowserslistVersions.cjs.map +0 -1
  174. package/dist/src/node/resolveBuildContext.cjs +0 -120
  175. package/dist/src/node/resolveBuildContext.cjs.map +0 -1
  176. package/dist/src/node/resolveBuildTasks.cjs.map +0 -1
  177. package/dist/src/node/resolveNodeTarget.cjs +0 -17
  178. package/dist/src/node/resolveNodeTarget.cjs.map +0 -1
  179. package/dist/src/node/resolveWatchTasks.cjs +0 -115
  180. package/dist/src/node/resolveWatchTasks.cjs.map +0 -1
  181. package/dist/src/node/spinner.cjs +0 -26
  182. package/dist/src/node/spinner.cjs.map +0 -1
  183. package/dist/src/node/tasks/dts/DtsError.cjs +0 -17
  184. package/dist/src/node/tasks/dts/DtsError.cjs.map +0 -1
  185. package/dist/src/node/tasks/dts/buildTypes.cjs +0 -50
  186. package/dist/src/node/tasks/dts/buildTypes.cjs.map +0 -1
  187. package/dist/src/node/tasks/dts/createApiExtractorConfig.cjs +0 -52
  188. package/dist/src/node/tasks/dts/createApiExtractorConfig.cjs.map +0 -1
  189. package/dist/src/node/tasks/dts/createTSDocConfig.cjs +0 -37
  190. package/dist/src/node/tasks/dts/createTSDocConfig.cjs.map +0 -1
  191. package/dist/src/node/tasks/dts/doExtract.cjs +0 -88
  192. package/dist/src/node/tasks/dts/doExtract.cjs.map +0 -1
  193. package/dist/src/node/tasks/dts/dtsTask.cjs +0 -44
  194. package/dist/src/node/tasks/dts/dtsTask.cjs.map +0 -1
  195. package/dist/src/node/tasks/dts/dtsWatchTask.cjs +0 -47
  196. package/dist/src/node/tasks/dts/dtsWatchTask.cjs.map +0 -1
  197. package/dist/src/node/tasks/dts/extractModuleBlocks.cjs +0 -38
  198. package/dist/src/node/tasks/dts/extractModuleBlocks.cjs.map +0 -1
  199. package/dist/src/node/tasks/dts/extractTypes.cjs +0 -90
  200. package/dist/src/node/tasks/dts/extractTypes.cjs.map +0 -1
  201. package/dist/src/node/tasks/dts/getExtractMessagesConfig.cjs +0 -73
  202. package/dist/src/node/tasks/dts/getExtractMessagesConfig.cjs.map +0 -1
  203. package/dist/src/node/tasks/dts/printDiagnostic.cjs +0 -48
  204. package/dist/src/node/tasks/dts/printDiagnostic.cjs.map +0 -1
  205. package/dist/src/node/tasks/index.cjs +0 -26
  206. package/dist/src/node/tasks/index.cjs.map +0 -1
  207. package/dist/src/node/tasks/node/reexportCjsTask.cjs +0 -64
  208. package/dist/src/node/tasks/node/reexportCjsTask.cjs.map +0 -1
  209. package/dist/src/node/tasks/rollup/resolveRollupConfig.cjs +0 -207
  210. package/dist/src/node/tasks/rollup/resolveRollupConfig.cjs.map +0 -1
  211. package/dist/src/node/tasks/rollup/rollupTask.cjs +0 -116
  212. package/dist/src/node/tasks/rollup/rollupTask.cjs.map +0 -1
  213. package/dist/src/node/tasks/rollup/rollupWatchTask.cjs +0 -72
  214. package/dist/src/node/tasks/rollup/rollupWatchTask.cjs.map +0 -1
  215. package/dist/src/node/templates/default/template.cjs.map +0 -1
  216. package/dist/src/node/watch.cjs +0 -90
  217. package/dist/src/node/watch.cjs.map +0 -1
  218. package/dist/src/node/watchConfigFiles.cjs +0 -40
  219. package/dist/src/node/watchConfigFiles.cjs.map +0 -1
  220. package/dist/src/node/watchFiles.cjs +0 -33
  221. package/dist/src/node/watchFiles.cjs.map +0 -1
  222. package/dist/tasks/dts/DtsError.js +0 -12
  223. package/dist/tasks/dts/DtsError.js.map +0 -1
  224. package/dist/tasks/dts/buildTypes.js +0 -39
  225. package/dist/tasks/dts/buildTypes.js.map +0 -1
  226. package/dist/tasks/dts/createApiExtractorConfig.js +0 -41
  227. package/dist/tasks/dts/createApiExtractorConfig.js.map +0 -1
  228. package/dist/tasks/dts/createTSDocConfig.js +0 -32
  229. package/dist/tasks/dts/createTSDocConfig.js.map +0 -1
  230. package/dist/tasks/dts/doExtract.js +0 -76
  231. package/dist/tasks/dts/doExtract.js.map +0 -1
  232. package/dist/tasks/dts/dtsTask.js +0 -33
  233. package/dist/tasks/dts/dtsTask.js.map +0 -1
  234. package/dist/tasks/dts/dtsWatchTask.js +0 -36
  235. package/dist/tasks/dts/dtsWatchTask.js.map +0 -1
  236. package/dist/tasks/dts/extractModuleBlocks.js +0 -26
  237. package/dist/tasks/dts/extractModuleBlocks.js.map +0 -1
  238. package/dist/tasks/dts/extractTypes.js +0 -77
  239. package/dist/tasks/dts/extractTypes.js.map +0 -1
  240. package/dist/tasks/dts/getExtractMessagesConfig.js +0 -68
  241. package/dist/tasks/dts/getExtractMessagesConfig.js.map +0 -1
  242. package/dist/tasks/dts/printDiagnostic.js +0 -35
  243. package/dist/tasks/dts/printDiagnostic.js.map +0 -1
  244. package/dist/tasks/index.js +0 -16
  245. package/dist/tasks/index.js.map +0 -1
  246. package/dist/tasks/node/reexportCjsTask.js +0 -52
  247. package/dist/tasks/node/reexportCjsTask.js.map +0 -1
  248. package/dist/tasks/rollup/resolveRollupConfig.js +0 -189
  249. package/dist/tasks/rollup/resolveRollupConfig.js.map +0 -1
  250. package/dist/tasks/rollup/rollupTask.js +0 -104
  251. package/dist/tasks/rollup/rollupTask.js.map +0 -1
  252. package/dist/tasks/rollup/rollupWatchTask.js +0 -60
  253. package/dist/tasks/rollup/rollupWatchTask.js.map +0 -1
  254. package/dist/templates/default/template.js +0 -366
  255. package/dist/templates/default/template.js.map +0 -1
  256. package/dist/watch.js +0 -79
  257. package/dist/watch.js.map +0 -1
  258. package/dist/watchConfigFiles.js +0 -29
  259. package/dist/watchConfigFiles.js.map +0 -1
  260. package/dist/watchFiles.js +0 -22
  261. package/dist/watchFiles.js.map +0 -1
@@ -1,366 +0,0 @@
1
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
2
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
3
- import getLatestVersion from 'get-latest-version';
4
- import gitUrlParse from 'git-url-parse';
5
- import { outdent } from 'outdent';
6
- import parseGitConfig from 'parse-git-config';
7
- import { resolve } from 'path';
8
- import prettier from 'prettier';
9
- import 'esbuild-register/dist/node';
10
- import 'pkg-up';
11
- import 'find-config';
12
- import 'fs';
13
- import { isRecord } from '../../core/isRecord.js';
14
- import 'fs/promises';
15
- import '../../core/pkg/validatePkg.js';
16
- import 'chalk';
17
- import 'zod';
18
- import 'mkdirp';
19
- import 'prompts';
20
- import { defineTemplateOption } from '../../core/template/define.js';
21
- import 'typescript';
22
- const RE_NAME = /^(?:@(?:[a-z0-9-*~][a-z0-9-*._~]*)\/)?[a-z0-9-~][a-z0-9-._~]*$/i;
23
- const defaultTemplate = async _ref => {
24
- let {
25
- cwd,
26
- logger,
27
- packagePath
28
- } = _ref;
29
- var _a, _b;
30
- const gitConfig = await parseGitConfig({
31
- cwd,
32
- type: "global"
33
- });
34
- return {
35
- options: [defineTemplateOption({
36
- name: "repo",
37
- type: "string",
38
- description: "git url",
39
- validate: v => {
40
- if (!v) return true;
41
- try {
42
- gitUrlParse(v);
43
- return true;
44
- } catch (err) {
45
- return "invalid git url";
46
- }
47
- },
48
- parse: v => {
49
- if (!v) return null;
50
- const result = gitUrlParse(v);
51
- return {
52
- source: result.source,
53
- owner: result.owner,
54
- name: result.name
55
- };
56
- }
57
- }), defineTemplateOption({
58
- name: "pkgName",
59
- type: "string",
60
- description: "package name",
61
- initial: options => {
62
- var _a2;
63
- return ((_a2 = options.repo) == null ? void 0 : _a2.name) || void 0;
64
- },
65
- validate: v => {
66
- if (!v) return "package name is required";
67
- const match = RE_NAME.exec(v);
68
- if (!match) {
69
- return "invalid package name";
70
- }
71
- return true;
72
- },
73
- parse: v => {
74
- if (!v) {
75
- throw new Error("package name is required");
76
- }
77
- const match = RE_NAME.exec(v);
78
- if (!match) {
79
- throw new Error("invalid package name");
80
- }
81
- const [scope, name] = v.split("/");
82
- return {
83
- scope,
84
- name,
85
- fullName: v
86
- };
87
- }
88
- }), defineTemplateOption({
89
- name: "description",
90
- type: "string",
91
- description: "package description"
92
- }), defineTemplateOption({
93
- name: "authorName",
94
- type: "string",
95
- description: "package author name",
96
- initial: (_a = gitConfig == null ? void 0 : gitConfig.user) == null ? void 0 : _a.name
97
- }), defineTemplateOption({
98
- name: "authorEmail",
99
- type: "string",
100
- description: "package author email",
101
- initial: (_b = gitConfig == null ? void 0 : gitConfig.user) == null ? void 0 : _b.email
102
- }), defineTemplateOption({
103
- name: "license",
104
- type: "string",
105
- description: "package license",
106
- initial: "MIT",
107
- validate: v => {
108
- if (!v) return "license is required";
109
- return true;
110
- }
111
- })],
112
- features: [{
113
- name: "eslint",
114
- optional: true,
115
- initial: true
116
- }, {
117
- name: "typescript",
118
- optional: true,
119
- initial: true
120
- }],
121
- async getFiles(options, features) {
122
- var _filter$join, _options$description;
123
- var _a2;
124
- const {
125
- pkgName,
126
- repo
127
- } = options;
128
- const {
129
- fullName: name
130
- } = pkgName;
131
- const author = (_filter$join = [options.authorName, options.authorEmail && "<".concat(options.authorEmail, ">")].filter(Boolean).join(" ")) !== null && _filter$join !== void 0 ? _filter$join : void 0;
132
- const prettierConfig = {
133
- bracketSpacing: false,
134
- printWidth: 100,
135
- semi: false,
136
- singleQuote: true,
137
- tabWidth: 2,
138
- plugins: ["prettier-plugin-packagejson"],
139
- overrides: [{
140
- files: ["*.yml"],
141
- options: {
142
- singleQuote: false
143
- }
144
- }]
145
- };
146
- const pkgJson = {
147
- name,
148
- version: "0.0.0",
149
- description: (_options$description = options.description) !== null && _options$description !== void 0 ? _options$description : void 0,
150
- keywords: [],
151
- license: options.license,
152
- author,
153
- type: "module",
154
- exports: {
155
- ".": {
156
- types: void 0,
157
- source: features.typescript ? "./src/index.ts" : "./src/index.js",
158
- require: "./dist/index.cjs",
159
- import: "./dist/index.js",
160
- default: "./dist/index.js"
161
- },
162
- "./package.json": "./package.json"
163
- },
164
- main: "./dist/index.cjs",
165
- module: "./dist/index.js",
166
- source: features.typescript ? "./src/index.ts" : "./src/index.js",
167
- files: ["dist", "src"],
168
- scripts: {
169
- build: "run-s clean pkg:build pkg:check",
170
- clean: "rimraf dist",
171
- format: "prettier --write --cache --ignore-unknown .",
172
- "pkg:build": "pkg build --strict",
173
- "pkg:check": "pkg check --strict"
174
- },
175
- prettier: prettierConfig,
176
- "lint-staged": {
177
- "*": ["prettier --write --cache --ignore-unknown"]
178
- },
179
- dependencies: {},
180
- devDependencies: {
181
- "@sanity/pkg-utils": "*",
182
- "lint-staged": "*",
183
- "npm-run-all": "*",
184
- prettier: "*",
185
- "prettier-plugin-packagejson": "*",
186
- rimraf: "*"
187
- },
188
- engines: {
189
- node: ">=18.0.0"
190
- }
191
- };
192
- const files = [];
193
- files.push({
194
- name: ".editorconfig",
195
- contents: outdent(_templateObject || (_templateObject = _taggedTemplateLiteral(["\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 "])))
196
- });
197
- files.push({
198
- name: ".gitignore",
199
- contents: outdent(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n *.local\n *.log\n\n .DS_Store\n etc\n dist\n node_modules\n "])))
200
- });
201
- files.push({
202
- name: ".prettierignore",
203
- contents: outdent(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n /dist\n /pnpm-lock.yaml\n "])))
204
- });
205
- if (repo) {
206
- pkgJson.repository = {
207
- type: "git",
208
- url: "git+ssh://git@".concat(repo.source, "/").concat(repo.owner, "/").concat(repo.name, ".git")
209
- };
210
- pkgJson.bugs = {
211
- url: "https://".concat(repo.source, "/").concat(repo.owner, "/").concat(repo.name, "/issues")
212
- };
213
- pkgJson.homepage = "https://".concat(repo.source, "/").concat(repo.owner, "/").concat(repo.name, "#readme");
214
- }
215
- if (features.typescript) {
216
- pkgJson.types = "./dist/index.d.ts";
217
- const mainExport = (_a2 = pkgJson.exports) == null ? void 0 : _a2["."];
218
- if (isRecord(mainExport)) {
219
- mainExport.types = "./dist/index.d.ts";
220
- }
221
- pkgJson.scripts = {
222
- ...pkgJson.scripts,
223
- ["type:check"]: "tsc --build"
224
- };
225
- const devDependencies = pkgJson.devDependencies;
226
- if (isRecord(devDependencies)) {
227
- devDependencies["typescript"] = "*";
228
- }
229
- }
230
- if (features.eslint) {
231
- const eslintConfig = {
232
- root: true,
233
- env: {
234
- browser: true,
235
- es6: true,
236
- node: true
237
- },
238
- extends: ["eslint:recommended", "plugin:prettier/recommended"],
239
- parserOptions: {
240
- ecmaVersion: 2020,
241
- sourceType: "module"
242
- },
243
- plugins: ["import", "prettier"],
244
- rules: {
245
- "no-console": "error",
246
- "no-shadow": "error",
247
- "no-warning-comments": ["warn", {
248
- location: "start",
249
- terms: ["todo", "fixme"]
250
- }]
251
- }
252
- };
253
- files.push({
254
- name: ".eslintignore",
255
- contents: outdent(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n /dist\n "])))
256
- });
257
- pkgJson.scripts = {
258
- ...pkgJson.scripts,
259
- lint: features.typescript ? "eslint . --ext .cjs,.js,.ts,.tsx" : "eslint . --ext .cjs,.js"
260
- };
261
- pkgJson.devDependencies = {
262
- ...pkgJson.devDependencies,
263
- eslint: "*",
264
- "eslint-config-prettier": "*",
265
- "eslint-plugin-import": "*",
266
- "eslint-plugin-prettier": "*"
267
- };
268
- if (features.typescript) {
269
- pkgJson.devDependencies = {
270
- ...pkgJson.devDependencies,
271
- "@typescript-eslint/eslint-plugin": "*",
272
- "@typescript-eslint/parser": "*"
273
- };
274
- const eslintConfigOverride = {
275
- files: ["**/*.ts", "**/*.tsx"],
276
- parser: "@typescript-eslint/parser",
277
- parserOptions: {
278
- project: ["./tsconfig.json"]
279
- },
280
- extends: ["eslint:recommended", "plugin:prettier/recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended"].filter(Boolean),
281
- plugins: ["import", "@typescript-eslint", "prettier"].filter(Boolean),
282
- rules: {
283
- "@typescript-eslint/explicit-module-boundary-types": "error",
284
- "@typescript-eslint/interface-name-prefix": "off",
285
- "@typescript-eslint/member-delimiter-style": "off",
286
- "@typescript-eslint/no-empty-interface": "off"
287
- }
288
- };
289
- eslintConfig.overrides = [eslintConfigOverride];
290
- }
291
- files.push({
292
- name: ".eslintrc.cjs",
293
- contents: await format(resolve(packagePath, ".eslintrc.cjs"), outdent(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n 'use strict'\n\n /** @type import('eslint').Linter.Config */\n module.exports = ", "\n "])), JSON.stringify(eslintConfig, null, 2)), prettierConfig)
294
- });
295
- }
296
- if (features.typescript) {
297
- files.push({
298
- name: "tsconfig.settings.json",
299
- contents: await format(resolve(packagePath, "tsconfig.settings.json"), outdent(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\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 "]))), prettierConfig)
300
- });
301
- files.push({
302
- name: "tsconfig.dist.json",
303
- contents: await format(resolve(packagePath, "tsconfig.dist.json"), outdent(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n {\n \"extends\": \"./tsconfig.settings\",\n \"include\": [\"./src\"],\n \"compilerOptions\": {\n \"rootDir\": \".\",\n \"outDir\": \"./dist\",\n \"emitDeclarationOnly\": true,\n \"resolveJsonModule\": true\n }\n }\n "]))), prettierConfig)
304
- });
305
- files.push({
306
- name: "tsconfig.json",
307
- contents: await format(resolve(packagePath, "tsconfig.json"), outdent(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\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 "]))), prettierConfig)
308
- });
309
- }
310
- if (features.typescript) {
311
- files.push({
312
- name: "package.config.ts",
313
- contents: await format(resolve(packagePath, "package.config.ts"), outdent(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\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 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 "]))), prettierConfig)
314
- });
315
- files.push({
316
- name: "src/index.ts",
317
- contents: await format(resolve(packagePath, "src/index.ts"), outdent(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n /** @public */\n export function main(): void {\n //\n }\n "]))), prettierConfig)
318
- });
319
- } else {
320
- files.push({
321
- name: "package.config.js",
322
- contents: await format(resolve(packagePath, "package.config.js"), outdent(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\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 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 "]))), prettierConfig)
323
- });
324
- files.push({
325
- name: "src/index.js",
326
- contents: await format(resolve(packagePath, "src/index.js"), outdent(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n /** @public */\n export function main() {\n //\n }\n "]))), prettierConfig)
327
- });
328
- }
329
- try {
330
- var _pkgJson$dependencies;
331
- pkgJson.dependencies = await resolveLatestDeps((_pkgJson$dependencies = pkgJson.dependencies) !== null && _pkgJson$dependencies !== void 0 ? _pkgJson$dependencies : {});
332
- } catch (error) {
333
- logger.warn(error instanceof Error ? error.message : error);
334
- }
335
- try {
336
- var _pkgJson$devDependenc;
337
- pkgJson.devDependencies = await resolveLatestDeps((_pkgJson$devDependenc = pkgJson.devDependencies) !== null && _pkgJson$devDependenc !== void 0 ? _pkgJson$devDependenc : {});
338
- } catch (error) {
339
- logger.warn(error instanceof Error ? error.message : error);
340
- }
341
- files.push({
342
- name: "package.json",
343
- contents: await format(resolve(packagePath, "package.json"), JSON.stringify(pkgJson, null, 2), prettierConfig)
344
- });
345
- return files;
346
- }
347
- };
348
- };
349
- function format(filepath, input, prettierOptions) {
350
- return prettier.format(input, {
351
- ...prettierOptions,
352
- filepath
353
- });
354
- }
355
- async function resolveLatestDeps(deps) {
356
- const depsEntries = Object.entries(deps);
357
- const latestDeps = {};
358
- for (const entry of depsEntries) {
359
- const [name, version] = entry;
360
- const latestVersion = await getLatestVersion(name, version);
361
- latestDeps[name] = latestVersion ? "^".concat(latestVersion) : version;
362
- }
363
- return latestDeps;
364
- }
365
- export { defaultTemplate };
366
- //# sourceMappingURL=template.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"template.js","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","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","default","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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"}
package/dist/watch.js DELETED
@@ -1,79 +0,0 @@
1
- import path from 'path';
2
- import { switchMap } from 'rxjs';
3
- import { loadConfig } from './core/config/loadConfig.js';
4
- import 'fs/promises';
5
- import 'pkg-up';
6
- import './core/pkg/validatePkg.js';
7
- import { loadPkgWithReporting } from './core/pkg/loadPkgWithReporting.js';
8
- import { getPkgExtMap } from './core/pkg/pkgExt.js';
9
- import 'mkdirp';
10
- import 'prompts';
11
- import 'typescript';
12
- import { createLogger } from './logger.js';
13
- import { resolveBuildContext } from './resolveBuildContext.js';
14
- import { resolveWatchTasks } from './resolveWatchTasks.js';
15
- import { watchTaskHandlers } from './tasks/index.js';
16
- import { watchConfigFiles } from './watchConfigFiles.js';
17
- async function watch(options) {
18
- const {
19
- cwd,
20
- strict = false,
21
- tsconfig: tsconfigOption
22
- } = options;
23
- const logger = createLogger();
24
- const configFiles$ = await watchConfigFiles({
25
- cwd,
26
- logger
27
- });
28
- const ctx$ = configFiles$.pipe(switchMap(async configFiles => {
29
- var _ref;
30
- const files = configFiles.map(f => path.relative(cwd, f));
31
- const packageJsonPath = files.find(f => f === "package.json");
32
- if (!packageJsonPath) {
33
- throw new Error("missing package.json");
34
- }
35
- const pkg = await loadPkgWithReporting({
36
- cwd,
37
- logger
38
- });
39
- const config = await loadConfig({
40
- cwd
41
- });
42
- const extMap = getPkgExtMap({
43
- legacyExports: (_ref = config == null ? void 0 : config.legacyExports) !== null && _ref !== void 0 ? _ref : false
44
- });
45
- const tsconfig = tsconfigOption || (config == null ? void 0 : config.tsconfig) || "tsconfig.json";
46
- return resolveBuildContext({
47
- config,
48
- cwd,
49
- extMap,
50
- logger,
51
- pkg,
52
- strict,
53
- tsconfig
54
- });
55
- }));
56
- ctx$.subscribe(async ctx => {
57
- const watchTasks = resolveWatchTasks(ctx);
58
- for (const task of watchTasks) {
59
- const handler = watchTaskHandlers[task.type];
60
- const result$ = handler.exec(ctx, task);
61
- result$.subscribe({
62
- error: err => {
63
- ctx.logger.error(err);
64
- ctx.logger.log();
65
- process.exit(1);
66
- },
67
- next: result => {
68
- handler.complete(ctx, task, result);
69
- },
70
- complete: () => {
71
- ctx.logger.success(handler.name(ctx, task));
72
- ctx.logger.log();
73
- }
74
- });
75
- }
76
- });
77
- }
78
- export { watch };
79
- //# sourceMappingURL=watch.js.map
package/dist/watch.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"watch.js","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","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,SAASC,YAAa,EAAA;EAE5B,MAAMC,eAAe,MAAMC,gBAAA,CAAiB;IAACP,GAAA;IAAKI;EAAO,CAAA,CAAA;EAEzD,MAAMI,OAAOF,YAAa,CAAAG,IAAA,CACxBC,SAAA,CAAU,MAAOC,WAAgB,IAAA;IAAA,IAAAC,IAAA;IACzB,MAAAC,KAAA,GAAQF,YAAYG,GAAI,CAACC,KAAMC,IAAK,CAAAC,QAAA,CAASjB,GAAK,EAAAe,CAAC,CAAC,CAAA;IAE1D,MAAMG,kBAAkBL,KAAM,CAAAM,IAAA,CAAMJ,CAAA,IAAMA,MAAM,cAAc,CAAA;IAE9D,IAAI,CAACG,eAAiB,EAAA;MACd,MAAA,IAAIE,MAAM,sBAAsB,CAAA;IACxC;IAEA,MAAMC,MAAM,MAAMC,oBAAA,CAAqB;MAACtB,GAAA;MAAKI;IAAO,CAAA,CAAA;IACpD,MAAMmB,MAAS,GAAA,MAAMC,UAAW,CAAA;MAACxB;IAAI,CAAA,CAAA;IACrC,MAAMyB,SAASC,YAAa,CAAA;MAACC,uBAAeJ,MAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAAI,aAAA,cAAAf,IAAA,cAAAA,IAAA,GAAiB;IAAM,CAAA,CAAA;IACrE,MAAAV,QAAA,GAAWC,cAAkB,KAAAoB,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAA,MAAA,CAAQrB,QAAY,CAAA,IAAA,eAAA;IAEhD,OAAA0B,mBAAA,CAAoB;MAACL,MAAQ;MAAAvB,GAAA;MAAKyB;MAAQrB,MAAQ;MAAAiB,GAAA;MAAKpB,MAAQ;MAAAC;IAAA,CAAS,CAAA;EAAA,CAChF,CAAA,CACH;EAEKM,IAAA,CAAAqB,SAAA,CAAU,MAAOC,GAAQ,IAAA;IACtB,MAAAC,UAAA,GAAaC,kBAAkBF,GAAG,CAAA;IAExC,KAAA,MAAWG,QAAQF,UAAY,EAAA;MACvB,MAAAG,OAAA,GAAUC,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,CAAA1B,MAAA,CAAOmC,MAAMC,GAAG,CAAA;UACpBV,GAAA,CAAI1B,OAAOqC,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,CAAI1B,OAAO2C,OAAQ,CAAAb,OAAA,CAAQc,IAAK,CAAAlB,GAAA,EAAKG,IAAI,CAAC,CAAA;UAC1CH,GAAA,CAAI1B,OAAOqC,GAAI,EAAA;QACjB;MAAA,CACD,CAAA;IACH;EAAA,CACD,CAAA;AACH;"}
@@ -1,29 +0,0 @@
1
- import path from 'path';
2
- import { scan, startWith, distinctUntilChanged } from 'rxjs/operators';
3
- import { globFiles } from './globFiles.js';
4
- import { watchFiles } from './watchFiles.js';
5
- async function watchConfigFiles(options) {
6
- const {
7
- cwd,
8
- logger
9
- } = options;
10
- const initialFiles = await globFiles([path.resolve(cwd, "package.json"), path.resolve(cwd, "package.config.cjs"), path.resolve(cwd, "package.config.js"), path.resolve(cwd, "package.config.ts")]);
11
- const fileEvent$ = watchFiles([path.resolve(cwd, "package.json"), path.resolve(cwd, "package.config.cjs"), path.resolve(cwd, "package.config.js"), path.resolve(cwd, "package.config.ts")]);
12
- return fileEvent$.pipe(scan((files, fileEvent) => {
13
- if (fileEvent.type === "add") {
14
- return files.concat(fileEvent.file);
15
- }
16
- if (fileEvent.type === "unlink") {
17
- return files.filter(f => f !== fileEvent.file);
18
- }
19
- if (fileEvent.type === "change") {
20
- logger.log("--------------------------------------------------------------------------------");
21
- logger.info(path.relative(cwd, fileEvent.file), "changed");
22
- logger.log("");
23
- return files.slice(0);
24
- }
25
- return files;
26
- }, initialFiles), startWith(initialFiles), distinctUntilChanged());
27
- }
28
- export { watchConfigFiles };
29
- //# sourceMappingURL=watchConfigFiles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"watchConfigFiles.js","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,SAAU,CAAA,CACnCC,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,cAAc,CAAA,EAChCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,oBAAoB,CAAA,EACtCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,EACrCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,CACtC,CAAA;EAED,MAAMM,aAAaC,UAAW,CAAA,CAC5BH,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,cAAc,CAAA,EAChCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,oBAAoB,CAAA,EACtCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,EACrCI,IAAA,CAAKC,OAAQ,CAAAL,GAAA,EAAK,mBAAmB,CAAA,CACtC,CAAA;EAED,OAAOM,UAAW,CAAAE,IAAA,CAChBC,IAAA,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,IAAK,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,UAAUnB,YAAY,CAAA,EACtBoB,oBAAqB,CAAA,CAAA,CACvB;AACF;"}
@@ -1,22 +0,0 @@
1
- import chokidar from 'chokidar';
2
- import { Observable } from 'rxjs';
3
- function watchFiles(patterns) {
4
- return new Observable(observer => {
5
- const watcher = chokidar.watch(patterns, {
6
- ignoreInitial: true
7
- });
8
- function handleFileEvent(type, file) {
9
- observer.next({
10
- type,
11
- file
12
- });
13
- }
14
- watcher.on("all", handleFileEvent);
15
- return () => {
16
- watcher.off("all", handleFileEvent);
17
- watcher.close();
18
- };
19
- });
20
- }
21
- export { watchFiles };
22
- //# sourceMappingURL=watchFiles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"watchFiles.js","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,UAAW,CAACC,QAAa,IAAA;IAC5B,MAAAC,OAAA,GAAUC,QAAS,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;"}