@eui/tools 4.15.11 → 4.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/.version.properties +1 -1
  2. package/CHANGELOG.md +45 -0
  3. package/bin/eui-scripts.js +6 -6
  4. package/bin/scripts/build-package-sub.js +20 -0
  5. package/bin/scripts/version.js +12 -0
  6. package/global.test.js +2 -5
  7. package/package.json +16 -20
  8. package/sandbox.js +10 -2
  9. package/scripts/csdr/cli/app.js +30 -3
  10. package/scripts/csdr/cli/skeletons/app-showcase-eui13/angular-config.json +33 -0
  11. package/scripts/csdr/cli/skeletons/app-showcase-eui13/dependencies-composite.json +5 -0
  12. package/scripts/csdr/cli/skeletons/app-showcase-eui13/gitignore_TO_REPLACE +50 -0
  13. package/scripts/csdr/cli/skeletons/app-showcase-eui13/package.json +6 -0
  14. package/scripts/csdr/cli/skeletons/app-showcase-eui13/scripts.json +3 -0
  15. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app-routing.module.ts +21 -0
  16. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.html +26 -0
  17. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.component.ts +19 -0
  18. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/app.routes.ts +7 -0
  19. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home-routing.module.ts +15 -0
  20. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.html +7 -0
  21. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.component.ts +8 -0
  22. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/_home/home.module.ts +17 -0
  23. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/app/features/shared/shared.module.ts +15 -0
  24. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/app-metadata.json +8 -0
  25. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/assets/config/env-json-config.json +41 -0
  26. package/scripts/csdr/cli/skeletons/app-showcase-eui13/src/index.html +22 -0
  27. package/scripts/csdr/config/angular.js +213 -3
  28. package/scripts/csdr/config/global.js +16 -0
  29. package/scripts/csdr/config/packages.js +28 -0
  30. package/scripts/csdr/init/init-utils.js +37 -0
  31. package/scripts/csdr/init/init.js +6 -0
  32. package/scripts/csdr/init/resources/13.x/resolutions.json +15 -0
  33. package/scripts/csdr/install/build-package.js +0 -84
  34. package/scripts/csdr/install/common.js +10 -8
  35. package/scripts/csdr/jira/jira-utils.js +168 -168
  36. package/scripts/csdr/jira/update.js +150 -150
  37. package/scripts/csdr/metadata/app-envs.js +34 -33
  38. package/scripts/csdr/metadata/app-history.js +62 -61
  39. package/scripts/csdr/metadata/app.js +3 -3
  40. package/scripts/csdr/metadata/common.js +2 -2
  41. package/scripts/csdr/metadata/package-history.js +0 -1
  42. package/scripts/csdr/release/app/release-app.js +3 -0
  43. package/scripts/csdr/release/package/backend.js +26 -0
  44. package/scripts/csdr/release/package/common.js +1 -1
  45. package/scripts/csdr/release/package/release-package.js +8 -0
  46. package/scripts/csdr/release/package/ui.js +83 -1
  47. package/scripts/csdr/sync/sync-utils.js +13 -6
  48. package/scripts/csdr/version/package.js +2 -1
  49. package/scripts/utils/build/app/build-app-utils.js +2 -2
  50. package/scripts/utils/build/package/angular.js +4 -4
  51. package/scripts/utils/build/package/build-package-utils.js +50 -1
  52. package/scripts/utils/build/package/element.js +5 -16
  53. package/scripts/utils/build/package/styles.js +100 -7
  54. package/scripts/utils/confluence-utils.js +126 -126
  55. package/scripts/utils/index.js +2 -2
  56. package/scripts/utils/notification/common.js +5 -0
  57. package/scripts/utils/notification/mail-utils.js +3 -0
  58. package/scripts/utils/notification/mailstack.js +3 -5
  59. package/scripts/utils/notification/package.js +0 -2
  60. package/scripts/utils/notification/slack-utils.js +6 -7
  61. package/scripts/utils/pre-build/injection/app-sources-full-skeleton/src/_generated/favicon.ico +0 -0
  62. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/app.module.ts +52 -0
  63. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/app/core/reducers/index.ts +40 -0
  64. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/global.ts +4 -0
  65. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/index.ts +8 -0
  66. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/config/modules.ts +4 -0
  67. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.dev.ts +9 -0
  68. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.prod.ts +9 -0
  69. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/environments/environment.ts +21 -0
  70. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/favicon.ico +0 -0
  71. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/karma.conf.js +7 -0
  72. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/main.ts +21 -0
  73. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/polyfills.ts +86 -0
  74. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/src/_generated/tst.ts +33 -0
  75. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.app.json +19 -0
  76. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tsconfig.spec.json +9 -0
  77. package/scripts/utils/pre-build/injection/app-sources-full-skeleton-eui13/tslint.json +17 -0
  78. package/scripts/utils/pre-build/injection/config.js +29 -30
  79. package/scripts/utils/pre-build/injection/externals.js +6 -0
  80. package/scripts/utils/pre-build/injection/skeletons.js +6 -2
  81. package/scripts/utils/pre-build/projects.js +5 -1
  82. package/scripts/utils/serve/app.js +6 -3
  83. package/scripts/utils/tools.js +370 -283
  84. package/bin/scripts/csdr-jira-update.js +0 -12
  85. package/bin/scripts/csdr-migrate-package.js +0 -17
  86. package/bin/scripts/e2e-app.js +0 -62
  87. package/scripts/migration/eui8-migration.js +0 -94
  88. package/scripts/migration/migrate-utils.js +0 -191
