@genesislcap/blank-app-seed 3.30.0-prerelease.3 → 3.30.0-prerelease.30
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/.genx/configure.js +5 -0
- package/.genx/package.json +1 -1
- package/.genx/prompts/api.js +2 -9
- package/.genx/prompts/server.js +9 -0
- package/.genx/prompts.js +9 -2
- package/.genx/static.js +1 -1
- package/.genx/templates/angular/component/component.hbs +12 -0
- package/.genx/templates/react/chart.hbs +7 -3
- package/.genx/templates/react/component/component.column.defs.hbs +4 -2
- package/.genx/templates/react/component/component.create.form.hbs +2 -2
- package/.genx/templates/react/component/component.gridOptions.hbs +4 -2
- package/.genx/templates/react/component/component.hbs +76 -27
- package/.genx/templates/react/component/component.index.hbs +1 -1
- package/.genx/templates/react/component/component.update.form.hbs +1 -1
- package/.genx/templates/react/entityManager.hbs +62 -49
- package/.genx/templates/react/form.hbs +7 -3
- package/.genx/templates/react/grid.hbs +16 -10
- package/.genx/templates/react/route.hbs +3 -3
- package/.genx/templates/react/tabsLayout.hbs +5 -5
- package/.genx/templates/web-components/component/component.hbs +12 -0
- package/.genx/templates/web-components/route.template.hbs +2 -2
- package/.genx/utils/deleteGradleWrappers.js +12 -0
- package/.genx/utils/generateRoute.js +9 -7
- package/.genx/utils/generateTile.js +31 -16
- package/.genx/utils/index.js +2 -0
- package/.genx/versions.json +3 -3
- package/.gitignore +3 -0
- package/.idea/modules.xml +6 -6
- package/CHANGELOG.md +189 -0
- package/README.md +5 -5
- package/client-tmp/angular/__mocks__/fileMock.js +1 -0
- package/client-tmp/angular/angular.json +0 -29
- package/client-tmp/angular/jest.config.js +20 -0
- package/client-tmp/angular/package.json +6 -6
- package/client-tmp/angular/src/app/layouts/default/default.layout.spec.ts +2 -2
- package/client-tmp/angular/src/jest.setup.ts +46 -0
- package/client-tmp/angular/tsconfig.app.json +1 -2
- package/client-tmp/angular/tsconfig.json +1 -2
- package/client-tmp/angular/tsconfig.spec.json +13 -7
- package/client-tmp/react/.babelrc +10 -0
- package/client-tmp/react/.eslintrc.cjs +1 -0
- package/client-tmp/react/jest.config.ts +15 -0
- package/client-tmp/react/jest.setup.ts +1 -0
- package/client-tmp/react/lint-css.ts +19 -0
- package/client-tmp/react/package.json +45 -17
- package/client-tmp/react/public/favicon.ico +0 -0
- package/client-tmp/react/public/index.html +13 -0
- package/client-tmp/react/src/App.tsx +95 -68
- package/client-tmp/react/src/components/{ErrorMessage.test.js → ErrorMessage/ErrorMessage.test.tsx} +31 -16
- package/client-tmp/react/src/components/ErrorMessage/{ErrorMessage.jsx → ErrorMessage.tsx} +9 -4
- package/client-tmp/react/src/config.ts +2 -16
- package/client-tmp/react/src/custom-elements.d.ts +21 -9
- package/client-tmp/react/src/environments/environment.prod.ts +8 -0
- package/client-tmp/react/src/environments/environment.ts +9 -0
- package/client-tmp/react/src/guards/ProtectedGuard.tsx +64 -0
- package/client-tmp/react/src/helpers/hasPermissionHelper.tsx +10 -0
- package/client-tmp/react/src/helpers/isAuthenticatedHelper.tsx +14 -0
- package/client-tmp/react/src/helpers/isConnectedHelper.tsx +16 -0
- package/client-tmp/react/src/layouts/blank/BlankLayout.tsx +1 -1
- package/client-tmp/react/src/layouts/default/DefaultLayout.tsx +26 -15
- package/client-tmp/react/src/main.tsx +21 -5
- package/client-tmp/react/src/pages/AuthPage/AuthPage.test.tsx +10 -0
- package/client-tmp/react/src/pages/AuthPage/{AuthPage.jsx → AuthPage.tsx} +3 -2
- package/client-tmp/react/src/pages/NotFoundPage/NotFoundPage.css +0 -0
- package/client-tmp/react/src/pages/NotFoundPage/NotFoundPage.tsx +14 -0
- package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.test.tsx +17 -0
- package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.tsx +14 -0
- package/client-tmp/react/src/pbc/README.md +7 -0
- package/client-tmp/react/src/pbc/container.tsx +44 -0
- package/client-tmp/react/src/pbc/elementsRenderer.tsx +40 -0
- package/client-tmp/react/src/pbc/utils.ts +121 -0
- package/client-tmp/react/src/services/store.service.ts +48 -0
- package/client-tmp/react/src/share/foundation-login.ts +13 -6
- package/client-tmp/react/src/share/genesis-components.ts +49 -23
- package/client-tmp/react/src/store/AuthContext.tsx +0 -2
- package/client-tmp/react/src/store/RoutesContext.tsx +74 -0
- package/client-tmp/react/src/types/LayoutName.ts +3 -0
- package/client-tmp/react/src/types/RouteLayouts.ts +3 -1
- package/client-tmp/react/src/utils/getLayoutNameByRoute.ts +5 -0
- package/client-tmp/react/src/utils/history.ts +4 -2
- package/client-tmp/react/src/utils/index.ts +3 -1
- package/client-tmp/react/src/utils/layout.ts +11 -0
- package/client-tmp/react/test/e2e/fixture.ts +1 -1
- package/client-tmp/react/tsconfig.app.json +2 -26
- package/client-tmp/react/tsconfig.json +31 -8
- package/client-tmp/react/tsconfig.node.json +1 -1
- package/client-tmp/react/vite.config.ts +70 -0
- package/client-tmp/react/webpack.config.js +103 -0
- package/client-tmp/web-components/package.json +2 -1
- package/client-tmp/web-components/src/main/main.styles.ts +1 -1
- package/client-tmp/web-components/src/utils/index.ts +1 -0
- package/client-tmp/web-components/src/utils/layout.ts +11 -0
- package/client-tmp/web-components/tsconfig.json +1 -1
- package/package.json +1 -1
- package/server/build.gradle.kts +1 -0
- package/server/gradle.properties +1 -0
- package/server/settings.gradle.kts +8 -7
- package/settings.gradle.kts +7 -4
- package/testData/excel/.gitkeep +0 -0
- package/client-tmp/angular/karma.conf.js +0 -9
- package/client-tmp/angular/src/app/app.component.spec.ts +0 -23
- package/client-tmp/react/env.development.json +0 -3
- package/client-tmp/react/lint-css.js +0 -18
- package/client-tmp/react/src/guards/AuthGuard.tsx +0 -32
- package/client-tmp/react/src/guards/PermissionsGuard.tsx +0 -37
- package/client-tmp/react/src/index.js +0 -17
- package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.jsx +0 -13
- package/client-tmp/react/src/reportWebVitals.js +0 -13
- package/client-tmp/react/vite.config.js +0 -59
- /package/client-tmp/react/src/{setupTests.js → setupTests.ts} +0 -0
- /package/server/{{appName}}-app/src/main/genesis/scripts/{{{appName}}-data-pipelines.kts → {{appName}}-pipelines.kts} +0 -0
|
@@ -44,18 +44,32 @@ const getPathByFramework = {
|
|
|
44
44
|
},
|
|
45
45
|
[FRAMEWORK_REACT_ALIAS]: {
|
|
46
46
|
...defaultPathGetters,
|
|
47
|
-
index: (componentPath) => `${componentPath}/index.
|
|
47
|
+
index: (componentPath) => `${componentPath}/index.tsx`,
|
|
48
48
|
clientSrcPath: `../../client/src/pages`,
|
|
49
|
-
route: (clientSrcPath, tile, routeName) =>
|
|
50
|
-
`${clientSrcPath}/${routeName}/${tile.name}
|
|
51
|
-
component: (componentPath, tile) =>
|
|
52
|
-
`${componentPath}/${tile.name}.
|
|
53
|
-
style: (componentPath, tile) =>
|
|
54
|
-
`${componentPath}/${tile.name}.
|
|
49
|
+
route: (clientSrcPath, tile, routeName, changeCase) =>
|
|
50
|
+
`${clientSrcPath}/${changeCase.pascalCase(routeName)}/${changeCase.pascalCase(tile.name)}${changeCase.pascalCase(tile.componentType)}`,
|
|
51
|
+
component: (componentPath, tile, changeCase) =>
|
|
52
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}Component.tsx`,
|
|
53
|
+
style: (componentPath, tile, changeCase) =>
|
|
54
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}Component.css`,
|
|
55
|
+
addForm: (componentPath, tile, changeCase) =>
|
|
56
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}CreateFormSchema.ts`,
|
|
57
|
+
updateForm: (componentPath, tile, changeCase) =>
|
|
58
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}UpdateFormSchema.ts`,
|
|
59
|
+
columnDefs: (componentPath, tile, changeCase) =>
|
|
60
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}ColumnDefs.ts`,
|
|
61
|
+
gridOptions: (componentPath, tile, changeCase) =>
|
|
62
|
+
`${componentPath}/${changeCase.pascalCase(tile.name)}GridOptions.ts`,
|
|
55
63
|
},
|
|
56
64
|
};
|
|
57
65
|
|
|
58
|
-
const getFilesToWrite = (
|
|
66
|
+
const getFilesToWrite = (
|
|
67
|
+
tileData,
|
|
68
|
+
routeName,
|
|
69
|
+
path,
|
|
70
|
+
sourceTemplateDir,
|
|
71
|
+
changeCase,
|
|
72
|
+
) => {
|
|
59
73
|
const {
|
|
60
74
|
clientSrcPath,
|
|
61
75
|
route: getRouteDir,
|
|
@@ -69,7 +83,7 @@ const getFilesToWrite = (tileData, routeName, path, sourceTemplateDir) => {
|
|
|
69
83
|
gridOptions: getGridOptionsTarget,
|
|
70
84
|
} = path;
|
|
71
85
|
|
|
72
|
-
const routeDir = getRouteDir(clientSrcPath, tileData, routeName);
|
|
86
|
+
const routeDir = getRouteDir(clientSrcPath, tileData, routeName, changeCase);
|
|
73
87
|
|
|
74
88
|
const componentIndexFile = {
|
|
75
89
|
source: `${sourceTemplateDir}/component/component.index.hbs`,
|
|
@@ -78,32 +92,32 @@ const getFilesToWrite = (tileData, routeName, path, sourceTemplateDir) => {
|
|
|
78
92
|
|
|
79
93
|
const componentFile = {
|
|
80
94
|
source: `${sourceTemplateDir}/component/component.hbs`,
|
|
81
|
-
target: getComponentTarget(routeDir, tileData),
|
|
95
|
+
target: getComponentTarget(routeDir, tileData, changeCase),
|
|
82
96
|
};
|
|
83
97
|
|
|
84
98
|
const componentStylesFile = {
|
|
85
99
|
source: `${sourceTemplateDir}/component/component.styles.hbs`,
|
|
86
|
-
target: getStyleTarget(routeDir, tileData),
|
|
100
|
+
target: getStyleTarget(routeDir, tileData, changeCase),
|
|
87
101
|
};
|
|
88
102
|
|
|
89
103
|
const componentAddFormFile = {
|
|
90
104
|
source: `${sourceTemplateDir}/component/component.create.form.hbs`,
|
|
91
|
-
target: getAddFormTarget(routeDir, tileData),
|
|
105
|
+
target: getAddFormTarget(routeDir, tileData, changeCase),
|
|
92
106
|
};
|
|
93
107
|
|
|
94
108
|
const componentUpdateFormFile = {
|
|
95
109
|
source: `${sourceTemplateDir}/component/component.update.form.hbs`,
|
|
96
|
-
target: getUpdateFormTarget(routeDir, tileData),
|
|
110
|
+
target: getUpdateFormTarget(routeDir, tileData, changeCase),
|
|
97
111
|
};
|
|
98
112
|
|
|
99
113
|
const componentColumnsFile = {
|
|
100
114
|
source: `${sourceTemplateDir}/component/component.column.defs.hbs`,
|
|
101
|
-
target: getColumnDefsTarget(routeDir, tileData),
|
|
115
|
+
target: getColumnDefsTarget(routeDir, tileData, changeCase),
|
|
102
116
|
};
|
|
103
117
|
|
|
104
118
|
const componentGridOptionsFile = {
|
|
105
119
|
source: `${sourceTemplateDir}/component/component.gridOptions.hbs`,
|
|
106
|
-
target: getGridOptionsTarget(routeDir, tileData),
|
|
120
|
+
target: getGridOptionsTarget(routeDir, tileData, changeCase),
|
|
107
121
|
};
|
|
108
122
|
|
|
109
123
|
const filesToWrite = [componentIndexFile, componentFile, componentStylesFile];
|
|
@@ -160,13 +174,14 @@ const generateTile = (
|
|
|
160
174
|
const routeName = changeCase.paramCase(route.name);
|
|
161
175
|
const sourceTemplateDir = `../${DIR_TEMPLATE_BY_FRAMEWORK[framework]}`;
|
|
162
176
|
const { clientSrcPath, route: getRouteDir } = getPathByFramework[framework];
|
|
163
|
-
const routeDir = getRouteDir(clientSrcPath, tileData, routeName);
|
|
177
|
+
const routeDir = getRouteDir(clientSrcPath, tileData, routeName, changeCase);
|
|
164
178
|
|
|
165
179
|
const filesToWrite = getFilesToWrite(
|
|
166
180
|
tileData,
|
|
167
181
|
routeName,
|
|
168
182
|
getPathByFramework[framework],
|
|
169
183
|
sourceTemplateDir,
|
|
184
|
+
changeCase,
|
|
170
185
|
);
|
|
171
186
|
|
|
172
187
|
makeDirectory(resolve(__dirname, routeDir));
|
package/.genx/utils/index.js
CHANGED
|
@@ -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,
|
package/.genx/versions.json
CHANGED
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/
|
|
6
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-fields/
|
|
7
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-dao/
|
|
8
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-view/
|
|
9
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-hft/
|
|
10
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/modules/server/build/internal-modules/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/
|
|
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,194 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [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)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* adding support for comments/todos in generated UI files GENC-857 (#364) ba999e8
|
|
9
|
+
|
|
10
|
+
## [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)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* update react version (#358) 22bb0ad
|
|
16
|
+
|
|
17
|
+
## [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)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Features
|
|
21
|
+
|
|
22
|
+
* allow to simply control layout persistence in dev [FUI-2211](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2211) / GENC-871 (#363) c6fd6f5
|
|
23
|
+
|
|
24
|
+
## [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)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Features
|
|
28
|
+
|
|
29
|
+
* allow excluding Gradle wrappers GENC-824 (#357) 5d90d1d
|
|
30
|
+
|
|
31
|
+
## [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)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
### Features
|
|
35
|
+
|
|
36
|
+
* add genesis launcher (#356) 236417d
|
|
37
|
+
|
|
38
|
+
## [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)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
### Bug Fixes
|
|
42
|
+
|
|
43
|
+
* reformat ReadMe layout & allow markdown in description GENC-845 (#361) a1b8972
|
|
44
|
+
|
|
45
|
+
## [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)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
### Bug Fixes
|
|
49
|
+
|
|
50
|
+
* ignore project-zips folder CIDE-53 (#360) ddb86d5
|
|
51
|
+
|
|
52
|
+
## [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)
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
### Bug Fixes
|
|
56
|
+
|
|
57
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 31595f3
|
|
58
|
+
|
|
59
|
+
## [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)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Bug Fixes
|
|
63
|
+
|
|
64
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 9dbc341
|
|
65
|
+
|
|
66
|
+
## [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)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
### Bug Fixes
|
|
70
|
+
|
|
71
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#355) a33c5e8
|
|
72
|
+
|
|
73
|
+
## [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)
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
### Bug Fixes
|
|
77
|
+
|
|
78
|
+
* reduce apiHost steps when using genx in prompt mode - [FUI-2207](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2207) (#343) f6ce411
|
|
79
|
+
|
|
80
|
+
## [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)
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
### Bug Fixes
|
|
84
|
+
|
|
85
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#354) d5b0de0
|
|
86
|
+
|
|
87
|
+
## [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)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
### Bug Fixes
|
|
91
|
+
|
|
92
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 3ed1109
|
|
93
|
+
|
|
94
|
+
## [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)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
### Bug Fixes
|
|
98
|
+
|
|
99
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) a324936
|
|
100
|
+
|
|
101
|
+
## [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)
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
### Features
|
|
105
|
+
|
|
106
|
+
* 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
|
|
107
|
+
|
|
108
|
+
## [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)
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
### Features
|
|
112
|
+
|
|
113
|
+
* 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
|
|
114
|
+
|
|
115
|
+
## [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)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
### Features
|
|
119
|
+
|
|
120
|
+
* replaced karma with jest in angular (#348) 805d7ec
|
|
121
|
+
|
|
122
|
+
## [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)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
### Bug Fixes
|
|
126
|
+
|
|
127
|
+
* update --nav-height value - [FUI-2207](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2207) (#345) 83894b1
|
|
128
|
+
|
|
129
|
+
## [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)
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
### Bug Fixes
|
|
133
|
+
|
|
134
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) d7eab5a
|
|
135
|
+
|
|
136
|
+
## [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)
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
### Bug Fixes
|
|
140
|
+
|
|
141
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) eabf8c7
|
|
142
|
+
|
|
143
|
+
## [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)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
### Bug Fixes
|
|
147
|
+
|
|
148
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#342) d255814
|
|
149
|
+
|
|
150
|
+
## [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)
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
### Features
|
|
154
|
+
|
|
155
|
+
* integrate TypeScript support into react - [FUI-2157](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2157) (#338) ac55e1f
|
|
156
|
+
|
|
157
|
+
## [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)
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
### Bug Fixes
|
|
161
|
+
|
|
162
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 09ba9a2
|
|
163
|
+
|
|
164
|
+
## [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)
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
### Bug Fixes
|
|
168
|
+
|
|
169
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 5d4f8da
|
|
170
|
+
|
|
171
|
+
## [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)
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
### Features
|
|
175
|
+
|
|
176
|
+
* product name specified with settings plugin property (#331) 082cea0
|
|
177
|
+
|
|
178
|
+
## [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)
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
### Bug Fixes
|
|
182
|
+
|
|
183
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#341) 1d38563
|
|
184
|
+
|
|
185
|
+
## [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)
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
### Features
|
|
189
|
+
|
|
190
|
+
* add unit tests - [FUI-2173](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2173) (#332) a4168f3
|
|
191
|
+
|
|
3
192
|
## [3.30.0-prerelease.3](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.2...v3.30.0-prerelease.3) (2024-09-06)
|
|
4
193
|
|
|
5
194
|
|
package/README.md
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
# {{appName}}
|
|
2
2
|
|
|
3
|
-
|
|
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
|
|
@@ -42,9 +39,12 @@ To get a simple application running check the [Quick Start](https://learn.genesi
|
|
|
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
42
|
## Project Structure
|
|
47
43
|
|
|
44
|
+
This project has been created from the Genesis Blank Application Seed. Our seeds allow users to quickly bootstrap
|
|
45
|
+
their projects. Each seed adheres to strict Genesis best practices, and has passed numerous performance, compliance and
|
|
46
|
+
accessibility checks.
|
|
47
|
+
|
|
48
48
|
This project contains **server** and **client** directories which contain the server and client code respectively.
|
|
49
49
|
|
|
50
50
|
### Server
|
|
@@ -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": "
|
|
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
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
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 =
|
|
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,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,
|
|
@@ -1,15 +1,21 @@
|
|
|
1
|
-
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
|
2
1
|
{
|
|
3
2
|
"extends": "./tsconfig.json",
|
|
4
3
|
"compilerOptions": {
|
|
4
|
+
"module": "ES2022",
|
|
5
|
+
"target": "ES2022",
|
|
5
6
|
"outDir": "./out-tsc/spec",
|
|
6
7
|
"types": [
|
|
7
|
-
"
|
|
8
|
-
]
|
|
8
|
+
"jest"
|
|
9
|
+
],
|
|
10
|
+
"esModuleInterop": true,
|
|
11
|
+
"emitDecoratorMetadata": true,
|
|
12
|
+
"resolveJsonModule": true
|
|
9
13
|
},
|
|
14
|
+
"files": [
|
|
15
|
+
"src/jest.setup.ts",
|
|
16
|
+
],
|
|
10
17
|
"include": [
|
|
11
|
-
"src/**/*.
|
|
12
|
-
"src
|
|
13
|
-
"src/**/*.spec.ts"
|
|
18
|
+
"src/**/*.spec.ts",
|
|
19
|
+
"src/**/*.d.ts"
|
|
14
20
|
]
|
|
15
|
-
}
|
|
21
|
+
}
|
|
@@ -10,6 +10,7 @@ module.exports = {
|
|
|
10
10
|
parser: '@typescript-eslint/parser',
|
|
11
11
|
plugins: ['react-refresh'],
|
|
12
12
|
rules: {
|
|
13
|
+
'@typescript-eslint/no-explicit-any': 'off',
|
|
13
14
|
'@typescript-eslint/no-unused-vars': 'off',
|
|
14
15
|
'@typescript-eslint/no-var-requires': 'off',
|
|
15
16
|
'react-refresh/only-export-components': [
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Config } from '@jest/types';
|
|
2
|
+
|
|
3
|
+
const config: Config.InitialOptions = {
|
|
4
|
+
testEnvironment: 'jsdom',
|
|
5
|
+
moduleFileExtensions: ['js', 'jsx', 'ts', 'tsx'],
|
|
6
|
+
transform: {
|
|
7
|
+
'^.+\\.jsx?$': 'babel-jest',
|
|
8
|
+
'^.+\\.tsx?$': ['ts-jest', { tsconfig: 'tsconfig.app.json' }],
|
|
9
|
+
},
|
|
10
|
+
setupFilesAfterEnv: ['<rootDir>/jest.setup.ts'],
|
|
11
|
+
testMatch: ["**/?(*.)+(test).[jt]s?(x)"],
|
|
12
|
+
watchPathIgnorePatterns: ["<rootDir>/node_modules/", "<rootDir>/dist/"],
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export default config;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-dom';
|