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