@genesislcap/blank-app-seed 3.30.0-prerelease.4 → 3.30.0-prerelease.40

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 (116) hide show
  1. package/.genx/configure.js +5 -0
  2. package/.genx/package.json +1 -1
  3. package/.genx/prompts/api.js +2 -9
  4. package/.genx/prompts/server.js +9 -0
  5. package/.genx/prompts.js +9 -2
  6. package/.genx/static.js +1 -1
  7. package/.genx/templates/angular/component/component.hbs +10 -0
  8. package/.genx/templates/angular/gridLayout.hbs +8 -8
  9. package/.genx/templates/react/chart.hbs +7 -3
  10. package/.genx/templates/react/component/component.column.defs.hbs +4 -2
  11. package/.genx/templates/react/component/component.create.form.hbs +2 -2
  12. package/.genx/templates/react/component/component.gridOptions.hbs +4 -2
  13. package/.genx/templates/react/component/component.hbs +68 -21
  14. package/.genx/templates/react/component/component.index.hbs +1 -1
  15. package/.genx/templates/react/component/component.update.form.hbs +1 -1
  16. package/.genx/templates/react/entityManager.hbs +62 -49
  17. package/.genx/templates/react/form.hbs +7 -3
  18. package/.genx/templates/react/grid.hbs +16 -10
  19. package/.genx/templates/react/gridLayout.hbs +8 -8
  20. package/.genx/templates/react/route.hbs +2 -2
  21. package/.genx/templates/react/tabsLayout.hbs +5 -5
  22. package/.genx/templates/web-components/component/component.hbs +10 -0
  23. package/.genx/templates/web-components/gridLayout.hbs +8 -8
  24. package/.genx/templates/web-components/route.template.hbs +2 -2
  25. package/.genx/utils/deleteGradleWrappers.js +12 -0
  26. package/.genx/utils/generateRoute.js +2 -1
  27. package/.genx/utils/generateTile.js +2 -2
  28. package/.genx/utils/index.js +2 -0
  29. package/.genx/versions.json +3 -3
  30. package/.gitignore +3 -0
  31. package/.idea/modules.xml +6 -6
  32. package/CHANGELOG.md +253 -0
  33. package/README.md +6 -10
  34. package/client-tmp/angular/__mocks__/fileMock.js +1 -0
  35. package/client-tmp/angular/angular.json +0 -29
  36. package/client-tmp/angular/jest.config.js +20 -0
  37. package/client-tmp/angular/package.json +6 -6
  38. package/client-tmp/angular/src/app/layouts/default/default.layout.spec.ts +2 -2
  39. package/client-tmp/angular/src/jest.setup.ts +46 -0
  40. package/client-tmp/angular/tsconfig.app.json +1 -2
  41. package/client-tmp/angular/tsconfig.json +1 -2
  42. package/client-tmp/angular/tsconfig.spec.json +13 -7
  43. package/client-tmp/react/.babelrc +2 -1
  44. package/client-tmp/react/.eslintrc.cjs +1 -0
  45. package/client-tmp/react/README.md +36 -24
  46. package/client-tmp/react/jest.config.ts +15 -0
  47. package/client-tmp/react/lint-css.ts +19 -0
  48. package/client-tmp/react/package.json +35 -13
  49. package/client-tmp/react/public/favicon.ico +0 -0
  50. package/client-tmp/react/public/index.html +13 -0
  51. package/client-tmp/react/src/App.tsx +95 -68
  52. package/client-tmp/react/src/components/ErrorMessage/{ErrorMessage.test.js → ErrorMessage.test.tsx} +18 -20
  53. package/client-tmp/react/src/components/ErrorMessage/{ErrorMessage.jsx → ErrorMessage.tsx} +9 -4
  54. package/client-tmp/react/src/config.ts +2 -16
  55. package/client-tmp/react/src/custom-elements.d.ts +21 -9
  56. package/client-tmp/react/src/environments/environment.prod.ts +8 -0
  57. package/client-tmp/react/src/environments/environment.ts +9 -0
  58. package/client-tmp/react/src/guards/ProtectedGuard.tsx +66 -0
  59. package/client-tmp/react/src/helpers/hasPermissionHelper.tsx +10 -0
  60. package/client-tmp/react/src/helpers/isAuthenticatedHelper.tsx +14 -0
  61. package/client-tmp/react/src/helpers/isConnectedHelper.tsx +16 -0
  62. package/client-tmp/react/src/layouts/blank/BlankLayout.tsx +1 -1
  63. package/client-tmp/react/src/layouts/default/DefaultLayout.tsx +26 -15
  64. package/client-tmp/react/src/main.tsx +21 -5
  65. package/client-tmp/react/src/pages/AuthPage/{AuthPage.test.js → AuthPage.test.tsx} +2 -2
  66. package/client-tmp/react/src/pages/AuthPage/{AuthPage.jsx → AuthPage.tsx} +3 -2
  67. package/client-tmp/react/src/pages/NotFoundPage/NotFoundPage.css +0 -0
  68. package/client-tmp/react/src/pages/NotFoundPage/NotFoundPage.tsx +14 -0
  69. package/client-tmp/react/src/pages/NotPermittedPage/{NotPermittedPage.test.js → NotPermittedPage.test.tsx} +3 -4
  70. package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.tsx +14 -0
  71. package/client-tmp/react/src/pbc/README.md +7 -0
  72. package/client-tmp/react/src/pbc/container.tsx +44 -0
  73. package/client-tmp/react/src/pbc/elementsRenderer.tsx +40 -0
  74. package/client-tmp/react/src/pbc/utils.ts +121 -0
  75. package/client-tmp/react/src/services/store.service.ts +48 -0
  76. package/client-tmp/react/src/share/foundation-login.ts +13 -6
  77. package/client-tmp/react/src/share/genesis-components.ts +49 -23
  78. package/client-tmp/react/src/store/AuthContext.tsx +0 -2
  79. package/client-tmp/react/src/store/RoutesContext.tsx +74 -0
  80. package/client-tmp/react/src/types/LayoutName.ts +3 -0
  81. package/client-tmp/react/src/types/RouteLayouts.ts +3 -1
  82. package/client-tmp/react/src/utils/getLayoutNameByRoute.ts +5 -0
  83. package/client-tmp/react/src/utils/history.ts +4 -2
  84. package/client-tmp/react/src/utils/index.ts +3 -1
  85. package/client-tmp/react/src/utils/layout.ts +11 -0
  86. package/client-tmp/react/test/e2e/fixture.ts +1 -1
  87. package/client-tmp/react/tsconfig.app.json +2 -26
  88. package/client-tmp/react/tsconfig.json +31 -8
  89. package/client-tmp/react/tsconfig.node.json +1 -1
  90. package/client-tmp/react/vite.config.ts +70 -0
  91. package/client-tmp/react/webpack.config.js +103 -0
  92. package/client-tmp/web-components/package.json +2 -1
  93. package/client-tmp/web-components/src/main/main.styles.ts +1 -1
  94. package/client-tmp/web-components/src/utils/index.ts +1 -0
  95. package/client-tmp/web-components/src/utils/layout.ts +11 -0
  96. package/client-tmp/web-components/tsconfig.json +1 -1
  97. package/package.json +1 -1
  98. package/server/build.gradle.kts +1 -0
  99. package/server/gradle.properties +1 -0
  100. package/server/settings.gradle.kts +8 -7
  101. package/settings.gradle.kts +7 -4
  102. package/testData/excel/.gitkeep +0 -0
  103. package/client-tmp/angular/karma.conf.js +0 -9
  104. package/client-tmp/angular/src/app/app.component.spec.ts +0 -23
  105. package/client-tmp/react/env.development.json +0 -3
  106. package/client-tmp/react/jest.config.js +0 -10
  107. package/client-tmp/react/lint-css.js +0 -18
  108. package/client-tmp/react/src/guards/AuthGuard.tsx +0 -32
  109. package/client-tmp/react/src/guards/PermissionsGuard.tsx +0 -37
  110. package/client-tmp/react/src/index.js +0 -17
  111. package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.jsx +0 -13
  112. package/client-tmp/react/src/reportWebVitals.js +0 -13
  113. package/client-tmp/react/vite.config.js +0 -59
  114. /package/client-tmp/react/{jest.setup.js → jest.setup.ts} +0 -0
  115. /package/client-tmp/react/src/{setupTests.js → setupTests.ts} +0 -0
  116. /package/server/{{appName}}-app/src/main/genesis/scripts/{{{appName}}-data-pipelines.kts → {{appName}}-pipelines.kts} +0 -0
