@trackunit/iris-app 0.0.160 → 0.0.162
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/CHANGELOG.md +14 -0
- package/package.json +4 -5
- package/src/executors/build/executor.js +3 -0
- package/src/executors/build/executor.js.map +1 -1
- package/src/executors/publish/executor.js +93 -67
- package/src/executors/publish/executor.js.map +1 -1
- package/src/executors/serve/executor.js +3 -0
- package/src/executors/serve/executor.js.map +1 -1
- package/src/executors/utils/defaultWebpackConfig.js +10 -31
- package/src/executors/utils/defaultWebpackConfig.js.map +1 -1
- package/src/generators/create/generator.js +1 -3
- package/src/generators/create/generator.js.map +1 -1
- package/src/executors/utils/mocks.d.ts +0 -28
- package/src/executors/utils/mocks.js +0 -32
- package/src/executors/utils/mocks.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [0.0.162](https://github.com/Trackunit/manager/compare/iris-app/0.0.161...iris-app/0.0.162) (2023-01-11)
|
|
6
|
+
|
|
7
|
+
### Dependency Updates
|
|
8
|
+
|
|
9
|
+
* `iris-app-build-utilities` updated to version `0.0.1`
|
|
10
|
+
* `iris-app-api` updated to version `0.0.1`
|
|
11
|
+
* `iris-app-webpack-plugin` updated to version `0.0.1`
|
|
12
|
+
|
|
13
|
+
### Reverts
|
|
14
|
+
|
|
15
|
+
* Revert "ci: bump iris-app to 0.0.162-alpha-45f19e6f76.0 [skip ci]" ([8912fe9](https://github.com/Trackunit/manager/commit/8912fe9ca56acbd3bdd2304ec915acb08a2e6d0b))
|
|
16
|
+
|
|
17
|
+
## [0.0.161](https://github.com/Trackunit/manager/compare/iris-app/0.0.160...iris-app/0.0.161) (2023-01-09)
|
|
18
|
+
|
|
5
19
|
## [0.0.160](https://github.com/Trackunit/manager/compare/iris-app/0.0.159...iris-app/0.0.160) (2023-01-06)
|
|
6
20
|
|
|
7
21
|
### Dependency Updates
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trackunit/iris-app",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.162",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"generators": "./generators.json",
|
|
@@ -12,11 +12,10 @@
|
|
|
12
12
|
"react-dom": "18.2.0",
|
|
13
13
|
"echarts": "^5.4.0",
|
|
14
14
|
"penpal": "^6.2.2",
|
|
15
|
-
"
|
|
16
|
-
"@trackunit/iris-app-build-utilities": "0.0.77",
|
|
15
|
+
"@trackunit/iris-app-build-utilities": "0.0.78",
|
|
17
16
|
"tsconfig-paths": "3.14.1",
|
|
18
17
|
"typescript": "4.7.3",
|
|
19
|
-
"@trackunit/iris-app-api": "0.0.
|
|
18
|
+
"@trackunit/iris-app-api": "0.0.72",
|
|
20
19
|
"node-fetch": "2.6.7",
|
|
21
20
|
"rxjs": "6.6.7",
|
|
22
21
|
"libnpmpublish": "6.0.5",
|
|
@@ -24,7 +23,7 @@
|
|
|
24
23
|
"pacote": "13.6.2",
|
|
25
24
|
"@nrwl/webpack": "15.3.0",
|
|
26
25
|
"semver": "7.3.8",
|
|
27
|
-
"@trackunit/iris-app-webpack-plugin": "0.0.
|
|
26
|
+
"@trackunit/iris-app-webpack-plugin": "0.0.82",
|
|
28
27
|
"camelcase": "5.3.1",
|
|
29
28
|
"enquirer": "2.3.6",
|
|
30
29
|
"tslib": "2.4.1"
|
|
@@ -21,6 +21,9 @@ function deleteOutputDir(root, outputPath) {
|
|
|
21
21
|
exports.deleteOutputDir = deleteOutputDir;
|
|
22
22
|
async function* default_1(options, context) {
|
|
23
23
|
await (0, checkPackageVersion_1.checkPackageVersion)();
|
|
24
|
+
if (!context.workspace) {
|
|
25
|
+
throw new Error("context workspace is required");
|
|
26
|
+
}
|
|
24
27
|
const projectRootDir = (0, path_1.join)(context.root, context.workspace.projects[context.projectName].root);
|
|
25
28
|
const tileManifestPath = (0, path_1.join)(context.root, context.workspace.projects[context.projectName].root, "iris-app-manifest.ts");
|
|
26
29
|
(0, iris_app_build_utilities_1.enableTsConfigPath)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/build/executor.ts"],"names":[],"mappings":";;;;AAEA,0EAAsE;AACtE,kFAAyE;AACzE,2BAA4B;AAC5B,+BAAqC;AAErC,2DAAqC;AAErC,8BAA4B;AAC5B,sEAAmE;AACnE,wEAAiE;AAEjE,uCAAyC;AAOzC,SAAgB,eAAe,CAAC,IAAY,EAAE,UAAkB;IAC9D,MAAM,kBAAkB,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,kBAAkB,KAAK,IAAI,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;KACpE;IACD,IAAA,WAAM,EAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC;AAND,0CAMC;AAEc,KAAK,SAAS,CAAC,WAAE,OAA4B,EAAE,OAAwB;IACpF,MAAM,IAAA,yCAAmB,GAAE,CAAC;IAC5B,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/build/executor.ts"],"names":[],"mappings":";;;;AAEA,0EAAsE;AACtE,kFAAyE;AACzE,2BAA4B;AAC5B,+BAAqC;AAErC,2DAAqC;AAErC,8BAA4B;AAC5B,sEAAmE;AACnE,wEAAiE;AAEjE,uCAAyC;AAOzC,SAAgB,eAAe,CAAC,IAAY,EAAE,UAAkB;IAC9D,MAAM,kBAAkB,GAAG,IAAA,cAAO,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,kBAAkB,KAAK,IAAI,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;KACpE;IACD,IAAA,WAAM,EAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC;AAND,0CAMC;AAEc,KAAK,SAAS,CAAC,WAAE,OAA4B,EAAE,OAAwB;IACpF,MAAM,IAAA,yCAAmB,GAAE,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IACD,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,QAAS,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,CAAC,CAAC;IAClG,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAC3B,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,EACrD,sBAAsB,CACvB,CAAC;IACF,IAAA,6CAAkB,EAAC;QACjB,cAAc;KACf,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IACD,MAAM,eAAe,GAAG,CAAC,gEAAa,gBAAgB,GAAC,CAAC,CAAC,OAAO,CAAC;IACjE,MAAM,aAAa,GAAG,IAAA,uCAAgB,EAAC,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACpG,MAAM,gBAAgB,GAAG,gEAAa,OAAO,CAAC,aAAa,GAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC7D,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,MAAM,CAAC,CAAC,IAAI,CAC1C,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACb,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,EACF,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACb,OAAO;YACL,OAAO,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE;YAC3B,OAAO,EAAE,IAAA,cAAO,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC;SACjC,CAAC;IACtB,CAAC,CAAC,CACH,CAAC;IACF,OAAO,KAAK,CAAC,CAAC,IAAA,8BAAa,EAAC,UAAwC,CAAC,CAAC;AACxE,CAAC;AApCD,4BAoCC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ExecutorContext } from \"@nrwl/devkit\";\nimport { eachValueFrom } from \"@nrwl/devkit/src/utils/rxjs-for-await\";\nimport { enableTsConfigPath } from \"@trackunit/iris-app-build-utilities\";\nimport { rmSync } from \"fs\";\nimport { join, resolve } from \"path\";\nimport { Observable } from \"rxjs\";\nimport * as op from \"rxjs/operators\";\n\nimport \"webpack-dev-server\";\nimport { checkPackageVersion } from \"../utils/checkPackageVersion\";\nimport { getDefaultConfig } from \"../utils/defaultWebpackConfig\";\nimport { BuildExecutorSchema } from \"./schema\";\nimport { doRunWebpack } from \"./webpack\";\n\nexport type NodeBuildEvent = {\n outfile: string;\n success: boolean;\n};\n\nexport function deleteOutputDir(root: string, outputPath: string) {\n const resolvedOutputPath = resolve(root, outputPath);\n if (resolvedOutputPath === root) {\n throw new Error(\"Output path MUST not be project root directory!\");\n }\n rmSync(resolvedOutputPath, { recursive: true, force: true });\n}\n\nexport default async function* (options: BuildExecutorSchema, context: ExecutorContext) {\n await checkPackageVersion();\n if (!context.workspace) {\n throw new Error(\"context workspace is required\");\n }\n const projectRootDir = join(context.root, context.workspace.projects![context.projectName!].root);\n const tileManifestPath = join(\n context.root,\n context.workspace.projects[context.projectName!].root,\n \"iris-app-manifest.ts\"\n );\n enableTsConfigPath({\n projectRootDir,\n });\n if (!options.webpackConfig) {\n throw new Error(\"option.webpackConfig is required\");\n }\n const IrisAppManifest = (await import(tileManifestPath)).default;\n const defaultConfig = getDefaultConfig(\"production\", context.root, projectRootDir, IrisAppManifest);\n const customConfigFile = await import(options.webpackConfig);\n\n const config = await customConfigFile.default(defaultConfig);\n deleteOutputDir(context.root, options.outputPath);\n const observable = doRunWebpack(config).pipe(\n op.tap(stats => {\n // eslint-disable-next-line no-console\n console.info(stats.toString(config.stats));\n }),\n op.map(stats => {\n return {\n success: !stats.hasErrors(),\n outfile: resolve(context.root, options.outputPath),\n } as NodeBuildEvent;\n })\n );\n return yield* eachValueFrom(observable as unknown as Observable<any>);\n}\n"]}
|
|
@@ -43,28 +43,6 @@ function getSettings() {
|
|
|
43
43
|
throw new Error(`Unknown environment: ${env}`);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
async function doApproveApp(token, manifest, settings) {
|
|
47
|
-
if (process.env.TU_APPROVE === "true") {
|
|
48
|
-
console.log(`🖋️ Approving the app...`);
|
|
49
|
-
const approveResult = await (0, node_fetch_1.default)(new url_1.URL(`${manifest.name}@${manifest.version}`, settings.approvalUrl), {
|
|
50
|
-
method: "PUT",
|
|
51
|
-
headers: {
|
|
52
|
-
Authorization: `Bearer ${token}`,
|
|
53
|
-
},
|
|
54
|
-
});
|
|
55
|
-
if (approveResult.ok) {
|
|
56
|
-
console.log(`✅ Approved version ${manifest.version} of ${manifest.name}.`);
|
|
57
|
-
return { success: true };
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
console.error("❌ Unable to approve app package. Got error from Iris App SDK repository.", approveResult.statusText, await approveResult.text());
|
|
61
|
-
return { success: false };
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
return { success: true };
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
46
|
async function runExecutor(options) {
|
|
69
47
|
await (0, checkPackageVersion_1.checkPackageVersion)();
|
|
70
48
|
const settings = getSettings();
|
|
@@ -145,67 +123,115 @@ async function runExecutor(options) {
|
|
|
145
123
|
console.log("🥳 Successfully authenticated.");
|
|
146
124
|
const manifest = (await pacote.manifest(options.inputPath));
|
|
147
125
|
const tarData = await pacote.tarball(options.inputPath);
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
:
|
|
154
|
-
npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}/repo/:always-auth`] = true;
|
|
155
|
-
console.log("🚢 Shipping the app package...");
|
|
156
|
-
const publishResult = await libpub.publish(manifest, tarData, npmFetchOptions).catch((err) => {
|
|
157
|
-
if (err.code === "EPUBLISHCONFLICT") {
|
|
158
|
-
return {
|
|
159
|
-
ok: false,
|
|
160
|
-
publishConflict: true,
|
|
161
|
-
};
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
return {
|
|
165
|
-
ok: false,
|
|
166
|
-
headers: null,
|
|
167
|
-
statusText: `Error`,
|
|
168
|
-
text: () => Promise.resolve(`${err.name} ${err.message}`),
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
const warningsText = publishResult.headers?.get("TU-TILE-WARNINGS");
|
|
173
|
-
if (warningsText) {
|
|
174
|
-
console.log("⚠️ " + decodeURI(warningsText));
|
|
126
|
+
return await doUploadAppWithRetry(tokenData, useAccessToken, manifest, tarData, settings, 3);
|
|
127
|
+
}
|
|
128
|
+
else if ("error" in tokenData) {
|
|
129
|
+
if (tokenData.error === "expired_token") {
|
|
130
|
+
console.error("⌛️ Authentication attempt expired");
|
|
131
|
+
return { success: false };
|
|
175
132
|
}
|
|
176
|
-
|
|
177
|
-
console.
|
|
178
|
-
return
|
|
133
|
+
else {
|
|
134
|
+
console.error(`❌ Error occurred: ${tokenData.error} ${tokenData.error_description}`);
|
|
135
|
+
return { success: false };
|
|
179
136
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
console.error("❌ Unknown error occurred");
|
|
140
|
+
return { success: false };
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
exports.default = runExecutor;
|
|
144
|
+
class NpmConflictError extends Error {
|
|
145
|
+
}
|
|
146
|
+
class NpmGeneralError extends Error {
|
|
147
|
+
}
|
|
148
|
+
async function doUploadAppWithRetry(tokenData, useAccessToken, manifest, tarData, settings, retryCount) {
|
|
149
|
+
try {
|
|
150
|
+
return await doUploadApp(tokenData, useAccessToken, manifest, tarData, settings);
|
|
151
|
+
}
|
|
152
|
+
catch (e) {
|
|
153
|
+
if (e instanceof NpmConflictError) {
|
|
154
|
+
console.error("❌ Unable to publish app package. Cannot publish over existing version.");
|
|
155
|
+
return { success: false };
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
if (retryCount > 1) {
|
|
159
|
+
console.error("⚠️ Unable to publish app package. Got error from Iris App SDK repository. Retrying publish...", e);
|
|
160
|
+
return await doUploadAppWithRetry(tokenData, useAccessToken, manifest, tarData, settings, retryCount - 1);
|
|
184
161
|
}
|
|
185
162
|
else {
|
|
186
|
-
console.error("❌ Unable to publish app package.
|
|
163
|
+
console.error("❌ Unable to publish app package. Got error from Iris App SDK repository.", e);
|
|
187
164
|
return { success: false };
|
|
188
165
|
}
|
|
189
166
|
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
async function doUploadApp(tokenData, useAccessToken, manifest, tarData, settings) {
|
|
170
|
+
const npmFetchOptions = {};
|
|
171
|
+
npmFetchOptions.registry = settings.repoUrl.toString();
|
|
172
|
+
const repoHostAndPort = settings.repoUrl.hostname + (settings.repoUrl.port ? ":" + settings.repoUrl.port : "");
|
|
173
|
+
npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}:_authToken`] = useAccessToken
|
|
174
|
+
? tokenData.access_token
|
|
175
|
+
: tokenData.id_token;
|
|
176
|
+
npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}/repo/:always-auth`] = true;
|
|
177
|
+
console.log("🚢 Shipping the app package...");
|
|
178
|
+
const publishResult = await libpub.publish(manifest, tarData, npmFetchOptions).catch((err) => {
|
|
179
|
+
if (err.code === "EPUBLISHCONFLICT") {
|
|
180
|
+
return {
|
|
181
|
+
ok: false,
|
|
182
|
+
publishConflict: true,
|
|
183
|
+
};
|
|
184
|
+
}
|
|
190
185
|
else {
|
|
191
|
-
|
|
192
|
-
|
|
186
|
+
return {
|
|
187
|
+
ok: false,
|
|
188
|
+
headers: null,
|
|
189
|
+
statusText: `Error`,
|
|
190
|
+
text: () => Promise.resolve(`${err.name} ${err.message}`),
|
|
191
|
+
};
|
|
193
192
|
}
|
|
193
|
+
});
|
|
194
|
+
const warningsText = publishResult.headers?.get("TU-TILE-WARNINGS");
|
|
195
|
+
if (warningsText) {
|
|
196
|
+
console.log("⚠️ " + decodeURI(warningsText));
|
|
194
197
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
198
|
+
if (publishResult.ok) {
|
|
199
|
+
console.log(`🚀 Uploaded the app package version ${manifest.version}`);
|
|
200
|
+
return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);
|
|
201
|
+
}
|
|
202
|
+
else if ("publishConflict" in publishResult) {
|
|
203
|
+
if (process.env.SKIP_EXISTING === "true") {
|
|
204
|
+
console.log(`⏩ Skipped publishing ${manifest.version} because the version is already published`);
|
|
205
|
+
return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);
|
|
199
206
|
}
|
|
200
207
|
else {
|
|
201
|
-
|
|
208
|
+
throw new NpmConflictError();
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
throw new NpmGeneralError(publishResult.statusText + " " + (await publishResult.text()));
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
async function doApproveApp(token, manifest, settings) {
|
|
216
|
+
if (process.env.TU_APPROVE === "true") {
|
|
217
|
+
console.log(`🖋️ Approving the app...`);
|
|
218
|
+
const approveResult = await (0, node_fetch_1.default)(new url_1.URL(`${manifest.name}@${manifest.version}`, settings.approvalUrl), {
|
|
219
|
+
method: "PUT",
|
|
220
|
+
headers: {
|
|
221
|
+
Authorization: `Bearer ${token}`,
|
|
222
|
+
},
|
|
223
|
+
});
|
|
224
|
+
if (approveResult.ok) {
|
|
225
|
+
console.log(`✅ Approved version ${manifest.version} of ${manifest.name}.`);
|
|
226
|
+
return { success: true };
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
console.error("❌ Unable to approve app package. Got error from Iris App SDK repository.", approveResult.statusText, await approveResult.text());
|
|
202
230
|
return { success: false };
|
|
203
231
|
}
|
|
204
232
|
}
|
|
205
233
|
else {
|
|
206
|
-
|
|
207
|
-
return { success: false };
|
|
234
|
+
return { success: true };
|
|
208
235
|
}
|
|
209
236
|
}
|
|
210
|
-
exports.default = runExecutor;
|
|
211
237
|
//# sourceMappingURL=executor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/publish/executor.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-console */\nimport * as libpub from \"libnpmpublish\";\nimport fetch from \"node-fetch\";\nimport * as open from \"open\";\nimport * as pacote from \"pacote\";\nimport { URL, URLSearchParams } from \"url\";\nimport { checkPackageVersion } from \"../utils/checkPackageVersion\";\nimport { PublishExecutorSchema } from \"./schema\";\n\ninterface PackageJson {\n name: string;\n version: string;\n scripts?: Record<string, string>;\n type?: \"module\" | \"commonjs\";\n main?: string;\n types?: string;\n module?: string;\n exports?: Record<\n string,\n {\n types?: string;\n require?: string;\n import?: string;\n }\n >;\n dependencies?: Record<string, string>;\n devDependencies?: Record<string, string>;\n peerDependencies?: Record<string, string>;\n}\n\ninterface OktaError {\n error: string;\n error_description: string;\n}\n\ninterface AuthorizeDataSuccess {\n device_code: string;\n user_code: string;\n verification_uri: string;\n verification_uri_complete: string;\n expires_in: number;\n interval: number;\n}\n\ntype AuthorizeData = AuthorizeDataSuccess | OktaError;\n\ninterface TokenDataSuccess {\n token_type: string;\n expires_in: number;\n access_token: string;\n scope: string;\n id_token: string;\n}\n\ntype TokenData = TokenDataSuccess | OktaError;\n\ntype PublishError = Error & { code?: string };\n\ninterface Settings {\n approvalUrl: URL;\n repoUrl: URL;\n clientId: string;\n authorizationServerBaseUrl: string;\n}\n\nfunction sleep(time: number) {\n return new Promise(resolve => setTimeout(resolve, time));\n}\n\nfunction getSettings(): Settings {\n const env = process.env.TU_ENV?.toLowerCase() ?? \"dev\";\n let baseUrl: URL;\n switch (env) {\n case \"prod\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oamfeklvodROR2ul357\",\n authorizationServerBaseUrl: \"https://trackunit-portal.okta.com/oauth2/aus2u3jix1dWU7fwt356\",\n };\n case \"stage\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.stage.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oa1q2vmx21NcFLOs0h8\",\n authorizationServerBaseUrl: \"https://trackunit-portal-stage.okta.com/oauth2/aus1owd7wny5YVsU00h8\",\n };\n case \"dev\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.dev.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oamebigau4RkaqZ6357\",\n authorizationServerBaseUrl: \"https://trackunit-portal-dev.okta.com/oauth2/ausj7eh9zeiFhLk4m357\",\n };\n default:\n throw new Error(`Unknown environment: ${env}`);\n }\n}\n\nasync function doApproveApp(token: string, manifest: PackageJson, settings: Settings) {\n if (process.env.TU_APPROVE === \"true\") {\n console.log(`🖋️ Approving the app...`);\n const approveResult = await fetch(new URL(`${manifest.name}@${manifest.version}`, settings.approvalUrl), {\n method: \"PUT\",\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n if (approveResult.ok) {\n console.log(`✅ Approved version ${manifest.version} of ${manifest.name}.`);\n return { success: true };\n } else {\n console.error(\n \"❌ Unable to approve app package. Got error from Iris App SDK repository.\",\n approveResult.statusText,\n await approveResult.text()\n );\n return { success: false };\n }\n } else {\n return { success: true };\n }\n}\n\nexport default async function runExecutor(options: PublishExecutorSchema) {\n await checkPackageVersion();\n const settings = getSettings();\n\n const env = process.env.TU_ENV?.toUpperCase() ?? \"DEV\";\n const clientId = process.env[`TU_CLIENT_ID_${env}`];\n const clientSecret = process.env[`TU_CLIENT_SECRET_${env}`];\n\n let useAccessToken = false;\n let tokenData: TokenData | null = null;\n if (process.env.TU_TOKEN) {\n tokenData = {\n token_type: \"Bearer\",\n id_token: process.env.TU_TOKEN,\n access_token: process.env.TU_TOKEN,\n expires_in: 0,\n scope: \"unknown\",\n };\n } else if (clientId !== undefined) {\n if (clientId === undefined || clientId.trim() === \"\") {\n console.error(`❌ Missing environment value: TU_CLIENT_ID_${env}`);\n return { success: false };\n }\n if (clientSecret === undefined || clientSecret.trim() === \"\") {\n console.error(`❌ Missing environment value: TU_CLIENT_SECRET_${env}`);\n return { success: false };\n }\n const tokenParams = new URLSearchParams();\n tokenParams.append(\"client_id\", clientId);\n tokenParams.append(\"client_secret\", clientSecret);\n tokenParams.append(\"grant_type\", \"client_credentials\");\n tokenParams.append(\"scope\", \"iris_app_sdk.publish_for_all_accounts iris_app_sdk.approve\");\n const tokenResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/token`, {\n method: \"POST\",\n body: tokenParams,\n });\n tokenData = (await tokenResponse.json()) as TokenData;\n useAccessToken = true;\n } else {\n const authorizeParams = new URLSearchParams();\n authorizeParams.append(\"client_id\", settings.clientId);\n authorizeParams.append(\"scope\", \"openid profile fms\");\n const authorizeResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/device/authorize`, {\n method: \"POST\",\n body: authorizeParams,\n });\n const authorizeData = (await authorizeResponse.json()) as AuthorizeData;\n\n if (\"error\" in authorizeData) {\n console.error(`❌ Error occurred: ${authorizeData.error} ${authorizeData.error_description}`);\n return { success: false };\n } else if (!authorizeData.verification_uri_complete) {\n console.error(`❌ Missing verification URI: ${JSON.stringify(authorizeData)}`);\n return { success: false };\n }\n\n console.log(\n `🔐 Attempting to automatically open the Trackunit authentication page in your default browser...\\n If the browser does not open or you wish to use a different device to authorize this request, open the following URL:\\n\\n ${authorizeData.verification_uri_complete}`\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n await ((open as any).default ? (open as any).default : open)(authorizeData.verification_uri_complete);\n\n console.log(\"\\n⏳ Waiting for authentication in the browser...\");\n do {\n await sleep(authorizeData.interval * 1000);\n if (tokenData && \"error\" in tokenData && tokenData.error === \"slow_down\") {\n await sleep(10000);\n }\n const tokenParams = new URLSearchParams();\n tokenParams.append(\"client_id\", settings.clientId);\n tokenParams.append(\"grant_type\", \"urn:ietf:params:oauth:grant-type:device_code\");\n tokenParams.append(\"device_code\", authorizeData.device_code);\n const tokenResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/token`, {\n method: \"POST\",\n body: tokenParams,\n });\n tokenData = (await tokenResponse.json()) as TokenData;\n } while (\n !(\"id_token\" in tokenData) &&\n !(\"error\" in tokenData && tokenData.error !== \"authorization_pending\" && tokenData.error !== \"slow_down\")\n );\n }\n\n if (\"access_token\" in tokenData) {\n console.log(\"🥳 Successfully authenticated.\");\n\n const manifest = (await pacote.manifest(options.inputPath)) as PackageJson;\n const tarData = await pacote.tarball(options.inputPath);\n const npmFetchOptions: { registry?: string } = {};\n npmFetchOptions.registry = settings.repoUrl.toString();\n const repoHostAndPort = settings.repoUrl.hostname + (settings.repoUrl.port ? \":\" + settings.repoUrl.port : \"\");\n npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}:_authToken`] = useAccessToken\n ? tokenData.access_token\n : tokenData.id_token;\n npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}/repo/:always-auth`] = true;\n\n console.log(\"🚢 Shipping the app package...\");\n const publishResult = await libpub.publish(manifest, tarData, npmFetchOptions).catch((err: PublishError) => {\n if (err.code === \"EPUBLISHCONFLICT\") {\n return {\n ok: false,\n publishConflict: true,\n };\n } else {\n return {\n ok: false,\n headers: null,\n statusText: `Error`,\n text: () => Promise.resolve(`${err.name} ${err.message}`),\n };\n }\n });\n\n const warningsText = publishResult.headers?.get(\"TU-TILE-WARNINGS\");\n if (warningsText) {\n console.log(\"⚠️ \" + decodeURI(warningsText));\n }\n\n if (publishResult.ok) {\n console.log(`🚀 Uploaded the app package version ${manifest.version}`);\n\n return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);\n } else if (\"publishConflict\" in publishResult) {\n if (process.env.SKIP_EXISTING === \"true\") {\n console.log(`⏩ Skipped publishing ${manifest.version} because the version is already published`);\n return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);\n } else {\n console.error(\"❌ Unable to publish app package. Cannot publish over existing version.\");\n return { success: false };\n }\n } else {\n console.error(\n \"❌ Unable to publish app package. Got error from Iris App SDK repository.\",\n publishResult.statusText,\n await publishResult.text()\n );\n return { success: false };\n }\n } else if (\"error\" in tokenData) {\n if (tokenData.error === \"expired_token\") {\n console.error(\"⌛️ Authentication attempt expired\");\n return { success: false };\n } else {\n console.error(`❌ Error occurred: ${tokenData.error} ${tokenData.error_description}`);\n return { success: false };\n }\n } else {\n console.error(\"❌ Unknown error occurred\");\n return { success: false };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/publish/executor.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,8DAAwC;AACxC,oEAA+B;AAC/B,mDAA6B;AAC7B,uDAAiC;AACjC,6BAA2C;AAC3C,sEAAmE;AA2DnE,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,WAAW;IAClB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IACvD,IAAI,OAAY,CAAC;IACjB,QAAQ,GAAG,EAAE;QACX,KAAK,MAAM;YACT,OAAO,GAAG,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,kCAAkC,CAAC,CAAC;YAC9E,OAAO;gBACL,WAAW,EAAE,IAAI,SAAG,CAAC,UAAU,EAAE,OAAO,CAAC;gBACzC,OAAO,EAAE,IAAI,SAAG,CAAC,OAAO,EAAE,OAAO,CAAC;gBAClC,QAAQ,EAAE,sBAAsB;gBAChC,0BAA0B,EAAE,+DAA+D;aAC5F,CAAC;QACJ,KAAK,OAAO;YACV,OAAO,GAAG,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,wCAAwC,CAAC,CAAC;YACpF,OAAO;gBACL,WAAW,EAAE,IAAI,SAAG,CAAC,UAAU,EAAE,OAAO,CAAC;gBACzC,OAAO,EAAE,IAAI,SAAG,CAAC,OAAO,EAAE,OAAO,CAAC;gBAClC,QAAQ,EAAE,sBAAsB;gBAChC,0BAA0B,EAAE,qEAAqE;aAClG,CAAC;QACJ,KAAK,KAAK;YACR,OAAO,GAAG,IAAI,SAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,sCAAsC,CAAC,CAAC;YAClF,OAAO;gBACL,WAAW,EAAE,IAAI,SAAG,CAAC,UAAU,EAAE,OAAO,CAAC;gBACzC,OAAO,EAAE,IAAI,SAAG,CAAC,OAAO,EAAE,OAAO,CAAC;gBAClC,QAAQ,EAAE,sBAAsB;gBAChC,0BAA0B,EAAE,mEAAmE;aAChG,CAAC;QACJ;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;KAClD;AACH,CAAC;AAEc,KAAK,UAAU,WAAW,CAAC,OAA8B;IACtE,MAAM,IAAA,yCAAmB,GAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;IAE5D,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,SAAS,GAAqB,IAAI,CAAC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE;QACxB,SAAS,GAAG;YACV,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;YAC9B,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;YAClC,UAAU,EAAE,CAAC;YACb,KAAK,EAAE,SAAS;SACjB,CAAC;KACH;SAAM,IAAI,QAAQ,KAAK,SAAS,EAAE;QACjC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACpD,OAAO,CAAC,KAAK,CAAC,6CAA6C,GAAG,EAAE,CAAC,CAAC;YAClE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;QACD,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC5D,OAAO,CAAC,KAAK,CAAC,iDAAiD,GAAG,EAAE,CAAC,CAAC;YACtE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;QACD,MAAM,WAAW,GAAG,IAAI,qBAAe,EAAE,CAAC;QAC1C,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC1C,WAAW,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAClD,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;QACvD,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,4DAA4D,CAAC,CAAC;QAC1F,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,QAAQ,CAAC,0BAA0B,WAAW,EAAE;YACnF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,WAAW;SAClB,CAAC,CAAC;QACH,SAAS,GAAG,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,CAAc,CAAC;QACtD,cAAc,GAAG,IAAI,CAAC;KACvB;SAAM;QACL,MAAM,eAAe,GAAG,IAAI,qBAAe,EAAE,CAAC;QAC9C,eAAe,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACvD,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QACtD,MAAM,iBAAiB,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,QAAQ,CAAC,0BAA0B,sBAAsB,EAAE;YAClG,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,eAAe;SACtB,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,CAAC,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAkB,CAAC;QAExE,IAAI,OAAO,IAAI,aAAa,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,qBAAqB,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAC7F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;aAAM,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE;YACnD,OAAO,CAAC,KAAK,CAAC,+BAA+B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;QAED,OAAO,CAAC,GAAG,CACT,qOAAqO,aAAa,CAAC,yBAAyB,EAAE,CAC/Q,CAAC;QACF,8DAA8D;QAC9D,MAAM,CAAE,IAAY,CAAC,OAAO,CAAC,CAAC,CAAE,IAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QAEtG,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,GAAG;YACD,MAAM,KAAK,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;YAC3C,IAAI,SAAS,IAAI,OAAO,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE;gBACxE,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;aACpB;YACD,MAAM,WAAW,GAAG,IAAI,qBAAe,EAAE,CAAC;YAC1C,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,8CAA8C,CAAC,CAAC;YACjF,WAAW,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,QAAQ,CAAC,0BAA0B,WAAW,EAAE;gBACnF,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,WAAW;aAClB,CAAC,CAAC;YACH,SAAS,GAAG,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,CAAc,CAAC;SACvD,QACC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC;YAC1B,CAAC,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,uBAAuB,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,CAAC,EACzG;KACH;IAED,IAAI,cAAc,IAAI,SAAS,EAAE;QAC/B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAE9C,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAgB,CAAC;QAC3E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAExD,OAAO,MAAM,oBAAoB,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;KAC9F;SAAM,IAAI,OAAO,IAAI,SAAS,EAAE;QAC/B,IAAI,SAAS,CAAC,KAAK,KAAK,eAAe,EAAE;YACvC,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACnD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,qBAAqB,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACrF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;KACF;SAAM;QACL,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;KAC3B;AACH,CAAC;AAtGD,8BAsGC;AAED,MAAM,gBAAiB,SAAQ,KAAK;CAAG;AAEvC,MAAM,eAAgB,SAAQ,KAAK;CAAG;AAEtC,KAAK,UAAU,oBAAoB,CACjC,SAA2B,EAC3B,cAAuB,EACvB,QAAqB,EACrB,OAAoC,EACpC,QAAkB,EAClB,UAAkB;IAElB,IAAI;QACF,OAAO,MAAM,WAAW,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;KAClF;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,gBAAgB,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;YACxF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;aAAM;YACL,IAAI,UAAU,GAAG,CAAC,EAAE;gBAClB,OAAO,CAAC,KAAK,CACX,+FAA+F,EAC/F,CAAC,CACF,CAAC;gBACF,OAAO,MAAM,oBAAoB,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;aAC3G;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,0EAA0E,EAAE,CAAC,CAAC,CAAC;gBAC7F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;aAC3B;SACF;KACF;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,SAA2B,EAC3B,cAAuB,EACvB,QAAqB,EACrB,OAAoC,EACpC,QAAkB;IAElB,MAAM,eAAe,GAA0B,EAAE,CAAC;IAClD,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACvD,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/G,eAAe,CAAC,KAAK,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,aAAa,CAAC,GAAG,cAAc;QAC7F,CAAC,CAAC,SAAS,CAAC,YAAY;QACxB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;IACvB,eAAe,CAAC,KAAK,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,oBAAoB,CAAC,GAAG,IAAI,CAAC;IAE7F,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,GAAiB,EAAE,EAAE;QACzG,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE;YACnC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,eAAe,EAAE,IAAI;aACtB,CAAC;SACH;aAAM;YACL,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,OAAO;gBACnB,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;aAC1D,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACpE,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;KAC9C;IAED,IAAI,aAAa,CAAC,EAAE,EAAE;QACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAEvE,OAAO,MAAM,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;KAC7G;SAAM,IAAI,iBAAiB,IAAI,aAAa,EAAE;QAC7C,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,MAAM,EAAE;YACxC,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,CAAC,OAAO,2CAA2C,CAAC,CAAC;YACjG,OAAO,MAAM,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC7G;aAAM;YACL,MAAM,IAAI,gBAAgB,EAAE,CAAC;SAC9B;KACF;SAAM;QACL,MAAM,IAAI,eAAe,CAAC,aAAa,CAAC,UAAU,GAAG,GAAG,GAAG,CAAC,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;KAC1F;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,KAAa,EAAE,QAAqB,EAAE,QAAkB;IAClF,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAK,EAAC,IAAI,SAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE;YACvG,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;aACjC;SACF,CAAC,CAAC;QAEH,IAAI,aAAa,CAAC,EAAE,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,sBAAsB,QAAQ,CAAC,OAAO,OAAO,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;YAC3E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAC1B;aAAM;YACL,OAAO,CAAC,KAAK,CACX,0EAA0E,EAC1E,aAAa,CAAC,UAAU,EACxB,MAAM,aAAa,CAAC,IAAI,EAAE,CAC3B,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC3B;KACF;SAAM;QACL,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;KAC1B;AACH,CAAC","sourcesContent":["/* eslint-disable no-console */\nimport * as libpub from \"libnpmpublish\";\nimport fetch from \"node-fetch\";\nimport * as open from \"open\";\nimport * as pacote from \"pacote\";\nimport { URL, URLSearchParams } from \"url\";\nimport { checkPackageVersion } from \"../utils/checkPackageVersion\";\nimport { PublishExecutorSchema } from \"./schema\";\n\ninterface PackageJson {\n name: string;\n version: string;\n scripts?: Record<string, string>;\n type?: \"module\" | \"commonjs\";\n main?: string;\n types?: string;\n module?: string;\n exports?: Record<\n string,\n {\n types?: string;\n require?: string;\n import?: string;\n }\n >;\n dependencies?: Record<string, string>;\n devDependencies?: Record<string, string>;\n peerDependencies?: Record<string, string>;\n}\n\ninterface OktaError {\n error: string;\n error_description: string;\n}\n\ninterface AuthorizeDataSuccess {\n device_code: string;\n user_code: string;\n verification_uri: string;\n verification_uri_complete: string;\n expires_in: number;\n interval: number;\n}\n\ntype AuthorizeData = AuthorizeDataSuccess | OktaError;\n\ninterface TokenDataSuccess {\n token_type: string;\n expires_in: number;\n access_token: string;\n scope: string;\n id_token: string;\n}\n\ntype TokenData = TokenDataSuccess | OktaError;\n\ntype PublishError = Error & { code?: string };\n\ninterface Settings {\n approvalUrl: URL;\n repoUrl: URL;\n clientId: string;\n authorizationServerBaseUrl: string;\n}\n\nfunction sleep(time: number) {\n return new Promise(resolve => setTimeout(resolve, time));\n}\n\nfunction getSettings(): Settings {\n const env = process.env.TU_ENV?.toLowerCase() ?? \"dev\";\n let baseUrl: URL;\n switch (env) {\n case \"prod\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oamfeklvodROR2ul357\",\n authorizationServerBaseUrl: \"https://trackunit-portal.okta.com/oauth2/aus2u3jix1dWU7fwt356\",\n };\n case \"stage\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.stage.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oa1q2vmx21NcFLOs0h8\",\n authorizationServerBaseUrl: \"https://trackunit-portal-stage.okta.com/oauth2/aus1owd7wny5YVsU00h8\",\n };\n case \"dev\":\n baseUrl = new URL(process.env.BASE_URL ?? \"https://apps.dev.iris.trackunit.com/\");\n return {\n approvalUrl: new URL(\"approve/\", baseUrl),\n repoUrl: new URL(\"repo/\", baseUrl),\n clientId: \"0oamebigau4RkaqZ6357\",\n authorizationServerBaseUrl: \"https://trackunit-portal-dev.okta.com/oauth2/ausj7eh9zeiFhLk4m357\",\n };\n default:\n throw new Error(`Unknown environment: ${env}`);\n }\n}\n\nexport default async function runExecutor(options: PublishExecutorSchema) {\n await checkPackageVersion();\n const settings = getSettings();\n\n const env = process.env.TU_ENV?.toUpperCase() ?? \"DEV\";\n const clientId = process.env[`TU_CLIENT_ID_${env}`];\n const clientSecret = process.env[`TU_CLIENT_SECRET_${env}`];\n\n let useAccessToken = false;\n let tokenData: TokenData | null = null;\n if (process.env.TU_TOKEN) {\n tokenData = {\n token_type: \"Bearer\",\n id_token: process.env.TU_TOKEN,\n access_token: process.env.TU_TOKEN,\n expires_in: 0,\n scope: \"unknown\",\n };\n } else if (clientId !== undefined) {\n if (clientId === undefined || clientId.trim() === \"\") {\n console.error(`❌ Missing environment value: TU_CLIENT_ID_${env}`);\n return { success: false };\n }\n if (clientSecret === undefined || clientSecret.trim() === \"\") {\n console.error(`❌ Missing environment value: TU_CLIENT_SECRET_${env}`);\n return { success: false };\n }\n const tokenParams = new URLSearchParams();\n tokenParams.append(\"client_id\", clientId);\n tokenParams.append(\"client_secret\", clientSecret);\n tokenParams.append(\"grant_type\", \"client_credentials\");\n tokenParams.append(\"scope\", \"iris_app_sdk.publish_for_all_accounts iris_app_sdk.approve\");\n const tokenResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/token`, {\n method: \"POST\",\n body: tokenParams,\n });\n tokenData = (await tokenResponse.json()) as TokenData;\n useAccessToken = true;\n } else {\n const authorizeParams = new URLSearchParams();\n authorizeParams.append(\"client_id\", settings.clientId);\n authorizeParams.append(\"scope\", \"openid profile fms\");\n const authorizeResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/device/authorize`, {\n method: \"POST\",\n body: authorizeParams,\n });\n const authorizeData = (await authorizeResponse.json()) as AuthorizeData;\n\n if (\"error\" in authorizeData) {\n console.error(`❌ Error occurred: ${authorizeData.error} ${authorizeData.error_description}`);\n return { success: false };\n } else if (!authorizeData.verification_uri_complete) {\n console.error(`❌ Missing verification URI: ${JSON.stringify(authorizeData)}`);\n return { success: false };\n }\n\n console.log(\n `🔐 Attempting to automatically open the Trackunit authentication page in your default browser...\\n If the browser does not open or you wish to use a different device to authorize this request, open the following URL:\\n\\n ${authorizeData.verification_uri_complete}`\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n await ((open as any).default ? (open as any).default : open)(authorizeData.verification_uri_complete);\n\n console.log(\"\\n⏳ Waiting for authentication in the browser...\");\n do {\n await sleep(authorizeData.interval * 1000);\n if (tokenData && \"error\" in tokenData && tokenData.error === \"slow_down\") {\n await sleep(10000);\n }\n const tokenParams = new URLSearchParams();\n tokenParams.append(\"client_id\", settings.clientId);\n tokenParams.append(\"grant_type\", \"urn:ietf:params:oauth:grant-type:device_code\");\n tokenParams.append(\"device_code\", authorizeData.device_code);\n const tokenResponse = await fetch(`${settings.authorizationServerBaseUrl}/v1/token`, {\n method: \"POST\",\n body: tokenParams,\n });\n tokenData = (await tokenResponse.json()) as TokenData;\n } while (\n !(\"id_token\" in tokenData) &&\n !(\"error\" in tokenData && tokenData.error !== \"authorization_pending\" && tokenData.error !== \"slow_down\")\n );\n }\n\n if (\"access_token\" in tokenData) {\n console.log(\"🥳 Successfully authenticated.\");\n\n const manifest = (await pacote.manifest(options.inputPath)) as PackageJson;\n const tarData = await pacote.tarball(options.inputPath);\n\n return await doUploadAppWithRetry(tokenData, useAccessToken, manifest, tarData, settings, 3);\n } else if (\"error\" in tokenData) {\n if (tokenData.error === \"expired_token\") {\n console.error(\"⌛️ Authentication attempt expired\");\n return { success: false };\n } else {\n console.error(`❌ Error occurred: ${tokenData.error} ${tokenData.error_description}`);\n return { success: false };\n }\n } else {\n console.error(\"❌ Unknown error occurred\");\n return { success: false };\n }\n}\n\nclass NpmConflictError extends Error {}\n\nclass NpmGeneralError extends Error {}\n\nasync function doUploadAppWithRetry(\n tokenData: TokenDataSuccess,\n useAccessToken: boolean,\n manifest: PackageJson,\n tarData: Buffer & pacote.FetchResult,\n settings: Settings,\n retryCount: number\n): Promise<{ success: boolean }> {\n try {\n return await doUploadApp(tokenData, useAccessToken, manifest, tarData, settings);\n } catch (e) {\n if (e instanceof NpmConflictError) {\n console.error(\"❌ Unable to publish app package. Cannot publish over existing version.\");\n return { success: false };\n } else {\n if (retryCount > 1) {\n console.error(\n \"⚠️ Unable to publish app package. Got error from Iris App SDK repository. Retrying publish...\",\n e\n );\n return await doUploadAppWithRetry(tokenData, useAccessToken, manifest, tarData, settings, retryCount - 1);\n } else {\n console.error(\"❌ Unable to publish app package. Got error from Iris App SDK repository.\", e);\n return { success: false };\n }\n }\n }\n}\n\nasync function doUploadApp(\n tokenData: TokenDataSuccess,\n useAccessToken: boolean,\n manifest: PackageJson,\n tarData: Buffer & pacote.FetchResult,\n settings: Settings\n): Promise<{ success: boolean }> {\n const npmFetchOptions: { registry?: string } = {};\n npmFetchOptions.registry = settings.repoUrl.toString();\n const repoHostAndPort = settings.repoUrl.hostname + (settings.repoUrl.port ? \":\" + settings.repoUrl.port : \"\");\n npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}:_authToken`] = useAccessToken\n ? tokenData.access_token\n : tokenData.id_token;\n npmFetchOptions[`//${repoHostAndPort}${settings.repoUrl.pathname}/repo/:always-auth`] = true;\n\n console.log(\"🚢 Shipping the app package...\");\n const publishResult = await libpub.publish(manifest, tarData, npmFetchOptions).catch((err: PublishError) => {\n if (err.code === \"EPUBLISHCONFLICT\") {\n return {\n ok: false,\n publishConflict: true,\n };\n } else {\n return {\n ok: false,\n headers: null,\n statusText: `Error`,\n text: () => Promise.resolve(`${err.name} ${err.message}`),\n };\n }\n });\n\n const warningsText = publishResult.headers?.get(\"TU-TILE-WARNINGS\");\n if (warningsText) {\n console.log(\"⚠️ \" + decodeURI(warningsText));\n }\n\n if (publishResult.ok) {\n console.log(`🚀 Uploaded the app package version ${manifest.version}`);\n\n return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);\n } else if (\"publishConflict\" in publishResult) {\n if (process.env.SKIP_EXISTING === \"true\") {\n console.log(`⏩ Skipped publishing ${manifest.version} because the version is already published`);\n return await doApproveApp(useAccessToken ? tokenData.access_token : tokenData.id_token, manifest, settings);\n } else {\n throw new NpmConflictError();\n }\n } else {\n throw new NpmGeneralError(publishResult.statusText + \" \" + (await publishResult.text()));\n }\n}\n\nasync function doApproveApp(token: string, manifest: PackageJson, settings: Settings) {\n if (process.env.TU_APPROVE === \"true\") {\n console.log(`🖋️ Approving the app...`);\n const approveResult = await fetch(new URL(`${manifest.name}@${manifest.version}`, settings.approvalUrl), {\n method: \"PUT\",\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n if (approveResult.ok) {\n console.log(`✅ Approved version ${manifest.version} of ${manifest.name}.`);\n return { success: true };\n } else {\n console.error(\n \"❌ Unable to approve app package. Got error from Iris App SDK repository.\",\n approveResult.statusText,\n await approveResult.text()\n );\n return { success: false };\n }\n } else {\n return { success: true };\n }\n}\n"]}
|
|
@@ -12,6 +12,9 @@ const defaultWebpackConfig_1 = require("../utils/defaultWebpackConfig");
|
|
|
12
12
|
const webpackDevServer_1 = require("./webpackDevServer");
|
|
13
13
|
async function* default_1(options, context) {
|
|
14
14
|
await (0, checkPackageVersion_1.checkPackageVersion)();
|
|
15
|
+
if (!context.workspace) {
|
|
16
|
+
throw new Error("context workspace is required");
|
|
17
|
+
}
|
|
15
18
|
const projectRootDir = (0, path_1.join)(context.root, context.workspace.projects[context.projectName].root);
|
|
16
19
|
const tileManifestPath = (0, path_1.join)(context.root, context.workspace.projects[context.projectName].root, "iris-app-manifest.ts");
|
|
17
20
|
(0, iris_app_build_utilities_1.enableTsConfigPath)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/serve/executor.ts"],"names":[],"mappings":";;;AAEA,0EAAsE;AACtE,iGAA4F;AAC5F,kFAAyE;AACzE,+BAA4B;AAE5B,2DAAqC;AAErC,8BAA4B;AAC5B,sEAAmE;AACnE,wEAAiE;AAEjE,yDAA2D;AAI5C,KAAK,SAAS,CAAC,WAAE,OAA4B,EAAE,OAAwB;IACpF,MAAM,IAAA,yCAAmB,GAAE,CAAC;IAC5B,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAC3B,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,EACrD,sBAAsB,CACvB,CAAC;IACF,IAAA,6CAAkB,EAAC;QACjB,cAAc;KACf,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IACD,MAAM,eAAe,GAAG,CAAC,gEAAa,gBAAgB,GAAC,CAAC,CAAC,OAAO,CAAC;IACjE,MAAM,aAAa,GAAG,IAAA,uCAAgB,EAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACrG,MAAM,gBAAgB,GAAG,gEAAa,OAAO,CAAC,aAAa,GAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,IAAA,wCAAqB,EAAC,MAAM,CAAC,CAAC,IAAI,CACnD,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACnB,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,MAAgC,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC,EACF,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;QAC5B,OAAO;YACL,OAAO;YACP,YAAY,EAAE,IAAA,mCAAe,EAAC,KAAK,CAAC;YACpC,OAAO,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE;SAC5B,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,KAAK,CAAC,CAAC,IAAA,8BAAa,EAAC,UAAwC,CAAC,CAAC;AACxE,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/serve/executor.ts"],"names":[],"mappings":";;;AAEA,0EAAsE;AACtE,iGAA4F;AAC5F,kFAAyE;AACzE,+BAA4B;AAE5B,2DAAqC;AAErC,8BAA4B;AAC5B,sEAAmE;AACnE,wEAAiE;AAEjE,yDAA2D;AAI5C,KAAK,SAAS,CAAC,WAAE,OAA4B,EAAE,OAAwB;IACpF,MAAM,IAAA,yCAAmB,GAAE,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IACD,MAAM,cAAc,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,CAAC,CAAC;IACjG,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAC3B,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAY,CAAC,CAAC,IAAI,EACrD,sBAAsB,CACvB,CAAC;IACF,IAAA,6CAAkB,EAAC;QACjB,cAAc;KACf,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;IACD,MAAM,eAAe,GAAG,CAAC,gEAAa,gBAAgB,GAAC,CAAC,CAAC,OAAO,CAAC;IACjE,MAAM,aAAa,GAAG,IAAA,uCAAgB,EAAC,aAAa,EAAE,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACrG,MAAM,gBAAgB,GAAG,gEAAa,OAAO,CAAC,aAAa,GAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE7D,MAAM,UAAU,GAAG,IAAA,wCAAqB,EAAC,MAAM,CAAC,CAAC,IAAI,CACnD,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QACnB,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,MAAgC,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC,EACF,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;QAC5B,OAAO;YACL,OAAO;YACP,YAAY,EAAE,IAAA,mCAAe,EAAC,KAAK,CAAC;YACpC,OAAO,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE;SAC5B,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,KAAK,CAAC,CAAC,IAAA,8BAAa,EAAC,UAAwC,CAAC,CAAC;AACxE,CAAC;AAtCD,4BAsCC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { ExecutorContext } from \"@nrwl/devkit\";\nimport { eachValueFrom } from \"@nrwl/devkit/src/utils/rxjs-for-await\";\nimport { getEmittedFiles } from \"@nrwl/webpack/src/executors/webpack/lib/get-emitted-files\";\nimport { enableTsConfigPath } from \"@trackunit/iris-app-build-utilities\";\nimport { join } from \"path\";\nimport { Observable } from \"rxjs\";\nimport * as op from \"rxjs/operators\";\n\nimport \"webpack-dev-server\";\nimport { checkPackageVersion } from \"../utils/checkPackageVersion\";\nimport { getDefaultConfig } from \"../utils/defaultWebpackConfig\";\nimport { ServeExecutorSchema } from \"./schema\";\nimport { doRunWebpackDevServer } from \"./webpackDevServer\";\n\nimport type webpack = require(\"webpack\");\n\nexport default async function* (options: ServeExecutorSchema, context: ExecutorContext) {\n await checkPackageVersion();\n if (!context.workspace) {\n throw new Error(\"context workspace is required\");\n }\n const projectRootDir = join(context.root, context.workspace.projects[context.projectName!].root);\n const tileManifestPath = join(\n context.root,\n context.workspace.projects[context.projectName!].root,\n \"iris-app-manifest.ts\"\n );\n enableTsConfigPath({\n projectRootDir,\n });\n if (!options.webpackConfig) {\n throw new Error(\"option.webpackConfig is required\");\n }\n const IrisAppManifest = (await import(tileManifestPath)).default;\n const defaultConfig = getDefaultConfig(\"development\", context.root, projectRootDir, IrisAppManifest);\n const customConfigFile = await import(options.webpackConfig);\n\n const config = await customConfigFile.default(defaultConfig);\n\n const observable = doRunWebpackDevServer(config).pipe(\n op.tap(({ stats }) => {\n // eslint-disable-next-line no-console\n console.info(stats.toString((config as webpack.Configuration).stats));\n }),\n op.map(({ baseUrl, stats }) => {\n return {\n baseUrl,\n emittedFiles: getEmittedFiles(stats),\n success: !stats.hasErrors(),\n };\n })\n );\n\n return yield* eachValueFrom(observable as unknown as Observable<any>);\n}\n"]}
|
|
@@ -9,6 +9,8 @@ const webpack = tslib_1.__importStar(require("webpack"));
|
|
|
9
9
|
require("webpack-dev-server");
|
|
10
10
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
11
11
|
const CopyWebpackPlugin = require("copy-webpack-plugin");
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
const BundleAnalyzerPlugin = require("webpack-bundle-analyzer").BundleAnalyzerPlugin;
|
|
12
14
|
const getDefaultConfig = async (mode, nxRootDir, appDir, irisAppManifest) => {
|
|
13
15
|
const relativeAppDir = appDir.split(nxRootDir)[1];
|
|
14
16
|
return {
|
|
@@ -74,38 +76,14 @@ const getDefaultConfig = async (mode, nxRootDir, appDir, irisAppManifest) => {
|
|
|
74
76
|
loader: "json-loader",
|
|
75
77
|
},
|
|
76
78
|
{
|
|
77
|
-
test: /\.(
|
|
78
|
-
exclude: /node_modules/,
|
|
79
|
+
test: /\.(j|t)sx?$/,
|
|
80
|
+
exclude: /(vendor|node_modules|dist)/,
|
|
79
81
|
use: {
|
|
80
|
-
loader: "
|
|
82
|
+
loader: "esbuild-loader",
|
|
81
83
|
options: {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
[
|
|
86
|
-
"@babel/preset-env",
|
|
87
|
-
{
|
|
88
|
-
useBuiltIns: "usage",
|
|
89
|
-
corejs: { version: 3, proposals: true },
|
|
90
|
-
},
|
|
91
|
-
],
|
|
92
|
-
"@babel/preset-typescript",
|
|
93
|
-
["@babel/preset-react", { runtime: "automatic" }],
|
|
94
|
-
],
|
|
95
|
-
exclude: /node_modules/,
|
|
96
|
-
plugins: [
|
|
97
|
-
["@babel/plugin-proposal-decorators", { legacy: true }],
|
|
98
|
-
["@babel/plugin-proposal-class-properties", { loose: true }],
|
|
99
|
-
["@babel/plugin-proposal-private-methods", { loose: true }],
|
|
100
|
-
["@babel/plugin-proposal-private-property-in-object", { loose: true }],
|
|
101
|
-
[
|
|
102
|
-
"babel-plugin-styled-components",
|
|
103
|
-
{
|
|
104
|
-
ssr: false,
|
|
105
|
-
pure: true,
|
|
106
|
-
},
|
|
107
|
-
],
|
|
108
|
-
],
|
|
84
|
+
loader: "tsx",
|
|
85
|
+
jsx: "automatic",
|
|
86
|
+
target: "es6",
|
|
109
87
|
},
|
|
110
88
|
},
|
|
111
89
|
},
|
|
@@ -128,6 +106,7 @@ const getDefaultConfig = async (mode, nxRootDir, appDir, irisAppManifest) => {
|
|
|
128
106
|
appDir,
|
|
129
107
|
manifest: irisAppManifest,
|
|
130
108
|
}),
|
|
109
|
+
process.env.BUNDLE_ANALYSE === "true" && new BundleAnalyzerPlugin({ analyzerMode: "static" }),
|
|
131
110
|
new CopyWebpackPlugin({
|
|
132
111
|
patterns: [
|
|
133
112
|
{
|
|
@@ -136,7 +115,7 @@ const getDefaultConfig = async (mode, nxRootDir, appDir, irisAppManifest) => {
|
|
|
136
115
|
},
|
|
137
116
|
],
|
|
138
117
|
}),
|
|
139
|
-
],
|
|
118
|
+
].filter(Boolean),
|
|
140
119
|
};
|
|
141
120
|
};
|
|
142
121
|
exports.getDefaultConfig = getDefaultConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultWebpackConfig.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/utils/defaultWebpackConfig.ts"],"names":[],"mappings":";;;;AACA,kFAK6C;AAC7C,gFAAmF;AACnF,mDAA6B;AAC7B,yDAAmC;AACnC,8BAA4B;AAC5B,8DAA8D;AAC9D,MAAM,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"defaultWebpackConfig.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/utils/defaultWebpackConfig.ts"],"names":[],"mappings":"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","sourcesContent":["import { IrisAppManifest } from \"@trackunit/iris-app-api\";\nimport {\n getAliasesFromTsConfig,\n getExposedExtensions,\n getSharedDependencies,\n getTileWebpackDevServer,\n} from \"@trackunit/iris-app-build-utilities\";\nimport { TrackunitIrisAppWebpackPlugin } from \"@trackunit/iris-app-webpack-plugin\";\nimport * as path from \"path\";\nimport * as webpack from \"webpack\";\nimport \"webpack-dev-server\";\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst CopyWebpackPlugin = require(\"copy-webpack-plugin\");\n\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst BundleAnalyzerPlugin = require(\"webpack-bundle-analyzer\").BundleAnalyzerPlugin;\n\nexport const getDefaultConfig = async (\n mode: \"production\" | \"development\",\n nxRootDir: string,\n appDir: string,\n irisAppManifest: IrisAppManifest\n): Promise<webpack.Configuration> => {\n const relativeAppDir = appDir.split(nxRootDir)[1];\n return {\n mode: mode,\n output: {\n publicPath: \"auto\",\n path: path.join(nxRootDir, \"dist\", relativeAppDir),\n },\n\n entry: path.resolve(__dirname, \"src\") + \"/index.js\",\n devtool: false,\n devServer: await getTileWebpackDevServer(),\n resolve: {\n extensions: [\".tsx\", \".ts\", \".jsx\", \".js\", \".json\"],\n alias: await getAliasesFromTsConfig({ nxRootDir }),\n },\n module: {\n rules: [\n {\n test: /\\.m?js/,\n type: \"javascript/auto\",\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.svg$/,\n use: [\"@svgr/webpack\", \"url-loader\"],\n },\n {\n test: /\\.(png|jpg|gif|woff|ico)$/,\n exclude: /(node_modules)/,\n type: \"asset/resource\",\n },\n {\n test: /\\.(png|jpe?g|gif|svg|eot|ttf|woff|woff2)$/i,\n include: /(node_modules\\/@okta)/,\n type: \"asset/resource\",\n },\n {\n test: /\\.(css|s[ac]ss)$/i,\n use: [\n \"style-loader\",\n \"css-loader\",\n {\n loader: \"postcss-loader\",\n options: {\n postcssOptions: {\n plugins: {\n \"postcss-import\": {},\n \"tailwindcss/nesting\": {},\n tailwindcss: {\n config: path.resolve(appDir, \"tailwind.config.js\"),\n },\n autoprefixer: {},\n },\n },\n },\n },\n ],\n },\n {\n test: /\\.json$/,\n loader: \"json-loader\",\n },\n {\n test: /\\.(j|t)sx?$/,\n exclude: /(vendor|node_modules|dist)/,\n use: {\n loader: \"esbuild-loader\",\n options: {\n loader: \"tsx\",\n jsx: \"automatic\",\n target: \"es6\",\n },\n },\n },\n ],\n },\n\n plugins: [\n new webpack.container.ModuleFederationPlugin({\n name: irisAppManifest.moduleFederationName,\n filename: \"remoteEntry.js\",\n library: { type: \"global\", name: irisAppManifest.moduleFederationName },\n remotes: {},\n exposes: await getExposedExtensions({\n nxRootDir,\n manifest: irisAppManifest,\n }),\n shared: await getSharedDependencies({ manifest: irisAppManifest }),\n }),\n new TrackunitIrisAppWebpackPlugin({\n nxRootDir: nxRootDir,\n appDir,\n manifest: irisAppManifest,\n }),\n process.env.BUNDLE_ANALYSE === \"true\" && new BundleAnalyzerPlugin({ analyzerMode: \"static\" }),\n new CopyWebpackPlugin({\n patterns: [\n {\n from: path.join(relativeAppDir.substring(1), \"assets\") + \"/**/(*.png|*.jpg|*.jpeg|*.webp|*.md)\",\n to: path.join(nxRootDir, \"dist\"),\n },\n ],\n }),\n ].filter(Boolean),\n };\n};\n"]}
|
|
@@ -58,11 +58,9 @@ const IrisAppGenerator = async function (tree, options) {
|
|
|
58
58
|
"@nrwl/react": "^14.5.6",
|
|
59
59
|
"@nrwl/workspace": "^14.5.6",
|
|
60
60
|
"@nrwl/devkit": "^14.5.6",
|
|
61
|
-
"@babel/preset-env": "^7.0.0",
|
|
62
61
|
eslint: "^8.0.0",
|
|
63
62
|
"ts-morph": "^13.0.2",
|
|
64
|
-
"
|
|
65
|
-
"babel-loader": "^8.2.3",
|
|
63
|
+
"esbuild-loader": "^2.20.0",
|
|
66
64
|
"postcss-js": "^4.0.0",
|
|
67
65
|
"postcss-loader": "^6.2.1",
|
|
68
66
|
"postcss-nested": "^5.0.6",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/generators/create/generator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/generators/create/generator.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n addDependenciesToPackageJson,\n addProjectConfiguration,\n formatFiles,\n generateFiles,\n getWorkspaceLayout,\n installPackagesTask,\n names,\n offsetFromRoot,\n readJsonFile,\n Tree,\n} from \"@nrwl/devkit\";\nimport * as pacote from \"pacote\";\nimport * as path from \"path\";\nimport { IrisAppGeneratorSchema } from \"./schema\";\n\ninterface NormalizedSchema extends IrisAppGeneratorSchema {\n projectName: string;\n projectRoot: string;\n projectDirectory: string;\n toNxRoot: string;\n npmScope: string;\n}\n\nfunction normalizeOptions(tree: Tree, options: IrisAppGeneratorSchema): NormalizedSchema {\n const name = names(options.name).fileName;\n const projectDirectory = options.directory ? path.join(options.directory, name) : name;\n const toNxRoot = `../../${projectDirectory.indexOf(\"/\") !== -1 ? \"../\" : \"\"}`;\n const projectName = name.replace(new RegExp(\"/\", \"g\"), \"_\");\n const npmScope = getWorkspaceLayout(tree).npmScope;\n const projectRoot = `${getWorkspaceLayout(tree).appsDir}/${projectDirectory}`;\n return {\n ...options,\n projectName,\n projectRoot,\n projectDirectory,\n toNxRoot,\n npmScope,\n };\n}\n\nfunction addFiles(tree: Tree, options: NormalizedSchema) {\n const templateOptions = {\n ...options,\n ...names(options.name),\n offsetFromRoot: offsetFromRoot(options.projectRoot),\n template: \"\",\n };\n generateFiles(tree, path.join(__dirname, \"files\"), options.projectRoot, templateOptions);\n}\n\nexport const IrisAppGenerator = async function (tree: Tree, options: IrisAppGeneratorSchema) {\n const normalizedOptions = normalizeOptions(tree, options);\n const packageJsonFromNpm = await pacote.manifest(\"@trackunit/iris-app\");\n\n const packageJsonLocally = readJsonFile(path.join(__dirname, \"..\", \"..\", \"..\", \"package.json\"));\n\n if (options.updatePackageJson) {\n if (packageJsonFromNpm.version !== packageJsonLocally.version) {\n throw new Error(\n `This version of the iris-app package does not match the version of the iris-app package from NPM JS. Please update using: npm i @trackunit/iris-app@${packageJsonFromNpm.version}`\n );\n }\n\n const reactComponentsPackageJsonFromNpm = pacote.manifest(\"@trackunit/react-components\");\n const reactCoreContextsPackageJsonFromNpm = pacote.manifest(\"@trackunit/react-core-contexts\");\n const cssComponentsPackageJsonFromNpm = pacote.manifest(\"@trackunit/css-components\");\n const cssTailwindPackageJsonFromNpm = pacote.manifest(\"@trackunit/css-tailwind\");\n const irisAppApiPackageJsonFromNpm = pacote.manifest(\"@trackunit/iris-app-api\");\n const irisAppBuildUtilitiesPackageJsonFromNpm = pacote.manifest(\"@trackunit/iris-app-build-utilities\");\n const irisAppWebpackPluginPackageJsonFromNpm = pacote.manifest(\"@trackunit/iris-app-webpack-plugin\");\n\n addDependenciesToPackageJson(\n tree,\n {\n tslib: \"^2.3.1\",\n \"@trackunit/react-components\": (await reactComponentsPackageJsonFromNpm).version,\n \"@trackunit/react-core-contexts\": (await reactCoreContextsPackageJsonFromNpm).version,\n \"@trackunit/css-components\": (await cssComponentsPackageJsonFromNpm).version,\n \"@trackunit/css-tailwind\": (await cssTailwindPackageJsonFromNpm).version,\n },\n {\n \"@trackunit/iris-app-api\": (await irisAppApiPackageJsonFromNpm).version,\n \"@trackunit/iris-app-build-utilities\": (await irisAppBuildUtilitiesPackageJsonFromNpm).version,\n \"@trackunit/iris-app-webpack-plugin\": (await irisAppWebpackPluginPackageJsonFromNpm).version,\n \"@nrwl/react\": \"^14.5.6\",\n \"@nrwl/workspace\": \"^14.5.6\",\n \"@nrwl/devkit\": \"^14.5.6\",\n eslint: \"^8.0.0\",\n \"ts-morph\": \"^13.0.2\",\n \"esbuild-loader\": \"^2.20.0\",\n \"postcss-js\": \"^4.0.0\",\n \"postcss-loader\": \"^6.2.1\",\n \"postcss-nested\": \"^5.0.6\",\n postcss: \"^8.4.7\",\n \"style-loader\": \"^3.3.1\",\n \"json-loader\": \"^0.5.7\",\n autoprefixer: \"^10.4.2\",\n \"css-loader\": \"^6.6.0\",\n webpack: \"^5.65.0\",\n tailwindcss: \"^3.0.23\",\n \"ts-node\": \"^10.4.0\",\n \"webpack-dev-server\": \"4.7.3\",\n \"webpack-cli\": \"^4.9.1\",\n }\n );\n }\n addProjectConfiguration(tree, normalizedOptions.projectName, {\n root: normalizedOptions.projectRoot,\n projectType: \"application\",\n sourceRoot: `${normalizedOptions.projectRoot}/src`,\n targets: {\n build: {\n executor: \"@trackunit/iris-app:build\",\n options: {\n webpackConfig: `${normalizedOptions.projectRoot}/webpack.config.ts`,\n outputPath: `dist/${normalizedOptions.projectRoot}`,\n },\n outputs: [\"{options.outputPath}\"],\n },\n serve: {\n executor: \"@trackunit/iris-app:serve\",\n options: {\n webpackConfig: `${normalizedOptions.projectRoot}/webpack.config.ts`,\n },\n outputs: [\"{options.outputPath}\"],\n },\n publishApp: {\n executor: \"@trackunit/iris-app:publish\",\n options: {\n inputPath: `dist/${normalizedOptions.projectRoot}`,\n },\n dependsOn: [\n {\n target: \"build\",\n projects: \"self\",\n },\n ],\n outputs: [\"dist/\" + normalizedOptions.projectRoot],\n },\n },\n });\n addFiles(tree, normalizedOptions);\n\n await formatFiles(tree);\n return () => {\n installPackagesTask(tree, true);\n };\n};\n\nexport default IrisAppGenerator;\n"]}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export declare const mockInternalPackageJson: {
|
|
2
|
-
dependencies: {
|
|
3
|
-
"@trackunit/css-components": string;
|
|
4
|
-
"@trackunit/css-tailwind": string;
|
|
5
|
-
"@trackunit/iris-app": string;
|
|
6
|
-
"@trackunit/react-components": string;
|
|
7
|
-
"@trackunit/react-core-contexts": string;
|
|
8
|
-
};
|
|
9
|
-
devDependencies: {
|
|
10
|
-
"@trackunit/iris-app-api": string;
|
|
11
|
-
"@trackunit/iris-app-build-utilities": string;
|
|
12
|
-
"@trackunit/iris-app-webpack-plugin": string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
export declare const wrongVersionPackageJson: {
|
|
16
|
-
dependencies: {
|
|
17
|
-
"@trackunit/css-components": string;
|
|
18
|
-
"@trackunit/css-tailwind": string;
|
|
19
|
-
"@trackunit/iris-app": string;
|
|
20
|
-
"@trackunit/react-components": string;
|
|
21
|
-
"@trackunit/react-core-contexts": string;
|
|
22
|
-
};
|
|
23
|
-
devDependencies: {
|
|
24
|
-
"@trackunit/iris-app-api": string;
|
|
25
|
-
"@trackunit/iris-app-build-utilities": string;
|
|
26
|
-
"@trackunit/iris-app-webpack-plugin": string;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.wrongVersionPackageJson = exports.mockInternalPackageJson = void 0;
|
|
4
|
-
exports.mockInternalPackageJson = {
|
|
5
|
-
dependencies: {
|
|
6
|
-
"@trackunit/css-components": "file://....//css-components",
|
|
7
|
-
"@trackunit/css-tailwind": "file://....//css-tailwind",
|
|
8
|
-
"@trackunit/iris-app": "file://....//iris-app",
|
|
9
|
-
"@trackunit/react-components": "file://....//react-components",
|
|
10
|
-
"@trackunit/react-core-contexts": "file://....//react-core-contexts",
|
|
11
|
-
},
|
|
12
|
-
devDependencies: {
|
|
13
|
-
"@trackunit/iris-app-api": "file://....//iris-app-api",
|
|
14
|
-
"@trackunit/iris-app-build-utilities": "file://....//iris-app-api/iris-app-build-utilities",
|
|
15
|
-
"@trackunit/iris-app-webpack-plugin": "file://....//iris-app-webpack-plugin",
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
exports.wrongVersionPackageJson = {
|
|
19
|
-
dependencies: {
|
|
20
|
-
"@trackunit/css-components": "1000.0.0",
|
|
21
|
-
"@trackunit/css-tailwind": "1000.0.0",
|
|
22
|
-
"@trackunit/iris-app": "1000.0.0",
|
|
23
|
-
"@trackunit/react-components": "1000.0.0",
|
|
24
|
-
"@trackunit/react-core-contexts": "0.0.48",
|
|
25
|
-
},
|
|
26
|
-
devDependencies: {
|
|
27
|
-
"@trackunit/iris-app-api": "1000.0.0",
|
|
28
|
-
"@trackunit/iris-app-build-utilities": "1000.0.0",
|
|
29
|
-
"@trackunit/iris-app-webpack-plugin": "1000.0.0",
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
//# sourceMappingURL=mocks.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mocks.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app/src/executors/utils/mocks.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG;IACrC,YAAY,EAAE;QACZ,2BAA2B,EAAE,6BAA6B;QAC1D,yBAAyB,EAAE,2BAA2B;QACtD,qBAAqB,EAAE,uBAAuB;QAC9C,6BAA6B,EAAE,+BAA+B;QAC9D,gCAAgC,EAAE,kCAAkC;KACrE;IACD,eAAe,EAAE;QACf,yBAAyB,EAAE,2BAA2B;QACtD,qCAAqC,EAAE,oDAAoD;QAC3F,oCAAoC,EAAE,sCAAsC;KAC7E;CACF,CAAC;AAEW,QAAA,uBAAuB,GAAG;IACrC,YAAY,EAAE;QACZ,2BAA2B,EAAE,UAAU;QACvC,yBAAyB,EAAE,UAAU;QACrC,qBAAqB,EAAE,UAAU;QACjC,6BAA6B,EAAE,UAAU;QACzC,gCAAgC,EAAE,QAAQ;KAC3C;IACD,eAAe,EAAE;QACf,yBAAyB,EAAE,UAAU;QACrC,qCAAqC,EAAE,UAAU;QACjD,oCAAoC,EAAE,UAAU;KACjD;CACF,CAAC","sourcesContent":["export const mockInternalPackageJson = {\n dependencies: {\n \"@trackunit/css-components\": \"file://....//css-components\",\n \"@trackunit/css-tailwind\": \"file://....//css-tailwind\",\n \"@trackunit/iris-app\": \"file://....//iris-app\",\n \"@trackunit/react-components\": \"file://....//react-components\",\n \"@trackunit/react-core-contexts\": \"file://....//react-core-contexts\",\n },\n devDependencies: {\n \"@trackunit/iris-app-api\": \"file://....//iris-app-api\",\n \"@trackunit/iris-app-build-utilities\": \"file://....//iris-app-api/iris-app-build-utilities\",\n \"@trackunit/iris-app-webpack-plugin\": \"file://....//iris-app-webpack-plugin\",\n },\n};\n\nexport const wrongVersionPackageJson = {\n dependencies: {\n \"@trackunit/css-components\": \"1000.0.0\",\n \"@trackunit/css-tailwind\": \"1000.0.0\",\n \"@trackunit/iris-app\": \"1000.0.0\",\n \"@trackunit/react-components\": \"1000.0.0\",\n \"@trackunit/react-core-contexts\": \"0.0.48\",\n },\n devDependencies: {\n \"@trackunit/iris-app-api\": \"1000.0.0\",\n \"@trackunit/iris-app-build-utilities\": \"1000.0.0\",\n \"@trackunit/iris-app-webpack-plugin\": \"1000.0.0\",\n },\n};\n"]}
|