piral-cli 1.7.3-beta.7634 → 1.7.3
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/lib/common/npm.d.ts +6 -6
- package/lib/common/npm.js +63 -34
- package/lib/common/npm.js.map +1 -1
- package/lib/common/shell.d.ts +2 -2
- package/lib/common/shell.js.map +1 -1
- package/lib/npm-clients/index.d.ts +9 -5
- package/lib/npm-clients/index.js +17 -5
- package/lib/npm-clients/index.js.map +1 -1
- package/lib/types/internal.d.ts +18 -1
- package/lib/types/public.d.ts +3 -1
- package/package.json +2 -2
- package/src/common/npm.test.ts +16 -16
- package/src/common/npm.ts +84 -50
- package/src/common/shell.ts +3 -3
- package/src/npm-clients/index.ts +21 -6
- package/src/types/internal.ts +25 -1
- package/src/types/public.ts +5 -1
package/lib/common/npm.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { PackageType, NpmClientType } from '../types';
|
|
1
|
+
import { PackageType, NpmClientType, NpmClient } from '../types';
|
|
2
2
|
/**
|
|
3
3
|
* For details about how this works consult issue
|
|
4
4
|
* https://github.com/smapiot/piral/issues/203
|
|
5
5
|
* @param root The project's root directory.
|
|
6
6
|
*/
|
|
7
|
-
export declare function determineNpmClient(root: string, selected?: NpmClientType): Promise<
|
|
7
|
+
export declare function determineNpmClient(root: string, selected?: NpmClientType): Promise<NpmClient>;
|
|
8
8
|
export declare function isMonorepoPackageRef(refName: string, root: string): Promise<boolean>;
|
|
9
|
-
export declare function installNpmDependencies(client:
|
|
9
|
+
export declare function installNpmDependencies(client: NpmClient, target?: string): Promise<string>;
|
|
10
10
|
export declare function installNpmPackageFromOptionalRegistry(packageRef: string, target: string, registry: string): Promise<void>;
|
|
11
|
-
export declare function uninstallNpmPackage(client:
|
|
12
|
-
export declare function installNpmPackage(client:
|
|
13
|
-
export declare function initNpmProject(client:
|
|
11
|
+
export declare function uninstallNpmPackage(client: NpmClient, packageRef: string, target?: string, ...flags: Array<string>): Promise<string>;
|
|
12
|
+
export declare function installNpmPackage(client: NpmClient, packageRef: string, target?: string, ...flags: Array<string>): Promise<string>;
|
|
13
|
+
export declare function initNpmProject(client: NpmClient, projectName: string, target: string): Promise<void>;
|
|
14
14
|
export declare function publishNpmPackage(target?: string, file?: string, flags?: Array<string>, interactive?: boolean): Promise<string>;
|
|
15
15
|
export declare function createNpmPackage(target?: string): Promise<string>;
|
|
16
16
|
export declare function findNpmTarball(packageRef: string): Promise<string>;
|
package/lib/common/npm.js
CHANGED
|
@@ -51,6 +51,43 @@ async function detectMonorepoRoot(root) {
|
|
|
51
51
|
} while (root !== previous);
|
|
52
52
|
return [];
|
|
53
53
|
}
|
|
54
|
+
async function determineWrapperClient(root) {
|
|
55
|
+
const searchedClients = await (0, npm_clients_1.detectWrapperClients)(root);
|
|
56
|
+
const foundClients = searchedClients.filter((m) => m.result).map((m) => m.client);
|
|
57
|
+
if (foundClients.length > 0) {
|
|
58
|
+
const [client] = foundClients;
|
|
59
|
+
if (foundClients.length > 1) {
|
|
60
|
+
(0, log_1.log)('generalWarning_0001', `Found multiple clients via their lock or config files: "${foundClients.join('", "')}".`);
|
|
61
|
+
}
|
|
62
|
+
(0, log_1.log)('generalDebug_0003', `Found valid direct client via lock or config file: "${client}".`);
|
|
63
|
+
return client;
|
|
64
|
+
}
|
|
65
|
+
const defaultClient = config_1.config.npmClient;
|
|
66
|
+
if ((0, npm_clients_1.isWrapperClient)(defaultClient)) {
|
|
67
|
+
(0, log_1.log)('generalDebug_0003', `Using the default client: "${defaultClient}".`);
|
|
68
|
+
return defaultClient;
|
|
69
|
+
}
|
|
70
|
+
return undefined;
|
|
71
|
+
}
|
|
72
|
+
async function determineDirectClient(root) {
|
|
73
|
+
const searchedClients = await (0, npm_clients_1.detectDirectClients)(root);
|
|
74
|
+
const foundClients = searchedClients.filter((m) => m.result).map((m) => m.client);
|
|
75
|
+
if (foundClients.length > 0) {
|
|
76
|
+
const [client] = foundClients;
|
|
77
|
+
if (foundClients.length > 1) {
|
|
78
|
+
(0, log_1.log)('generalWarning_0001', `Found multiple clients via their lock or config files: "${foundClients.join('", "')}".`);
|
|
79
|
+
}
|
|
80
|
+
(0, log_1.log)('generalDebug_0003', `Found valid direct client via lock or config file: "${client}".`);
|
|
81
|
+
return client;
|
|
82
|
+
}
|
|
83
|
+
const defaultClient = config_1.config.npmClient;
|
|
84
|
+
if ((0, npm_clients_1.isDirectClient)(defaultClient)) {
|
|
85
|
+
(0, log_1.log)('generalDebug_0003', `Using the default client: "${defaultClient}".`);
|
|
86
|
+
return defaultClient;
|
|
87
|
+
}
|
|
88
|
+
(0, log_1.log)('generalDebug_0003', 'Using the fallback "npm" client.');
|
|
89
|
+
return 'npm';
|
|
90
|
+
}
|
|
54
91
|
/**
|
|
55
92
|
* For details about how this works consult issue
|
|
56
93
|
* https://github.com/smapiot/piral/issues/203
|
|
@@ -59,34 +96,25 @@ async function detectMonorepoRoot(root) {
|
|
|
59
96
|
async function determineNpmClient(root, selected) {
|
|
60
97
|
if (!selected || !helpers_1.clientTypeKeys.includes(selected)) {
|
|
61
98
|
(0, log_1.log)('generalDebug_0003', 'No npm client selected. Checking for lock or config files ...');
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
const defaultClient = config_1.config.npmClient;
|
|
82
|
-
if (helpers_1.clientTypeKeys.includes(defaultClient)) {
|
|
83
|
-
(0, log_1.log)('generalDebug_0003', `Using the default client: "${defaultClient}".`);
|
|
84
|
-
return defaultClient;
|
|
85
|
-
}
|
|
86
|
-
(0, log_1.log)('generalDebug_0003', 'Using the fallback "npm" client.');
|
|
87
|
-
return 'npm';
|
|
99
|
+
const [direct, wrapper] = await Promise.all([determineDirectClient(root), determineWrapperClient(root)]);
|
|
100
|
+
return {
|
|
101
|
+
direct,
|
|
102
|
+
wrapper,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
else if ((0, npm_clients_1.isDirectClient)(selected)) {
|
|
106
|
+
return {
|
|
107
|
+
proposed: selected,
|
|
108
|
+
direct: selected,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
return {
|
|
113
|
+
proposed: selected,
|
|
114
|
+
direct: await determineDirectClient(root),
|
|
115
|
+
wrapper: selected,
|
|
116
|
+
};
|
|
88
117
|
}
|
|
89
|
-
return selected;
|
|
90
118
|
}
|
|
91
119
|
exports.determineNpmClient = determineNpmClient;
|
|
92
120
|
async function isMonorepoPackageRef(refName, root) {
|
|
@@ -99,25 +127,26 @@ async function isMonorepoPackageRef(refName, root) {
|
|
|
99
127
|
}
|
|
100
128
|
exports.isMonorepoPackageRef = isMonorepoPackageRef;
|
|
101
129
|
function installNpmDependencies(client, target = '.') {
|
|
102
|
-
const { installDependencies } = npm_clients_1.clients[client];
|
|
130
|
+
const { installDependencies } = npm_clients_1.clients[client.direct];
|
|
103
131
|
return installDependencies(target);
|
|
104
132
|
}
|
|
105
133
|
exports.installNpmDependencies = installNpmDependencies;
|
|
106
|
-
async function installNpmPackageFromOptionalRegistry(packageRef, target
|
|
134
|
+
async function installNpmPackageFromOptionalRegistry(packageRef, target, registry) {
|
|
135
|
+
const client = await determineNpmClient(target, 'npm');
|
|
107
136
|
try {
|
|
108
|
-
await installNpmPackage(
|
|
137
|
+
await installNpmPackage(client, packageRef, target, '--registry', registry);
|
|
109
138
|
}
|
|
110
139
|
catch (e) {
|
|
111
140
|
if (registry === constants_1.defaultRegistry) {
|
|
112
141
|
throw e;
|
|
113
142
|
}
|
|
114
|
-
await installNpmPackage(
|
|
143
|
+
await installNpmPackage(client, packageRef, target, '--registry', constants_1.defaultRegistry);
|
|
115
144
|
}
|
|
116
145
|
}
|
|
117
146
|
exports.installNpmPackageFromOptionalRegistry = installNpmPackageFromOptionalRegistry;
|
|
118
147
|
async function uninstallNpmPackage(client, packageRef, target = '.', ...flags) {
|
|
119
148
|
try {
|
|
120
|
-
const { uninstallPackage } = npm_clients_1.clients[client];
|
|
149
|
+
const { uninstallPackage } = npm_clients_1.clients[client.direct];
|
|
121
150
|
return await uninstallPackage(packageRef, target, ...flags);
|
|
122
151
|
}
|
|
123
152
|
catch (ex) {
|
|
@@ -128,7 +157,7 @@ async function uninstallNpmPackage(client, packageRef, target = '.', ...flags) {
|
|
|
128
157
|
exports.uninstallNpmPackage = uninstallNpmPackage;
|
|
129
158
|
async function installNpmPackage(client, packageRef, target = '.', ...flags) {
|
|
130
159
|
try {
|
|
131
|
-
const { installPackage } = npm_clients_1.clients[client];
|
|
160
|
+
const { installPackage } = npm_clients_1.clients[client.direct];
|
|
132
161
|
return await installPackage(packageRef, target, ...flags);
|
|
133
162
|
}
|
|
134
163
|
catch (ex) {
|
|
@@ -138,7 +167,7 @@ async function installNpmPackage(client, packageRef, target = '.', ...flags) {
|
|
|
138
167
|
}
|
|
139
168
|
exports.installNpmPackage = installNpmPackage;
|
|
140
169
|
function initNpmProject(client, projectName, target) {
|
|
141
|
-
const { initProject } = npm_clients_1.clients[client];
|
|
170
|
+
const { initProject } = npm_clients_1.clients[client.wrapper || client.direct];
|
|
142
171
|
return initProject(projectName, target);
|
|
143
172
|
}
|
|
144
173
|
exports.initNpmProject = initNpmProject;
|
package/lib/common/npm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../../src/common/npm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../../src/common/npm.ts"],"names":[],"mappings":";;;AAAA,+BAAkD;AAClD,2BAAkD;AAClD,+BAAkC;AAClC,qCAAkC;AAClC,2CAA+F;AAC/F,uCAA2C;AAC3C,6BAA6C;AAC7C,gDAAqH;AACrH,wCAA4C;AAC5C,0CAA4C;AAG5C,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,UAAU,GAAG,OAAO,CAAC;AAC3B,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAEhF,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,MAAM,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,uBAAW,CAAC,CAAC;IAC1C,OAAO,IAAA,gBAAW,EAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB,EAAE,QAAgB;IACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACxE,OAAO,IAAA,cAAO,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,IAAY;IAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC;IAEpB,GAAG;QACD,IAAI,MAAM,IAAA,gBAAW,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE;YAClD,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACxB;QAED,IAAI,MAAM,IAAA,gBAAW,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE;YACjD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACvB;QAED,IAAI,MAAM,IAAA,gBAAW,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,EAAE;YAC3D,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SACvB;QAED,MAAM,EAAE,GAAG,MAAM,IAAA,aAAQ,EAAC,IAAI,EAAE,uBAAW,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE;YACjC,IAAI,MAAM,IAAA,gBAAW,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE;gBAChD,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACtB;YAED,IAAI,MAAM,IAAA,gBAAW,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE;gBACjD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;aACvB;YAED,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SACtB;QAED,QAAQ,GAAG,IAAI,CAAC;QAChB,IAAI,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,CAAC;KACtB,QAAQ,IAAI,KAAK,QAAQ,EAAE;IAE5B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,IAAY;IAChD,MAAM,eAAe,GAAG,MAAM,IAAA,kCAAoB,EAAC,IAAI,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAElF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;QAE9B,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,IAAA,SAAG,EACD,qBAAqB,EACrB,2DAA2D,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CACzF,CAAC;SACH;QAED,IAAA,SAAG,EAAC,mBAAmB,EAAE,uDAAuD,MAAM,IAAI,CAAC,CAAC;QAC5F,OAAO,MAAM,CAAC;KACf;IAED,MAAM,aAAa,GAAG,eAAM,CAAC,SAAS,CAAC;IAEvC,IAAI,IAAA,6BAAe,EAAC,aAAa,CAAC,EAAE;QAClC,IAAA,SAAG,EAAC,mBAAmB,EAAE,8BAA8B,aAAa,IAAI,CAAC,CAAC;QAC1E,OAAO,aAAa,CAAC;KACtB;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAAY;IAC/C,MAAM,eAAe,GAAG,MAAM,IAAA,iCAAmB,EAAC,IAAI,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAElF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;QAE9B,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,IAAA,SAAG,EACD,qBAAqB,EACrB,2DAA2D,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CACzF,CAAC;SACH;QAED,IAAA,SAAG,EAAC,mBAAmB,EAAE,uDAAuD,MAAM,IAAI,CAAC,CAAC;QAC5F,OAAO,MAAM,CAAC;KACf;IAED,MAAM,aAAa,GAAG,eAAM,CAAC,SAAS,CAAC;IAEvC,IAAI,IAAA,4BAAc,EAAC,aAAa,CAAC,EAAE;QACjC,IAAA,SAAG,EAAC,mBAAmB,EAAE,8BAA8B,aAAa,IAAI,CAAC,CAAC;QAC1E,OAAO,aAAa,CAAC;KACtB;IAED,IAAA,SAAG,EAAC,mBAAmB,EAAE,kCAAkC,CAAC,CAAC;IAC7D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,kBAAkB,CAAC,IAAY,EAAE,QAAwB;IAC7E,IAAI,CAAC,QAAQ,IAAI,CAAC,wBAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACnD,IAAA,SAAG,EAAC,mBAAmB,EAAE,+DAA+D,CAAC,CAAC;QAC1F,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzG,OAAO;YACL,MAAM;YACN,OAAO;SACR,CAAC;KACH;SAAM,IAAI,IAAA,4BAAc,EAAC,QAAQ,CAAC,EAAE;QACnC,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,QAAQ;SACjB,CAAC;KACH;SAAM;QACL,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,MAAM,qBAAqB,CAAC,IAAI,CAAC;YACzC,OAAO,EAAE,QAAQ;SAClB,CAAC;KACH;AACH,CAAC;AApBD,gDAoBC;AAEM,KAAK,UAAU,oBAAoB,CAAC,OAAe,EAAE,IAAY;IACtE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE9D,IAAI,YAAY,EAAE;QAChB,MAAM,CAAC,GAAG,qBAAO,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;KACjD;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AATD,oDASC;AAED,SAAgB,sBAAsB,CAAC,MAAiB,EAAE,MAAM,GAAG,GAAG;IACpE,MAAM,EAAE,mBAAmB,EAAE,GAAG,qBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvD,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAHD,wDAGC;AAEM,KAAK,UAAU,qCAAqC,CACzD,UAAkB,EAClB,MAAc,EACd,QAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAEvD,IAAI;QACF,MAAM,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;KAC7E;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,QAAQ,KAAK,2BAAe,EAAE;YAChC,MAAM,CAAC,CAAC;SACT;QAED,MAAM,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,2BAAe,CAAC,CAAC;KACpF;AACH,CAAC;AAhBD,sFAgBC;AAEM,KAAK,UAAU,mBAAmB,CACvC,MAAiB,EACjB,UAAkB,EAClB,MAAM,GAAG,GAAG,EACZ,GAAG,KAAoB;IAEvB,IAAI;QACF,MAAM,EAAE,gBAAgB,EAAE,GAAG,qBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpD,OAAO,MAAM,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;KAC7D;IAAC,OAAO,EAAE,EAAE;QACX,IAAA,SAAG,EACD,mBAAmB,EACnB,oCAAoC,UAAU,WAAW,MAAM,eAAe,MAAM,2CAA2C,EAAE,EAAE,CACpI,CAAC;QACF,MAAM,EAAE,CAAC;KACV;AACH,CAAC;AAhBD,kDAgBC;AAEM,KAAK,UAAU,iBAAiB,CACrC,MAAiB,EACjB,UAAkB,EAClB,MAAM,GAAG,GAAG,EACZ,GAAG,KAAoB;IAEvB,IAAI;QACF,MAAM,EAAE,cAAc,EAAE,GAAG,qBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClD,OAAO,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;KAC3D;IAAC,OAAO,EAAE,EAAE;QACX,IAAA,SAAG,EACD,mBAAmB,EACnB,kCAAkC,UAAU,WAAW,MAAM,eAAe,MAAM,2CAA2C,EAAE,EAAE,CAClI,CAAC;QACF,MAAM,EAAE,CAAC;KACV;AACH,CAAC;AAhBD,8CAgBC;AAED,SAAgB,cAAc,CAAC,MAAiB,EAAE,WAAmB,EAAE,MAAc;IACnF,MAAM,EAAE,WAAW,EAAE,GAAG,qBAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;IACjE,OAAO,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAHD,wCAGC;AAED,SAAgB,iBAAiB,CAC/B,MAAM,GAAG,GAAG,EACZ,IAAI,GAAG,OAAO,EACd,QAAuB,EAAE,EACzB,WAAW,GAAG,KAAK;IAEnB,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,qBAAO,CAAC,GAAG,CAAC;IAClD,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC1D,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,GAAG,CAAC;SACX;QAED,OAAO,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACL,CAAC;AAdD,8CAcC;AAED,SAAgB,gBAAgB,CAAC,MAAM,GAAG,GAAG;IAC3C,MAAM,EAAE,aAAa,EAAE,GAAG,qBAAO,CAAC,GAAG,CAAC;IACtC,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAHD,4CAGC;AAED,SAAgB,cAAc,CAAC,UAAkB;IAC/C,MAAM,EAAE,WAAW,EAAE,GAAG,qBAAO,CAAC,GAAG,CAAC;IACpC,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC;AACjC,CAAC;AAHD,wCAGC;AAED,SAAgB,mBAAmB,CAAC,WAAmB,EAAE,OAAe;IACtE,MAAM,EAAE,mBAAmB,EAAE,GAAG,qBAAO,CAAC,GAAG,CAAC;IAC5C,OAAO,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAHD,kDAGC;AAED,SAAgB,iBAAiB,CAAC,WAAmB;IACnD,MAAM,EAAE,mBAAmB,EAAE,GAAG,qBAAO,CAAC,GAAG,CAAC;IAC5C,OAAO,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAHD,8CAGC;AAED,SAAgB,cAAc,CAAC,OAAe,EAAE,QAAgB;IAC9D,IAAA,SAAG,EAAC,mBAAmB,EAAE,qCAAqC,CAAC,CAAC;IAEhE,IAAI,QAAQ,EAAE;QACZ,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE;YAC9D,IAAA,SAAG,EAAC,mBAAmB,EAAE,gCAAgC,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACpC,IAAA,SAAG,EAAC,mBAAmB,EAAE,qCAAqC,CAAC,CAAC;YAEhE,IAAI,IAAA,eAAU,EAAC,IAAA,cAAO,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,EAAE;gBAC1C,IAAA,SAAG,EAAC,mBAAmB,EAAE,0CAA0C,CAAC,CAAC;gBACrE,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;KACxC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AApBD,wCAoBC;AAED,SAAgB,YAAY,CAAC,QAAgB;IAC3C,IAAA,SAAG,EAAC,mBAAmB,EAAE,kCAAkC,CAAC,CAAC;IAE7D,IAAI,QAAQ,EAAE;QACZ,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAE7C,IAAI,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACzE,IAAA,SAAG,EAAC,mBAAmB,EAAE,qCAAqC,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAbD,oCAaC;AAED,SAAgB,YAAY,CAAC,IAAY,EAAE,OAAe;IACxD,OAAO,GAAG,SAAS,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC;AAC1C,CAAC;AAFD,oCAEC;AAED,SAAgB,YAAY,CAAC,QAAgB;IAC3C,IAAA,SAAG,EAAC,mBAAmB,EAAE,mCAAmC,CAAC,CAAC;IAE9D,IAAI,QAAQ,EAAE;QACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAE9C,IAAI,MAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACzD,IAAA,SAAG,EAAC,mBAAmB,EAAE,8BAA8B,CAAC,CAAC;YACzD,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAbD,oCAaC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC9C,IAAA,SAAG,EAAC,mBAAmB,EAAE,sCAAsC,CAAC,CAAC;IAEjE,IAAI,QAAQ,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QAC/C,IAAA,SAAG,EAAC,mBAAmB,EAAE,iCAAiC,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;KACb;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AATD,0CASC;AAED,SAAgB,UAAU,CAAC,QAAgB;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,QAAQ,EAAE,CAAC;AACvD,CAAC;AAHD,gCAGC;AAED,SAAgB,YAAY,CAAC,QAAgB,EAAE,QAAgB;IAC7D,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnD,OAAO,GAAG,UAAU,GAAG,OAAO,EAAE,CAAC;AACnC,CAAC;AAHD,oCAGC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,QAAgB;IAEhB,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE;QAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;KACzC;SAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE;QACpC,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;KAC9C;SAAM,IAAI,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAA,gBAAW,EAAC,QAAQ,CAAC,CAAC;QAE3C,IAAI,CAAC,MAAM,EAAE;YACX,IAAA,UAAI,EAAC,+BAA+B,EAAE,QAAQ,CAAC,CAAC;SACjD;QAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEvD,IAAI,WAAW,EAAE;YACf,IAAA,UAAI,EAAC,mCAAmC,EAAE,QAAQ,CAAC,CAAC;SACrD;QAED,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;KAC5C;SAAM;QACL,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,UAAU,CAAC;QAExB,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SAClF;QAED,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;KAC1C;AACH,CAAC;AAlCD,gDAkCC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,wBAAwB,CAC5C,OAAe,EACf,UAAkB,EAClB,aAAqB,EACrB,OAAe,EACf,IAAY;IAEZ,IAAA,SAAG,EAAC,mBAAmB,EAAE,gCAAgC,OAAO,OAAO,CAAC,CAAC;IAEzE,IAAI,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QACpC,MAAM,QAAQ,GAAG,IAAA,cAAO,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,IAAA,gBAAW,EAAC,QAAQ,CAAC,CAAC;QAE3C,IAAI,CAAC,MAAM,EAAE;YACX,IAAA,UAAI,EAAC,8BAA8B,EAAE,QAAQ,CAAC,CAAC;SAChD;QAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEvD,IAAI,WAAW,EAAE;YACf,IAAA,UAAI,EAAC,mCAAmC,EAAE,QAAQ,CAAC,CAAC;SACrD;QAED,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;KAC1D;SAAM,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;QAChC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/C;SAAM,IAAI,aAAa,IAAI,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC7D,IAAA,SAAG,EAAC,kCAAkC,CAAC,CAAC;KACzC;SAAM,IAAI,aAAa,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC5D,IAAI,OAAO,KAAK,QAAQ,EAAE;YACxB,MAAM,MAAM,GAAG,OAAO,CAAC;YACvB,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;SAC/C;aAAM;YACL,IAAA,SAAG,EAAC,iCAAiC,CAAC,CAAC;SACxC;KACF;IAED,OAAO,CAAC,iBAAiB,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAvCD,4DAuCC;AAED,SAAS,UAAU,CAAC,WAAmB,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;IAC9D,IAAI;QACF,OAAO,IAAA,wBAAa,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;KAC5C;IAAC,MAAM;QACN,OAAO,SAAS,CAAC;KAClB;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,IAAY,EAAE,UAAkB,SAAS;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEtC,IAAI,CAAC,IAAI,EAAE;QACT,IAAA,SAAG,EAAC,mBAAmB,EAAE,kCAAkC,IAAI,SAAS,IAAI,IAAI,CAAC,CAAC;KACnF;SAAM;QACL,IAAA,SAAG,EAAC,qBAAqB,EAAE,yBAAyB,IAAI,YAAY,IAAI,aAAa,IAAI,IAAI,CAAC,CAAC;KAChG;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAXD,8CAWC;AAED,SAAgB,eAAe,CAAC,GAAW,EAAE,OAAe;IAC1D,OAAO,iBAAiB,CAAC,GAAG,GAAG,IAAI,uBAAW,EAAE,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAFD,0CAEC;AAED,SAAgB,eAAe,CAAC,IAAY,EAAE,IAAiB,EAAE,UAAmB,EAAE,MAAc;IAClG,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,UAAU,EAAE;QACtC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3C,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC;KACjC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,0CAOC;AAED,SAAgB,iBAAiB,CAAC,IAAY,EAAE,OAAe,EAAE,IAAiB;IAChF,IAAI,IAAI,KAAK,UAAU,EAAE;QACvB,MAAM,GAAG,GAAG,OAAO,IAAI,QAAQ,CAAC;QAChC,OAAO,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;KACzB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAPD,8CAOC;AAEM,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY,EAAE,IAAiB;IAChF,QAAQ,IAAI,EAAE;QACZ,KAAK,MAAM;YACT,MAAM,mBAAmB,GAAG,MAAM,IAAA,aAAQ,EAAC,IAAI,EAAE,uBAAW,CAAC,CAAC;YAE9D,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;gBAC7B,MAAM,CAAC,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;gBAEvC,IAAI;oBACF,MAAM,CAAC,GAAG,IAAA,qBAAgB,EAAC,CAAC,CAAC,CAAC;oBAC9B,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAc,EAAC,CAAC,CAAC,CAAC;oBAClC,OAAO,CAAC,CAAC,IAAI,CAAC;iBACf;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAA,SAAG,EAAC,mBAAmB,EAAE,sCAAsC,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;oBAC9E,OAAO,SAAS,CAAC;iBAClB;aACF;YAED,OAAO,mBAAmB,CAAC,IAAI,CAAC;QAClC,KAAK,KAAK;YACR,MAAM,EAAE,GAAG,MAAM,IAAA,aAAQ,EAAC,IAAI,EAAE,uBAAW,CAAC,CAAC;YAC7C,MAAM,EAAE,GAAG,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC;YACpC,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,KAAK,UAAU;YACb,OAAO,IAAI,CAAC;KACf;AACH,CAAC;AA1BD,wCA0BC;AAED,SAAgB,qBAAqB,CAAC,UAAkB,EAAE,IAAY;IACpE,MAAM,IAAI,GAAG,IAAA,eAAQ,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACxC,OAAO,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC;AAChC,CAAC;AAHD,sDAGC;AAED,SAAgB,oBAAoB,CAAC,UAAkB;IACrD,OAAO,GAAG,UAAU,EAAE,CAAC;AACzB,CAAC;AAFD,oDAEC;AAED,SAAgB,iBAAiB,CAC/B,UAAmB,EACnB,UAAkB,EAClB,aAAqB,EACrB,IAAiB,EACjB,IAAY;IAEZ,QAAQ,IAAI,EAAE;QACZ,KAAK,UAAU;YACb,OAAO,UAAU,IAAI,aAAa,CAAC;QACrC,KAAK,MAAM;YACT,OAAO,qBAAqB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,KAAK,KAAK;YACR,OAAO,oBAAoB,CAAC,UAAU,CAAC,CAAC;KAC3C;AACH,CAAC;AAfD,8CAeC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,WAAmB;IAC/D,IAAI;QACF,MAAM,MAAM,GAAG,IAAA,wBAAa,EAAC,IAAI,EAAE,GAAG,WAAW,IAAI,uBAAW,EAAE,CAAC,CAAC;QACpE,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,IAAA,aAAQ,EAAC,GAAG,EAAE,uBAAW,CAAC,CAAC;QAChE,OAAO,kBAAkB,CAAC;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,SAAG,EAAC,mBAAmB,EAAE,iCAAiC,WAAW,OAAO,GAAG,EAAE,CAAC,CAAC;QACnF,OAAO,SAAS,CAAC;KAClB;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,YAAoC;IAChF,KAAK,MAAM,YAAY,IAAI,yBAAa,EAAE;QACxC,IAAI,YAAY,CAAC,YAAY,CAAC,EAAE;YAC9B,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YAExD,IAAI,IAAI,EAAE;gBACR,OAAO,IAAI,CAAC;aACb;SACF;KACF;IAED,IAAA,SAAG,EAAC,0BAA0B,EAAE,yBAAa,CAAC,CAAC;IAC/C,OAAO,EAAE,CAAC;AACZ,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,IAAY,EACZ,YAAoC,EACpC,YAAqB,EACrB,SAAc;IAEd,IAAI,YAAY,EAAE;QAChB,MAAM,EAAE,kBAAkB,GAAG,+BAAmB,EAAE,GAAG,SAAS,CAAC;QAC/D,OAAO,kBAAkB,CAAC;KAC3B;SAAM;QACL,OAAO,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;KACnD;AACH,CAAC;AAZD,gDAYC;AAED,SAAgB,cAAc,CAAC,eAA+B,EAAE,gBAA+B,EAAE;IAC/F,IAAI,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;QACrD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,eAAe,CAAC,MAAM,CAC/C,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACb,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBACxB,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjC;qBAAM;oBACL,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpB;aACF;YAED,OAAO,IAAI,CAAC;QACd,CAAC,EACD,CAAC,EAAE,EAAE,EAAE,CAAC,CACT,CAAC;QACF,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,aAAa,CAAC,CAAC;QAC7E,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;KAChF;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AArBD,wCAqBC;AAEM,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,YAAoC,EAAE,SAAwB;IAC9G,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,cAAc,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAClD,CAAC;AAHD,sCAGC"}
|
package/lib/common/shell.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { Agent } from 'https';
|
|
3
|
-
import {
|
|
4
|
-
export declare function installPiralInstance(usedSource: string, baseDir: string, rootDir: string, npmClient:
|
|
3
|
+
import { NpmClient } from '../types';
|
|
4
|
+
export declare function installPiralInstance(usedSource: string, baseDir: string, rootDir: string, npmClient: NpmClient, agent: Agent, selected?: boolean): Promise<string>;
|
package/lib/common/shell.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/common/shell.ts"],"names":[],"mappings":";;;AACA,+BAAiC;AACjC,2CAAqD;AACrD,6BAA+D;AAC/D,uCAAwD;AACxD,+BAA6E;AAC7E,+BAA+E;AAG/E,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,OAAe,EAAE,UAAgC;IAC9F,MAAM,UAAU,GAAG,MAAM,IAAA,aAAQ,EAAC,MAAM,EAAE,qBAAS,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG;QACjB,GAAG,UAAU;QACb,cAAc,EAAE;YACd,GAAG,UAAU,CAAC,cAAc;YAC5B,CAAC,OAAO,CAAC,EAAE,UAAU;SACtB;KACF,CAAC;IACF,MAAM,IAAA,cAAS,EAAC,MAAM,EAAE,qBAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,IAAA,uBAAkB,EAAC,MAAM,EAAE,uBAAW,EAAE;QAC5C,SAAS,EAAE;YACT,OAAO,EAAE,CAAC,OAAO,CAAC;SACnB;KACF,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,UAAkB,EAClB,IAAiB,EACjB,UAAmB,EACnB,OAAe,EACf,aAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/common/shell.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { NpmClientType, NpmDirectClientType, NpmWapperClientType } from '../types';
|
|
1
2
|
import * as lerna from './lerna';
|
|
2
3
|
import * as npm from './npm';
|
|
3
4
|
import * as pnp from './pnp';
|
|
@@ -14,10 +15,13 @@ export declare const clients: {
|
|
|
14
15
|
yarn: typeof yarn;
|
|
15
16
|
bun: typeof bun;
|
|
16
17
|
};
|
|
17
|
-
|
|
18
|
-
export declare function
|
|
19
|
-
export declare function
|
|
20
|
-
client:
|
|
18
|
+
export declare function isWrapperClient(client: NpmClientType): client is NpmWapperClientType;
|
|
19
|
+
export declare function isDirectClient(client: NpmClientType): client is NpmDirectClientType;
|
|
20
|
+
export declare function detectDirectClients(root: string): Promise<{
|
|
21
|
+
client: NpmDirectClientType;
|
|
22
|
+
result: boolean;
|
|
23
|
+
}[]>;
|
|
24
|
+
export declare function detectWrapperClients(root: string): Promise<{
|
|
25
|
+
client: NpmWapperClientType;
|
|
21
26
|
result: boolean;
|
|
22
27
|
}[]>;
|
|
23
|
-
export {};
|
package/lib/npm-clients/index.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.detectWrapperClients = exports.detectDirectClients = exports.isDirectClient = exports.isWrapperClient = exports.clients = void 0;
|
|
27
27
|
const path_1 = require("path");
|
|
28
28
|
const io_1 = require("../common/io");
|
|
29
29
|
const lerna = __importStar(require("./lerna"));
|
|
@@ -43,14 +43,19 @@ exports.clients = {
|
|
|
43
43
|
bun,
|
|
44
44
|
};
|
|
45
45
|
const directClients = ['npm', 'pnp', 'yarn', 'pnpm', 'bun'];
|
|
46
|
+
const wrapperClients = ['lerna', 'rush'];
|
|
46
47
|
function isWrapperClient(client) {
|
|
47
|
-
return
|
|
48
|
+
return wrapperClients.includes(client);
|
|
48
49
|
}
|
|
49
50
|
exports.isWrapperClient = isWrapperClient;
|
|
50
|
-
|
|
51
|
+
function isDirectClient(client) {
|
|
52
|
+
return directClients.includes(client);
|
|
53
|
+
}
|
|
54
|
+
exports.isDirectClient = isDirectClient;
|
|
55
|
+
async function detectClients(root, clientNames) {
|
|
51
56
|
const packageJson = await (0, io_1.findFile)((0, path_1.resolve)(root, '..'), 'package.json');
|
|
52
57
|
const stopDir = packageJson ? (0, path_1.dirname)(packageJson) : undefined;
|
|
53
|
-
return await Promise.all(
|
|
58
|
+
return await Promise.all(clientNames.map(async (client) => {
|
|
54
59
|
const result = await exports.clients[client].detectClient(root, stopDir);
|
|
55
60
|
return {
|
|
56
61
|
client,
|
|
@@ -58,5 +63,12 @@ async function detectClients(root) {
|
|
|
58
63
|
};
|
|
59
64
|
}));
|
|
60
65
|
}
|
|
61
|
-
|
|
66
|
+
function detectDirectClients(root) {
|
|
67
|
+
return detectClients(root, directClients);
|
|
68
|
+
}
|
|
69
|
+
exports.detectDirectClients = detectDirectClients;
|
|
70
|
+
function detectWrapperClients(root) {
|
|
71
|
+
return detectClients(root, wrapperClients);
|
|
72
|
+
}
|
|
73
|
+
exports.detectWrapperClients = detectWrapperClients;
|
|
62
74
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/npm-clients/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAwC;AACxC,qCAAwC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/npm-clients/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAwC;AACxC,qCAAwC;AAGxC,+CAAiC;AACjC,2CAA6B;AAC7B,2CAA6B;AAC7B,6CAA+B;AAC/B,6CAA+B;AAC/B,6CAA+B;AAC/B,2CAA6B;AAEhB,QAAA,OAAO,GAAG;IACrB,KAAK;IACL,GAAG;IACH,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;CACJ,CAAC;AAEF,MAAM,aAAa,GAA+B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACxF,MAAM,cAAc,GAA+B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAErE,SAAgB,eAAe,CAAC,MAAqB;IACnD,OAAO,cAAc,CAAC,QAAQ,CAAC,MAAa,CAAC,CAAC;AAChD,CAAC;AAFD,0CAEC;AAED,SAAgB,cAAc,CAAC,MAAqB;IAClD,OAAO,aAAa,CAAC,QAAQ,CAAC,MAAa,CAAC,CAAC;AAC/C,CAAC;AAFD,wCAEC;AAED,KAAK,UAAU,aAAa,CAC1B,IAAY,EACZ,WAAqB;IAErB,MAAM,WAAW,GAAG,MAAM,IAAA,aAAQ,EAAC,IAAA,cAAO,EAAC,IAAI,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/D,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,MAAM,eAAO,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO;YACL,MAAM;YACN,MAAM;SACP,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAY;IAC9C,OAAO,aAAa,CAAsB,IAAI,EAAE,aAAa,CAAC,CAAC;AACjE,CAAC;AAFD,kDAEC;AAED,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,aAAa,CAAsB,IAAI,EAAE,cAAc,CAAC,CAAC;AAClE,CAAC;AAFD,oDAEC"}
|
package/lib/types/internal.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { LogLevels } from './common';
|
|
3
|
-
import type { ImportmapVersions, PiletSchemaVersion } from './public';
|
|
3
|
+
import type { ImportmapVersions, NpmClientType, NpmDirectClientType, NpmWapperClientType, PiletSchemaVersion } from './public';
|
|
4
4
|
export interface PiralInstanceDetails {
|
|
5
5
|
selected?: boolean;
|
|
6
6
|
port?: number;
|
|
@@ -30,3 +30,20 @@ export interface FileInfo {
|
|
|
30
30
|
* 2. The (short) error message
|
|
31
31
|
*/
|
|
32
32
|
export type QuickMessage = [LogLevels, string, string];
|
|
33
|
+
/**
|
|
34
|
+
* Result of identifying an npm client in a project.
|
|
35
|
+
*/
|
|
36
|
+
export interface NpmClient {
|
|
37
|
+
/**
|
|
38
|
+
* The proposed client - can be anything.
|
|
39
|
+
*/
|
|
40
|
+
proposed?: NpmClientType;
|
|
41
|
+
/**
|
|
42
|
+
* The direct npm client.
|
|
43
|
+
*/
|
|
44
|
+
direct: NpmDirectClientType;
|
|
45
|
+
/**
|
|
46
|
+
* The wrapper npm client, if any.
|
|
47
|
+
*/
|
|
48
|
+
wrapper?: NpmWapperClientType;
|
|
49
|
+
}
|
package/lib/types/public.d.ts
CHANGED
|
@@ -212,7 +212,9 @@ export type PiralBuildType = 'all' | 'release' | 'emulator' | 'emulator-package'
|
|
|
212
212
|
export type PiralPublishType = 'release' | 'emulator';
|
|
213
213
|
export type PiletBuildType = 'default' | 'standalone' | 'manifest';
|
|
214
214
|
export type PackageType = 'registry' | 'file' | 'git' | 'remote';
|
|
215
|
-
export type
|
|
215
|
+
export type NpmDirectClientType = 'npm' | 'yarn' | 'pnp' | 'pnpm' | 'bun';
|
|
216
|
+
export type NpmWapperClientType = 'lerna' | 'rush';
|
|
217
|
+
export type NpmClientType = NpmDirectClientType | NpmWapperClientType;
|
|
216
218
|
export type Framework = 'piral' | 'piral-core' | 'piral-base';
|
|
217
219
|
export interface StandardEnvProps {
|
|
218
220
|
production?: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "piral-cli",
|
|
3
|
-
"version": "1.7.3
|
|
3
|
+
"version": "1.7.3",
|
|
4
4
|
"description": "The standard CLI for creating and building a Piral instance or a Pilet.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"portal",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
"typescript": "^5.0.0",
|
|
82
82
|
"yargs": "^15.0.0"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "1a397dc9992528eb25b57793b14b8515ccf586e1"
|
|
85
85
|
}
|
package/src/common/npm.test.ts
CHANGED
|
@@ -202,39 +202,39 @@ describe('npm Module', () => {
|
|
|
202
202
|
|
|
203
203
|
it('installs a package using the npm command line tool without a target', async () => {
|
|
204
204
|
wrongCase = false;
|
|
205
|
-
await installNpmPackage('npm', 'foo', 'latest').then((result) => expect(result).toEqual(jsonValueString));
|
|
205
|
+
await installNpmPackage({ direct: 'npm' }, 'foo', 'latest').then((result) => expect(result).toEqual(jsonValueString));
|
|
206
206
|
wrongCase = true;
|
|
207
|
-
await installNpmPackage('npm', 'foo', 'latest').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
207
|
+
await installNpmPackage({ direct: 'npm' }, 'foo', 'latest').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
208
208
|
});
|
|
209
209
|
|
|
210
210
|
it('installs a package using the npm command line tool without a version', async () => {
|
|
211
211
|
wrongCase = false;
|
|
212
|
-
await installNpmPackage('npm', 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
212
|
+
await installNpmPackage({ direct: 'npm' }, 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
213
213
|
wrongCase = true;
|
|
214
|
-
await installNpmPackage('npm', 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
214
|
+
await installNpmPackage({ direct: 'npm' }, 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
215
215
|
});
|
|
216
216
|
|
|
217
217
|
it('installs a package using the Yarn command line tool without a version', async () => {
|
|
218
218
|
wrongCase = false;
|
|
219
|
-
await installNpmPackage('yarn', 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
219
|
+
await installNpmPackage({ direct: 'yarn' }, 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
220
220
|
wrongCase = true;
|
|
221
|
-
await installNpmPackage('yarn', 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
221
|
+
await installNpmPackage({ direct: 'yarn' }, 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
222
222
|
});
|
|
223
223
|
|
|
224
224
|
it('installs a package using the Pnpm command line tool without a version', async () => {
|
|
225
225
|
wrongCase = false;
|
|
226
|
-
await installNpmPackage('pnpm', 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
226
|
+
await installNpmPackage({ direct: 'pnpm' }, 'foo').then((result) => expect(result).toEqual(jsonValueString));
|
|
227
227
|
wrongCase = true;
|
|
228
|
-
await installNpmPackage('pnpm', 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
228
|
+
await installNpmPackage({ direct: 'pnpm' }, 'foo').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
229
229
|
});
|
|
230
230
|
|
|
231
231
|
it('installs a package using the npm command line tool with some flag', async () => {
|
|
232
232
|
wrongCase = false;
|
|
233
|
-
await installNpmPackage('
|
|
233
|
+
await installNpmPackage({ direct: 'pnpm' }, 'foo', '1.3', '.', '--a=b').then((result) =>
|
|
234
234
|
expect(result).toEqual(jsonValueString),
|
|
235
235
|
);
|
|
236
236
|
wrongCase = true;
|
|
237
|
-
await installNpmPackage('
|
|
237
|
+
await installNpmPackage({ direct: 'pnpm' }, 'foo', '1.3', '.', '--a=b').then((result) =>
|
|
238
238
|
expect(result).not.toEqual(jsonValueString),
|
|
239
239
|
);
|
|
240
240
|
});
|
|
@@ -281,23 +281,23 @@ describe('npm Module', () => {
|
|
|
281
281
|
|
|
282
282
|
it('install dependencies with npm client', async () => {
|
|
283
283
|
wrongCase = false;
|
|
284
|
-
await installNpmDependencies('npm').then((result) => expect(result).toEqual(jsonValueString));
|
|
284
|
+
await installNpmDependencies({ direct: 'npm' }).then((result) => expect(result).toEqual(jsonValueString));
|
|
285
285
|
wrongCase = true;
|
|
286
|
-
await installNpmDependencies('npm').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
286
|
+
await installNpmDependencies({ direct: 'npm' }).then((result) => expect(result).not.toEqual(jsonValueString));
|
|
287
287
|
});
|
|
288
288
|
|
|
289
289
|
it('install dependencies with pnpm client', async () => {
|
|
290
290
|
wrongCase = false;
|
|
291
|
-
await installNpmDependencies('pnpm').then((result) => expect(result).toEqual(jsonValueString));
|
|
291
|
+
await installNpmDependencies({ direct: 'pnpm' }).then((result) => expect(result).toEqual(jsonValueString));
|
|
292
292
|
wrongCase = true;
|
|
293
|
-
await installNpmDependencies('pnpm').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
293
|
+
await installNpmDependencies({ direct: 'pnpm' }).then((result) => expect(result).not.toEqual(jsonValueString));
|
|
294
294
|
});
|
|
295
295
|
|
|
296
296
|
it('install dependencies with yarn client', async () => {
|
|
297
297
|
wrongCase = false;
|
|
298
|
-
await installNpmDependencies('yarn').then((result) => expect(result).toEqual(jsonValueString));
|
|
298
|
+
await installNpmDependencies({ direct: 'yarn' }).then((result) => expect(result).toEqual(jsonValueString));
|
|
299
299
|
wrongCase = true;
|
|
300
|
-
await installNpmDependencies('yarn').then((result) => expect(result).not.toEqual(jsonValueString));
|
|
300
|
+
await installNpmDependencies({ direct: 'yarn' }).then((result) => expect(result).not.toEqual(jsonValueString));
|
|
301
301
|
});
|
|
302
302
|
|
|
303
303
|
it('create npm package', async () => {
|
package/src/common/npm.ts
CHANGED
|
@@ -5,10 +5,10 @@ import { config } from './config';
|
|
|
5
5
|
import { legacyCoreExternals, frameworkLibs, defaultRegistry, packageJson } from './constants';
|
|
6
6
|
import { inspectPackage } from './inspect';
|
|
7
7
|
import { readJson, checkExists } from './io';
|
|
8
|
-
import { clients,
|
|
8
|
+
import { clients, detectDirectClients, detectWrapperClients, isDirectClient, isWrapperClient } from '../npm-clients';
|
|
9
9
|
import { clientTypeKeys } from '../helpers';
|
|
10
10
|
import { getModulePath } from '../external';
|
|
11
|
-
import { PackageType, NpmClientType } from '../types';
|
|
11
|
+
import { PackageType, NpmClientType, NpmClient, NpmDirectClientType, NpmWapperClientType } from '../types';
|
|
12
12
|
|
|
13
13
|
const gitPrefix = 'git+';
|
|
14
14
|
const filePrefix = 'file:';
|
|
@@ -63,56 +63,88 @@ async function detectMonorepoRoot(root: string): Promise<[] | [string, NpmClient
|
|
|
63
63
|
return [];
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
* @param root The project's root directory.
|
|
70
|
-
*/
|
|
71
|
-
export async function determineNpmClient(root: string, selected?: NpmClientType): Promise<NpmClientType> {
|
|
72
|
-
if (!selected || !clientTypeKeys.includes(selected)) {
|
|
73
|
-
log('generalDebug_0003', 'No npm client selected. Checking for lock or config files ...');
|
|
66
|
+
async function determineWrapperClient(root: string): Promise<NpmWapperClientType | undefined> {
|
|
67
|
+
const searchedClients = await detectWrapperClients(root);
|
|
68
|
+
const foundClients = searchedClients.filter((m) => m.result).map((m) => m.client);
|
|
74
69
|
|
|
75
|
-
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
log(
|
|
79
|
-
'generalDebug_0003',
|
|
80
|
-
`Results of the lock file check: ${searchedClients.map((m) => `${m.client}=${m.result}`).join(', ')}`,
|
|
81
|
-
);
|
|
70
|
+
if (foundClients.length > 0) {
|
|
71
|
+
const [client] = foundClients;
|
|
82
72
|
|
|
83
73
|
if (foundClients.length > 1) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
log('generalDebug_0003', `Found valid wrapper client via lock or config file: "${client}".`);
|
|
89
|
-
}
|
|
74
|
+
log(
|
|
75
|
+
'generalWarning_0001',
|
|
76
|
+
`Found multiple clients via their lock or config files: "${foundClients.join('", "')}".`,
|
|
77
|
+
);
|
|
90
78
|
}
|
|
91
79
|
|
|
92
|
-
|
|
93
|
-
|
|
80
|
+
log('generalDebug_0003', `Found valid direct client via lock or config file: "${client}".`);
|
|
81
|
+
return client;
|
|
82
|
+
}
|
|
94
83
|
|
|
95
|
-
|
|
96
|
-
const clientStr = `"${foundClients.map((m) => m.client).join('", "')}"`;
|
|
97
|
-
log('generalWarning_0001', `Found multiple clients via their lock or config files: ${clientStr}.`);
|
|
98
|
-
}
|
|
84
|
+
const defaultClient = config.npmClient;
|
|
99
85
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
86
|
+
if (isWrapperClient(defaultClient)) {
|
|
87
|
+
log('generalDebug_0003', `Using the default client: "${defaultClient}".`);
|
|
88
|
+
return defaultClient;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return undefined;
|
|
92
|
+
}
|
|
103
93
|
|
|
104
|
-
|
|
94
|
+
async function determineDirectClient(root: string): Promise<NpmDirectClientType> {
|
|
95
|
+
const searchedClients = await detectDirectClients(root);
|
|
96
|
+
const foundClients = searchedClients.filter((m) => m.result).map((m) => m.client);
|
|
105
97
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
98
|
+
if (foundClients.length > 0) {
|
|
99
|
+
const [client] = foundClients;
|
|
100
|
+
|
|
101
|
+
if (foundClients.length > 1) {
|
|
102
|
+
log(
|
|
103
|
+
'generalWarning_0001',
|
|
104
|
+
`Found multiple clients via their lock or config files: "${foundClients.join('", "')}".`,
|
|
105
|
+
);
|
|
109
106
|
}
|
|
110
107
|
|
|
111
|
-
log('generalDebug_0003',
|
|
112
|
-
return
|
|
108
|
+
log('generalDebug_0003', `Found valid direct client via lock or config file: "${client}".`);
|
|
109
|
+
return client;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const defaultClient = config.npmClient;
|
|
113
|
+
|
|
114
|
+
if (isDirectClient(defaultClient)) {
|
|
115
|
+
log('generalDebug_0003', `Using the default client: "${defaultClient}".`);
|
|
116
|
+
return defaultClient;
|
|
113
117
|
}
|
|
114
118
|
|
|
115
|
-
|
|
119
|
+
log('generalDebug_0003', 'Using the fallback "npm" client.');
|
|
120
|
+
return 'npm';
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* For details about how this works consult issue
|
|
125
|
+
* https://github.com/smapiot/piral/issues/203
|
|
126
|
+
* @param root The project's root directory.
|
|
127
|
+
*/
|
|
128
|
+
export async function determineNpmClient(root: string, selected?: NpmClientType): Promise<NpmClient> {
|
|
129
|
+
if (!selected || !clientTypeKeys.includes(selected)) {
|
|
130
|
+
log('generalDebug_0003', 'No npm client selected. Checking for lock or config files ...');
|
|
131
|
+
const [direct, wrapper] = await Promise.all([determineDirectClient(root), determineWrapperClient(root)]);
|
|
132
|
+
return {
|
|
133
|
+
direct,
|
|
134
|
+
wrapper,
|
|
135
|
+
};
|
|
136
|
+
} else if (isDirectClient(selected)) {
|
|
137
|
+
return {
|
|
138
|
+
proposed: selected,
|
|
139
|
+
direct: selected,
|
|
140
|
+
};
|
|
141
|
+
} else {
|
|
142
|
+
return {
|
|
143
|
+
proposed: selected,
|
|
144
|
+
direct: await determineDirectClient(root),
|
|
145
|
+
wrapper: selected,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
116
148
|
}
|
|
117
149
|
|
|
118
150
|
export async function isMonorepoPackageRef(refName: string, root: string): Promise<boolean> {
|
|
@@ -126,35 +158,37 @@ export async function isMonorepoPackageRef(refName: string, root: string): Promi
|
|
|
126
158
|
return false;
|
|
127
159
|
}
|
|
128
160
|
|
|
129
|
-
export function installNpmDependencies(client:
|
|
130
|
-
const { installDependencies } = clients[client];
|
|
161
|
+
export function installNpmDependencies(client: NpmClient, target = '.'): Promise<string> {
|
|
162
|
+
const { installDependencies } = clients[client.direct];
|
|
131
163
|
return installDependencies(target);
|
|
132
164
|
}
|
|
133
165
|
|
|
134
166
|
export async function installNpmPackageFromOptionalRegistry(
|
|
135
167
|
packageRef: string,
|
|
136
|
-
target
|
|
168
|
+
target: string,
|
|
137
169
|
registry: string,
|
|
138
170
|
): Promise<void> {
|
|
171
|
+
const client = await determineNpmClient(target, 'npm');
|
|
172
|
+
|
|
139
173
|
try {
|
|
140
|
-
await installNpmPackage(
|
|
174
|
+
await installNpmPackage(client, packageRef, target, '--registry', registry);
|
|
141
175
|
} catch (e) {
|
|
142
176
|
if (registry === defaultRegistry) {
|
|
143
177
|
throw e;
|
|
144
178
|
}
|
|
145
179
|
|
|
146
|
-
await installNpmPackage(
|
|
180
|
+
await installNpmPackage(client, packageRef, target, '--registry', defaultRegistry);
|
|
147
181
|
}
|
|
148
182
|
}
|
|
149
183
|
|
|
150
184
|
export async function uninstallNpmPackage(
|
|
151
|
-
client:
|
|
185
|
+
client: NpmClient,
|
|
152
186
|
packageRef: string,
|
|
153
187
|
target = '.',
|
|
154
188
|
...flags: Array<string>
|
|
155
189
|
): Promise<string> {
|
|
156
190
|
try {
|
|
157
|
-
const { uninstallPackage } = clients[client];
|
|
191
|
+
const { uninstallPackage } = clients[client.direct];
|
|
158
192
|
return await uninstallPackage(packageRef, target, ...flags);
|
|
159
193
|
} catch (ex) {
|
|
160
194
|
log(
|
|
@@ -166,13 +200,13 @@ export async function uninstallNpmPackage(
|
|
|
166
200
|
}
|
|
167
201
|
|
|
168
202
|
export async function installNpmPackage(
|
|
169
|
-
client:
|
|
203
|
+
client: NpmClient,
|
|
170
204
|
packageRef: string,
|
|
171
205
|
target = '.',
|
|
172
206
|
...flags: Array<string>
|
|
173
207
|
): Promise<string> {
|
|
174
208
|
try {
|
|
175
|
-
const { installPackage } = clients[client];
|
|
209
|
+
const { installPackage } = clients[client.direct];
|
|
176
210
|
return await installPackage(packageRef, target, ...flags);
|
|
177
211
|
} catch (ex) {
|
|
178
212
|
log(
|
|
@@ -183,8 +217,8 @@ export async function installNpmPackage(
|
|
|
183
217
|
}
|
|
184
218
|
}
|
|
185
219
|
|
|
186
|
-
export function initNpmProject(client:
|
|
187
|
-
const { initProject } = clients[client];
|
|
220
|
+
export function initNpmProject(client: NpmClient, projectName: string, target: string) {
|
|
221
|
+
const { initProject } = clients[client.wrapper || client.direct];
|
|
188
222
|
return initProject(projectName, target);
|
|
189
223
|
}
|
|
190
224
|
|
package/src/common/shell.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { readJson, updateExistingJson, writeJson } from './io';
|
|
|
5
5
|
import { scaffoldFromEmulatorWebsite } from './website';
|
|
6
6
|
import { combinePackageRef, getPackageName, getPackageVersion } from './npm';
|
|
7
7
|
import { dissectPackageName, installNpmPackage, isLinkedPackage } from './npm';
|
|
8
|
-
import {
|
|
8
|
+
import { NpmClient, PackageType, PiralInstanceDetails } from '../types';
|
|
9
9
|
|
|
10
10
|
async function updatePiletJson(target: string, appName: string, appDetails: PiralInstanceDetails) {
|
|
11
11
|
const oldContent = await readJson(target, piletJson);
|
|
@@ -30,7 +30,7 @@ async function setupPiralInstance(
|
|
|
30
30
|
hadVersion: boolean,
|
|
31
31
|
rootDir: string,
|
|
32
32
|
sourceVersion: string,
|
|
33
|
-
npmClient:
|
|
33
|
+
npmClient: NpmClient,
|
|
34
34
|
) {
|
|
35
35
|
if (!isLinkedPackage(sourceName, type, hadVersion, rootDir)) {
|
|
36
36
|
const packageRef = combinePackageRef(sourceName, sourceVersion, type);
|
|
@@ -55,7 +55,7 @@ export async function installPiralInstance(
|
|
|
55
55
|
usedSource: string,
|
|
56
56
|
baseDir: string,
|
|
57
57
|
rootDir: string,
|
|
58
|
-
npmClient:
|
|
58
|
+
npmClient: NpmClient,
|
|
59
59
|
agent: Agent,
|
|
60
60
|
selected?: boolean,
|
|
61
61
|
): Promise<string> {
|
package/src/npm-clients/index.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { dirname, resolve } from 'path';
|
|
2
2
|
import { findFile } from '../common/io';
|
|
3
|
+
import type { NpmClientType, NpmDirectClientType, NpmWapperClientType } from '../types';
|
|
3
4
|
|
|
4
5
|
import * as lerna from './lerna';
|
|
5
6
|
import * as npm from './npm';
|
|
@@ -19,20 +20,26 @@ export const clients = {
|
|
|
19
20
|
bun,
|
|
20
21
|
};
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
const directClients: Array<NpmDirectClientType> = ['npm', 'pnp', 'yarn', 'pnpm', 'bun'];
|
|
24
|
+
const wrapperClients: Array<NpmWapperClientType> = ['lerna', 'rush'];
|
|
23
25
|
|
|
24
|
-
|
|
26
|
+
export function isWrapperClient(client: NpmClientType): client is NpmWapperClientType {
|
|
27
|
+
return wrapperClients.includes(client as any);
|
|
28
|
+
}
|
|
25
29
|
|
|
26
|
-
export function
|
|
27
|
-
return
|
|
30
|
+
export function isDirectClient(client: NpmClientType): client is NpmDirectClientType {
|
|
31
|
+
return directClients.includes(client as any);
|
|
28
32
|
}
|
|
29
33
|
|
|
30
|
-
|
|
34
|
+
async function detectClients<T extends NpmClientType>(
|
|
35
|
+
root: string,
|
|
36
|
+
clientNames: Array<T>,
|
|
37
|
+
): Promise<Array<{ client: T; result: boolean }>> {
|
|
31
38
|
const packageJson = await findFile(resolve(root, '..'), 'package.json');
|
|
32
39
|
const stopDir = packageJson ? dirname(packageJson) : undefined;
|
|
33
40
|
|
|
34
41
|
return await Promise.all(
|
|
35
|
-
|
|
42
|
+
clientNames.map(async (client) => {
|
|
36
43
|
const result = await clients[client].detectClient(root, stopDir);
|
|
37
44
|
return {
|
|
38
45
|
client,
|
|
@@ -41,3 +48,11 @@ export async function detectClients(root: string) {
|
|
|
41
48
|
}),
|
|
42
49
|
);
|
|
43
50
|
}
|
|
51
|
+
|
|
52
|
+
export function detectDirectClients(root: string) {
|
|
53
|
+
return detectClients<NpmDirectClientType>(root, directClients);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export function detectWrapperClients(root: string) {
|
|
57
|
+
return detectClients<NpmWapperClientType>(root, wrapperClients);
|
|
58
|
+
}
|
package/src/types/internal.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { LogLevels } from './common';
|
|
2
|
-
import type {
|
|
2
|
+
import type {
|
|
3
|
+
ImportmapVersions,
|
|
4
|
+
NpmClientType,
|
|
5
|
+
NpmDirectClientType,
|
|
6
|
+
NpmWapperClientType,
|
|
7
|
+
PiletSchemaVersion,
|
|
8
|
+
} from './public';
|
|
3
9
|
|
|
4
10
|
export interface PiralInstanceDetails {
|
|
5
11
|
selected?: boolean;
|
|
@@ -34,3 +40,21 @@ export interface FileInfo {
|
|
|
34
40
|
* 2. The (short) error message
|
|
35
41
|
*/
|
|
36
42
|
export type QuickMessage = [LogLevels, string, string];
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Result of identifying an npm client in a project.
|
|
46
|
+
*/
|
|
47
|
+
export interface NpmClient {
|
|
48
|
+
/**
|
|
49
|
+
* The proposed client - can be anything.
|
|
50
|
+
*/
|
|
51
|
+
proposed?: NpmClientType;
|
|
52
|
+
/**
|
|
53
|
+
* The direct npm client.
|
|
54
|
+
*/
|
|
55
|
+
direct: NpmDirectClientType;
|
|
56
|
+
/**
|
|
57
|
+
* The wrapper npm client, if any.
|
|
58
|
+
*/
|
|
59
|
+
wrapper?: NpmWapperClientType;
|
|
60
|
+
}
|
package/src/types/public.ts
CHANGED
|
@@ -261,7 +261,11 @@ export type PiletBuildType = 'default' | 'standalone' | 'manifest';
|
|
|
261
261
|
|
|
262
262
|
export type PackageType = 'registry' | 'file' | 'git' | 'remote';
|
|
263
263
|
|
|
264
|
-
export type
|
|
264
|
+
export type NpmDirectClientType = 'npm' | 'yarn' | 'pnp' | 'pnpm' | 'bun';
|
|
265
|
+
|
|
266
|
+
export type NpmWapperClientType = 'lerna' | 'rush';
|
|
267
|
+
|
|
268
|
+
export type NpmClientType = NpmDirectClientType | NpmWapperClientType;
|
|
265
269
|
|
|
266
270
|
export type Framework = 'piral' | 'piral-core' | 'piral-base';
|
|
267
271
|
|