@@ -2,13 +2,13 @@
2
2
  <rapid-layout-region type="vertical">
3
3
  {{#each route.tiles}}
4
4
  {{#ifEquals @index 0}}
5
- <rapid-layout-item title="{{../title}}">
6
- <{{kebabCase ../componentName}}></{{kebabCase ../componentName}}>
5
+ <rapid-layout-item title="{{this.title}}">
6
+ <{{kebabCase this.componentName}}></{{kebabCase this.componentName}}>
7
7
  </rapid-layout-item>
8
8
  {{/ifEquals}}
9
9
  {{#ifEquals @index 1}}
10
- <rapid-layout-item title="{{../title}}">
11
- <{{kebabCase ../componentName}}></{{kebabCase ../componentName}}>
10
+ <rapid-layout-item title="{{this.title}}">
11
+ <{{kebabCase this.componentName}}></{{kebabCase this.componentName}}>
12
12
  </rapid-layout-item>
13
13
  {{/ifEquals}}
14
14
  {{/each}}
@@ -16,13 +16,13 @@
16
16
  <rapid-layout-region type="vertical">
17
17
  {{#each route.tiles}}
18
18
  {{#ifEquals @index 2}}
19
- <rapid-layout-item title="{{../title}}">
20
- <{{kebabCase ../componentName}}></{{kebabCase ../componentName}}>
19
+ <rapid-layout-item title="{{this.title}}">
20
+ <{{kebabCase this.componentName}}></{{kebabCase this.componentName}}>
21
21
  </rapid-layout-item>
22
22
  {{/ifEquals}}
23
23
  {{#ifEquals @index 3}}
24
- <rapid-layout-item title="{{../title}}">
25
- <{{kebabCase ../componentName}}></{{kebabCase ../componentName}}>
24
+ <rapid-layout-item title="{{this.title}}">
25
+ <{{kebabCase this.componentName}}></{{kebabCase this.componentName}}>
26
26
  </rapid-layout-item>
27
27
  {{/ifEquals}}
28
28
  {{/each}}
@@ -1,5 +1,5 @@
1
- import { isDev } from '@genesislcap/foundation-utils';
2
1
  import { html } from '@genesislcap/web-core';
2
+ import { persistLayout } from '../../utils';
3
3
  import type { {{pascalCase route.name}} } from './{{kebabCase route.name}}';
4
4
  {{#each route.tiles}}
5
5
  import { {{pascalCase this.componentName}} } from './{{kebabCase this.title}}-{{this.componentType}}';
@@ -11,7 +11,7 @@ import { {{pascalCase this.componentName}} } from './{{kebabCase this.title}}-{{
11
11
 
12
12
  export const {{pascalCase route.name}}Template = html<{{pascalCase route.name}}>`
13
13
  {{#if route.tiles}}
14
- <rapid-layout auto-save-key="${() => (isDev() ? null : '{{route.layoutKey}}')}">
14
+ <rapid-layout auto-save-key="${() => persistLayout('{{route.layoutKey}}')}">
15
15
  {{> (lookup ./route 'layoutType') }}
16
16
  </rapid-layout>
17
17
  {{else}}
@@ -0,0 +1,12 @@
1
+ const { rmdirSync } = require('node:fs');
2
+ const { resolve } = require('node:path');
3
+
4
+ const deleteGradleWrappers = (
5
+ paths = ['../../gradle', '../../server/gradle'],
6
+ ) => {
7
+ paths.forEach((p) => {
8
+ rmdirSync(resolve(__dirname, p), { recursive: true, force: true });
9
+ });
10
+ };
11
+
12
+ module.exports = deleteGradleWrappers;
@@ -29,7 +29,7 @@ const getPathByFramework = {
29
29
  route: (clientSrcPath, routeName, changeCase) =>
30
30
  `${clientSrcPath}/${changeCase.pascalCase(routeName)}`,
31
31
  component: (routeDir, routeName, changeCase) =>
32
- `${routeDir}/${changeCase.pascalCase(routeName)}.jsx`,
32
+ `${routeDir}/${changeCase.pascalCase(routeName)}.tsx`,
33
33
  style: (routeDir, routeName, changeCase) =>
34
34
  `${routeDir}/${changeCase.pascalCase(routeName)}.css`,
35
35
  },
@@ -76,6 +76,7 @@ const generateRoute = (route, { changeCase, writeFileWithData }, framework) => {
76
76
 
77
77
  if (route?.tiles?.length) {
78
78
  route.tiles.forEach((tile) => {
79
+ tile.metadata = tile.metadata || {};
79
80
  generateTile(tile, route, { changeCase, writeFileWithData }, framework);
80
81
  });
81
82
  }
@@ -44,12 +44,12 @@ const getPathByFramework = {
44
44
  },
45
45
  [FRAMEWORK_REACT_ALIAS]: {
46
46
  ...defaultPathGetters,
47
- index: (componentPath) => `${componentPath}/index.jsx`,
47
+ index: (componentPath) => `${componentPath}/index.tsx`,
48
48
  clientSrcPath: `../../client/src/pages`,
49
49
  route: (clientSrcPath, tile, routeName, changeCase) =>
50
50
  `${clientSrcPath}/${changeCase.pascalCase(routeName)}/${changeCase.pascalCase(tile.name)}${changeCase.pascalCase(tile.componentType)}`,
51
51
  component: (componentPath, tile, changeCase) =>
52
- `${componentPath}/${changeCase.pascalCase(tile.name)}Component.jsx`,
52
+ `${componentPath}/${changeCase.pascalCase(tile.name)}Component.tsx`,
53
53
  style: (componentPath, tile, changeCase) =>
54
54
  `${componentPath}/${changeCase.pascalCase(tile.name)}Component.css`,
55
55
  addForm: (componentPath, tile, changeCase) =>
@@ -1,4 +1,5 @@
1
1
  const excludeFrameworks = require('./excludeFrameworks');
2
+ const deleteGradleWrappers = require('./deleteGradleWrappers');
2
3
  const formatRouteData = require('./formatRouteData');
3
4
  const generateRoute = require('./generateRoute');
4
5
  const generateCsv = require('./generateCsv');
@@ -11,6 +12,7 @@ const validateRoute = require('./validateRoute');
11
12
  const validateFrameworkAlias = require('./validateFrameworkAlias');
12
13
 
13
14
  module.exports = {
15
+ deleteGradleWrappers,
14
16
  excludeFrameworks,
15
17
  formatRouteData,
16
18
  generateRoute,
@@ -1,5 +1,5 @@
1
1
  {
2
- "UI": "14.206.2",
3
- "GSF": "8.3.0",
4
- "Auth": "8.3.0"
2
+ "UI": "14.217.3",
3
+ "GSF": "8.6.0-beta1",
4
+ "Auth": "8.6.0-beta1"
5
5
  }
package/.gitignore CHANGED
@@ -44,6 +44,7 @@ client/bootstrapDone
44
44
  .husky/.gitignore
45
45
  build-cache/
46
46
  server/h2/
47
+ project-zips
47
48
 
48
49
  # Ignore Gradle GUI config
49
50
  gradle-app.setting
@@ -107,3 +108,5 @@ custom-elements.json
107
108
  # Gradle tasks
108
109
  .bootstrapDone
109
110
  .tests.executed
111
+
112
+ blankappseedtest/
package/.idea/modules.xml CHANGED
@@ -2,12 +2,12 @@
2
2
  <project version="4">
3
3
  <component name="ProjectModuleManager">
4
4
  <modules>
5
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.main.iml" />
6
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-fields/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-fields.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-fields/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-fields.main.iml" />
7
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-dao/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-dao.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-dao/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-dao.main.iml" />
8
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-view/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-view.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-view/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-view.main.iml" />
9
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-hft/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-hft.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-hft/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-hft.main.iml" />
10
- <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-sysdef.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/genesisproduct-{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-sysdef.main.iml" />
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}.{{appName}}-dictionary-cache.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}.{{appName}}-dictionary-cache.main.iml" />
6
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-fields/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-fields.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-fields/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-fields.main.iml" />
7
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-dao/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-dao.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-dao/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-dao.main.iml" />
8
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-view/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-view.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-view/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-view.main.iml" />
9
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-hft/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-hft.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-hft/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-hft.main.iml" />
10
+ <module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-sysdef.main.iml" filepath="$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/{{appName}}.{{appName}}-dictionary-cache.{{appName}}-generated-sysdef.main.iml" />
11
11
  </modules>
12
12
  </component>
13
13
  </project>
package/CHANGELOG.md CHANGED
@@ -1,5 +1,258 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.30.0-prerelease.40](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.39...v3.30.0-prerelease.40) (2024-11-07)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 4f65917
9
+
10
+ ## [3.30.0-prerelease.39](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.38...v3.30.0-prerelease.39) (2024-11-07)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 10f2ab7
16
+
17
+ ## [3.30.0-prerelease.38](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.37...v3.30.0-prerelease.38) (2024-11-07)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * script name for react template (GENC-892) (#388) (#389) 5764840
23
+
24
+ ## [3.30.0-prerelease.37](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.36...v3.30.0-prerelease.37) (2024-11-07)
25
+
26
+
27
+ ### Bug Fixes
28
+
29
+ * references in grid layout template GENC-910 (#390) 64280fa
30
+
31
+ ## [3.30.0-prerelease.36](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.35...v3.30.0-prerelease.36) (2024-11-07)
32
+
33
+
34
+ ### Features
35
+
36
+ * support base path in react app GENC-892 (#381) 388a44d
37
+
38
+ ## [3.30.0-prerelease.35](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.34...v3.30.0-prerelease.35) (2024-11-06)
39
+
40
+
41
+ ### Bug Fixes
42
+
43
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#378) e4f3afb
44
+
45
+ ## [3.30.0-prerelease.34](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.33...v3.30.0-prerelease.34) (2024-11-04)
46
+
47
+
48
+ ### Bug Fixes
49
+
50
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#375) a5d9161
51
+ * back-porting todo formatting fix to prerelease branch GENC-853 (#377) 8d6f214
52
+
53
+ ## [3.30.0-prerelease.33](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.32...v3.30.0-prerelease.33) (2024-10-29)
54
+
55
+
56
+ ### Bug Fixes
57
+
58
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 6f17702
59
+
60
+ ## [3.30.0-prerelease.32](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.31...v3.30.0-prerelease.32) (2024-10-29)
61
+
62
+
63
+ ### Bug Fixes
64
+
65
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) d26e635
66
+
67
+ ## [3.30.0-prerelease.31](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.30...v3.30.0-prerelease.31) (2024-10-25)
68
+
69
+
70
+ ### Bug Fixes
71
+
72
+ * home page url - react (#369) 388cf04
73
+
74
+ ## [3.30.0-prerelease.30](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.29...v3.30.0-prerelease.30) (2024-10-22)
75
+
76
+
77
+ ### Features
78
+
79
+ * adding support for comments/todos in generated UI files GENC-857 (#364) ba999e8
80
+
81
+ ## [3.30.0-prerelease.29](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.28...v3.30.0-prerelease.29) (2024-10-21)
82
+
83
+
84
+ ### Features
85
+
86
+ * update react version (#358) 22bb0ad
87
+
88
+ ## [3.30.0-prerelease.28](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.27...v3.30.0-prerelease.28) (2024-10-18)
89
+
90
+
91
+ ### Features
92
+
93
+ * allow to simply control layout persistence in dev [FUI-2211](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2211) / GENC-871 (#363) c6fd6f5
94
+
95
+ ## [3.30.0-prerelease.27](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.26...v3.30.0-prerelease.27) (2024-10-17)
96
+
97
+
98
+ ### Features
99
+
100
+ * allow excluding Gradle wrappers GENC-824 (#357) 5d90d1d
101
+
102
+ ## [3.30.0-prerelease.26](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.25...v3.30.0-prerelease.26) (2024-10-16)
103
+
104
+
105
+ ### Features
106
+
107
+ * add genesis launcher (#356) 236417d
108
+
109
+ ## [3.30.0-prerelease.25](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.24...v3.30.0-prerelease.25) (2024-10-16)
110
+
111
+
112
+ ### Bug Fixes
113
+
114
+ * reformat ReadMe layout & allow markdown in description GENC-845 (#361) a1b8972
115
+
116
+ ## [3.30.0-prerelease.24](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.23...v3.30.0-prerelease.24) (2024-10-14)
117
+
118
+
119
+ ### Bug Fixes
120
+
121
+ * ignore project-zips folder CIDE-53 (#360) ddb86d5
122
+
123
+ ## [3.30.0-prerelease.23](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.22...v3.30.0-prerelease.23) (2024-10-08)
124
+
125
+
126
+ ### Bug Fixes
127
+
128
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 31595f3
129
+
130
+ ## [3.30.0-prerelease.22](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.21...v3.30.0-prerelease.22) (2024-10-08)
131
+
132
+
133
+ ### Bug Fixes
134
+
135
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 9dbc341
136
+
137
+ ## [3.30.0-prerelease.21](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.20...v3.30.0-prerelease.21) (2024-10-08)
138
+
139
+
140
+ ### Bug Fixes
141
+
142
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#355) a33c5e8
143
+
144
+ ## [3.30.0-prerelease.20](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.19...v3.30.0-prerelease.20) (2024-10-04)
145
+
146
+
147
+ ### Bug Fixes
148
+
149
+ * reduce apiHost steps when using genx in prompt mode - [FUI-2207](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2207) (#343) f6ce411
150
+
151
+ ## [3.30.0-prerelease.19](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.18...v3.30.0-prerelease.19) (2024-10-03)
152
+
153
+
154
+ ### Bug Fixes
155
+
156
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#354) d5b0de0
157
+
158
+ ## [3.30.0-prerelease.18](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.17...v3.30.0-prerelease.18) (2024-09-30)
159
+
160
+
161
+ ### Bug Fixes
162
+
163
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 3ed1109
164
+
165
+ ## [3.30.0-prerelease.17](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.16...v3.30.0-prerelease.17) (2024-09-30)
166
+
167
+
168
+ ### Bug Fixes
169
+
170
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) a324936
171
+
172
+ ## [3.30.0-prerelease.16](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.15...v3.30.0-prerelease.16) (2024-09-30)
173
+
174
+
175
+ ### Features
176
+
177
+ * add webpack builder in react (#350) 69c4c6b, closes FUI-2173 FUI-2173 FUI-2173 FUI-2157 FUI-2157 origin/ak/FUI-2173 ak/FUI-2157 FUI-2157 FUI-2157 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140 FUI-2140
178
+
179
+ ## [3.30.0-prerelease.15](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.14...v3.30.0-prerelease.15) (2024-09-26)
180
+
181
+
182
+ ### Features
183
+
184
+ * pbc support in react [FUI-2140](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2140) (#347) 4c41243, closes FUI-2173 FUI-2173 FUI-2173 FUI-2157 FUI-2157 origin/ak/FUI-2173 ak/FUI-2157 FUI-2157 FUI-2157
185
+
186
+ ## [3.30.0-prerelease.14](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.13...v3.30.0-prerelease.14) (2024-09-26)
187
+
188
+
189
+ ### Features
190
+
191
+ * replaced karma with jest in angular (#348) 805d7ec
192
+
193
+ ## [3.30.0-prerelease.13](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.12...v3.30.0-prerelease.13) (2024-09-18)
194
+
195
+
196
+ ### Bug Fixes
197
+
198
+ * update --nav-height value - [FUI-2207](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2207) (#345) 83894b1
199
+
200
+ ## [3.30.0-prerelease.12](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.11...v3.30.0-prerelease.12) (2024-09-18)
201
+
202
+
203
+ ### Bug Fixes
204
+
205
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) d7eab5a
206
+
207
+ ## [3.30.0-prerelease.11](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.10...v3.30.0-prerelease.11) (2024-09-18)
208
+
209
+
210
+ ### Bug Fixes
211
+
212
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) eabf8c7
213
+
214
+ ## [3.30.0-prerelease.10](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.9...v3.30.0-prerelease.10) (2024-09-13)
215
+
216
+
217
+ ### Bug Fixes
218
+
219
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#342) d255814
220
+
221
+ ## [3.30.0-prerelease.9](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.8...v3.30.0-prerelease.9) (2024-09-12)
222
+
223
+
224
+ ### Features
225
+
226
+ * integrate TypeScript support into react - [FUI-2157](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2157) (#338) ac55e1f
227
+
228
+ ## [3.30.0-prerelease.8](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.7...v3.30.0-prerelease.8) (2024-09-11)
229
+
230
+
231
+ ### Bug Fixes
232
+
233
+ * updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 09ba9a2
234
+
235
+ ## [3.30.0-prerelease.7](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.6...v3.30.0-prerelease.7) (2024-09-11)
236
+
237
+
238
+ ### Bug Fixes
239
+
240
+ * updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 5d4f8da
241
+
242
+ ## [3.30.0-prerelease.6](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.5...v3.30.0-prerelease.6) (2024-09-10)
243
+
244
+
245
+ ### Features
246
+
247
+ * product name specified with settings plugin property (#331) 082cea0
248
+
249
+ ## [3.30.0-prerelease.5](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.4...v3.30.0-prerelease.5) (2024-09-09)
250
+
251
+
252
+ ### Bug Fixes
253
+
254
+ * automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#341) 1d38563
255
+
3
256
  ## [3.30.0-prerelease.4](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.3...v3.30.0-prerelease.4) (2024-09-06)
4
257
 
5
258
 
package/README.md CHANGED
@@ -1,10 +1,7 @@
1
1
  # {{appName}}
2
2
 
3
- This project has been created from the Genesis Blank Application Seed. Our seeds allow users to quickly bootstrap
4
- their projects. Each seed adheres to strict Genesis best practices, and has passed numerous performance, compliance and
5
- accessibility checks.
3
+ {{{description}}}
6
4
 
7
- {{description}}
8
5
  {{!
9
6
 
10
7
  # Testing
@@ -34,16 +31,15 @@ npx -y @genesislcap/genx@latest init myapp -x -s ./blank-app-seed --enableSSO --
34
31
  ```
35
32
  }}
36
33
 
37
- # Introduction
34
+ # Getting started with development
38
35
 
39
- ## Next Steps
36
+ ## Next steps
40
37
 
41
38
  To get a simple application running check the [Quick Start](https://learn.genesis.global/docs/getting-started/quick-start/) guide.
42
39
 
43
40
  If you need an introduction to the Genesis platform and its modules it's worth heading [here](https://learn.genesis.global/docs/getting-started/learn-the-basics/simple-introduction/).
44
41
 
45
-
46
- ## Project Structure
42
+ ## Project structure
47
43
 
48
44
  This project contains **server** and **client** directories which contain the server and client code respectively.
49
45
 
@@ -54,7 +50,7 @@ It is built using a DSL-like definition based on the Kotlin language: GPAL.
54
50
 
55
51
  When first opening the project, if you receive a notification from IntelliJ IDE detecting Gradle project select the option to 'Load as gradle project'.
56
52
 
57
- ### Web Client
53
+ ### Web client
58
54
 
59
55
  The Web client for this project can be found [here](./client/README.md). It is built using Genesis's next
60
56
  generation web development framework, which is based on Web Components.
@@ -66,4 +62,4 @@ This is free and unencumbered software released into the public domain. For full
66
62
  **NOTE** This project uses licensed components listed in the next section, thus licenses for those components are required during development.
67
63
 
68
64
  ## Licensed components
69
- Genesis low-code platform
65
+ Genesis application platform
@@ -0,0 +1 @@
1
+ module.exports = 'test-file-stub';
@@ -90,35 +90,6 @@
90
90
  "buildTarget": "{{pkgName}}:build"
91
91
  }
92
92
  },
93
- "test": {
94
- "builder": "@angular-builders/custom-webpack:karma",
95
- "configurations": {
96
- "production": {
97
- "customWebpackConfig": {
98
- "path": "./webpack.prod.config.js",
99
- "mergeStrategies": {
100
- "externals": "replace"
101
- }
102
- }
103
- },
104
- "development": {
105
- "customWebpackConfig": {
106
- "path": "./webpack.dev.config.js",
107
- "mergeStrategies": {
108
- "externals": "replace"
109
- }
110
- }
111
- }
112
- },
113
- "defaultConfiguration": "development",
114
- "options": {
115
- "polyfills": ["zone.js", "zone.js/testing"],
116
- "tsConfig": "tsconfig.spec.json",
117
- "assets": ["src/favicon.ico", "src/assets"],
118
- "styles": ["src/styles/styles.css"],
119
- "scripts": []
120
- }
121
- },
122
93
  "lint": {
123
94
  "builder": "@angular-eslint/builder:lint",
124
95
  "options": {
@@ -0,0 +1,20 @@
1
+ const { pathsToModuleNameMapper } = require('ts-jest');
2
+ const { compilerOptions } = require('./tsconfig');
3
+
4
+ module.exports = {
5
+ preset: 'jest-preset-angular',
6
+ roots: ['<rootDir>/src/'],
7
+ testMatch: ['**/+(*.)+(spec).+(ts)'],
8
+ setupFilesAfterEnv: ['<rootDir>/src/jest.setup.ts'],
9
+ collectCoverage: true,
10
+ coverageReporters: ['html'],
11
+ coverageDirectory: 'coverage/my-app',
12
+ transformIgnorePatterns: [
13
+ 'node_modules/(?!(@genesislcap/*|consola|@angular|@microsoft|exenv-es6|uuid))',
14
+ ],
15
+ moduleNameMapper: {
16
+ ...pathsToModuleNameMapper(compilerOptions.paths || {}, { prefix: '<rootDir>/' }),
17
+ '\\.(jpg|jpeg|png|gif|svg)$': '<rootDir>/src/__mocks__/fileMock.js',
18
+ '\\.(css)$': 'identity-obj-proxy',
19
+ },
20
+ };
@@ -27,7 +27,7 @@
27
27
  "lint:fix": "genx lint --fix",
28
28
  "lint:eslint": "genx lint -l eslint --profile",
29
29
  "lint:stylelint": "node lint-css.js",
30
- "test": "ng test",
30
+ "test": "jest",
31
31
  "test:e2e": "genx test --e2e",
32
32
  "test:e2e:debug": "genx test --e2e --debug",
33
33
  "test:e2e:ui": "genx test --e2e --interactive",
@@ -54,14 +54,14 @@
54
54
  "@genesislcap/genx": "{{versions.UI}}",
55
55
  "@genesislcap/build-kit": "{{versions.UI}}",
56
56
  "@types/jasmine": "~5.1.0",
57
+ "@types/jest": "^29.5.13",
57
58
  "@types/numeral": "^2.0.5",
58
59
  "file-loader": "^6.2.0",
59
60
  "jasmine-core": "~5.1.0",
60
- "karma": "~6.4.0",
61
- "karma-chrome-launcher": "~3.2.0",
62
- "karma-coverage": "~2.2.0",
63
- "karma-jasmine": "~5.1.0",
64
- "karma-jasmine-html-reporter": "~2.1.0",
61
+ "jest": "^29.7.0",
62
+ "jest-environment-jsdom": "^29.7.0",
63
+ "jest-preset-angular": "^14.2.4",
64
+ "jest-transform-stub": "^2.0.0",
65
65
  "svg-url-loader": "^8.0.0",
66
66
  "typescript": "~5.4.5",
67
67
  "ts-node": "10.9.2",
@@ -4,7 +4,7 @@ import { DefaultLayoutComponent } from './default.layout';
4
4
  import { ElementRef, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
5
5
 
6
6
  class MockRouter {
7
- navigate = jasmine.createSpy('navigate');
7
+ navigate = jest.fn();
8
8
  }
9
9
 
10
10
  class MockElementRef implements ElementRef {
@@ -46,4 +46,4 @@ describe('DefaultLayoutComponent', () => {
46
46
  component.navigateAngular(path);
47
47
  expect(router.navigate).toHaveBeenCalledWith([path]);
48
48
  });
49
- });
49
+ });
@@ -0,0 +1,46 @@
1
+ import 'jest-preset-angular/setup-jest';
2
+
3
+ // Mock window.matchMedia
4
+ Object.defineProperty(window, 'matchMedia', {
5
+ writable: true,
6
+ value: (query: string) => ({
7
+ matches: false,
8
+ media: query,
9
+ onchange: null,
10
+ addListener: jest.fn(), // Deprecated
11
+ removeListener: jest.fn(), // Deprecated
12
+ addEventListener: jest.fn(),
13
+ removeEventListener: jest.fn(),
14
+ dispatchEvent: jest.fn(),
15
+ }),
16
+ });
17
+
18
+ // Mock BroadcastChannel
19
+ class MockBroadcastChannel {
20
+ name: string;
21
+ onmessage: ((this: BroadcastChannel, ev: MessageEvent) => any) | null = null;
22
+ onmessageerror: ((this: BroadcastChannel, ev: MessageEvent) => any) | null = null;
23
+
24
+ constructor(name: string) {
25
+ this.name = name;
26
+ }
27
+
28
+ postMessage(message: any) {
29
+ if (this.onmessage) {
30
+ this.onmessage({ data: message } as MessageEvent);
31
+ }
32
+ }
33
+
34
+ close() {}
35
+
36
+ addEventListener() {}
37
+ removeEventListener() {}
38
+ dispatchEvent() {
39
+ return false;
40
+ }
41
+ }
42
+
43
+ Object.defineProperty(window, 'BroadcastChannel', {
44
+ writable: true,
45
+ value: MockBroadcastChannel,
46
+ });
@@ -1,9 +1,8 @@
1
- /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
1
  {
3
2
  "extends": "./tsconfig.json",
4
3
  "compilerOptions": {
5
4
  "outDir": "./out-tsc/app",
6
- "types": ["node"],
5
+ "types": ["node"]
7
6
  },
8
7
  "files": [
9
8
  "src/main.ts"
@@ -1,4 +1,3 @@
1
- /* To learn more about this file see: https://angular.io/config/tsconfig. */
2
1
  {
3
2
  "compileOnSave": false,
4
3
  "compilerOptions": {
@@ -23,7 +22,7 @@
23
22
  "ES2022",
24
23
  "dom"
25
24
  ],
26
- "resolveJsonModule": true,
25
+ "resolveJsonModule": true
27
26
  },
28
27
  "angularCompilerOptions": {
29
28
  "enableI18nLegacyMessageIdFormat": false,