@lenne.tech/cli 1.5.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -0
- package/bin/postinstall.js +156 -0
- package/build/cli.js +11 -1
- package/build/commands/blocks/add.js +28 -306
- package/build/commands/blocks/blocks.js +2 -2
- package/build/commands/claude/claude.js +2 -2
- package/build/commands/cli/cli.js +2 -2
- package/build/commands/cli/create.js +69 -21
- package/build/commands/cli/rename.js +11 -5
- package/build/commands/completion.js +311 -0
- package/build/commands/components/add.js +25 -219
- package/build/commands/components/components.js +2 -2
- package/build/commands/config/help.js +5 -2
- package/build/commands/config/init.js +20 -5
- package/build/commands/config/show.js +4 -1
- package/build/commands/config/validate.js +27 -2
- package/build/commands/deployment/create.js +18 -5
- package/build/commands/deployment/deployment.js +2 -2
- package/build/commands/docs/open.js +4 -1
- package/build/commands/doctor.js +285 -0
- package/build/commands/frontend/angular.js +88 -28
- package/build/commands/frontend/nuxt.js +2 -1
- package/build/commands/fullstack/init.js +58 -19
- package/build/commands/git/clean.js +60 -11
- package/build/commands/git/clear.js +17 -11
- package/build/commands/git/create.js +51 -10
- package/build/commands/git/force-pull.js +42 -15
- package/build/commands/git/get.js +14 -15
- package/build/commands/git/install-scripts.js +6 -6
- package/build/commands/git/rebase.js +40 -12
- package/build/commands/git/rename.js +33 -13
- package/build/commands/git/reset.js +48 -13
- package/build/commands/git/squash.js +67 -26
- package/build/commands/git/undo.js +33 -13
- package/build/commands/git/update.js +59 -6
- package/build/commands/history.js +75 -0
- package/build/commands/mongodb/collection-export.js +2 -2
- package/build/commands/mongodb/mongodb.js +2 -2
- package/build/commands/mongodb/s3-restore.js +2 -2
- package/build/commands/npm/reinit.js +11 -12
- package/build/commands/npm/update.js +6 -2
- package/build/commands/qdrant/delete.js +6 -2
- package/build/commands/qdrant/qdrant.js +2 -2
- package/build/commands/qdrant/stats.js +5 -2
- package/build/commands/redis/redis.js +2 -2
- package/build/commands/server/add-property.js +8 -12
- package/build/commands/server/create-secret.js +6 -3
- package/build/commands/server/create.js +39 -21
- package/build/commands/server/module.js +22 -16
- package/build/commands/server/object.js +7 -11
- package/build/commands/server/set-secrets.js +6 -3
- package/build/commands/server/test.js +3 -3
- package/build/commands/starter/chrome-extension.js +3 -3
- package/build/commands/status.js +198 -0
- package/build/commands/templates/list.js +107 -0
- package/build/commands/templates/llm.js +8 -3
- package/build/commands/templates/templates.js +2 -2
- package/build/commands/tools/jwt-read.js +2 -2
- package/build/commands/tools/regex.js +5 -2
- package/build/commands/typescript/create.js +84 -21
- package/build/commands/typescript/playground.js +5 -2
- package/build/extensions/config.js +37 -1
- package/build/extensions/git.js +57 -2
- package/build/extensions/history.js +118 -0
- package/build/extensions/logger.js +189 -0
- package/build/lib/nuxt-base-components.js +249 -0
- package/build/lib/validation.js +204 -0
- package/build/templates/completion/bash.sh.ejs +92 -0
- package/build/templates/completion/fish.sh.ejs +77 -0
- package/build/templates/completion/zsh.sh.ejs +119 -0
- package/docs/commands.md +464 -14
- package/docs/lt.config.md +138 -8
- package/package.json +16 -14
|
@@ -14,13 +14,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
14
14
|
*/
|
|
15
15
|
const NewCommand = {
|
|
16
16
|
alias: ['a'],
|
|
17
|
-
description: '
|
|
17
|
+
description: 'Create Angular workspace',
|
|
18
18
|
hidden: false,
|
|
19
19
|
name: 'angular',
|
|
20
20
|
run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
-
var _a;
|
|
21
|
+
var _a, _b, _c, _d, _e, _f;
|
|
22
22
|
// Retrieve the tools we need
|
|
23
|
-
const { filesystem, git, helper, parameters, patching, print: { error, info, spin, success }, prompt: { confirm }, strings: { kebabCase }, system, } = toolbox;
|
|
23
|
+
const { config, filesystem, git, helper, parameters, patching, print: { error, info, spin, success }, prompt: { confirm }, strings: { kebabCase }, system, } = toolbox;
|
|
24
|
+
// Load configuration
|
|
25
|
+
const ltConfig = config.loadConfig();
|
|
26
|
+
const configLocalize = (_c = (_b = (_a = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _a === void 0 ? void 0 : _a.frontend) === null || _b === void 0 ? void 0 : _b.angular) === null || _c === void 0 ? void 0 : _c.localize;
|
|
27
|
+
// Determine noConfirm with priority: CLI > command > global > default
|
|
28
|
+
const noConfirm = config.getNoConfirm({
|
|
29
|
+
cliValue: parameters.options.noConfirm || parameters.options.y,
|
|
30
|
+
commandConfig: (_e = (_d = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _d === void 0 ? void 0 : _d.frontend) === null || _e === void 0 ? void 0 : _e.angular,
|
|
31
|
+
config: ltConfig,
|
|
32
|
+
});
|
|
24
33
|
// Start timer
|
|
25
34
|
const timer = system.startTimer();
|
|
26
35
|
// Info
|
|
@@ -43,36 +52,76 @@ const NewCommand = {
|
|
|
43
52
|
if (filesystem.exists(projectDir)) {
|
|
44
53
|
info('');
|
|
45
54
|
error(`There's already a folder named "${projectDir}" here.`);
|
|
46
|
-
return
|
|
47
|
-
}
|
|
48
|
-
//
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
// Determine localize with priority: CLI > config > noConfirm > interactive
|
|
58
|
+
let localize;
|
|
59
|
+
if (((_f = parameters.second) === null || _f === void 0 ? void 0 : _f.toLowerCase().includes('localize')) || parameters.options.localize) {
|
|
60
|
+
localize = true;
|
|
61
|
+
}
|
|
62
|
+
else if (parameters.options.noLocalize) {
|
|
63
|
+
localize = false;
|
|
64
|
+
}
|
|
65
|
+
else if (configLocalize !== undefined) {
|
|
66
|
+
localize = configLocalize;
|
|
67
|
+
info(`Using localize from lt.config: ${localize}`);
|
|
68
|
+
}
|
|
69
|
+
else if (noConfirm) {
|
|
70
|
+
localize = true; // Default to true when noConfirm is set
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
localize = yield confirm('Init localize for Angular?', true);
|
|
74
|
+
}
|
|
75
|
+
// Determine gitLink with priority: CLI > interactive (skip if noConfirm)
|
|
76
|
+
let gitLink = '';
|
|
77
|
+
if (parameters.options.gitLink) {
|
|
78
|
+
gitLink = parameters.options.gitLink.trim();
|
|
79
|
+
}
|
|
80
|
+
else if (!noConfirm) {
|
|
81
|
+
gitLink = (yield helper.getInput(null, {
|
|
82
|
+
name: 'Provide the URL of an empty repository (e.g., git@example.com:group/project.git, or leave empty to skip linking)',
|
|
83
|
+
showError: false,
|
|
84
|
+
})).trim();
|
|
85
|
+
}
|
|
55
86
|
const workspaceSpinner = spin(`Creating angular workspace ${projectDir}...`);
|
|
56
87
|
// Clone monorepo
|
|
57
|
-
|
|
88
|
+
try {
|
|
89
|
+
yield system.run(`git clone https://github.com/lenneTech/ng-base-starter ${projectDir}`);
|
|
90
|
+
}
|
|
91
|
+
catch (err) {
|
|
92
|
+
workspaceSpinner.fail(`Failed to clone repository: ${err.message}`);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
58
95
|
// Check for directory
|
|
59
96
|
if (!filesystem.isDirectory(`./${projectDir}`)) {
|
|
60
|
-
|
|
61
|
-
return
|
|
97
|
+
workspaceSpinner.fail(`The directory '${projectDir}' was not created.`);
|
|
98
|
+
return;
|
|
62
99
|
}
|
|
63
100
|
// Remove git folder after clone
|
|
64
101
|
filesystem.remove(`${projectDir}/.git`);
|
|
65
102
|
// Install packages
|
|
66
|
-
|
|
103
|
+
try {
|
|
104
|
+
yield system.run(`cd ${projectDir} && npm i`);
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
workspaceSpinner.fail(`Failed to install npm packages: ${err.message}`);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
67
110
|
// Check if git init is active
|
|
68
111
|
const gitSpinner = spin('Initializing git...');
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
112
|
+
try {
|
|
113
|
+
yield system.run(`cd ${projectDir} && git init --initial-branch=main`);
|
|
114
|
+
gitSpinner.succeed('Successfully initialized Git');
|
|
115
|
+
if (gitLink) {
|
|
116
|
+
yield system.run(`cd ${projectDir} && git remote add origin ${gitLink}`);
|
|
117
|
+
yield system.run(`cd ${projectDir} && git add .`);
|
|
118
|
+
yield system.run(`cd ${projectDir} && git commit -m "Initial commit"`);
|
|
119
|
+
yield system.run(`cd ${projectDir} && git push -u origin main`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
catch (err) {
|
|
123
|
+
gitSpinner.fail(`Failed to initialize git: ${err.message}`);
|
|
124
|
+
return;
|
|
76
125
|
}
|
|
77
126
|
workspaceSpinner.succeed(`Workspace ${projectDir} created`);
|
|
78
127
|
if (filesystem.isDirectory(`./${projectDir}`)) {
|
|
@@ -85,13 +134,24 @@ const NewCommand = {
|
|
|
85
134
|
});
|
|
86
135
|
if (localize) {
|
|
87
136
|
const localizeSpinner = spin('Adding localization for Angular...');
|
|
88
|
-
|
|
89
|
-
|
|
137
|
+
try {
|
|
138
|
+
yield system.run(`cd ${projectDir} && ng add @angular/localize --skip-confirmation`);
|
|
139
|
+
localizeSpinner.succeed('Added localization for Angular');
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
localizeSpinner.fail(`Failed to add localization: ${err.message}`);
|
|
143
|
+
}
|
|
90
144
|
}
|
|
91
145
|
// Install all packages
|
|
92
146
|
const installSpinner = spin('Install all packages');
|
|
93
|
-
|
|
94
|
-
|
|
147
|
+
try {
|
|
148
|
+
yield system.run(`cd ${projectDir} && npm run init`);
|
|
149
|
+
installSpinner.succeed('Successfully installed all packages');
|
|
150
|
+
}
|
|
151
|
+
catch (err) {
|
|
152
|
+
installSpinner.fail(`Failed to install packages: ${err.message}`);
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
95
155
|
// We're done, so show what to do next
|
|
96
156
|
info('');
|
|
97
157
|
success(`Generated Angular workspace ${projectDir} in ${helper.msToMinutesAndSeconds(timer())}m.`);
|
|
@@ -111,4 +171,4 @@ const NewCommand = {
|
|
|
111
171
|
}),
|
|
112
172
|
};
|
|
113
173
|
exports.default = NewCommand;
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9mcm9udGVuZC9hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBSUE7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBbUI7SUFDakMsS0FBSyxFQUFFLENBQUMsR0FBRyxDQUFDO0lBQ1osV0FBVyxFQUFFLDBCQUEwQjtJQUN2QyxNQUFNLEVBQUUsS0FBSztJQUNiLElBQUksRUFBRSxTQUFTO0lBQ2YsR0FBRyxFQUFFLENBQU8sT0FBK0IsRUFBRSxFQUFFOztRQUM3Qyw2QkFBNkI7UUFDN0IsTUFBTSxFQUNKLE1BQU0sRUFDTixVQUFVLEVBQ1YsR0FBRyxFQUNILE1BQU0sRUFDTixVQUFVLEVBQ1YsUUFBUSxFQUNSLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUNyQyxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFDbkIsT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQ3RCLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQztRQUVaLHFCQUFxQjtRQUNyQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckMsTUFBTSxjQUFjLEdBQUcsTUFBQSxNQUFBLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFFBQVEsMENBQUUsUUFBUSwwQ0FBRSxPQUFPLDBDQUFFLFFBQVEsQ0FBQztRQUV2RSxzRUFBc0U7UUFDdEUsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztZQUNwQyxRQUFRLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlELGFBQWEsRUFBRSxNQUFBLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFFBQVEsMENBQUUs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
|
|
@@ -34,7 +34,8 @@ const NewCommand = {
|
|
|
34
34
|
if (!toolbox.parameters.options.fromGluegunMenu) {
|
|
35
35
|
process.exit();
|
|
36
36
|
}
|
|
37
|
+
return `created nuxt workspace ${kebabCase(projName)}`;
|
|
37
38
|
}),
|
|
38
39
|
};
|
|
39
40
|
exports.default = NewCommand;
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9mcm9udGVuZC9udXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBSUE7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBbUI7SUFDakMsS0FBSyxFQUFFLENBQUMsR0FBRyxDQUFDO0lBQ1osV0FBVyxFQUFFLDhCQUE4QjtJQUMzQyxNQUFNLEVBQUUsS0FBSztJQUNiLElBQUksRUFBRSxNQUFNO0lBQ1osR0FBRyxFQUFFLENBQU8sT0FBK0IsRUFBRSxFQUFFO1FBQzdDLDZCQUE2QjtRQUM3QixNQUFNLEVBQ0osTUFBTSxFQUNOLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxFQUNmLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUNmLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUN0QixNQUFNLEdBQ1AsR0FBRyxPQUFPLENBQUM7UUFHWixNQUFNLFFBQVEsR0FBRyxDQUNmLE1BQU0sR0FBRyxDQUFDO1lBQ1IsT0FBTyxFQUFFLDhCQUE4QjtZQUN2QyxJQUFJLEVBQUUsYUFBYTtZQUNuQixRQUFRLEVBQUUsSUFBSTtZQUNkLElBQUksRUFBRSxPQUFPO1NBQ2QsQ0FBQyxDQUNILENBQUMsV0FBVyxDQUFDO1FBRWQsY0FBYztRQUNkLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVsQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsaUNBQWlDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFbEYsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBR2xFLFdBQVcsQ0FBQyxPQUFPLENBQUMsa0RBQWtELFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxNQUFNLENBQUMscUJBQXFCLENBQzNILEtBQUssRUFBRSxDQUNSLElBQUksQ0FBQyxDQUFDO1FBRVAsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2hELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixDQUFDO1FBRUQsT0FBTywwQkFBMEIsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDekQsQ0FBQyxDQUFBO0NBQ0YsQ0FBQztBQUVGLGtCQUFlLFVBQVUsQ0FBQyJ9
|
|
@@ -19,7 +19,7 @@ const NewCommand = {
|
|
|
19
19
|
hidden: false,
|
|
20
20
|
name: 'init',
|
|
21
21
|
run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
-
var _a, _b, _c, _d, _e, _f;
|
|
22
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
23
23
|
// Retrieve the tools we need
|
|
24
24
|
const { config, filesystem, git, helper, parameters, print: { error, info, spin, success }, prompt: { ask, confirm }, server, strings: { kebabCase }, system, } = toolbox;
|
|
25
25
|
// Start timer
|
|
@@ -37,6 +37,12 @@ const NewCommand = {
|
|
|
37
37
|
const configGitLink = (_f = (_e = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _e === void 0 ? void 0 : _e.fullstack) === null || _f === void 0 ? void 0 : _f.gitLink;
|
|
38
38
|
// Parse CLI arguments
|
|
39
39
|
const { frontend: cliFrontend, git: cliGit, 'git-link': cliGitLink, name: cliName } = parameters.options;
|
|
40
|
+
// Determine noConfirm with priority: CLI > command > parent > global > default
|
|
41
|
+
const noConfirm = config.getNoConfirm({
|
|
42
|
+
cliValue: parameters.options.noConfirm,
|
|
43
|
+
commandConfig: (_g = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _g === void 0 ? void 0 : _g.fullstack,
|
|
44
|
+
config: ltConfig,
|
|
45
|
+
});
|
|
40
46
|
// Get name of the workspace
|
|
41
47
|
const name = cliName || (yield helper.getInput(parameters.first, {
|
|
42
48
|
name: 'workspace name',
|
|
@@ -51,7 +57,7 @@ const NewCommand = {
|
|
|
51
57
|
if (filesystem.exists(projectDir)) {
|
|
52
58
|
info('');
|
|
53
59
|
error(`There's already a folder named "${projectDir}" here.`);
|
|
54
|
-
return
|
|
60
|
+
return;
|
|
55
61
|
}
|
|
56
62
|
// Determine frontend with priority: CLI > config > interactive
|
|
57
63
|
let frontend;
|
|
@@ -66,6 +72,11 @@ const NewCommand = {
|
|
|
66
72
|
frontend = configFrontend;
|
|
67
73
|
info(`Using frontend from lt.config: ${frontend}`);
|
|
68
74
|
}
|
|
75
|
+
else if (noConfirm) {
|
|
76
|
+
// Use default when noConfirm
|
|
77
|
+
frontend = 'nuxt';
|
|
78
|
+
info('Using default frontend: nuxt (noConfirm mode)');
|
|
79
|
+
}
|
|
69
80
|
else {
|
|
70
81
|
// Interactive mode with sensible default
|
|
71
82
|
const choices = ['angular', 'nuxt'];
|
|
@@ -114,6 +125,10 @@ const NewCommand = {
|
|
|
114
125
|
}
|
|
115
126
|
}
|
|
116
127
|
}
|
|
128
|
+
else if (noConfirm) {
|
|
129
|
+
// Don't add to git when noConfirm (would require gitLink)
|
|
130
|
+
addToGit = false;
|
|
131
|
+
}
|
|
117
132
|
else if (parameters.third !== 'false') {
|
|
118
133
|
// Interactive mode
|
|
119
134
|
addToGit = parameters.third === 'true' || (yield confirm('Add workspace to a new git repository?'));
|
|
@@ -129,11 +144,17 @@ const NewCommand = {
|
|
|
129
144
|
}
|
|
130
145
|
const workspaceSpinner = spin(`Create fullstack workspace with ${frontend} in ${projectDir} with ${name} app`);
|
|
131
146
|
// Clone monorepo
|
|
132
|
-
|
|
147
|
+
try {
|
|
148
|
+
yield system.run(`git clone https://github.com/lenneTech/lt-monorepo.git ${projectDir}`);
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
workspaceSpinner.fail(`Failed to clone monorepo: ${err.message}`);
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
133
154
|
// Check for directory
|
|
134
155
|
if (!filesystem.isDirectory(`./${projectDir}`)) {
|
|
135
|
-
|
|
136
|
-
return
|
|
156
|
+
workspaceSpinner.fail(`The directory "${projectDir}" could not be created.`);
|
|
157
|
+
return;
|
|
137
158
|
}
|
|
138
159
|
workspaceSpinner.succeed(`Create fullstack workspace with ${frontend} in ${projectDir} for ${name} created`);
|
|
139
160
|
// Include example app
|
|
@@ -142,19 +163,31 @@ const NewCommand = {
|
|
|
142
163
|
filesystem.remove(`${projectDir}/.git`);
|
|
143
164
|
// Check if git init is active
|
|
144
165
|
if (addToGit) {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
166
|
+
try {
|
|
167
|
+
yield system.run(`cd ${projectDir} && git init --initial-branch=dev`);
|
|
168
|
+
yield system.run(`cd ${projectDir} && git remote add origin ${gitLink}`);
|
|
169
|
+
yield system.run(`cd ${projectDir} && git add .`);
|
|
170
|
+
yield system.run(`cd ${projectDir} && git commit -m "Initial commit"`);
|
|
171
|
+
yield system.run(`cd ${projectDir} && git push -u origin dev`);
|
|
172
|
+
}
|
|
173
|
+
catch (err) {
|
|
174
|
+
error(`Failed to initialize git: ${err.message}`);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
150
177
|
}
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
178
|
+
try {
|
|
179
|
+
if (frontend === 'angular') {
|
|
180
|
+
// Clone ng-base-starter
|
|
181
|
+
yield system.run(`cd ${projectDir}/projects && git clone https://github.com/lenneTech/ng-base-starter.git app`);
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
yield system.run('npm i -g create-nuxt-base');
|
|
185
|
+
yield system.run(`cd ${projectDir}/projects && create-nuxt-base app`);
|
|
186
|
+
}
|
|
154
187
|
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
188
|
+
catch (err) {
|
|
189
|
+
error(`Failed to set up ${frontend} frontend: ${err.message}`);
|
|
190
|
+
return;
|
|
158
191
|
}
|
|
159
192
|
// Remove gitkeep file
|
|
160
193
|
filesystem.remove(`${projectDir}/projects/.gitkeep`);
|
|
@@ -199,8 +232,14 @@ const NewCommand = {
|
|
|
199
232
|
}
|
|
200
233
|
// Install all packages
|
|
201
234
|
const installSpinner = spin('Install all packages');
|
|
202
|
-
|
|
203
|
-
|
|
235
|
+
try {
|
|
236
|
+
yield system.run(`cd ${projectDir} && npm i && npm run init`);
|
|
237
|
+
installSpinner.succeed('Successfully installed all packages');
|
|
238
|
+
}
|
|
239
|
+
catch (err) {
|
|
240
|
+
installSpinner.fail(`Failed to install packages: ${err.message}`);
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
204
243
|
// We're done, so show what to do next
|
|
205
244
|
info('');
|
|
206
245
|
success(`Generated fullstack workspace with ${frontend} in ${projectDir} with ${name} app in ${helper.msToMinutesAndSeconds(timer())}m.`);
|
|
@@ -219,4 +258,4 @@ const NewCommand = {
|
|
|
219
258
|
}),
|
|
220
259
|
};
|
|
221
260
|
exports.default = NewCommand;
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9mdWxsc3RhY2svaW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLHFDQUFtRDtBQUtuRDs7R0FFRztBQUNILE1BQU0sVUFBVSxHQUFtQjtJQUNqQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDZixXQUFXLEVBQUUsNEJBQTRCO0lBQ3pDLE1BQU0sRUFBRSxLQUFLO0lBQ2IsSUFBSSxFQUFFLE1BQU07SUFDWixHQUFHLEVBQUUsQ0FBTyxPQUErQixFQUFFLEVBQUU7O1FBQzdDLDZCQUE2QjtRQUM3QixNQUFNLEVBQ0osTUFBTSxFQUNOLFVBQVUsRUFDVixHQUFHLEVBQ0gsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFDckMsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUN4QixNQUFNLEVBQ04sT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQ3RCLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQztRQUVaLGNBQWM7UUFDZCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbEMsT0FBTztRQUNQLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBRXpDLFlBQVk7UUFDWixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTztRQUNULENBQUM7UUFFRCxxQkFBcUI7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sY0FBYyxHQUFHLE1BQUEsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsUUFBUSwwQ0FBRSxTQUFTLDBDQUFFLFFBQVEsQ0FBQztR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
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9mdWxsc3RhY2svaW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLHFDQUFtRDtBQUtuRDs7R0FFRztBQUNILE1BQU0sVUFBVSxHQUFtQjtJQUNqQyxLQUFLLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDZixXQUFXLEVBQUUsNEJBQTRCO0lBQ3pDLE1BQU0sRUFBRSxLQUFLO0lBQ2IsSUFBSSxFQUFFLE1BQU07SUFDWixHQUFHLEVBQUUsQ0FBTyxPQUErQixFQUFFLEVBQUU7O1FBQzdDLDZCQUE2QjtRQUM3QixNQUFNLEVBQ0osTUFBTSxFQUNOLFVBQVUsRUFDVixHQUFHLEVBQ0gsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFDckMsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUN4QixNQUFNLEVBQ04sT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQ3RCLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQztRQUVaLGNBQWM7UUFDZCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbEMsT0FBTztRQUNQLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBRXpDLFlBQVk7UUFDWixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTztRQUNULENBQUM7UUFFRCxxQkFBcUI7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sY0FBYyxHQUFHLE1BQUEsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsUUFBUSwwQ0FBRSxTQUFTLDBDQUFFLFFBQVEsQ0FBQztR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
|
|
@@ -19,16 +19,61 @@ const NewCommand = {
|
|
|
19
19
|
hidden: false,
|
|
20
20
|
name: 'clean',
|
|
21
21
|
run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
|
|
22
|
+
var _a, _b, _c;
|
|
22
23
|
// Retrieve the tools we need
|
|
23
|
-
const { git, helper, print: { info, spin, success }, system: { run, startTimer }, } = toolbox;
|
|
24
|
+
const { config, git, helper, parameters, print: { info, spin, success, warning }, prompt: { confirm }, system: { run, startTimer }, } = toolbox;
|
|
25
|
+
// Load configuration
|
|
26
|
+
const ltConfig = config.loadConfig();
|
|
27
|
+
// Parse CLI arguments
|
|
28
|
+
const dryRun = parameters.options.dryRun || parameters.options['dry-run'];
|
|
29
|
+
// Determine noConfirm with priority: CLI > config > global > default (false)
|
|
30
|
+
const noConfirm = config.getNoConfirm({
|
|
31
|
+
cliValue: parameters.options.noConfirm,
|
|
32
|
+
commandConfig: (_b = (_a = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _a === void 0 ? void 0 : _a.git) === null || _b === void 0 ? void 0 : _b.clean,
|
|
33
|
+
config: ltConfig,
|
|
34
|
+
parentConfig: (_c = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _c === void 0 ? void 0 : _c.git,
|
|
35
|
+
});
|
|
24
36
|
// Check git
|
|
25
37
|
if (!(yield git.gitInstalled())) {
|
|
26
38
|
return;
|
|
27
39
|
}
|
|
40
|
+
const excludedBranches = ['main', 'test', 'dev', 'develop'];
|
|
41
|
+
// Dry-run mode: show what would be deleted (without side effects)
|
|
42
|
+
if (dryRun) {
|
|
43
|
+
warning('DRY-RUN MODE - No changes will be made');
|
|
44
|
+
info('');
|
|
45
|
+
// Get current merged branches without fetching
|
|
46
|
+
const result = yield gluegun_1.system.run('git branch --merged');
|
|
47
|
+
const branches = result
|
|
48
|
+
.split('\n')
|
|
49
|
+
.map(b => b.trim().replace(/^\* /, ''))
|
|
50
|
+
.filter(b => b && !excludedBranches.includes(b));
|
|
51
|
+
if (branches.length === 0) {
|
|
52
|
+
info('No merged branches to delete.');
|
|
53
|
+
info('');
|
|
54
|
+
info('Note: Run without --dry-run to fetch latest from remote first.');
|
|
55
|
+
return 'dry-run clean: no branches';
|
|
56
|
+
}
|
|
57
|
+
info(`Would delete ${branches.length} merged branch(es):`);
|
|
58
|
+
branches.forEach(b => info(` - ${b}`));
|
|
59
|
+
info('');
|
|
60
|
+
info(`Excluded branches: ${excludedBranches.join(', ')}`);
|
|
61
|
+
info('');
|
|
62
|
+
info('Actions that would be performed:');
|
|
63
|
+
info(' 1. Checkout dev/main branch');
|
|
64
|
+
info(' 2. Fetch and prune remote');
|
|
65
|
+
info(' 3. Pull latest changes');
|
|
66
|
+
info(' 4. Delete merged branches');
|
|
67
|
+
return `dry-run clean: ${branches.length} branches`;
|
|
68
|
+
}
|
|
28
69
|
// Get current branch
|
|
29
70
|
const currentBranch = yield git.currentBranch();
|
|
71
|
+
// Ask for confirmation before cleaning
|
|
72
|
+
if (!noConfirm && !(yield confirm('Remove all merged branches?'))) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
30
75
|
let branch;
|
|
31
|
-
if (currentBranch !== 'dev'
|
|
76
|
+
if (currentBranch !== 'dev' && currentBranch !== 'main') {
|
|
32
77
|
// Search for branch, which includes branch name
|
|
33
78
|
branch = yield git.getBranch('dev', {
|
|
34
79
|
error: false,
|
|
@@ -56,29 +101,33 @@ const NewCommand = {
|
|
|
56
101
|
const resultpull = yield run('git pull');
|
|
57
102
|
info(resultpull);
|
|
58
103
|
const result = yield gluegun_1.system.run('git branch --merged');
|
|
59
|
-
const excludedBranches = ['main', 'dev', 'develop', 'beta', 'intern', 'release'];
|
|
60
104
|
// Local Branches into Array
|
|
61
105
|
const branches = result
|
|
62
106
|
.split('\n')
|
|
63
|
-
.map(
|
|
64
|
-
.filter(
|
|
107
|
+
.map(b => b.trim().replace(/^\* /, '')) // Remove '* '
|
|
108
|
+
.filter(b => b && !excludedBranches.includes(b));
|
|
65
109
|
if (branches.length === 0) {
|
|
110
|
+
undoSpinner.succeed();
|
|
66
111
|
info('No branches to delete.');
|
|
67
112
|
return;
|
|
68
113
|
}
|
|
69
114
|
info(`Deleting branches: ${branches.join(', ')}`);
|
|
70
115
|
// Delete branches
|
|
71
|
-
for (const
|
|
72
|
-
yield gluegun_1.system.run(`git branch -d ${
|
|
73
|
-
success(`Deleted branch: ${
|
|
116
|
+
for (const branchToDelete of branches) {
|
|
117
|
+
yield gluegun_1.system.run(`git branch -d ${branchToDelete}`);
|
|
118
|
+
success(`Deleted branch: ${branchToDelete}`);
|
|
74
119
|
}
|
|
75
120
|
undoSpinner.succeed();
|
|
76
121
|
// Success
|
|
77
|
-
success(`
|
|
122
|
+
success(`Successfully cleaned in ${helper.msToMinutesAndSeconds(timer())}m.`);
|
|
78
123
|
info('');
|
|
124
|
+
// Exit if not running from menu
|
|
125
|
+
if (!toolbox.parameters.options.fromGluegunMenu) {
|
|
126
|
+
process.exit();
|
|
127
|
+
}
|
|
79
128
|
// For tests
|
|
80
|
-
return 'cleaned
|
|
129
|
+
return 'cleaned branches';
|
|
81
130
|
}),
|
|
82
131
|
};
|
|
83
132
|
exports.default = NewCommand;
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvZ2l0L2NsZWFuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEscUNBQWlEO0FBSWpEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEdBQW1CO0lBQ2pDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQztJQUNiLFdBQVcsRUFBRSx3QkFBd0I7SUFDckMsTUFBTSxFQUFFLEtBQUs7SUFDYixJQUFJLEVBQUUsT0FBTztJQUNiLEdBQUcsRUFBRSxDQUFPLE9BQStCLEVBQUUsRUFBRTs7UUFDN0MsNkJBQTZCO1FBQzdCLE1BQU0sRUFDSixNQUFNLEVBQ04sR0FBRyxFQUNILE1BQU0sRUFDTixVQUFVLEVBQ1YsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQ3ZDLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUNuQixNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLEdBQzVCLEdBQUcsT0FBTyxDQUFDO1FBRVoscUJBQXFCO1FBQ3JCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVyQyxzQkFBc0I7UUFDdEIsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUUxRSw2RUFBNkU7UUFDN0UsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztZQUNwQyxRQUFRLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ3RDLGFBQWEsRUFBRSxNQUFBLE1BQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFFBQVEsMENBQUUsR0FBRywwQ0FBRSxLQUFLO1lBQzdDLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFlBQVksRUFBRSxNQUFB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
|
|
@@ -18,22 +18,19 @@ const NewCommand = {
|
|
|
18
18
|
hidden: false,
|
|
19
19
|
name: 'clear',
|
|
20
20
|
run: (toolbox) => __awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
-
var _a, _b, _c
|
|
21
|
+
var _a, _b, _c;
|
|
22
22
|
// Retrieve the tools we need
|
|
23
23
|
const { config, git, helper, parameters, print: { info, spin, success }, prompt: { confirm }, system: { run, startTimer }, } = toolbox;
|
|
24
24
|
// Load configuration
|
|
25
25
|
const ltConfig = config.loadConfig();
|
|
26
|
-
const configNoConfirm = (_d = (_c = (_b = (_a = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _a === void 0 ? void 0 : _a.git) === null || _b === void 0 ? void 0 : _b.clear) === null || _c === void 0 ? void 0 : _c.noConfirm) !== null && _d !== void 0 ? _d : (_f = (_e = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _e === void 0 ? void 0 : _e.git) === null || _f === void 0 ? void 0 : _f.noConfirm;
|
|
27
|
-
// Load global defaults
|
|
28
|
-
const globalNoConfirm = config.getGlobalDefault(ltConfig, 'noConfirm');
|
|
29
26
|
// Parse CLI arguments
|
|
30
|
-
const
|
|
27
|
+
const dryRun = parameters.options.dryRun || parameters.options['dry-run'];
|
|
31
28
|
// Determine noConfirm with priority: CLI > config > global > default (false)
|
|
32
|
-
const noConfirm = config.
|
|
33
|
-
cliValue:
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
29
|
+
const noConfirm = config.getNoConfirm({
|
|
30
|
+
cliValue: parameters.options.noConfirm,
|
|
31
|
+
commandConfig: (_b = (_a = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _a === void 0 ? void 0 : _a.git) === null || _b === void 0 ? void 0 : _b.clear,
|
|
32
|
+
config: ltConfig,
|
|
33
|
+
parentConfig: (_c = ltConfig === null || ltConfig === void 0 ? void 0 : ltConfig.commands) === null || _c === void 0 ? void 0 : _c.git,
|
|
37
34
|
});
|
|
38
35
|
// Check git
|
|
39
36
|
if (!(yield git.gitInstalled())) {
|
|
@@ -41,6 +38,11 @@ const NewCommand = {
|
|
|
41
38
|
}
|
|
42
39
|
// Get current branch
|
|
43
40
|
const branch = yield git.currentBranch();
|
|
41
|
+
// Dry-run mode: show what would be affected
|
|
42
|
+
if (dryRun) {
|
|
43
|
+
const result = yield git.showDryRunInfo({ branch, operation: 'discard' });
|
|
44
|
+
return result || `dry-run clear branch ${branch}`;
|
|
45
|
+
}
|
|
44
46
|
// Ask to clear the branch
|
|
45
47
|
if (!noConfirm && !(yield confirm(`Clear "${branch}"?`))) {
|
|
46
48
|
return;
|
|
@@ -54,9 +56,13 @@ const NewCommand = {
|
|
|
54
56
|
// Success
|
|
55
57
|
success(`Clear ${branch} in ${helper.msToMinutesAndSeconds(timer())}m.`);
|
|
56
58
|
info('');
|
|
59
|
+
// Exit if not running from menu
|
|
60
|
+
if (!toolbox.parameters.options.fromGluegunMenu) {
|
|
61
|
+
process.exit();
|
|
62
|
+
}
|
|
57
63
|
// For tests
|
|
58
64
|
return `clear branch ${branch}`;
|
|
59
65
|
}),
|
|
60
66
|
};
|
|
61
67
|
exports.default = NewCommand;
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvZ2l0L2NsZWFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBSUE7O0dBRUc7QUFDSCxNQUFNLFVBQVUsR0FBbUI7SUFDakMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQ2IsV0FBVyxFQUFFLHVCQUF1QjtJQUNwQyxNQUFNLEVBQUUsS0FBSztJQUNiLElBQUksRUFBRSxPQUFPO0lBQ2IsR0FBRyxFQUFFLENBQU8sT0FBK0IsRUFBRSxFQUFFOztRQUM3Qyw2QkFBNkI7UUFDN0IsTUFBTSxFQUNKLE1BQU0sRUFDTixHQUFHLEVBQ0gsTUFBTSxFQUNOLFVBQVUsRUFDVixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUM5QixNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFDbkIsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxHQUM1QixHQUFHLE9BQU8sQ0FBQztRQUVaLHFCQUFxQjtRQUNyQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFckMsc0JBQXNCO1FBQ3RCLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFMUUsNkVBQTZFO1FBQzdFLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7WUFDcEMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUztZQUN0QyxhQUFhLEVBQUUsTUFBQSxNQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxRQUFRLDBDQUFFLEdBQUcsMENBQUUsS0FBSztZQUM3QyxNQUFNLEVBQUUsUUFBUTtZQUNoQixZQUFZLEVBQUUsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsUUFBUSwwQ0FBRSxHQUFHO1NBQ3RDLENBQUMsQ0FBQztRQUVILFlBQVk7UUFDWixJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTztRQUNULENBQUM7UUFFRCxxQkFBcUI7UUFDckIsTUFBTSxNQUFNLEdBQUcsTUFBTSxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFekMsNENBQTRDO1FBQzVDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxNQUFNLE1BQU0sR0FBRyxNQUFNLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDMUUsT0FBTyxNQUFNLElBQUksd0JBQXdCLE1BQU0sRUFBRSxDQUFDO1FBQ3BELENBQUM7UUFFRCwwQkFBMEI7UUFDMUIsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsTUFBTSxPQUFPLENBQUMsVUFBVSxNQUFNLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN6RCxPQUFPO1FBQ1QsQ0FBQztRQUVELGNBQWM7UUFDZCxNQUFNLEtBQUssR0FBRyxVQUFVLEVBQUUsQ0FBQztRQUUzQixhQUFhO1FBQ2IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1QyxNQUFNLEdBQUcsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQy9DLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV0QixVQUFVO1FBQ1YsT0FBTyxDQUFDLFNBQVMsTUFBTSxPQUFPLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFVCxnQ0FBZ0M7UUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ2hELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNqQixDQUFDO1FBRUQsWUFBWTtRQUNaLE9BQU8sZ0JBQWdCLE1BQU0sRUFBRSxDQUFDO0lBQ2xDLENBQUMsQ0FBQTtDQUNGLENBQUM7QUFFRixrQkFBZSxVQUFVLENBQUMifQ==
|