@eui/tools 5.3.13 → 5.3.16
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/.version.properties +1 -1
- package/CHANGELOG.md +31 -0
- package/package.json +1 -1
- package/scripts/csdr/config/angular.js +18 -3
- package/scripts/csdr/install/common.js +96 -11
- package/scripts/csdr/install/local-dev.js +14 -2
- package/scripts/utils/build/package/nodeJs.js +13 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.app.json +5 -0
- package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui14/tsconfig.app.json +5 -0
- package/scripts/utils/pre-build/injection/config.js +46 -31
- package/scripts/utils/pre-build/injection/routes-replacement.js +31 -94
- package/scripts/utils/serve/app.js +0 -3
package/.version.properties
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
5.3.
|
|
1
|
+
5.3.16
|
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
## 5.3.16 (2022-06-20)
|
|
2
|
+
|
|
3
|
+
##### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* **other:**
|
|
6
|
+
* package creation on empty csdr-root - EUI-4106 [EUI-4106](https://webgate.ec.europa.eu/CITnet/jira/browse/EUI-4106) ([236ca4fa](https://webgate.ec.europa.eu/CITnet/stash/scm/csdr/eui-tools.git/commits/236ca4faa7398dd3083e49660e3eeb77b9639f1a))
|
|
7
|
+
|
|
8
|
+
* * *
|
|
9
|
+
* * *
|
|
10
|
+
## 5.3.15 (2022-06-20)
|
|
11
|
+
|
|
12
|
+
##### Chores
|
|
13
|
+
|
|
14
|
+
* **other:**
|
|
15
|
+
* v10 host adaptations - cleanup of old route replacement - multi config handles - multi base route replacement - remotes imports from install - MWP-7700 [MWP-7700](https://webgate.ec.europa.eu/CITnet/jira/browse/MWP-7700) ([b0801ba5](https://webgate.ec.europa.eu/CITnet/stash/scm/csdr/eui-tools.git/commits/b0801ba59694af456e187d2e62e4b88c7a2da208))
|
|
16
|
+
|
|
17
|
+
* * *
|
|
18
|
+
* * *
|
|
19
|
+
## 5.3.14 (2022-06-17)
|
|
20
|
+
|
|
21
|
+
##### Chores
|
|
22
|
+
|
|
23
|
+
* **other:**
|
|
24
|
+
* enabling strictTemplate for showcases - EUI-6148 [EUI-6148](https://webgate.ec.europa.eu/CITnet/jira/browse/EUI-6148) ([a9305f6a](https://webgate.ec.europa.eu/CITnet/stash/scm/csdr/eui-tools.git/commits/a9305f6aabe1ae54b822f3ab2be5c5d129193e82))
|
|
25
|
+
##### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* **other:**
|
|
28
|
+
* nodejs build package type - MWP-7700 [MWP-7700](https://webgate.ec.europa.eu/CITnet/jira/browse/MWP-7700) ([9aab9401](https://webgate.ec.europa.eu/CITnet/stash/scm/csdr/eui-tools.git/commits/9aab940169cff0b2be07073bc3838b18a282ca69))
|
|
29
|
+
|
|
30
|
+
* * *
|
|
31
|
+
* * *
|
|
1
32
|
## 5.3.13 (2022-06-16)
|
|
2
33
|
|
|
3
34
|
##### Chores
|
package/package.json
CHANGED
|
@@ -1509,9 +1509,24 @@ module.exports.registerModulePaths = (pkg, isReset) => {
|
|
|
1509
1509
|
tools.copy(fileDev, fileBuildSpec);
|
|
1510
1510
|
}
|
|
1511
1511
|
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1512
|
+
let jsonFileDev, jsonFileBuild, jsonFileBuildSpec;
|
|
1513
|
+
if (!tools.isFileExists(fileDev)) {
|
|
1514
|
+
jsonFileDev = tsConfigDef;
|
|
1515
|
+
} else {
|
|
1516
|
+
jsonFileDev = require(fileDev);
|
|
1517
|
+
}
|
|
1518
|
+
|
|
1519
|
+
if (!tools.isFileExists(fileBuild)) {
|
|
1520
|
+
jsonFileBuild = tsConfigDef;
|
|
1521
|
+
} else {
|
|
1522
|
+
jsonFileBuild = require(fileBuild);
|
|
1523
|
+
}
|
|
1524
|
+
|
|
1525
|
+
if (!tools.isFileExists(fileBuildSpec)) {
|
|
1526
|
+
jsonFileBuildSpec = tsConfigDef;
|
|
1527
|
+
} else {
|
|
1528
|
+
jsonFileBuildSpec = require(fileBuildSpec);
|
|
1529
|
+
}
|
|
1515
1530
|
|
|
1516
1531
|
var pathBase = './packages';
|
|
1517
1532
|
if (pkg.child) {
|
|
@@ -10,7 +10,7 @@ const configUtils = require('../config/config-utils');
|
|
|
10
10
|
const metadataUtils = require('../metadata/metadata-utils');
|
|
11
11
|
|
|
12
12
|
// FETCH ARGS
|
|
13
|
-
const { dryRun, skipInstall, registry,
|
|
13
|
+
const { dryRun, skipInstall, registry, remotesImport } = tools.getArgs();
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
@@ -36,6 +36,7 @@ const installDeps = (deps) => {
|
|
|
36
36
|
return executeInstall(rootFolder);
|
|
37
37
|
}
|
|
38
38
|
})
|
|
39
|
+
|
|
39
40
|
.catch((e) => {
|
|
40
41
|
throw e;
|
|
41
42
|
})
|
|
@@ -58,11 +59,7 @@ const executeInstall = (cwdPath) => {
|
|
|
58
59
|
|
|
59
60
|
tools.logInfo(`Install from : ${installRegistry}`);
|
|
60
61
|
if (!dryRun && !skipInstall) {
|
|
61
|
-
|
|
62
|
-
return execa.shellSync(`npm install --registry ${installRegistry}`, { cwd: cwdPath, stdio: 'inherit' });
|
|
63
|
-
} else {
|
|
64
|
-
return execa.shellSync(`yarn --registry ${installRegistry}`, { cwd: cwdPath, stdio: 'inherit' });
|
|
65
|
-
}
|
|
62
|
+
return execa.shellSync(`yarn --registry ${installRegistry}`, { cwd: cwdPath, stdio: 'inherit' });
|
|
66
63
|
}
|
|
67
64
|
})
|
|
68
65
|
|
|
@@ -296,7 +293,9 @@ const getLocalPackagesCompositeDepsRemapped = () => {
|
|
|
296
293
|
}
|
|
297
294
|
|
|
298
295
|
|
|
299
|
-
const getLocalProjectDeps = (prj) => {
|
|
296
|
+
const getLocalProjectDeps = (prj, snapshotsMetadata) => {
|
|
297
|
+
tools.logInfo(`Getting deps for ${prj.name}`);
|
|
298
|
+
|
|
300
299
|
// check dependencies file - default
|
|
301
300
|
const prjJsonFile = path.join(process.cwd(), prj.folder, 'dependencies-base.json');
|
|
302
301
|
const prjDeps = tools.getJsonFileContent(prjJsonFile) || {};
|
|
@@ -311,17 +310,41 @@ const getLocalProjectDeps = (prj) => {
|
|
|
311
310
|
} else {
|
|
312
311
|
prjCompDeps = depsJson || {}
|
|
313
312
|
}
|
|
314
|
-
|
|
313
|
+
|
|
314
|
+
let remoteDeps = {};
|
|
315
|
+
if (prj.initRemoteDependencies && remotesImport && snapshotsMetadata) {
|
|
316
|
+
|
|
317
|
+
tools.logInfo('Importing remotes deps... this might take a while');
|
|
318
|
+
|
|
319
|
+
const remotes = configUtils.packages.getCsdrRemotePackages()
|
|
320
|
+
.filter((p) => {
|
|
321
|
+
return p.active === true
|
|
322
|
+
})
|
|
323
|
+
.map((p) => {
|
|
324
|
+
return { npmgPkg: p.npmPkg, version: snapshotsMetadata[p.npmPkg] }
|
|
325
|
+
})
|
|
326
|
+
.filter((dep) => {
|
|
327
|
+
return dep.version !== undefined
|
|
328
|
+
})
|
|
329
|
+
|
|
330
|
+
remotes.forEach((r) => {
|
|
331
|
+
remoteDeps[r.npmgPkg] = r.version;
|
|
332
|
+
});
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
return { ...prjDeps, ...prjCompDeps, ...remoteDeps };
|
|
315
336
|
}
|
|
316
337
|
|
|
317
338
|
|
|
318
|
-
const getLocalProjectsDeps = () => {
|
|
339
|
+
const getLocalProjectsDeps = (snapshotsMetadata) => {
|
|
340
|
+
tools.logTitle('Getting project dependencies');
|
|
341
|
+
|
|
319
342
|
const projects = configUtils.projects.getProjects();
|
|
320
343
|
let deps = {};
|
|
321
344
|
|
|
322
345
|
projects.forEach(p => {
|
|
323
346
|
if (p) {
|
|
324
|
-
const prjDeps = getLocalProjectDeps(p);
|
|
347
|
+
const prjDeps = getLocalProjectDeps(p, snapshotsMetadata);
|
|
325
348
|
deps = { ...deps, ...prjDeps };
|
|
326
349
|
}
|
|
327
350
|
})
|
|
@@ -378,6 +401,66 @@ const getLocalProjectsFixedDeps = async _ => {
|
|
|
378
401
|
return deps;
|
|
379
402
|
}
|
|
380
403
|
|
|
404
|
+
|
|
405
|
+
const importLocalProjectRemotes = (prj, deps) => {
|
|
406
|
+
if (prj.initRemoteDependencies) {
|
|
407
|
+
tools.logInfo(`Import remotes for project : ${prj.name}`);
|
|
408
|
+
|
|
409
|
+
const remoteDeps = Object.keys(deps).filter((dep) => {
|
|
410
|
+
return dep.indexOf('remote-el') !== -1;
|
|
411
|
+
})
|
|
412
|
+
|
|
413
|
+
if (remoteDeps.length === 0) {
|
|
414
|
+
tools.logWarning('Remotes not found...skipping');
|
|
415
|
+
|
|
416
|
+
} else {
|
|
417
|
+
tools.logInfo(`Initializing ${remoteDeps.length} remotes`);
|
|
418
|
+
|
|
419
|
+
remoteDeps.forEach((remoteNpmPkg) => {
|
|
420
|
+
tools.logInfo(`Checking import for : ${remoteNpmPkg}`);
|
|
421
|
+
|
|
422
|
+
// check if package has been installed locally
|
|
423
|
+
const localPackage = configUtils.packages.getPackages().filter((p) => {
|
|
424
|
+
return p.npmPkg === remoteNpmPkg
|
|
425
|
+
})[0];
|
|
426
|
+
|
|
427
|
+
if (localPackage) {
|
|
428
|
+
tools.logInfo('remote is installed locally...skipping import');
|
|
429
|
+
|
|
430
|
+
} else {
|
|
431
|
+
const pkg = configUtils.packages.getPackageByNpmPkg(remoteNpmPkg, true);
|
|
432
|
+
const projectElementsPath = path.join(process.cwd(), prj.folder, 'src', 'assets', 'elements', pkg.name, 'bundles');
|
|
433
|
+
|
|
434
|
+
const npmPkgScope = remoteNpmPkg.substr(0, remoteNpmPkg.indexOf('/'));
|
|
435
|
+
const npmPkgName = remoteNpmPkg.substr(remoteNpmPkg.indexOf('/') + 1);
|
|
436
|
+
const remoteNmPath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, 'bundles');
|
|
437
|
+
|
|
438
|
+
tools.logInfo(`${remoteNpmPkg} - injecting in ${projectElementsPath}`);
|
|
439
|
+
tools.copydir(remoteNmPath, projectElementsPath);
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
});
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
|
|
448
|
+
const importLocalProjectsRemotes = (deps) => {
|
|
449
|
+
const projects = configUtils.projects.getProjects();
|
|
450
|
+
|
|
451
|
+
tools.logTitle('Importing local projects remotes');
|
|
452
|
+
|
|
453
|
+
if (remotesImport) {
|
|
454
|
+
projects.forEach(p => {
|
|
455
|
+
if (p) {
|
|
456
|
+
importLocalProjectRemotes(p, deps);
|
|
457
|
+
}
|
|
458
|
+
})
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
|
|
381
464
|
module.exports = {
|
|
382
465
|
installDeps,
|
|
383
466
|
executeInstall,
|
|
@@ -390,5 +473,7 @@ module.exports = {
|
|
|
390
473
|
getLocalProjectDeps,
|
|
391
474
|
getLocalProjectsDeps,
|
|
392
475
|
getLocalProjectFixedDeps,
|
|
393
|
-
getLocalProjectsFixedDeps
|
|
476
|
+
getLocalProjectsFixedDeps,
|
|
477
|
+
importLocalProjectRemotes,
|
|
478
|
+
importLocalProjectsRemotes
|
|
394
479
|
}
|
|
@@ -20,7 +20,7 @@ const { dryRun, skipInstall } = tools.getArgs();
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
module.exports.install = (pkg) => {
|
|
23
|
-
let packagesDeps, packagesCompositeDeps, projectsDeps, projectsFixedDeps, finalDeps;
|
|
23
|
+
let packagesDeps, packagesCompositeDeps, projectsDeps, projectsFixedDeps, finalDeps, snapshotsMetadata;
|
|
24
24
|
|
|
25
25
|
return Promise.resolve()
|
|
26
26
|
|
|
@@ -29,6 +29,13 @@ module.exports.install = (pkg) => {
|
|
|
29
29
|
return metadataUtils.common.cloneMetadataRepo(true);
|
|
30
30
|
})
|
|
31
31
|
|
|
32
|
+
// getting packages snapshot deps metadata and storing
|
|
33
|
+
.then(() => {
|
|
34
|
+
return metadataUtils.package.getPackagesDeps('packages');
|
|
35
|
+
})
|
|
36
|
+
.then((depsMetadata) => {
|
|
37
|
+
snapshotsMetadata = depsMetadata;
|
|
38
|
+
})
|
|
32
39
|
|
|
33
40
|
// getting internal packages deps - cloned locally
|
|
34
41
|
.then(() => {
|
|
@@ -50,7 +57,7 @@ module.exports.install = (pkg) => {
|
|
|
50
57
|
// storing
|
|
51
58
|
packagesCompositeDeps = pkgCompositeDeps;
|
|
52
59
|
|
|
53
|
-
return innerCommon.getLocalProjectsDeps();
|
|
60
|
+
return innerCommon.getLocalProjectsDeps(snapshotsMetadata);
|
|
54
61
|
})
|
|
55
62
|
.then((prjDeps) => {
|
|
56
63
|
projectsDeps = prjDeps;
|
|
@@ -98,6 +105,11 @@ module.exports.install = (pkg) => {
|
|
|
98
105
|
}
|
|
99
106
|
})
|
|
100
107
|
|
|
108
|
+
// Import remotes into local projects
|
|
109
|
+
.then(() => {
|
|
110
|
+
return innerCommon.importLocalProjectsRemotes(finalDeps);
|
|
111
|
+
})
|
|
112
|
+
|
|
101
113
|
// checking remotes
|
|
102
114
|
.then(() => {
|
|
103
115
|
return innerRemotes.installDeps(pkg);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
// GLOBAL
|
|
4
|
+
const path = require('path');
|
|
4
5
|
|
|
5
6
|
// LOCAL
|
|
6
7
|
const tools = require('../../tools');
|
|
@@ -27,6 +28,18 @@ module.exports.build = (pkg, isMaster) => {
|
|
|
27
28
|
return testUtils.runMocha(pkg);
|
|
28
29
|
}
|
|
29
30
|
})
|
|
31
|
+
.then(() => {
|
|
32
|
+
return tools.copydir(
|
|
33
|
+
path.join(pkg.paths.pkgRootDirectory, 'assets'),
|
|
34
|
+
path.join(pkg.paths.pkgBuild, 'assets')
|
|
35
|
+
);
|
|
36
|
+
})
|
|
37
|
+
.then(() => {
|
|
38
|
+
console.log('assets copy succeeded');
|
|
39
|
+
tools.copy(path.join(pkg.paths.pkgRootDirectory, 'package.json'), path.join(pkg.paths.pkgBuild, 'package.json'));
|
|
40
|
+
tools.copy(path.join(pkg.paths.pkgRootDirectory, 'README.md'), path.join(pkg.paths.pkgBuild, 'README.md'));
|
|
41
|
+
tools.copy(path.join(pkg.paths.pkgRootDirectory, 'LICENSE'), path.join(pkg.paths.pkgBuild, 'LICENSE'));
|
|
42
|
+
})
|
|
30
43
|
|
|
31
44
|
.then(() => {
|
|
32
45
|
return notificationUtils.package.sendPackageMessage({
|
|
@@ -7,6 +7,43 @@ const configUtils = require('../../../csdr/config/config-utils');
|
|
|
7
7
|
const installUtils = require('../../../csdr/install/install-utils');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
+
const injectConfigCore = (project, npmPkg) => {
|
|
11
|
+
// check if package is locally cloned
|
|
12
|
+
const localPackage = configUtils.packages.getPackages().filter((p) => {
|
|
13
|
+
return p.npmPkg === npmPkg
|
|
14
|
+
})[0];
|
|
15
|
+
|
|
16
|
+
var pkgAssetsPath;
|
|
17
|
+
const projectAssetsPath = path.join(process.cwd(), project.folder, 'src', 'assets');
|
|
18
|
+
const projectEnvironmentsPath = path.join(process.cwd(), project.folder, 'src', 'environments');
|
|
19
|
+
|
|
20
|
+
// if local package is found
|
|
21
|
+
if (localPackage) {
|
|
22
|
+
pkgAssetsPath = path.join(process.cwd(), 'packages', localPackage.name, 'assets');
|
|
23
|
+
|
|
24
|
+
// if not sources are taken from the npm package def in node_modules
|
|
25
|
+
} else {
|
|
26
|
+
const npmPkgScope = npmPkg.substr(0, npmPkg.indexOf('/'));
|
|
27
|
+
const npmPkgName = npmPkg.substr(npmPkg.indexOf('/') + 1);
|
|
28
|
+
pkgAssetsPath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, 'assets');
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (!tools.isDirExists(pkgAssetsPath)) {
|
|
32
|
+
tools.logWarning(`Linked config pkg : ${npmPkg} cannot be found in node_modules`);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
tools.logInfo(`${npmPkg}/assets - injecting in ${projectAssetsPath}`);
|
|
37
|
+
tools.copydir(pkgAssetsPath, projectAssetsPath);
|
|
38
|
+
|
|
39
|
+
const pkgEnvironmentsPath = path.join(pkgAssetsPath, 'environments');
|
|
40
|
+
if (tools.isDirExists(pkgEnvironmentsPath)) {
|
|
41
|
+
tools.logInfo(`${npmPkg}/assets/environments - injecting in ${projectEnvironmentsPath}`);
|
|
42
|
+
tools.copydir(pkgEnvironmentsPath, projectEnvironmentsPath);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
10
47
|
|
|
11
48
|
const injectConfig = (project) => {
|
|
12
49
|
|
|
@@ -14,42 +51,20 @@ const injectConfig = (project) => {
|
|
|
14
51
|
|
|
15
52
|
return Promise.resolve()
|
|
16
53
|
.then(() => {
|
|
17
|
-
if (!project.config
|
|
54
|
+
if (!project.config) {
|
|
18
55
|
tools.logWarning('No linked config package found in project config');
|
|
19
56
|
return;
|
|
20
57
|
}
|
|
21
|
-
// check if package is locally cloned
|
|
22
|
-
const localPackage = configUtils.packages.getPackages().filter((p) => {
|
|
23
|
-
return p.npmPkg === project.config.npmPkg
|
|
24
|
-
})[0];
|
|
25
58
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (localPackage) {
|
|
32
|
-
pkgAssetsPath = path.join(process.cwd(), 'packages', localPackage.name, 'assets');
|
|
59
|
+
// multi-config defined : api config and routes config for MWP
|
|
60
|
+
if (Array.isArray(project.config)) {
|
|
61
|
+
project.config.forEach((configNpmPkg) => {
|
|
62
|
+
injectConfigCore(project, configNpmPkg);
|
|
63
|
+
})
|
|
33
64
|
|
|
34
|
-
//
|
|
65
|
+
// single config/npm package defined
|
|
35
66
|
} else {
|
|
36
|
-
|
|
37
|
-
const npmPkgName = project.config.npmPkg.substr(project.config.npmPkg.indexOf('/') + 1);
|
|
38
|
-
pkgAssetsPath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, 'assets');
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
if (!tools.isDirExists(pkgAssetsPath)) {
|
|
42
|
-
tools.logWarning(`Linked config pkg : ${project.config.npmPkg} cannot be found in node_modules`);
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
tools.logInfo(`${project.config.npmPkg}/assets - injecting in ${projectAssetsPath}`);
|
|
47
|
-
tools.copydir(pkgAssetsPath, projectAssetsPath);
|
|
48
|
-
|
|
49
|
-
const pkgEnvironmentsPath = path.join(pkgAssetsPath, 'environments');
|
|
50
|
-
if (tools.isDirExists(pkgEnvironmentsPath)) {
|
|
51
|
-
tools.logInfo(`${project.config.npmPkg}/assets/environments - injecting in ${projectEnvironmentsPath}`);
|
|
52
|
-
tools.copydir(pkgEnvironmentsPath, projectEnvironmentsPath);
|
|
67
|
+
injectConfigCore(project, project.config.npmPkg);
|
|
53
68
|
}
|
|
54
69
|
})
|
|
55
70
|
|
|
@@ -70,7 +85,7 @@ const injectPackagesConfig = (project) => {
|
|
|
70
85
|
|
|
71
86
|
// fetching current project linked composite packages dependencies
|
|
72
87
|
.then(() => {
|
|
73
|
-
return installUtils.common.
|
|
88
|
+
return installUtils.common.getLocalProjectDeps(project);
|
|
74
89
|
})
|
|
75
90
|
|
|
76
91
|
|
|
@@ -58,7 +58,7 @@ const getEnvConfig = (project, envTarget, build) => {
|
|
|
58
58
|
})
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
const getRoutesFile = (project
|
|
61
|
+
const getRoutesFile = (project) => {
|
|
62
62
|
tools.logInfo('Getting routes file for replacement');
|
|
63
63
|
|
|
64
64
|
return Promise.resolve()
|
|
@@ -69,48 +69,37 @@ const getRoutesFile = (project, isFullReplacement) => {
|
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
let routesFilePath;
|
|
72
|
+
let srcRoutesFilePath;
|
|
72
73
|
|
|
73
|
-
if (
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
tools.logError('project requires appSources.routesFileNpmPkg, routesFileSources and routesFilePath definitions');
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
// check if package is locally cloned
|
|
82
|
-
const localPackage = configUtils.packages.getPackages().filter((p) => {
|
|
83
|
-
return p.npmPkg === project.appSources.routesFileNpmPkg
|
|
84
|
-
})[0];
|
|
85
|
-
|
|
86
|
-
// if local package is found
|
|
87
|
-
if (localPackage) {
|
|
88
|
-
tools.logInfo('local package found, copying from local');
|
|
89
|
-
srcRoutesFilePath = path.join(process.cwd(), 'packages', localPackage.name, project.appSources.routesFileSource);
|
|
90
|
-
|
|
91
|
-
// if not sources are taken from the npm package def in node_modules
|
|
92
|
-
} else {
|
|
93
|
-
tools.logInfo('remote package found, copying from remote');
|
|
94
|
-
const npmPkgScope = project.appSources.routesFileNpmPkg.substr(0, project.appSources.routesFileNpmPkg.indexOf('/'));
|
|
95
|
-
const npmPkgName = project.appSources.routesFileNpmPkg.substr(project.appSources.routesFileNpmPkg.indexOf('/') + 1);
|
|
96
|
-
|
|
97
|
-
srcRoutesFilePath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, project.appSources.routesFileSource);
|
|
98
|
-
}
|
|
74
|
+
if (!project.appSources.routesFileNpmPkg || !project.appSources.routesFileSource || !project.appSources.routesFilePath) {
|
|
75
|
+
tools.logError('project requires appSources.routesFileNpmPkg, routesFileSources and routesFilePath definitions');
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
99
78
|
|
|
100
|
-
|
|
79
|
+
// check if package is locally cloned
|
|
80
|
+
const localPackage = configUtils.packages.getPackages().filter((p) => {
|
|
81
|
+
return p.npmPkg === project.appSources.routesFileNpmPkg
|
|
82
|
+
})[0];
|
|
101
83
|
|
|
102
|
-
|
|
103
|
-
|
|
84
|
+
// if local package is found
|
|
85
|
+
if (localPackage) {
|
|
86
|
+
tools.logInfo('local package found, copying from local');
|
|
87
|
+
srcRoutesFilePath = path.join(process.cwd(), 'packages', localPackage.name, project.appSources.routesFileSource);
|
|
104
88
|
|
|
89
|
+
// if not sources are taken from the npm package def in node_modules
|
|
105
90
|
} else {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}
|
|
91
|
+
tools.logInfo('remote package found, copying from remote');
|
|
92
|
+
const npmPkgScope = project.appSources.routesFileNpmPkg.substr(0, project.appSources.routesFileNpmPkg.indexOf('/'));
|
|
93
|
+
const npmPkgName = project.appSources.routesFileNpmPkg.substr(project.appSources.routesFileNpmPkg.indexOf('/') + 1);
|
|
110
94
|
|
|
111
|
-
|
|
95
|
+
srcRoutesFilePath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, project.appSources.routesFileSource);
|
|
112
96
|
}
|
|
113
97
|
|
|
98
|
+
routesFilePath = path.join(project.paths.rootPath, project.appSources.routesFilePath);
|
|
99
|
+
|
|
100
|
+
// copy source file to project destination
|
|
101
|
+
tools.copy(srcRoutesFilePath, routesFilePath);
|
|
102
|
+
|
|
114
103
|
// checking is routes path declared
|
|
115
104
|
if (!tools.isFileExists(routesFilePath)) {
|
|
116
105
|
tools.logError(`Unable to find ${routesFilePath}`);
|
|
@@ -125,51 +114,6 @@ const getRoutesFile = (project, isFullReplacement) => {
|
|
|
125
114
|
})
|
|
126
115
|
}
|
|
127
116
|
|
|
128
|
-
const remapRoutes = (config, routesFileContent) => {
|
|
129
|
-
tools.logInfo('config.routesRemapping found...Staring routes remapping');
|
|
130
|
-
|
|
131
|
-
console.log(routesFileContent);
|
|
132
|
-
|
|
133
|
-
return Promise.resolve()
|
|
134
|
-
.then(() => {
|
|
135
|
-
config.routesRemapping.forEach((route) => {
|
|
136
|
-
tools.logInfo(`\nchecking replacement for : ${JSON.stringify(route)}`);
|
|
137
|
-
const tokenToSearch = `./features/${route.featureModule}-lib.module#Module`;
|
|
138
|
-
tools.logInfo(`Searching token : ${tokenToSearch}`);
|
|
139
|
-
if (routesFileContent.indexOf(tokenToSearch) > -1) {
|
|
140
|
-
tools.logInfo(`token ${tokenToSearch} found...replacing by ${route.routeModuleDef}`);
|
|
141
|
-
routesFileContent = tools.replaceAll(routesFileContent, tokenToSearch, route.routeModuleDef);
|
|
142
|
-
} else {
|
|
143
|
-
tools.logWarning(`token ${tokenToSearch} NOT FOUND`);
|
|
144
|
-
}
|
|
145
|
-
})
|
|
146
|
-
|
|
147
|
-
if (!config.extraRoutesRemapping) {
|
|
148
|
-
tools.logWarning('No extra routes remapping found in current config...skipping');
|
|
149
|
-
|
|
150
|
-
} else {
|
|
151
|
-
tools.logInfo('Extra routes remapping');
|
|
152
|
-
config.extraRoutesRemapping.forEach((route) => {
|
|
153
|
-
tools.logInfo(`checking replacement ${JSON.stringify(route)}`);
|
|
154
|
-
const tokenToSearch = route.currentRoute;
|
|
155
|
-
if (routesFileContent.indexOf(tokenToSearch) > -1) {
|
|
156
|
-
tools.logInfo(`token ${tokenToSearch} found...replacing by ${route.updatedRoute}`);
|
|
157
|
-
routesFileContent = tools.replaceAll(routesFileContent, tokenToSearch, route.updatedRoute);
|
|
158
|
-
} else {
|
|
159
|
-
tools.logWarning(`token ${tokenToSearch} NOT FOUND`);
|
|
160
|
-
}
|
|
161
|
-
})
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
return routesFileContent;
|
|
165
|
-
})
|
|
166
|
-
|
|
167
|
-
.catch((e) => {
|
|
168
|
-
throw e;
|
|
169
|
-
})
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
|
|
173
117
|
const replaceRoutes = (project, envTarget, build, routesFileContent) => {
|
|
174
118
|
tools.logInfo('config.routesRemapping not found...Starting full routes replacement');
|
|
175
119
|
|
|
@@ -177,7 +121,11 @@ const replaceRoutes = (project, envTarget, build, routesFileContent) => {
|
|
|
177
121
|
.then(() => {
|
|
178
122
|
// getting base route defs content
|
|
179
123
|
const projectAssetsPath = path.join(process.cwd(), project.folder, 'src', 'assets');
|
|
180
|
-
|
|
124
|
+
let routeDefsBaseFilename = 'route-defs-base.json';
|
|
125
|
+
if (project.appSources.routesBaseFilename) {
|
|
126
|
+
routeDefsBaseFilename = project.appSources.routesBaseFilename;
|
|
127
|
+
}
|
|
128
|
+
const baseRouteDefsPath = path.join(projectAssetsPath, routeDefsBaseFilename);
|
|
181
129
|
|
|
182
130
|
if (!tools.isFileExists(baseRouteDefsPath)) {
|
|
183
131
|
tools.logError(`${baseRouteDefsPath} File NOT FOUND`);
|
|
@@ -283,12 +231,7 @@ module.exports.buildRoutes = (project, envTarget, build) => {
|
|
|
283
231
|
})
|
|
284
232
|
|
|
285
233
|
.then(() => {
|
|
286
|
-
|
|
287
|
-
return getRoutesFile(project);
|
|
288
|
-
|
|
289
|
-
} else {
|
|
290
|
-
return getRoutesFile(project, true);
|
|
291
|
-
}
|
|
234
|
+
return getRoutesFile(project);
|
|
292
235
|
})
|
|
293
236
|
.then((outRoutesFile) => {
|
|
294
237
|
if (!outRoutesFile) {
|
|
@@ -298,14 +241,8 @@ module.exports.buildRoutes = (project, envTarget, build) => {
|
|
|
298
241
|
routesFileContent = tools.getFileContent(routesFile);
|
|
299
242
|
})
|
|
300
243
|
|
|
301
|
-
|
|
302
244
|
.then(() => {
|
|
303
|
-
|
|
304
|
-
return remapRoutes(config, routesFileContent);
|
|
305
|
-
|
|
306
|
-
} else {
|
|
307
|
-
return replaceRoutes(project, envTarget, build, routesFileContent);
|
|
308
|
-
}
|
|
245
|
+
return replaceRoutes(project, envTarget, build, routesFileContent);
|
|
309
246
|
})
|
|
310
247
|
|
|
311
248
|
.then((finalRouteFileContent) => {
|
|
@@ -24,9 +24,6 @@ module.exports.serve = () => {
|
|
|
24
24
|
|
|
25
25
|
const ng = path.resolve(process.cwd(), 'node_modules', '@angular', 'cli', 'bin', 'ng');
|
|
26
26
|
|
|
27
|
-
tools.logInfo('Provided arguments:\n');
|
|
28
|
-
console.log(`configuration=${configuration}, baseHref=${baseHref}, host=${host}`);
|
|
29
|
-
|
|
30
27
|
|
|
31
28
|
return Promise.resolve()
|
|
32
29
|
.then(() => {
|