@@ -0,0 +1,7 @@
1
+ const karmaConfig = require('@eui/tools/karma/karma.conf');
2
+
3
+ module.exports = function (config) {
4
+ config.set(
5
+ karmaConfig.get(config)
6
+ );
7
+ }
@@ -0,0 +1,21 @@
1
+ import { enableProdMode } from '@angular/core';
2
+ import { preInitApp } from '@eui/core';
3
+ import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
4
+
5
+ import { AppModule } from './app/app.module';
6
+ import { environment } from './environments/environment';
7
+ import { ApplicationRef } from '@angular/core';
8
+ import { enableDebugTools } from '@angular/platform-browser';
9
+
10
+ if (environment.production) {
11
+ enableProdMode();
12
+ }
13
+ preInitApp(environment).then(() => {
14
+ platformBrowserDynamic().bootstrapModule(AppModule)
15
+ .then(moduleRef => {
16
+ const applicationRef = moduleRef.injector.get(ApplicationRef);
17
+ const componentRef = applicationRef.components[0];
18
+ enableDebugTools(componentRef);
19
+ })
20
+ .catch(err => console.log(err));
21
+ });
@@ -0,0 +1,86 @@
1
+ /**
2
+ * This file includes polyfills needed by Angular and is loaded before the app.
3
+ * You can add your own extra polyfills to this file.
4
+ *
5
+ * This file is divided into 2 sections:
6
+ * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers.
7
+ * 2. Application imports. Files imported after ZoneJS that should be loaded before your main
8
+ * file.
9
+ *
10
+ * The current setup is for so-called "evergreen" browsers; the last versions of browsers that
11
+ * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera),
12
+ * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile.
13
+ *
14
+ * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html
15
+ */
16
+
17
+ /***************************************************************************************************
18
+ * BROWSER POLYFILLS
19
+ */
20
+
21
+ /** IE9, IE10 and IE11 requires all of the following polyfills. **/
22
+ // import 'core-js/es6/symbol';
23
+ // import 'core-js/es6/object';
24
+ // import 'core-js/es6/function';
25
+ // import 'core-js/es6/parse-int';
26
+ // import 'core-js/es6/parse-float';
27
+ // import 'core-js/es6/number';
28
+ // import 'core-js/es6/math';
29
+ // import 'core-js/es6/string';
30
+ // import 'core-js/es6/date';
31
+ // import 'core-js/es6/array';
32
+ // import 'core-js/es6/regexp';
33
+ // import 'core-js/es6/map';
34
+ // import 'core-js/es6/weak-map';
35
+ // import 'core-js/es6/set';
36
+
37
+ /** IE10 and IE11 requires the following for NgClass support on SVG elements */
38
+ // import 'classlist.js'; // Run `npm install --save classlist.js`.
39
+
40
+ /** IE10 and IE11 requires the following for the Reflect API. */
41
+ // import 'core-js/es6/reflect';
42
+
43
+ /** Evergreen browsers require these. **/
44
+ // Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove.
45
+ // import 'core-js/es7/reflect';
46
+
47
+ /**
48
+ * Web Animations `@angular/platform-browser/animations`
49
+ * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari.
50
+ * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0).
51
+ **/
52
+ // import 'web-animations-js'; // Run `npm install --save web-animations-js`.
53
+
54
+ /**
55
+ * By default, zone.js will patch all possible macroTask and DomEvents
56
+ * user can disable parts of macroTask/DomEvents patch by setting following flags
57
+ */
58
+
59
+ // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
60
+ // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick
61
+ // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames
62
+
63
+ /*
64
+ * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
65
+ * with the following flag, it will bypass `zone.js` patch for IE/Edge
66
+ */
67
+ // (window as any).__Zone_enable_cross_context_check = true;
68
+
69
+ /***************************************************************************************************
70
+ * Zone JS is required by default for Angular itself.
71
+ */
72
+ import 'zone.js/dist/zone'; // Included with Angular CLI.
73
+
74
+ /***************************************************************************************************
75
+ * APPLICATION IMPORTS
76
+ */
77
+
78
+ /**
79
+ * Date, currency, decimal and percent pipes.
80
+ * Needed for: All but Chrome, Firefox, Edge, IE11 and Safari 10
81
+ */
82
+ // import 'intl'; // Run `npm install --save intl`.
83
+ /**
84
+ * Need to import at least one locale-data with intl.
85
+ */
86
+ // import 'intl/locale-data/jsonp/en';
@@ -0,0 +1,33 @@
1
+ // This file is required by karma.conf.js and loads recursively all the .spec and framework files
2
+
3
+ import 'zone.js/dist/long-stack-trace-zone';
4
+ import 'zone.js/dist/proxy.js';
5
+ import 'zone.js/dist/sync-test';
6
+ import 'zone.js/dist/jasmine-patch';
7
+ import 'zone.js/dist/async-test';
8
+ import 'zone.js/dist/fake-async-test';
9
+ import { APP_BASE_HREF } from '@angular/common';
10
+ import { getTestBed } from '@angular/core/testing';
11
+ import {
12
+ BrowserDynamicTestingModule,
13
+ platformBrowserDynamicTesting,
14
+ } from '@angular/platform-browser-dynamic/testing';
15
+
16
+ // Unfortunately there's no typing for the `__karma__` variable. Just declare it as any.
17
+ declare const __karma__: any;
18
+ declare const require: any;
19
+
20
+ // Prevent Karma from running prematurely.
21
+ __karma__.loaded = function () {};
22
+
23
+ // First, initialize the Angular testing environment.
24
+ getTestBed().initTestEnvironment(
25
+ BrowserDynamicTestingModule,
26
+ platformBrowserDynamicTesting([{ provide: APP_BASE_HREF, useValue: '/' }]),
27
+ );
28
+ // Then we find all the tests.
29
+ const context = require.context('./', true, /\.spec\.ts$/);
30
+ // And load the modules.
31
+ context.keys().map(context);
32
+ // Finally, start Karma to run the tests.
33
+ __karma__.start();
@@ -0,0 +1,19 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "./dist",
5
+ "types": [],
6
+ "module": "ESNext",
7
+ "target": "ES2016",
8
+ "lib": ["es2020", "dom"]
9
+ },
10
+ "exclude": [
11
+ "test.ts",
12
+ "**/*.spec.ts",
13
+ "_todo/**/*.ts",
14
+ "**/_todo/**/*.ts",
15
+ "src/assets/samples/**/*.ts",
16
+ "dist/assets/samples/**/*.ts"
17
+ ],
18
+ "include": ["**/*.ts"]
19
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "./dist",
5
+ "types": ["jasmine", "node"]
6
+ },
7
+ "files": ["src/test.ts", "src/polyfills.ts"],
8
+ "include": ["**/*.spec.ts", "**/*.d.ts"]
9
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "extends": "../../tslint.json",
3
+ "rules": {
4
+ "directive-selector": [
5
+ true,
6
+ "attribute",
7
+ "app",
8
+ "camelCase"
9
+ ],
10
+ "component-selector": [
11
+ true,
12
+ "element",
13
+ "app",
14
+ "kebab-case"
15
+ ]
16
+ }
17
+ }
@@ -15,42 +15,41 @@ const injectConfig = (project) => {
15
15
  return Promise.resolve()
16
16
  .then(() => {
17
17
  if (!project.config.npmPkg) {
18
- return tools.logWarning('No linked config package found in project config');
18
+ tools.logWarning('No linked config package found in project config');
19
+ return;
20
+ }
21
+ // check if package is locally cloned
22
+ const localPackage = configUtils.packages.getPackages().filter((p) => {
23
+ return p.npmPkg === project.config.npmPkg
24
+ })[0];
19
25
 
20
- } else {
21
- // check if package is locally cloned
22
- const localPackage = configUtils.packages.getPackages().filter((p) => {
23
- return p.npmPkg === project.config.npmPkg
24
- })[0];
26
+ var pkgAssetsPath;
27
+ const projectAssetsPath = path.join(process.cwd(), project.folder, 'src', 'assets');
28
+ const projectEnvironmentsPath = path.join(process.cwd(), project.folder, 'src', 'environments');
25
29
 
26
- var pkgAssetsPath;
27
- const projectAssetsPath = path.join(process.cwd(), project.folder, 'src', 'assets');
28
- const projectEnvironmentsPath = path.join(process.cwd(), project.folder, 'src', 'environments');
30
+ // if local package is found
31
+ if (localPackage) {
32
+ pkgAssetsPath = path.join(process.cwd(), 'packages', localPackage.name, 'assets');
29
33
 
30
- // if local package is found
31
- if (localPackage) {
32
- pkgAssetsPath = path.join(process.cwd(), 'packages', localPackage.name, 'assets');
34
+ // if not sources are taken from the npm package def in node_modules
35
+ } else {
36
+ const npmPkgScope = project.config.npmPkg.substr(0, project.config.npmPkg.indexOf('/'));
37
+ const npmPkgName = project.config.npmPkg.substr(project.config.npmPkg.indexOf('/') + 1);
38
+ pkgAssetsPath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, 'assets');
39
+ }
33
40
 
34
- // if not sources are taken from the npm package def in node_modules
35
- } else {
36
- const npmPkgScope = project.config.npmPkg.substr(0, project.config.npmPkg.indexOf('/'));
37
- const npmPkgName = project.config.npmPkg.substr(project.config.npmPkg.indexOf('/') + 1);
38
- pkgAssetsPath = path.join(process.cwd(), 'node_modules', npmPkgScope, npmPkgName, 'assets');
39
- }
41
+ if (!tools.isDirExists(pkgAssetsPath)) {
42
+ tools.logWarning(`Linked config pkg : ${project.config.npmPkg} cannot be found in node_modules`);
43
+ return;
44
+ }
40
45
 
41
- if (!tools.isDirExists(pkgAssetsPath)) {
42
- return tools.logWarning(`Linked config pkg : ${project.config.npmPkg} cannot be found in node_modules`);
46
+ tools.logInfo(`${project.config.npmPkg}/assets - injecting in ${projectAssetsPath}`);
47
+ tools.copydir(pkgAssetsPath, projectAssetsPath);
43
48
 
44
- } else {
45
- tools.logInfo(`${project.config.npmPkg}/assets - injecting in ${projectAssetsPath}`);
46
- tools.copydir(pkgAssetsPath, projectAssetsPath);
47
-
48
- const pkgEnvironmentsPath = path.join(pkgAssetsPath, 'environments');
49
- if (tools.isDirExists(pkgEnvironmentsPath)) {
50
- tools.logInfo(`${project.config.npmPkg}/assets/environments - injecting in ${projectEnvironmentsPath}`);
51
- tools.copydir(pkgEnvironmentsPath, projectEnvironmentsPath);
52
- }
53
- }
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);
54
53
  }
