presetter 4.7.2 → 6.0.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/README.md +5 -5
- package/lib/debugger.d.ts +4 -0
- package/lib/debugger.d.ts.map +1 -0
- package/lib/debugger.js +4 -0
- package/lib/executable/entry.d.ts.map +1 -1
- package/lib/executable/entry.js +4 -43
- package/lib/executable/error.d.ts.map +1 -1
- package/lib/executable/error.js +1 -16
- package/lib/executable/index.js +2 -16
- package/lib/index.d.ts +4 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +6 -21
- package/lib/io.d.ts +8 -42
- package/lib/io.d.ts.map +1 -1
- package/lib/io.js +24 -156
- package/lib/package.d.ts +2 -2
- package/lib/package.d.ts.map +1 -1
- package/lib/package.js +5 -20
- package/lib/preset/bootstrap.d.ts +5 -0
- package/lib/preset/bootstrap.d.ts.map +1 -0
- package/lib/preset/bootstrap.js +32 -0
- package/lib/preset/config/index.d.ts +3 -0
- package/lib/preset/config/index.d.ts.map +1 -0
- package/lib/preset/config/index.js +4 -0
- package/lib/preset/config/resolve.d.ts +8 -0
- package/lib/preset/config/resolve.d.ts.map +1 -0
- package/lib/preset/config/resolve.js +25 -0
- package/lib/preset/config/search.d.ts +7 -0
- package/lib/preset/config/search.d.ts.map +1 -0
- package/lib/preset/config/search.js +25 -0
- package/lib/preset/context.d.ts +2 -1
- package/lib/preset/context.d.ts.map +1 -1
- package/lib/preset/context.js +5 -24
- package/lib/preset/index.d.ts +5 -2
- package/lib/preset/index.d.ts.map +1 -1
- package/lib/preset/index.js +7 -18
- package/lib/preset/project.d.ts +8 -0
- package/lib/preset/project.d.ts.map +1 -0
- package/lib/preset/project.js +28 -0
- package/lib/preset/resolution/asset.d.ts +31 -0
- package/lib/preset/resolution/asset.d.ts.map +1 -0
- package/lib/preset/resolution/asset.js +78 -0
- package/lib/preset/resolution/content.d.ts +37 -0
- package/lib/preset/resolution/content.d.ts.map +1 -0
- package/lib/preset/resolution/content.js +55 -0
- package/lib/preset/resolution/debugger.d.ts +3 -0
- package/lib/preset/resolution/debugger.d.ts.map +1 -0
- package/lib/preset/resolution/debugger.js +3 -0
- package/lib/preset/resolution/index.d.ts +6 -0
- package/lib/preset/resolution/index.d.ts.map +1 -0
- package/lib/preset/resolution/index.js +7 -0
- package/lib/preset/resolution/object.d.ts +9 -0
- package/lib/preset/resolution/object.d.ts.map +1 -0
- package/lib/preset/resolution/object.js +10 -0
- package/lib/preset/resolution/preset.d.ts +9 -0
- package/lib/preset/resolution/preset.d.ts.map +1 -0
- package/lib/preset/resolution/preset.js +17 -0
- package/lib/preset/resolution/script.d.ts +9 -0
- package/lib/preset/resolution/script.d.ts.map +1 -0
- package/lib/preset/resolution/script.js +39 -0
- package/lib/preset/resolution/variable.d.ts +9 -0
- package/lib/preset/resolution/variable.d.ts.map +1 -0
- package/lib/preset/resolution/variable.js +33 -0
- package/lib/preset/scripts.d.ts.map +1 -1
- package/lib/preset/scripts.js +6 -20
- package/lib/resolve.d.ts +7 -0
- package/lib/resolve.d.ts.map +1 -0
- package/lib/resolve.js +27 -0
- package/lib/run.d.ts.map +1 -1
- package/lib/run.js +7 -19
- package/lib/scripts.d.ts.map +1 -1
- package/lib/scripts.js +8 -19
- package/lib/serialization.d.ts +15 -0
- package/lib/serialization.d.ts.map +1 -0
- package/lib/serialization.js +48 -0
- package/lib/task.d.ts.map +1 -1
- package/lib/task.js +5 -17
- package/lib/template/index.d.ts +3 -0
- package/lib/template/index.d.ts.map +1 -0
- package/lib/template/index.js +4 -0
- package/lib/template/merge.d.ts +33 -0
- package/lib/template/merge.d.ts.map +1 -0
- package/lib/template/merge.js +84 -0
- package/lib/template/substitute.d.ts +11 -0
- package/lib/template/substitute.d.ts.map +1 -0
- package/lib/template/substitute.js +19 -0
- package/lib/utilities/display.d.ts +15 -0
- package/lib/utilities/display.d.ts.map +1 -0
- package/lib/utilities/display.js +51 -0
- package/lib/utilities/index.d.ts +3 -1
- package/lib/utilities/index.d.ts.map +1 -1
- package/lib/utilities/index.js +5 -17
- package/lib/utilities/{mapValues.d.ts → mapping.d.ts} +1 -1
- package/lib/utilities/mapping.d.ts.map +1 -0
- package/lib/utilities/mapping.js +10 -0
- package/lib/utilities/object.d.ts +20 -0
- package/lib/utilities/object.d.ts.map +1 -0
- package/lib/utilities/object.js +37 -0
- package/package.json +21 -16
- package/lib/content.d.ts +0 -123
- package/lib/content.d.ts.map +0 -1
- package/lib/content.js +0 -241
- package/lib/directive.d.ts +0 -34
- package/lib/directive.d.ts.map +0 -1
- package/lib/directive.js +0 -172
- package/lib/error.d.ts +0 -8
- package/lib/error.d.ts.map +0 -1
- package/lib/error.js +0 -32
- package/lib/preset/content.d.ts +0 -14
- package/lib/preset/content.d.ts.map +0 -1
- package/lib/preset/content.js +0 -32
- package/lib/preset/graph.d.ts +0 -22
- package/lib/preset/graph.d.ts.map +0 -1
- package/lib/preset/graph.js +0 -53
- package/lib/preset/mapping.d.ts +0 -9
- package/lib/preset/mapping.d.ts.map +0 -1
- package/lib/preset/mapping.js +0 -38
- package/lib/preset/presetterRC.d.ts +0 -25
- package/lib/preset/presetterRC.d.ts.map +0 -1
- package/lib/preset/presetterRC.js +0 -74
- package/lib/preset/setup.d.ts +0 -17
- package/lib/preset/setup.d.ts.map +0 -1
- package/lib/preset/setup.js +0 -80
- package/lib/preset/unset.d.ts +0 -5
- package/lib/preset/unset.d.ts.map +0 -1
- package/lib/preset/unset.js +0 -31
- package/lib/resolution.d.ts +0 -22
- package/lib/resolution.d.ts.map +0 -1
- package/lib/resolution.js +0 -61
- package/lib/template.d.ts +0 -64
- package/lib/template.d.ts.map +0 -1
- package/lib/template.js +0 -199
- package/lib/utilities/mapValues.d.ts.map +0 -1
- package/lib/utilities/mapValues.js +0 -24
package/README.md
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
• [Quick Start](#quick-start) • [Usage](#usage) • [Customization](#customization) •
|
8
8
|
|
9
9
|
[](https://github.com/alvis/presetter/releases)
|
10
|
-
[](https://github.com/alvis/presetter/actions)
|
11
11
|
[](https://codeclimate.com/github/alvis/presetter/maintainability)
|
12
12
|
[](https://codeclimate.com/github/alvis/presetter/test_coverage)
|
13
13
|
[](https://snyk.io/test/github/alvis/presetter?targetFile=packages/presetter/package.json&style=flat-square)
|
@@ -16,12 +16,12 @@
|
|
16
16
|
|
17
17
|
</div>
|
18
18
|
|
19
|
-
Sharing configurations for building tools across projects is painful. How many time you've copied configs for `babel`, `eslint`, `
|
19
|
+
Sharing configurations for building tools across projects is painful. How many time you've copied configs for `babel`, `eslint`, `vitest`, `typescript` or the life cycle scripts in `package.json`?
|
20
20
|
How many dev dependencies you have to install before you can kick start a project?
|
21
21
|
|
22
22
|
What's more, what if you want to update configs for all projects? :man_facepalming:
|
23
23
|
|
24
|
-
**Presetter is a utility for setting up building tools for your project from a template.** This means with just only two dev packages, namely this package and your favorite template preset, all essential development packages, such as typescript, eslint and
|
24
|
+
**Presetter is a utility for setting up building tools for your project from a template.** This means with just only two dev packages, namely this package and your favorite template preset, all essential development packages, such as typescript, eslint and vitest, together with their configuration files provided by the preset, are automatically setup for you upon the project's initialization.
|
25
25
|
|
26
26
|
---
|
27
27
|
|
@@ -29,7 +29,7 @@ What's more, what if you want to update configs for all projects? :man_facepalmi
|
|
29
29
|
|
30
30
|
[**FULL DOCUMENTATION IS AVAILABLE HERE**](https://github.com/alvis/presetter/blob/master/README.md)
|
31
31
|
|
32
|
-
1. Bootstrap your project with a preset (e.g. [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-
|
32
|
+
1. Bootstrap your project with a preset (e.g. [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-esm))
|
33
33
|
|
34
34
|
```shell
|
35
35
|
npx presetter use <preset package name>
|
@@ -135,7 +135,7 @@ Presetter support customization in two ways.
|
|
135
135
|
#### Preset Customization
|
136
136
|
|
137
137
|
If your preset support customization, you can supply the customization parameter via the `config` field in `.presetterrc`.
|
138
|
-
e.g. For [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-
|
138
|
+
e.g. For [presetter-preset-esm](https://github.com/alvis/presetter/tree/master/packages/preset-esm), you can adding an expression to `.gitignore` with the following in `.presetterrc`:
|
139
139
|
|
140
140
|
```json
|
141
141
|
{
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"debugger.d.ts","sourceRoot":"","sources":["../source/debugger.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;;AAE1B,wBAAkC"}
|
package/lib/debugger.js
ADDED
@@ -0,0 +1,4 @@
|
|
1
|
+
/* v8 ignore start */
|
2
|
+
import Debug from 'debug';
|
3
|
+
export default Debug('presetter');
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWdnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvZGVidWdnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUJBQXFCO0FBRXJCLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUUxQixlQUFlLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyJ9
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../source/executable/entry.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../source/executable/entry.ts"],"names":[],"mappings":"AAuFA;;;;GAIG;AACH,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAezD"}
|
package/lib/executable/entry.js
CHANGED
@@ -1,53 +1,22 @@
|
|
1
|
-
/*
|
2
|
-
* *** MIT LICENSE ***
|
3
|
-
* -------------------------------------------------------------------------
|
4
|
-
* This code may be modified and distributed under the MIT license.
|
5
|
-
* See the LICENSE file for details.
|
6
|
-
* -------------------------------------------------------------------------
|
7
|
-
*
|
8
|
-
* @summary Entry point for the command line interface (CLI)
|
9
|
-
*
|
10
|
-
* @author Alvis HT Tang <alvis@hilbert.space>
|
11
|
-
* @license MIT
|
12
|
-
* @copyright Copyright (c) 2019 - All Rights Reserved.
|
13
|
-
* -------------------------------------------------------------------------
|
14
|
-
*/
|
15
1
|
import { existsSync } from 'node:fs';
|
16
2
|
import yargs from 'yargs';
|
17
|
-
import {
|
3
|
+
import { bootstrap } from '../preset/index.js';
|
18
4
|
import { run } from '../run.js';
|
19
5
|
import { parseGlobalArgs, parseTaskSpec } from '../task.js';
|
20
|
-
const useCommand = {
|
21
|
-
command: 'use <preset..>',
|
22
|
-
describe: 'adopt the specified preset to the project',
|
23
|
-
builder: (yargs) => yargs
|
24
|
-
.positional('preset', {
|
25
|
-
required: true,
|
26
|
-
type: 'string',
|
27
|
-
description: 'the name of the preset to be used',
|
28
|
-
})
|
29
|
-
.help(),
|
30
|
-
handler: async (argv) => setupPreset(...argv.preset),
|
31
|
-
};
|
32
6
|
const bootstrapCommand = {
|
33
7
|
command: 'bootstrap',
|
34
8
|
describe: 'setup the project according to the specified preset',
|
35
9
|
builder: (yargs) => yargs
|
36
|
-
.option('force', {
|
37
|
-
type: 'boolean',
|
38
|
-
default: false,
|
39
|
-
description: 'overwrite existing files',
|
40
|
-
})
|
41
10
|
.option('only', {
|
42
11
|
type: 'string',
|
43
12
|
description: 'proceed only if the specified file exists',
|
44
13
|
})
|
45
14
|
.help(),
|
46
15
|
handler: async (argv) => {
|
47
|
-
const {
|
16
|
+
const { only } = argv;
|
48
17
|
// only proceed if the specified file exists
|
49
18
|
if (!only || existsSync(only)) {
|
50
|
-
await
|
19
|
+
await bootstrap();
|
51
20
|
}
|
52
21
|
},
|
53
22
|
};
|
@@ -91,11 +60,6 @@ const runPCommand = {
|
|
91
60
|
await run(tasks, { parallel: true });
|
92
61
|
},
|
93
62
|
};
|
94
|
-
const unsetCommand = {
|
95
|
-
command: 'unset',
|
96
|
-
describe: 'remove all artifacts created by the preset',
|
97
|
-
handler: async () => unsetPreset(),
|
98
|
-
};
|
99
63
|
/**
|
100
64
|
* provide a command line interface
|
101
65
|
* @param args command line arguments
|
@@ -105,18 +69,15 @@ export async function entry(args) {
|
|
105
69
|
await yargs()
|
106
70
|
.parserConfiguration({
|
107
71
|
// make sure flags after end-of-options flag `--` are stored under `--`, not `_`
|
108
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
109
72
|
'populate--': true,
|
110
73
|
})
|
111
74
|
.usage('⚙ presetter: your preset configurator')
|
112
75
|
.showHelpOnFail(true)
|
113
|
-
.command(useCommand)
|
114
76
|
.command(bootstrapCommand)
|
115
77
|
.command(runCommand)
|
116
78
|
.command(runSCommand)
|
117
79
|
.command(runPCommand)
|
118
|
-
.command(unsetCommand)
|
119
80
|
.demandCommand()
|
120
81
|
.parse(args);
|
121
82
|
}
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lbnRyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUUxQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFJekQsTUFBTSxnQkFBZ0IsR0FHbEI7SUFDRixPQUFPLEVBQUUsV0FBVztJQUNwQixRQUFRLEVBQUUscURBQXFEO0lBQy9ELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2pCLEtBQUs7U0FDRixNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ2QsSUFBSSxFQUFFLFFBQVE7UUFDZCxXQUFXLEVBQUUsMkNBQTJDO0tBQ3pELENBQUM7U0FDRCxJQUFJLEVBQUU7SUFDWCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ3RCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFdEIsNENBQTRDO1FBQzVDLElBQUksQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxTQUFTLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztDQUNGLENBQUM7QUFFRixNQUFNLFVBQVUsR0FHWjtJQUNGLE9BQU8sRUFBRSxLQUFLO0lBQ2QsUUFBUSxFQUFFLHVCQUF1QjtJQUNqQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNqQixLQUFLO1NBQ0YsTUFBTSxDQUFDLFVBQVUsRUFBRTtRQUNsQixJQUFJLEVBQUUsU0FBUztRQUNmLE9BQU8s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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../source/executable/error.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../source/executable/error.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB7D"}
|
package/lib/executable/error.js
CHANGED
@@ -1,18 +1,3 @@
|
|
1
|
-
/*
|
2
|
-
* *** MIT LICENSE ***
|
3
|
-
* -------------------------------------------------------------------------
|
4
|
-
* This code may be modified and distributed under the MIT license.
|
5
|
-
* See the LICENSE file for details.
|
6
|
-
* -------------------------------------------------------------------------
|
7
|
-
*
|
8
|
-
* @summary Helpers for handling error
|
9
|
-
*
|
10
|
-
* @author Alvis HT Tang <alvis@hilbert.space>
|
11
|
-
* @license MIT
|
12
|
-
* @copyright Copyright (c) 2019 - All Rights Reserved.
|
13
|
-
* -------------------------------------------------------------------------
|
14
|
-
*/
|
15
|
-
/* istanbul ignore file */
|
16
1
|
import { warn } from 'node:console';
|
17
2
|
import createCallsiteRecord from 'callsite-record';
|
18
3
|
import chalk from 'chalk';
|
@@ -40,4 +25,4 @@ export async function handleError(error) {
|
|
40
25
|
}
|
41
26
|
}
|
42
27
|
}
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXBDLE9BQU8sb0JBQW9CLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsV0FBVyxDQUFDLEtBQVk7SUFDNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDMUIsdUVBQXVFO1FBQ3ZFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNkLENBQUM7U0FBTSxDQUFDO1FBQ04sMEJBQTBCO1FBQzFCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDL0MsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRTNCLDRCQUE0QjtRQUM1QixNQUFNLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQztZQUNsQyxRQUFRLEVBQUUsS0FBSztTQUNoQixDQUFDLENBQUM7UUFFSCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxFQUFFLENBQUM7WUFDUCxJQUFJLENBQUMsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEMsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIn0=
|
package/lib/executable/index.js
CHANGED
@@ -1,20 +1,6 @@
|
|
1
|
-
/*
|
2
|
-
* *** MIT LICENSE ***
|
3
|
-
* -------------------------------------------------------------------------
|
4
|
-
* This code may be modified and distributed under the MIT license.
|
5
|
-
* See the LICENSE file for details.
|
6
|
-
* -------------------------------------------------------------------------
|
7
|
-
*
|
8
|
-
* @summary A command line interface for presetter
|
9
|
-
*
|
10
|
-
* @author Alvis HT Tang <alvis@hilbert.space>
|
11
|
-
* @license MIT
|
12
|
-
* @copyright Copyright (c) 2019 - All Rights Reserved.
|
13
|
-
* -------------------------------------------------------------------------
|
14
|
-
*/
|
15
|
-
/* istanbul ignore file */
|
1
|
+
/* v8 ignore start */
|
16
2
|
import { entry } from './entry.js';
|
17
3
|
import { handleError } from './error.js';
|
18
4
|
const [, , ...args] = process.argv;
|
19
5
|
entry(args).catch(handleError);
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zb3VyY2UvZXhlY3V0YWJsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQkFBcUI7QUFFckIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNoQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRDLE1BQU0sQ0FBQyxFQUFFLEFBQUQsRUFBRyxHQUFHLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7QUFFbkMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyJ9
|
package/lib/index.d.ts
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
export * from 'presetter-types';
|
2
|
-
export * from './
|
3
|
-
export * from './
|
4
|
-
export * from './
|
5
|
-
export * from './
|
6
|
-
export * from './template.js';
|
2
|
+
export * from './preset/index.js';
|
3
|
+
export * from './resolve.js';
|
4
|
+
export * from './run.js';
|
5
|
+
export * from './template/index.js';
|
7
6
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../source/index.ts"],"names":[],"mappings":"AAEA,cAAc,iBAAiB,CAAC;AAEhC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC"}
|
package/lib/index.js
CHANGED
@@ -1,22 +1,7 @@
|
|
1
|
-
/*
|
2
|
-
* *** MIT LICENSE ***
|
3
|
-
* -------------------------------------------------------------------------
|
4
|
-
* This code may be modified and distributed under the MIT license.
|
5
|
-
* See the LICENSE file for details.
|
6
|
-
* -------------------------------------------------------------------------
|
7
|
-
*
|
8
|
-
* @summary Collection of public types
|
9
|
-
*
|
10
|
-
* @author Alvis HT Tang <alvis@hilbert.space>
|
11
|
-
* @license MIT
|
12
|
-
* @copyright Copyright (c) 2020 - All Rights Reserved.
|
13
|
-
* -------------------------------------------------------------------------
|
14
|
-
*/
|
15
|
-
/* istanbul ignore file */
|
1
|
+
/* v8 ignore start */
|
16
2
|
export * from 'presetter-types';
|
17
|
-
export * from './
|
18
|
-
export * from './
|
19
|
-
export * from './
|
20
|
-
export * from './
|
21
|
-
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUVILDBCQUEwQjtBQUUxQixjQUFjLGlCQUFpQixDQUFDO0FBRWhDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsTUFBTSxDQUFDO0FBQ3JCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDIn0=
|
3
|
+
export * from './preset/index.js';
|
4
|
+
export * from './resolve.js';
|
5
|
+
export * from './run.js';
|
6
|
+
export * from './template/index.js';
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUJBQXFCO0FBRXJCLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxZQUFZLENBQUMifQ==
|
package/lib/io.d.ts
CHANGED
@@ -1,50 +1,16 @@
|
|
1
|
-
import type {
|
2
|
-
|
3
|
-
export interface IOOptions {
|
4
|
-
/** whether to overwrite existing files */
|
5
|
-
force?: boolean;
|
6
|
-
}
|
7
|
-
/**
|
8
|
-
* check if a path is either a link or a file with multiple hard links
|
9
|
-
* @param path path to be checked
|
10
|
-
* @returns true if the path is a link or a file with multiple hard links
|
11
|
-
*/
|
12
|
-
export declare function islink(path: string): boolean;
|
1
|
+
import type { Variables } from 'presetter-types';
|
2
|
+
import type { JsonObject } from 'type-fest';
|
13
3
|
/**
|
14
4
|
* load the content of a file
|
15
5
|
* @param path file path to be loaded
|
16
|
-
* @param
|
6
|
+
* @param variables variables to be used during the resolution
|
17
7
|
* @returns content of the file
|
18
8
|
*/
|
19
|
-
export declare function loadFile(path: string,
|
20
|
-
export declare function loadFile(path: string, defaultFormat?: 'text'): string;
|
21
|
-
/**
|
22
|
-
* serialize a configuration content to the right format according to its destination
|
23
|
-
* @param destination the path to which the content will be written
|
24
|
-
* @param content configuration content
|
25
|
-
* @returns serialized content
|
26
|
-
*/
|
27
|
-
export declare function serializeContent(destination: string, content: Template): string;
|
28
|
-
/**
|
29
|
-
* write all generated configuration to their destination
|
30
|
-
* @param root path to the target project root
|
31
|
-
* @param config a map of configuration content and its path to be written
|
32
|
-
* @param pathMap a map of keys in the config map and their destination path
|
33
|
-
* @param options collection of options
|
34
|
-
*/
|
35
|
-
export declare function writeFiles(root: string, config: Record<string, Template>, pathMap: Record<string, string>, options?: IOOptions): void;
|
36
|
-
/**
|
37
|
-
* link generated files to the project root
|
38
|
-
* @param root path to the target project root
|
39
|
-
* @param configurationLink map of symlinks to its real path
|
40
|
-
* @param options collection of options
|
41
|
-
*/
|
42
|
-
export declare function linkFiles(root: string, configurationLink: Record<string, string>, options?: IOOptions): void;
|
9
|
+
export declare function loadFile(path: string, variables?: Variables): JsonObject | string[] | Buffer;
|
43
10
|
/**
|
44
|
-
*
|
45
|
-
* @param
|
46
|
-
* @param
|
47
|
-
* @param options collection of options
|
11
|
+
* ensure that there is a file at the given path with the given content
|
12
|
+
* @param path path where the file should be created
|
13
|
+
* @param content content of the file
|
48
14
|
*/
|
49
|
-
export declare function
|
15
|
+
export declare function ensureFile(path: string, content: string | Buffer): void;
|
50
16
|
//# sourceMappingURL=io.d.ts.map
|
package/lib/io.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../source/io.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../source/io.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,SAAc,GACxB,UAAU,GAAG,MAAM,EAAE,GAAG,MAAM,CAwBhC;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMvE"}
|
package/lib/io.js
CHANGED
@@ -1,164 +1,32 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
* See the LICENSE file for details.
|
6
|
-
* -------------------------------------------------------------------------
|
7
|
-
*
|
8
|
-
* @summary Collection of io helpers
|
9
|
-
*
|
10
|
-
* @author Alvis HT Tang <alvis@hilbert.space>
|
11
|
-
* @license MIT
|
12
|
-
* @copyright Copyright (c) 2020 - All Rights Reserved.
|
13
|
-
* -------------------------------------------------------------------------
|
14
|
-
*/
|
15
|
-
import { info } from 'node:console';
|
16
|
-
import { linkSync, lstatSync, mkdirSync, readFileSync, readlinkSync, statSync, symlinkSync, unlinkSync, writeFileSync, } from 'node:fs';
|
17
|
-
import { basename, dirname, extname, relative, resolve } from 'node:path';
|
18
|
-
import { dump, load } from 'js-yaml';
|
19
|
-
// JSON format
|
20
|
-
const INDENT = 2;
|
1
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
2
|
+
import { dirname, extname } from 'node:path';
|
3
|
+
import { load } from 'js-yaml';
|
4
|
+
import { substitute } from './template/index.js';
|
21
5
|
/**
|
22
|
-
*
|
23
|
-
* @param path path to be
|
24
|
-
* @
|
6
|
+
* load the content of a file
|
7
|
+
* @param path file path to be loaded
|
8
|
+
* @param variables variables to be used during the resolution
|
9
|
+
* @returns content of the file
|
25
10
|
*/
|
26
|
-
export function
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
}
|
32
|
-
export function loadFile(path, defaultFormat = 'text') {
|
33
|
-
const content = readFileSync(path).toString();
|
11
|
+
export function loadFile(path, variables = {}) {
|
12
|
+
if (!existsSync(path)) {
|
13
|
+
throw new Error(`file not found: ${path}`);
|
14
|
+
}
|
15
|
+
const content = readFileSync(path);
|
34
16
|
// parse the content depending on the extension
|
35
|
-
switch (extname(path)
|
17
|
+
switch (extname(path)) {
|
36
18
|
case '.json':
|
37
|
-
return JSON.parse(content);
|
19
|
+
return JSON.parse(substitute(content.toString(), variables));
|
38
20
|
case '.yaml':
|
39
21
|
case '.yml':
|
40
|
-
return load(content);
|
22
|
+
return load(substitute(content.toString(), variables));
|
41
23
|
default:
|
42
|
-
return
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
* @param content configuration content
|
49
|
-
* @returns serialized content
|
50
|
-
*/
|
51
|
-
export function serializeContent(destination, content) {
|
52
|
-
if (typeof content === 'string') {
|
53
|
-
return content;
|
54
|
-
}
|
55
|
-
switch (extname(destination)) {
|
56
|
-
case '.yaml':
|
57
|
-
case '.yml':
|
58
|
-
return dump(content);
|
59
|
-
case '.json':
|
60
|
-
default:
|
61
|
-
return JSON.stringify(content, null, INDENT);
|
62
|
-
}
|
63
|
-
}
|
64
|
-
/**
|
65
|
-
* write all generated configuration to their destination
|
66
|
-
* @param root path to the target project root
|
67
|
-
* @param config a map of configuration content and its path to be written
|
68
|
-
* @param pathMap a map of keys in the config map and their destination path
|
69
|
-
* @param options collection of options
|
70
|
-
*/
|
71
|
-
export function writeFiles(root, config, pathMap, options) {
|
72
|
-
const { force = false } = { ...options };
|
73
|
-
for (const [key, content] of Object.entries(config)) {
|
74
|
-
const destination = pathMap[key];
|
75
|
-
// write content to the destination path
|
76
|
-
if (
|
77
|
-
// force overwrite
|
78
|
-
force ||
|
79
|
-
// file don't exist
|
80
|
-
!lstatSync(destination, { throwIfNoEntry: false }) ||
|
81
|
-
// content to be written under the configurations folder
|
82
|
-
destination !== resolve(root, key)) {
|
83
|
-
info(`Generating ${key}`);
|
84
|
-
ensureFile(destination, serializeContent(destination, content));
|
85
|
-
}
|
86
|
-
else {
|
87
|
-
info(`Skipping ${key}`);
|
88
|
-
}
|
89
|
-
}
|
90
|
-
}
|
91
|
-
/**
|
92
|
-
* link generated files to the project root
|
93
|
-
* @param root path to the target project root
|
94
|
-
* @param configurationLink map of symlinks to its real path
|
95
|
-
* @param options collection of options
|
96
|
-
*/
|
97
|
-
export function linkFiles(root, configurationLink, options) {
|
98
|
-
const { force = false } = { ...options };
|
99
|
-
for (const [file, destination] of Object.entries(configurationLink)) {
|
100
|
-
const path = resolve(root, file);
|
101
|
-
const to = relative(dirname(path), destination);
|
102
|
-
const pathStat = lstatSync(path, { throwIfNoEntry: false });
|
103
|
-
const linkDoesNotExist = !pathStat;
|
104
|
-
if (
|
105
|
-
// for files that mean to be created directly on the target project root, not via symlink
|
106
|
-
to !== basename(to) &&
|
107
|
-
// do not replace any user created files unless overwrite is set
|
108
|
-
(linkDoesNotExist || islink(path) || force)) {
|
109
|
-
info(`Linking ${relative(root, path)} => ${to}`);
|
110
|
-
ensureLink(path, to);
|
111
|
-
}
|
112
|
-
}
|
113
|
-
}
|
114
|
-
/**
|
115
|
-
* unlink generated files from the project root
|
116
|
-
* @param root path to the target project root
|
117
|
-
* @param configurationLink map of symlinks to its real path
|
118
|
-
* @param options collection of options
|
119
|
-
*/
|
120
|
-
export function unlinkFiles(root, configurationLink, options) {
|
121
|
-
const { force = false } = { ...options };
|
122
|
-
for (const [name, destination] of Object.entries(configurationLink)) {
|
123
|
-
const link = readLink(resolve(root, name));
|
124
|
-
const to = relative(root, destination);
|
125
|
-
if (link === to || force) {
|
126
|
-
info(`Removing ${name}`);
|
127
|
-
unlinkSync(resolve(root, name));
|
128
|
-
continue;
|
129
|
-
}
|
130
|
-
info(`Skipping ${name}`);
|
131
|
-
}
|
132
|
-
}
|
133
|
-
/**
|
134
|
-
* resolve a path and follow any symlink
|
135
|
-
* @param path path to be resolved
|
136
|
-
* @returns the target of the symlink or a resolved path if the path is not a symlink
|
137
|
-
*/
|
138
|
-
function readLink(path) {
|
139
|
-
const pathStat = lstatSync(path, { throwIfNoEntry: false });
|
140
|
-
return pathStat?.isSymbolicLink() ? readlinkSync(path) : null;
|
141
|
-
}
|
142
|
-
/**
|
143
|
-
* ensure that there is a symlink at the given path pointing to the target
|
144
|
-
* @param path path where the symlink should be created
|
145
|
-
* @param to target of the symlink
|
146
|
-
*/
|
147
|
-
function ensureLink(path, to) {
|
148
|
-
// create the parent directory if it doesn't exist
|
149
|
-
mkdirSync(dirname(path), { recursive: true });
|
150
|
-
// remove any existing files or symlinks
|
151
|
-
if (lstatSync(path, { throwIfNoEntry: false })) {
|
152
|
-
unlinkSync(path);
|
153
|
-
}
|
154
|
-
// create a new link pointing to the target
|
155
|
-
try {
|
156
|
-
// try to create a hardlink
|
157
|
-
linkSync(to, path);
|
158
|
-
}
|
159
|
-
catch {
|
160
|
-
// if hard link creation failed (e.g. linking across disc boundary) create a symlink instead
|
161
|
-
symlinkSync(to, path);
|
24
|
+
return path.endsWith('ignore')
|
25
|
+
? substitute(content.toString(), variables)
|
26
|
+
.split('\n')
|
27
|
+
.map((line) => line.trim())
|
28
|
+
.filter((line) => !line.startsWith('#'))
|
29
|
+
: content;
|
162
30
|
}
|
163
31
|
}
|
164
32
|
/**
|
@@ -166,10 +34,10 @@ function ensureLink(path, to) {
|
|
166
34
|
* @param path path where the file should be created
|
167
35
|
* @param content content of the file
|
168
36
|
*/
|
169
|
-
function ensureFile(path, content) {
|
37
|
+
export function ensureFile(path, content) {
|
170
38
|
// ensure that all parent folders exist to avoid errors from writeFile
|
171
39
|
mkdirSync(dirname(path), { recursive: true });
|
172
40
|
// write content to the destination path
|
173
41
|
writeFileSync(path, content);
|
174
42
|
}
|
175
|
-
//# sourceMappingURL=data:application/json;base64,
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zb3VyY2UvaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUU3QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRS9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFLeEM7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsUUFBUSxDQUN0QixJQUFZLEVBQ1osWUFBdUIsRUFBRTtJQUV6QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRW5DLCtDQUErQztJQUMvQyxRQUFRLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3RCLEtBQUssT0FBTztZQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FDZixVQUFVLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUM1QixDQUFDO1FBQ2xCLEtBQUssT0FBTyxDQUFDO1FBQ2IsS0FBSyxNQUFNO1lBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBZSxDQUFDO1FBQ3ZFO1lBQ0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsU0FBUyxDQUFDO3FCQUN0QyxLQUFLLENBQUMsSUFBSSxDQUFDO3FCQUNYLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO3FCQUMxQixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNoQixDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsVUFBVSxDQUFDLElBQVksRUFBRSxPQUF3QjtJQUMvRCxzRUFBc0U7SUFDdEUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTlDLHdDQUF3QztJQUN4QyxhQUFhLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9CLENBQUMifQ==
|
package/lib/package.d.ts
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
import type { PackageJson } from 'type-fest';
|
2
2
|
/** package detail */
|
3
|
-
export
|
3
|
+
export interface Package {
|
4
4
|
/** path to the package.json */
|
5
5
|
path: string;
|
6
6
|
/** content of package.json */
|
7
7
|
json: PackageJson;
|
8
|
-
}
|
8
|
+
}
|
9
9
|
/**
|
10
10
|
* indicate whether peer packages would be installed automatically
|
11
11
|
* @returns true for npm v7+
|
package/lib/package.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../source/package.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../source/package.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAI7C,qBAAqB;AACrB,MAAM,WAAW,OAAO;IACtB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,IAAI,EAAE,WAAW,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,OAAO,CAqBtD;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAahE;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CA2BjD"}
|