presetter 3.5.4 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +21 -0
- package/README.md +3 -3
- package/bin/cli.js +5 -0
- package/bin/run-p.js +6 -0
- package/bin/run-s.js +6 -0
- package/bin/{run → run.js} +4 -2
- package/lib/content.d.ts +1 -1
- package/lib/content.js +58 -66
- package/lib/directive.d.ts +3 -3
- package/lib/directive.js +12 -17
- package/lib/error.js +2 -6
- package/lib/executable/entry.d.ts +1 -1
- package/lib/executable/entry.js +57 -24
- package/lib/executable/error.js +12 -19
- package/lib/executable/index.js +5 -6
- package/lib/index.d.ts +6 -6
- package/lib/index.js +7 -23
- package/lib/io.d.ts +7 -4
- package/lib/io.js +53 -57
- package/lib/package.d.ts +3 -5
- package/lib/package.js +18 -31
- package/lib/preset/content.d.ts +6 -0
- package/lib/preset/content.js +13 -0
- package/lib/preset/context.d.ts +2 -0
- package/lib/preset/context.js +14 -0
- package/lib/preset/graph.d.ts +4 -0
- package/lib/preset/graph.js +20 -0
- package/lib/preset/index.d.ts +3 -0
- package/lib/preset/index.js +4 -0
- package/lib/preset/mapping.d.ts +2 -0
- package/lib/preset/mapping.js +15 -0
- package/lib/preset/presetterRC.d.ts +5 -0
- package/lib/preset/presetterRC.js +38 -0
- package/lib/preset/scripts.d.ts +1 -0
- package/lib/preset/scripts.js +10 -0
- package/lib/preset/setup.d.ts +6 -0
- package/lib/preset/setup.js +43 -0
- package/lib/preset/unset.d.ts +1 -0
- package/lib/preset/unset.js +14 -0
- package/lib/resolution.d.ts +1 -1
- package/lib/resolution.js +11 -17
- package/lib/run.d.ts +5 -1
- package/lib/run.js +68 -74
- package/lib/scripts.d.ts +3 -3
- package/lib/scripts.js +13 -15
- package/lib/task.d.ts +8 -0
- package/lib/task.js +37 -0
- package/lib/template.d.ts +6 -6
- package/lib/template.js +25 -35
- package/lib/utilities/index.d.ts +1 -0
- package/lib/utilities/index.js +2 -0
- package/lib/utilities/mapValues.d.ts +1 -0
- package/lib/utilities/mapValues.js +4 -0
- package/package.json +35 -43
- package/bin/cli +0 -3
- package/lib/preset.d.ts +0 -15
- package/lib/preset.js +0 -188
- package/lib/types.d.ts +0 -73
- package/lib/types.js +0 -3
package/lib/resolution.js
CHANGED
@@ -1,35 +1,29 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
const io_1 = require("./io");
|
7
|
-
function getConfigKey(filename) {
|
8
|
-
return (0, path_1.basename)(filename, (0, path_1.extname)(filename))
|
1
|
+
import { existsSync } from 'node:fs';
|
2
|
+
import { basename, extname } from 'node:path';
|
3
|
+
import { loadFile } from './io.js';
|
4
|
+
export function getConfigKey(filename) {
|
5
|
+
return basename(filename, extname(filename))
|
9
6
|
.replace(/^\./, '')
|
10
7
|
.replace(/rc$/, '')
|
11
8
|
.replace(/\.config$/, '');
|
12
9
|
}
|
13
|
-
|
14
|
-
async function loadDynamicMap(map, context) {
|
10
|
+
export async function loadDynamicMap(map, context) {
|
15
11
|
return Object.fromEntries(await Promise.all(Object.entries(map instanceof Function
|
16
12
|
? await map(context)
|
17
|
-
:
|
13
|
+
: { ...map }).map(async ([relativePath, value]) => [
|
18
14
|
relativePath,
|
19
15
|
await loadDynamic(value, context),
|
20
16
|
])));
|
21
17
|
}
|
22
|
-
|
23
|
-
async function loadDynamic(value, context) {
|
18
|
+
export async function loadDynamic(value, context) {
|
24
19
|
if (typeof value === 'function') {
|
25
20
|
return value(context);
|
26
21
|
}
|
27
|
-
else if (typeof value === 'string' &&
|
28
|
-
return
|
22
|
+
else if (typeof value === 'string' && existsSync(value)) {
|
23
|
+
return loadFile(value);
|
29
24
|
}
|
30
25
|
else {
|
31
26
|
return value;
|
32
27
|
}
|
33
28
|
}
|
34
|
-
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9yZXNvbHV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWVBLDJCQUFnQztBQUNoQywrQkFBeUM7QUFFekMsNkJBQWdDO0FBa0JoQyxTQUFnQixZQUFZLENBQUMsUUFBZ0I7SUFDM0MsT0FBTyxJQUFBLGVBQVEsRUFBQyxRQUFRLEVBQUUsSUFBQSxjQUFPLEVBQUMsUUFBUSxDQUFDLENBQUM7U0FDekMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7U0FDbEIsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7U0FDbEIsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUM5QixDQUFDO0FBTEQsb0NBS0M7QUFRTSxLQUFLLFVBQVUsY0FBYyxDQUNsQyxHQUFtQixFQUNuQixPQUFxRDtJQUdyRCxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixNQUFNLENBQUMsT0FBTyxDQUNaLEdBQUcsWUFBWSxRQUFRO1FBQ3JCLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxPQUFnQyxDQUFDO1FBQzdDLENBQUMsbUJBQU0sR0FBRyxDQUFFLENBQ2YsQ0FBQyxHQUFHLENBQ0gsS0FBSyxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUEwQixFQUFFLENBQUM7UUFDdkQsWUFBWTtRQUNaLE1BQU0sV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFnQyxDQUFDO0tBQzNELENBQ0YsQ0FDRixDQUNGLENBQUM7QUFDSixDQUFDO0FBbkJELHdDQW1CQztBQVFNLEtBQUssVUFBVSxXQUFXLENBSS9CLEtBR21CLEVBQ25CLE9BQWlDO0lBRWpDLElBQUksT0FBTyxLQUFLLEtBQUssVUFBVSxFQUFFO1FBQy9CLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3ZCO1NBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksSUFBQSxlQUFVLEVBQUMsS0FBSyxDQUFDLEVBQUU7UUFDekQsT0FBTyxJQUFBLGFBQVEsRUFBQyxLQUFLLENBQU0sQ0FBQztLQUM3QjtTQUFNO1FBQ0wsT0FBTyxLQUFVLENBQUM7S0FDbkI7QUFDSCxDQUFDO0FBakJELGtDQWlCQyJ9
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9yZXNvbHV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWtCaEMsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFnQjtJQUMzQyxPQUFPLFFBQVEsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3pDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1NBQ2xCLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1NBQ2xCLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQVFELE1BQU0sQ0FBQyxLQUFLLFVBQVUsY0FBYyxDQUNsQyxHQUFtQixFQUNuQixPQUFxRDtJQUdyRCxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixNQUFNLENBQUMsT0FBTyxDQUNaLEdBQUcsWUFBWSxRQUFRO1FBQ3JCLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxPQUFnQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQ2YsQ0FBQyxHQUFHLENBQ0gsS0FBSyxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUEwQixFQUFFLENBQUM7UUFDdkQsWUFBWTtRQUNaLE1BQU0sV0FBVyxDQUFDLEtBQUssRUFBRSxPQUFnQyxDQUFDO0tBQzNELENBQ0YsQ0FDRixDQUNGLENBQUM7QUFDSixDQUFDO0FBUUQsTUFBTSxDQUFDLEtBQUssVUFBVSxXQUFXLENBSS9CLEtBR21CLEVBQ25CLE9BQWlDO0lBRWpDLElBQUksT0FBTyxLQUFLLEtBQUssVUFBVSxFQUFFO1FBQy9CLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3ZCO1NBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3pELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBTSxDQUFDO0tBQzdCO1NBQU07UUFDTCxPQUFPLEtBQVUsQ0FBQztLQUNuQjtBQUNILENBQUMifQ==
|
package/lib/run.d.ts
CHANGED
package/lib/run.js
CHANGED
@@ -1,82 +1,76 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
const
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
const template = await (0, preset_1.getScripts)();
|
23
|
-
this.package.json.scripts = (0, scripts_1.composeScripts)({
|
24
|
-
template,
|
25
|
-
target: Object.assign({}, this.package.json.scripts),
|
26
|
-
});
|
27
|
-
if (this.shouldRestore) {
|
28
|
-
try {
|
29
|
-
(0, fs_1.renameSync)(this.package.path, this.path);
|
30
|
-
}
|
31
|
-
catch (_a) {
|
32
|
-
throw new Error('failed to backup package.json');
|
33
|
-
}
|
34
|
-
}
|
35
|
-
const PADDING = 2;
|
36
|
-
const content = JSON.stringify(this.package.json, null, PADDING);
|
37
|
-
try {
|
38
|
-
(0, fs_1.writeFileSync)(this.package.path, content);
|
39
|
-
}
|
40
|
-
catch (_b) {
|
41
|
-
throw new Error('failed to write to package.json');
|
42
|
-
}
|
43
|
-
}
|
44
|
-
async restore() {
|
45
|
-
if (this.shouldRestore) {
|
46
|
-
try {
|
47
|
-
(0, fs_1.unlinkSync)(this.package.path);
|
48
|
-
(0, fs_1.renameSync)(this.path, this.package.path);
|
1
|
+
import { dirname } from 'node:path';
|
2
|
+
import npmRunScript from '@npmcli/run-script';
|
3
|
+
import { Listr } from 'listr2';
|
4
|
+
import parse from 'yargs-parser';
|
5
|
+
import { getPackage } from './package.js';
|
6
|
+
import { getScripts } from './preset/index.js';
|
7
|
+
import { composeScripts } from './scripts.js';
|
8
|
+
import { parseGlobalArgs, parseTaskSpec, selectTasks } from './task.js';
|
9
|
+
function createListrTask(_) {
|
10
|
+
const { composed, template, task, args, pkg } = _;
|
11
|
+
return {
|
12
|
+
title: `Running ${task}...`,
|
13
|
+
task: async (_, taskControl) => {
|
14
|
+
const command = composed[task];
|
15
|
+
const argv = parse(command);
|
16
|
+
const [executable, ...taskSpecs] = argv._.map((arg) => arg.toString());
|
17
|
+
if (['run-s', 'run-p'].includes(executable)) {
|
18
|
+
const globalArgs = [...parseGlobalArgs(argv), ...args];
|
19
|
+
const subTasks = taskSpecs.flatMap((taskSpec) => getListrTasksBySpec({ template, pkg, taskSpec, globalArgs }));
|
20
|
+
const concurrent = executable === 'run-p';
|
21
|
+
return taskControl.newListr(subTasks, { concurrent });
|
49
22
|
}
|
50
|
-
|
51
|
-
|
23
|
+
else {
|
24
|
+
return runWithNPM({ task, args, pkg, composedScript: composed });
|
52
25
|
}
|
53
|
-
}
|
54
|
-
}
|
26
|
+
},
|
27
|
+
};
|
55
28
|
}
|
56
|
-
|
57
|
-
const
|
58
|
-
const
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
const SIGINT = 130;
|
65
|
-
process.exit(SIGINT);
|
66
|
-
}
|
29
|
+
function getListrTasksBySpec(_) {
|
30
|
+
const { template, pkg, taskSpec, globalArgs } = _;
|
31
|
+
const task = parseTaskSpec(taskSpec.toString().replace(/^(['"])([^]*?)\1$/, '$2'), globalArgs);
|
32
|
+
return getListrTasks({
|
33
|
+
template,
|
34
|
+
pkg,
|
35
|
+
selector: task.selector,
|
36
|
+
args: task.args,
|
67
37
|
});
|
68
|
-
|
69
|
-
|
70
|
-
const {
|
71
|
-
|
38
|
+
}
|
39
|
+
function getListrTasks(_) {
|
40
|
+
const { template, pkg, selector, args } = _;
|
41
|
+
const target = { ...pkg.json.scripts };
|
42
|
+
const composed = composeScripts({ template, target });
|
43
|
+
const tasks = selectTasks(Object.keys(composed), selector);
|
44
|
+
return tasks.map((task) => createListrTask({ composed, template, pkg, task, args }));
|
45
|
+
}
|
46
|
+
async function runWithNPM(_) {
|
47
|
+
const { task, args, pkg, composedScript } = _;
|
48
|
+
return npmRunScript({
|
49
|
+
event: task,
|
50
|
+
args,
|
51
|
+
pkg: { scripts: composedScript },
|
52
|
+
path: dirname(pkg.path),
|
72
53
|
stdio: 'inherit',
|
73
|
-
reject: false,
|
74
|
-
shell: true,
|
75
54
|
});
|
76
|
-
|
77
|
-
|
78
|
-
|
55
|
+
}
|
56
|
+
export async function run(tasks, options) {
|
57
|
+
const { parallel = false, templateOnly = false } = { ...options };
|
58
|
+
const pkg = await getPackage();
|
59
|
+
if (templateOnly) {
|
60
|
+
pkg.json.scripts = {};
|
61
|
+
}
|
62
|
+
const template = await getScripts();
|
63
|
+
const listTasks = tasks.flatMap((task) => getListrTasks({ template, pkg, ...task }));
|
64
|
+
const listr = new Listr(listTasks, {
|
65
|
+
concurrent: parallel,
|
66
|
+
exitOnError: true,
|
67
|
+
renderer: 'simple',
|
68
|
+
});
|
69
|
+
try {
|
70
|
+
await listr.run();
|
71
|
+
}
|
72
|
+
catch {
|
73
|
+
process.exit(1);
|
79
74
|
}
|
80
75
|
}
|
81
|
-
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc291cmNlL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFlQSxrREFBMEI7QUFDMUIsMkJBQXVFO0FBQ3ZFLG1DQUE4QjtBQUM5QiwrQkFBa0Q7QUFFbEQsdUNBQXVDO0FBQ3ZDLHFDQUFzQztBQUN0Qyx1Q0FBMkM7QUFLM0MsTUFBTSwyQkFBMkI7SUFVL0IsWUFBWSxhQUFzQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUEsY0FBTyxFQUNqQixJQUFBLGNBQU8sRUFBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQzNCLEdBQUcsR0FBRyxJQUFBLGVBQVEsRUFBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQ25DLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsSUFBQSxlQUFVLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFNTSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQVk7UUFFL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFHdkMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFBLG1CQUFVLEdBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBQSx3QkFBYyxFQUFDO1lBQ3pDLFFBQVE7WUFDUixNQUFNLG9CQUNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FDN0I7U0FDRixDQUFDLENBQUM7UUFHSCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsSUFBSTtnQkFDRixJQUFBLGVBQVUsRUFBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDMUM7WUFB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
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc291cmNlL3J1bi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFL0IsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN0QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQWdCckUsU0FBUyxlQUFlLENBQUMsQ0FNeEI7SUFDQyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUVsRCxPQUFPO1FBQ0wsS0FBSyxFQUFFLFdBQVcsSUFBSSxLQUFLO1FBQzNCLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFFO1lBQzdCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUcvQixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUIsTUFBTSxDQUFDLFVBQVUsRUFBRSxHQUFHLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUd2RSxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FB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
|
package/lib/scripts.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
export
|
1
|
+
type ScriptName = string;
|
2
|
+
type Command = string;
|
3
|
+
export type Script = Record<ScriptName, Command>;
|
4
4
|
export declare function composeScripts(args: {
|
5
5
|
template: Script;
|
6
6
|
target: Script;
|
package/lib/scripts.js
CHANGED
@@ -1,17 +1,15 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
7
|
-
|
8
|
-
const printer = mvdan_sh_1.syntax.NewPrinter();
|
9
|
-
function composeScripts(args) {
|
1
|
+
import { basename } from 'node:path';
|
2
|
+
import mvdan from 'mvdan-sh';
|
3
|
+
import { mapValues } from './utilities/index.js';
|
4
|
+
const { syntax } = mvdan;
|
5
|
+
const parser = syntax.NewParser();
|
6
|
+
const printer = syntax.NewPrinter();
|
7
|
+
export function composeScripts(args) {
|
10
8
|
const { template, target } = args;
|
11
|
-
return
|
9
|
+
return mapValues({ ...template, ...target }, (command) => {
|
12
10
|
try {
|
13
11
|
const ast = parser.Parse(command);
|
14
|
-
|
12
|
+
syntax.Walk(ast, (node) => replaceRunnerNode(node, { template, target }));
|
15
13
|
const [statement] = ast.Stmts;
|
16
14
|
if (isNodeType(statement.Cmd, 'Subshell')) {
|
17
15
|
statement.Cmd = statement.Cmd.Stmts[0].Cmd;
|
@@ -28,9 +26,8 @@ function composeScripts(args) {
|
|
28
26
|
}
|
29
27
|
});
|
30
28
|
}
|
31
|
-
exports.composeScripts = composeScripts;
|
32
29
|
function isNodeType(node, type) {
|
33
|
-
return
|
30
|
+
return syntax.NodeType(node) === type;
|
34
31
|
}
|
35
32
|
function resolveRunner(command, context) {
|
36
33
|
const parts = command.split(' ');
|
@@ -52,11 +49,12 @@ function resolveRunner(command, context) {
|
|
52
49
|
function replaceRunnerNode(node, context) {
|
53
50
|
if (isNodeType(node, 'Stmt') && isNodeType(node.Cmd, 'CallExpr')) {
|
54
51
|
const parts = node.Cmd.Args.map((part) => part.Parts[0].Value);
|
55
|
-
if (
|
52
|
+
if (basename(parts[0]) === 'run') {
|
56
53
|
const resolvedCommand = resolveRunner(parts.join(' '), context);
|
57
54
|
node.Cmd = parser.Parse(`(${resolvedCommand})`).Stmts[0].Cmd;
|
55
|
+
replaceRunnerNode(node.Cmd, context);
|
58
56
|
}
|
59
57
|
}
|
60
58
|
return true;
|
61
59
|
}
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyaXB0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS9zY3JpcHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckMsT0FBTyxLQUFLLE1BQU0sVUFBVSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFheEMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQztBQUd6QixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7QUFHbEMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO0FBaUJwQyxNQUFNLFVBQVUsY0FBYyxDQUFDLElBSzlCO0lBQ0MsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFFbEMsT0FBTyxTQUFTLENBQUMsRUFBRSxHQUFHLFFBQVEsRUFBRSxHQUFHLE1BQU0sRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFVLEVBQUU7UUFDL0QsSUFBSTtZQUVGLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFHbEMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFHMUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDOUIsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsRUFBRTtnQkFDekMsU0FBUyxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7YUFDNUM7WUFHRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbEM7UUFBQyxPQUFPLEtBQWMsRUFBRTtZQUN2QixJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7Z0JBQzFCLE1BQU0sS0FBSyxDQUFDO2FBQ2I7aUJBQU07Z0JBRUwsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsT0FBTyxFQUFFLENBQUMsQ0FBQzthQUN4RDtTQUNGO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBV0QsU0FBUyxVQUFVLENBQUMsSUFBVSxFQUFFLElBQVk7SUFDMUMsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQztBQUN4QyxDQUFDO0FBUUQsU0FBUyxhQUFhLENBQUMsT0FBZSxFQUFFLE9BQXNCO0lBQzVELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFHakMsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVFLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2xDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQ2hELENBQUM7SUFHRixPQUFPLFlBQVk7U0FDaEIsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7UUFDbkIsTUFBTSxlQUFlLEdBQ25CLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO1lBQzdCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxPQUFPO2dCQUN0QyxDQUFDLENBQUMsU0FBUztnQkFDWCxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBRW5DLElBQUksZUFBZSxLQUFLLFNBQVMsRUFBRTtZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLElBQUksV0FBVyw0QkFBNEIsT0FBTyxHQUFHLENBQUMsQ0FBQztTQUN4RTtRQUVELE9BQU8sQ0FBQyxlQUFlLEVBQUUsR0FBRyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDekQsQ0FBQyxDQUFDO1NBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xCLENBQUM7QUFRRCxTQUFTLGlCQUFpQixDQUFDLElBQVUsRUFBRSxPQUFzQjtJQUUzRCxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLEVBQUU7UUFFaEUsTUFBTSxLQUFLLEdBQWEsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBR3pFLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUVoQyxNQUFNLGVBQWUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUdoRSxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxlQUFlLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7WUFHN0QsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN0QztLQUNGO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDIn0=
|
package/lib/task.d.ts
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { Arguments } from 'yargs-parser';
|
2
|
+
export interface Task {
|
3
|
+
selector: string;
|
4
|
+
args: string[];
|
5
|
+
}
|
6
|
+
export declare function parseGlobalArgs(argv: Arguments): string[];
|
7
|
+
export declare function parseTaskSpec(spec: string, globalArgs: string[]): Task;
|
8
|
+
export declare function selectTasks(tasks: string[], pattern: string): string[];
|
package/lib/task.js
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
import parse from 'yargs-parser';
|
2
|
+
export function parseGlobalArgs(argv) {
|
3
|
+
const globalArgs = argv['--'];
|
4
|
+
return (globalArgs?.map((arg) => arg.toString().replace(/^(['"])([^]*?)\1$/, '$2')) ?? []);
|
5
|
+
}
|
6
|
+
export function parseTaskSpec(spec, globalArgs) {
|
7
|
+
const argv = parse(spec, {
|
8
|
+
configuration: { 'populate--': true },
|
9
|
+
});
|
10
|
+
const selector = argv._[0];
|
11
|
+
const args = parseGlobalArgs(argv).reduce((processedArgs, arg) => {
|
12
|
+
if (arg === '{@}') {
|
13
|
+
return [...processedArgs, ...globalArgs];
|
14
|
+
}
|
15
|
+
else {
|
16
|
+
return [...processedArgs, arg];
|
17
|
+
}
|
18
|
+
}, []);
|
19
|
+
return { selector, args };
|
20
|
+
}
|
21
|
+
export function selectTasks(tasks, pattern) {
|
22
|
+
const regexPattern = pattern
|
23
|
+
.split(':')
|
24
|
+
.map((part) => {
|
25
|
+
if (part === '*') {
|
26
|
+
return '[^:]+';
|
27
|
+
}
|
28
|
+
if (part === '**') {
|
29
|
+
return '.*';
|
30
|
+
}
|
31
|
+
return part;
|
32
|
+
})
|
33
|
+
.join(':');
|
34
|
+
const regex = new RegExp(`^${regexPattern}$`);
|
35
|
+
return tasks.filter((task) => regex.test(task));
|
36
|
+
}
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NvdXJjZS90YXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQWVqQyxNQUFNLFVBQVUsZUFBZSxDQUFDLElBQWU7SUFFN0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRzlCLE9BQU8sQ0FDTCxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FFdEIsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FDbEQsSUFBSSxFQUFFLENBQ1IsQ0FBQztBQUNKLENBQUM7QUFRRCxNQUFNLFVBQVUsYUFBYSxDQUFDLElBQVksRUFBRSxVQUFvQjtJQUM5RCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFO1FBRXZCLGFBQWEsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUU7S0FDdEMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVcsQ0FBQztJQUNyQyxNQUFNLElBQUksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQy9ELElBQUksR0FBRyxLQUFLLEtBQUssRUFBRTtZQUVqQixPQUFPLENBQUMsR0FBRyxhQUFhLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQztTQUMxQzthQUFNO1lBQ0wsT0FBTyxDQUFDLEdBQUcsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQyxFQUFFLEVBQWMsQ0FBQyxDQUFDO0lBRW5CLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDNUIsQ0FBQztBQVFELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBZSxFQUFFLE9BQWU7SUFDMUQsTUFBTSxZQUFZLEdBQUcsT0FBTztTQUN6QixLQUFLLENBQUMsR0FBRyxDQUFDO1NBQ1YsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWixJQUFJLElBQUksS0FBSyxHQUFHLEVBQUU7WUFDaEIsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFDRCxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDO1NBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWIsTUFBTSxLQUFLLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBRTlDLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2xELENBQUMifQ==
|
package/lib/template.d.ts
CHANGED
@@ -1,14 +1,14 @@
|
|
1
|
-
import type { IgnoreRule } from '
|
1
|
+
import type { IgnoreRule, PrimitiveEntity } from 'presetter-types';
|
2
2
|
import type { JsonObject, JsonValue } from 'type-fest';
|
3
|
-
|
4
|
-
|
3
|
+
type MergedType<A, B> = A extends JsonObject ? B extends JsonObject ? A & B : MergedArray<A, B> : MergedArray<A, B>;
|
4
|
+
type MergedArray<A, B> = A extends JsonValue[] ? B extends JsonValue[] ? Array<A[number] | B[number]> : keyof B extends `${number}` ? JsonValue[] : B : B;
|
5
5
|
export declare function filter<C extends Record<string, unknown>>(subject: C, ...ignores: IgnoreRule[]): C;
|
6
6
|
export declare function filter(subject: unknown[], ...ignores: IgnoreRule[]): unknown[];
|
7
7
|
export declare function isJSON(subject: unknown): subject is JsonObject;
|
8
|
-
export declare function merge<S extends JsonValue, T extends
|
9
|
-
export declare function mergeArray<S extends JsonValue, T extends
|
8
|
+
export declare function merge<S extends JsonValue, T extends PrimitiveEntity>(source: S, target?: T): MergedType<S, T>;
|
9
|
+
export declare function mergeArray<S extends JsonValue, T extends PrimitiveEntity>(source: S[], target?: T): MergedArray<S[], T>;
|
10
10
|
export declare function mergeArrays<S extends JsonValue, T extends JsonValue>(source: S[], target: T[]): MergedArray<S[], T[]>;
|
11
|
-
export declare function mergeObject<S extends JsonObject, T extends
|
11
|
+
export declare function mergeObject<S extends JsonObject, T extends PrimitiveEntity>(source: S, target?: T): MergedType<S, T>;
|
12
12
|
export declare function mergeTemplate(source: Record<string, JsonObject | string>, target: Record<string, JsonObject | string>): Record<string, JsonObject | string>;
|
13
13
|
export declare function template(content: string, parameter: Record<string, string>): string;
|
14
14
|
export declare function template<Content extends Record<string, unknown> | unknown[]>(content: Content, parameter: Record<string, string>): Content;
|
package/lib/template.js
CHANGED
@@ -1,12 +1,6 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
};
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.template = exports.mergeTemplate = exports.mergeObject = exports.mergeArrays = exports.mergeArray = exports.merge = exports.isJSON = exports.filter = void 0;
|
7
|
-
const path_1 = require("path");
|
8
|
-
const pupa_1 = __importDefault(require("pupa"));
|
9
|
-
function filter(subject, ...ignores) {
|
1
|
+
import { basename, extname } from 'node:path';
|
2
|
+
import pupa from 'pupa';
|
3
|
+
export function filter(subject, ...ignores) {
|
10
4
|
const fieldsToIgnore = ignores.filter((ignore) => typeof ignore !== 'object');
|
11
5
|
if (Array.isArray(subject)) {
|
12
6
|
return subject.filter((_, key) => !fieldsToIgnore.includes(key));
|
@@ -18,31 +12,28 @@ function filter(subject, ...ignores) {
|
|
18
12
|
filterByPath(value, ignoreTree[key]),
|
19
13
|
])), distilled);
|
20
14
|
}
|
21
|
-
exports.filter = filter;
|
22
15
|
function filterByPath(value, path) {
|
23
16
|
return path && typeof value === 'object'
|
24
17
|
? filter(value, ...(Array.isArray(path) ? path : [path]))
|
25
18
|
: value;
|
26
19
|
}
|
27
|
-
function isJSON(subject) {
|
20
|
+
export function isJSON(subject) {
|
28
21
|
return [
|
29
22
|
typeof subject === 'object',
|
30
23
|
!Array.isArray(subject),
|
31
24
|
subject !== null,
|
32
25
|
].every((value) => value);
|
33
26
|
}
|
34
|
-
|
35
|
-
function merge(source, target) {
|
27
|
+
export function merge(source, target) {
|
36
28
|
if (Array.isArray(source)) {
|
37
29
|
return mergeArray(source, target);
|
38
30
|
}
|
39
31
|
else if (isJSON(source)) {
|
40
32
|
return mergeObject(source, target);
|
41
33
|
}
|
42
|
-
return (target
|
34
|
+
return (target ?? source);
|
43
35
|
}
|
44
|
-
|
45
|
-
function mergeArray(source, target) {
|
36
|
+
export function mergeArray(source, target) {
|
46
37
|
if (Array.isArray(target)) {
|
47
38
|
return mergeArrays(source, target);
|
48
39
|
}
|
@@ -50,10 +41,9 @@ function mergeArray(source, target) {
|
|
50
41
|
[...Object.keys(target)].every((key) => parseInt(key) >= 0)) {
|
51
42
|
return [...source].map((value, key) => merge(value, target[key]));
|
52
43
|
}
|
53
|
-
return (target
|
44
|
+
return (target ?? source);
|
54
45
|
}
|
55
|
-
|
56
|
-
function mergeArrays(source, target) {
|
46
|
+
export function mergeArrays(source, target) {
|
57
47
|
const isPrimitive = source.every((value) => !isJSON(value)) &&
|
58
48
|
target.every((value) => !isJSON(value));
|
59
49
|
if (isPrimitive) {
|
@@ -61,23 +51,25 @@ function mergeArrays(source, target) {
|
|
61
51
|
}
|
62
52
|
return target;
|
63
53
|
}
|
64
|
-
|
65
|
-
function mergeObject(source, target) {
|
54
|
+
export function mergeObject(source, target) {
|
66
55
|
if (isJSON(target)) {
|
67
56
|
const mergedSource = Object.fromEntries(Object.entries(source).map(([key, value]) => [
|
68
57
|
key,
|
69
58
|
merge(value, target[key]),
|
70
59
|
]));
|
71
|
-
return
|
60
|
+
return {
|
61
|
+
...mergedSource,
|
62
|
+
...target,
|
63
|
+
...mergedSource,
|
64
|
+
};
|
72
65
|
}
|
73
|
-
return (target
|
66
|
+
return (target ?? source);
|
74
67
|
}
|
75
|
-
|
76
|
-
function mergeTemplate(source, target) {
|
68
|
+
export function mergeTemplate(source, target) {
|
77
69
|
const mergedSource = Object.fromEntries(Object.entries(source).map(([path, template]) => {
|
78
70
|
const replacement = target[path];
|
79
|
-
const isIgnoreFile = !
|
80
|
-
|
71
|
+
const isIgnoreFile = !extname(path) &&
|
72
|
+
basename(path).startsWith('.') &&
|
81
73
|
typeof template === 'string' &&
|
82
74
|
typeof replacement === 'string';
|
83
75
|
if (isIgnoreFile) {
|
@@ -87,17 +79,16 @@ function mergeTemplate(source, target) {
|
|
87
79
|
]);
|
88
80
|
return [path, [...mergedSet].join('\n')];
|
89
81
|
}
|
90
|
-
else if (
|
82
|
+
else if (typeof template === typeof replacement) {
|
91
83
|
return [path, merge(template, replacement)];
|
92
84
|
}
|
93
|
-
return [path,
|
85
|
+
return [path, template];
|
94
86
|
}));
|
95
|
-
return
|
87
|
+
return { ...target, ...mergedSource };
|
96
88
|
}
|
97
|
-
|
98
|
-
function template(content, parameter) {
|
89
|
+
export function template(content, parameter) {
|
99
90
|
if (typeof content === 'string') {
|
100
|
-
return (
|
91
|
+
return pupa(content, parameter);
|
101
92
|
}
|
102
93
|
else if (Array.isArray(content)) {
|
103
94
|
return content.map((value) => template(value, parameter));
|
@@ -111,5 +102,4 @@ function template(content, parameter) {
|
|
111
102
|
return content;
|
112
103
|
}
|
113
104
|
}
|
114
|
-
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBZUEsK0JBQXlDO0FBQ3pDLGdEQUF3QjtBQThCeEIsU0FBZ0IsTUFBTSxDQUNwQixPQUE0QyxFQUM1QyxHQUFHLE9BQXFCO0lBR3hCLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQ25DLENBQUMsTUFBTSxFQUE2QixFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUNsRSxDQUFDO0lBR0YsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzFCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ2xFO0lBR0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FDbEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzVFLENBQUM7SUFHRixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUM5QixDQUFDLE1BQU0sRUFBd0MsRUFBRSxDQUMvQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQzdCLENBQUM7SUFHRixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQ3JCLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FDL0IsTUFBTSxDQUFDLFdBQVcsQ0FDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEdBQUcsQ0FDbEMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFB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
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvdGVtcGxhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFOUMsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBOEJ4QixNQUFNLFVBQVUsTUFBTSxDQUNwQixPQUE0QyxFQUM1QyxHQUFHLE9BQXFCO0lBR3hCLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQ25DLENBQUMsTUFBTSxFQUE2QixFQUFFLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUNsRSxDQUFDO0lBR0YsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQzFCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ2xFO0lBR0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FDbEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzVFLENBQUM7SUFHRixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUM5QixDQUFDLE1BQU0sRUFBd0MsRUFBRSxDQUMvQyxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQzdCLENBQUM7SUFHRixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQ3JCLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FDL0IsTUFBTSxDQUFDLFdBQVcsQ0FDaEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0Is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
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './mapValues.js';
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare function mapValues<T, U>(obj: Record<string, T>, fn: (value: T) => U): Record<string, U>;
|
@@ -0,0 +1,4 @@
|
|
1
|
+
export function mapValues(obj, fn) {
|
2
|
+
return Object.fromEntries(Object.entries(obj).map(([key, value]) => [key, fn(value)]));
|
3
|
+
}
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwVmFsdWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc291cmNlL3V0aWxpdGllcy9tYXBWYWx1ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJBLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEdBQXNCLEVBQ3RCLEVBQW1CO0lBRW5CLE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FDdkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDNUQsQ0FBQztBQUNKLENBQUMifQ==
|