55
54
  })
56
55
 
@@ -49,6 +49,9 @@ module.exports.injectExternalFeatures = (project) => {
49
49
  throw new Error('External features not found');
50
50
 
51
51
  } else {
52
+ tools.logInfo(`Removing ${projectSrcPath} content`);
53
+ tools.rmdirFull(projectSrcPath, false);
54
+
52
55
  tools.logInfo(`${featuresSrcPath} injecting in ${projectSrcPath}`);
53
56
  return tools.copydir(featuresSrcPath, projectSrcPath, true);
54
57
  }
@@ -103,6 +106,9 @@ module.exports.injectExternalAppSources = (project) => {
103
106
  throw new Error('External features not found');
104
107
 
105
108
  } else {
109
+ tools.logInfo(`Removing ${projectSrcPath} content`);
110
+ tools.rmdirFull(projectSrcPath, false);
111
+
106
112
  tools.logInfo(`${appSourcesSrcPath} injecting in ${projectSrcPath}`);
107
113
  return tools.copydir(appSourcesSrcPath, projectSrcPath, true);
108
114
  }
@@ -46,14 +46,18 @@ module.exports.injectCsdrSkeletonEuiShowcaseSources = (project) => {
46
46
  }
47
47
 
48
48
 
49
- module.exports.injectCsdrFullSkeletonSources = (project) => {
49
+ module.exports.injectCsdrFullSkeletonSources = (project, euiVersion) => {
50
50
 
51
51
  tools.logInfo(`Injecting CSDR full skeleton sources for : ${project.name}`);
52
52
 
53
53
  return Promise.resolve()
54
54
  .then(() => {
55
55
  // copying skeleton sources
56
- tools.copydir(path.join(__dirname, 'app-sources-full-skeleton'), project.folder, false);
56
+ if (euiVersion === '13.x') {
57
+ tools.copydir(path.join(__dirname, 'app-sources-full-skeleton-eui13'), project.folder, false);
58
+ } else {
59
+ tools.copydir(path.join(__dirname, 'app-sources-full-skeleton'), project.folder, false);
60
+ }
57
61
 
58
62
  // renaming tst.ts as it's conflicting with Jest... (TODO)
59
63
  tools.move(path.join(project.folder, 'src', '_generated', 'tst.ts'), path.join(project.folder, 'src', '_generated', 'test.ts'));
@@ -73,7 +73,11 @@ module.exports.preBuild = (project, envTarget, build) => {
73
73
  return injectionUtils.skeletons.injectCsdrSkeletonEuiShowcaseSources(project);
74
74
 
75
75
  } else if (project.csdrFullSkeleton) {
76
- return injectionUtils.skeletons.injectCsdrFullSkeletonSources(project);
76
+ if (project.build && project.build.euiVersion === '13.x') {
77
+ return injectionUtils.skeletons.injectCsdrFullSkeletonSources(project, '13.x');
78
+ } else {
79
+ return injectionUtils.skeletons.injectCsdrFullSkeletonSources(project);
80
+ }
77
81
  }
78
82
  })
79
83
 
@@ -10,7 +10,7 @@ const configUtils = require('../../csdr/config/config-utils');
10
10
 
11
11
  module.exports.serve = () => {
12
12
 
13
- let { configuration, baseHref, host, proxyConfig, maxSpaceSize, port, disableHostCheck, open } = tools.getArgs();
13
+ let { configuration, baseHref, host, proxyConfig, maxSpaceSize, port, disableHostCheck, open, debug } = tools.getArgs();
14
14
 
15
15
  const prj = configUtils.projects.getProject();
16
16
 
@@ -24,14 +24,17 @@ module.exports.serve = () => {
24
24
 
25
25
  const ng = path.resolve(process.cwd(), 'node_modules', '@angular', 'cli', 'bin', 'ng');
26
26
 
27
- console.log('Provided arguments:\n');
27
+ tools.logInfo('Provided arguments:\n');
28
28
  console.log(`configuration=${configuration}, baseHref=${baseHref}, host=${host}`);
29
29
 
30
30
 
31
31
  return Promise.resolve()
32
32
  .then(() => {
33
33
  tools.logTitle(`Serving application : ${prj.name}...`);
34
- console.log(prj);
34
+
35
+ if (debug) {
36
+ console.log(prj);
37
+ }
35
38
  })
36
39
 
37
40
  .then(() => {