@genesislcap/blank-app-seed 3.29.2 → 3.30.0-prerelease.10
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/package.json +1 -1
- package/.genx/scripts/update-versions.js +45 -15
- package/.genx/templates/angular/entityManager.hbs +3 -0
- package/.genx/templates/angular/route.hbs +0 -1
- package/.genx/templates/react/chart.hbs +9 -1
- 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 +5 -3
- package/.genx/templates/react/component/component.hbs +65 -20
- 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 +63 -43
- package/.genx/templates/react/form.hbs +9 -1
- package/.genx/templates/react/grid.hbs +23 -7
- package/.genx/templates/react/gridLayout.hbs +28 -28
- package/.genx/templates/react/horizontalLayout.hbs +5 -5
- package/.genx/templates/react/route.hbs +4 -19
- package/.genx/templates/react/tabsLayout.hbs +5 -5
- package/.genx/templates/web-components/entityManager.hbs +3 -0
- package/.genx/utils/formatRouteData.js +1 -1
- package/.genx/utils/generateRoute.js +8 -7
- package/.genx/utils/generateTile.js +31 -15
- package/.genx/versions.json +3 -3
- package/.github/pull_request_template.md +1 -1
- package/.github/workflows/build.yml +3 -2
- package/.github/workflows/slack.yml +1 -1
- package/.github/workflows/upgrade.yml +6 -1
- package/.github/workflows/upgrade_prerelease.yml +1 -0
- package/.idea/modules.xml +6 -6
- package/CHANGELOG.md +165 -4
- package/client-tmp/react/.babelrc +10 -0
- package/client-tmp/react/.eslintrc.cjs +4 -1
- package/client-tmp/react/env.development.json +3 -0
- package/client-tmp/react/index.html +1 -1
- 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 +42 -6
- package/client-tmp/react/playwright.config.ts +17 -0
- package/client-tmp/react/src/App.tsx +34 -7
- package/client-tmp/react/src/components/ErrorMessage/ErrorMessage.test.tsx +95 -0
- package/client-tmp/react/src/components/ErrorMessage/ErrorMessage.tsx +67 -0
- package/client-tmp/react/src/config.ts +2 -1
- package/client-tmp/react/src/custom-elements.d.ts +19 -9
- package/client-tmp/react/src/guards/AuthGuard.tsx +1 -1
- package/client-tmp/react/src/guards/PermissionsGuard.tsx +37 -0
- package/client-tmp/react/src/index.ts +21 -0
- package/client-tmp/react/src/pages/AuthPage/AuthPage.test.tsx +10 -0
- package/client-tmp/react/src/pages/{auth/AuthPage.jsx → AuthPage/AuthPage.tsx} +3 -2
- package/client-tmp/react/src/pages/NotPermittedPage/NotPermittedPage.css +0 -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/{reportWebVitals.js → reportWebVitals.ts} +1 -1
- package/client-tmp/react/src/share/foundation-login.ts +1 -1
- package/client-tmp/react/src/svg-elements.d.ts +1 -1
- package/client-tmp/react/src/utils/fdc3.ts +32 -0
- package/client-tmp/react/src/utils/history.ts +1 -3
- package/client-tmp/react/src/utils/index.ts +4 -0
- package/client-tmp/react/src/utils/permissions.ts +7 -0
- package/client-tmp/react/src/utils/setApiHost.ts +9 -0
- package/client-tmp/react/test/e2e/fixture.ts +26 -0
- package/client-tmp/react/test/e2e/flows/001-protected.e2e.ts +6 -0
- package/client-tmp/react/test/e2e/index.ts +2 -0
- package/client-tmp/react/test/e2e/pages/index.ts +1 -0
- package/client-tmp/react/test/e2e/pages/protected.ts +16 -0
- package/client-tmp/react/tsconfig.app.json +2 -5
- package/client-tmp/react/tsconfig.json +4 -1
- package/client-tmp/react/vite.config.ts +57 -12
- package/package.json +1 -1
- package/server/settings.gradle.kts +2 -2
- package/client-tmp/react/src/index.js +0 -17
- /package/client-tmp/react/src/pages/{auth → AuthPage}/AuthPage.css +0 -0
- /package/client-tmp/react/src/{setupTests.js → setupTests.ts} +0 -0
|
@@ -44,17 +44,32 @@ const getPathByFramework = {
|
|
|
44
44
|
},
|
|
45
45
|
[FRAMEWORK_REACT_ALIAS]: {
|
|
46
46
|
...defaultPathGetters,
|
|
47
|
+
index: (componentPath) => `${componentPath}/index.tsx`,
|
|
47
48
|
clientSrcPath: `../../client/src/pages`,
|
|
48
|
-
route: (clientSrcPath, tile, routeName) =>
|
|
49
|
-
`${clientSrcPath}/${routeName}/${tile.name}
|
|
50
|
-
component: (componentPath, tile) =>
|
|
51
|
-
`${componentPath}/${tile.name}.
|
|
52
|
-
style: (componentPath, tile) =>
|
|
53
|
-
`${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`,
|
|
54
63
|
},
|
|
55
64
|
};
|
|
56
65
|
|
|
57
|
-
const getFilesToWrite = (
|
|
66
|
+
const getFilesToWrite = (
|
|
67
|
+
tileData,
|
|
68
|
+
routeName,
|
|
69
|
+
path,
|
|
70
|
+
sourceTemplateDir,
|
|
71
|
+
changeCase,
|
|
72
|
+
) => {
|
|
58
73
|
const {
|
|
59
74
|
clientSrcPath,
|
|
60
75
|
route: getRouteDir,
|
|
@@ -68,7 +83,7 @@ const getFilesToWrite = (tileData, routeName, path, sourceTemplateDir) => {
|
|
|
68
83
|
gridOptions: getGridOptionsTarget,
|
|
69
84
|
} = path;
|
|
70
85
|
|
|
71
|
-
const routeDir = getRouteDir(clientSrcPath, tileData, routeName);
|
|
86
|
+
const routeDir = getRouteDir(clientSrcPath, tileData, routeName, changeCase);
|
|
72
87
|
|
|
73
88
|
const componentIndexFile = {
|
|
74
89
|
source: `${sourceTemplateDir}/component/component.index.hbs`,
|
|
@@ -77,32 +92,32 @@ const getFilesToWrite = (tileData, routeName, path, sourceTemplateDir) => {
|
|
|
77
92
|
|
|
78
93
|
const componentFile = {
|
|
79
94
|
source: `${sourceTemplateDir}/component/component.hbs`,
|
|
80
|
-
target: getComponentTarget(routeDir, tileData),
|
|
95
|
+
target: getComponentTarget(routeDir, tileData, changeCase),
|
|
81
96
|
};
|
|
82
97
|
|
|
83
98
|
const componentStylesFile = {
|
|
84
99
|
source: `${sourceTemplateDir}/component/component.styles.hbs`,
|
|
85
|
-
target: getStyleTarget(routeDir, tileData),
|
|
100
|
+
target: getStyleTarget(routeDir, tileData, changeCase),
|
|
86
101
|
};
|
|
87
102
|
|
|
88
103
|
const componentAddFormFile = {
|
|
89
104
|
source: `${sourceTemplateDir}/component/component.create.form.hbs`,
|
|
90
|
-
target: getAddFormTarget(routeDir, tileData),
|
|
105
|
+
target: getAddFormTarget(routeDir, tileData, changeCase),
|
|
91
106
|
};
|
|
92
107
|
|
|
93
108
|
const componentUpdateFormFile = {
|
|
94
109
|
source: `${sourceTemplateDir}/component/component.update.form.hbs`,
|
|
95
|
-
target: getUpdateFormTarget(routeDir, tileData),
|
|
110
|
+
target: getUpdateFormTarget(routeDir, tileData, changeCase),
|
|
96
111
|
};
|
|
97
112
|
|
|
98
113
|
const componentColumnsFile = {
|
|
99
114
|
source: `${sourceTemplateDir}/component/component.column.defs.hbs`,
|
|
100
|
-
target: getColumnDefsTarget(routeDir, tileData),
|
|
115
|
+
target: getColumnDefsTarget(routeDir, tileData, changeCase),
|
|
101
116
|
};
|
|
102
117
|
|
|
103
118
|
const componentGridOptionsFile = {
|
|
104
119
|
source: `${sourceTemplateDir}/component/component.gridOptions.hbs`,
|
|
105
|
-
target: getGridOptionsTarget(routeDir, tileData),
|
|
120
|
+
target: getGridOptionsTarget(routeDir, tileData, changeCase),
|
|
106
121
|
};
|
|
107
122
|
|
|
108
123
|
const filesToWrite = [componentIndexFile, componentFile, componentStylesFile];
|
|
@@ -159,13 +174,14 @@ const generateTile = (
|
|
|
159
174
|
const routeName = changeCase.paramCase(route.name);
|
|
160
175
|
const sourceTemplateDir = `../${DIR_TEMPLATE_BY_FRAMEWORK[framework]}`;
|
|
161
176
|
const { clientSrcPath, route: getRouteDir } = getPathByFramework[framework];
|
|
162
|
-
const routeDir = getRouteDir(clientSrcPath, tileData, routeName);
|
|
177
|
+
const routeDir = getRouteDir(clientSrcPath, tileData, routeName, changeCase);
|
|
163
178
|
|
|
164
179
|
const filesToWrite = getFilesToWrite(
|
|
165
180
|
tileData,
|
|
166
181
|
routeName,
|
|
167
182
|
getPathByFramework[framework],
|
|
168
183
|
sourceTemplateDir,
|
|
184
|
+
changeCase,
|
|
169
185
|
);
|
|
170
186
|
|
|
171
187
|
makeDirectory(resolve(__dirname, routeDir));
|
package/.genx/versions.json
CHANGED
|
@@ -36,7 +36,7 @@ rm -rf blankappseedtest && npx -y @genesislcap/genx@latest init blankappseedtest
|
|
|
36
36
|
### Route and CSV parameter handling test
|
|
37
37
|
|
|
38
38
|
```
|
|
39
|
-
rm -rf blankappseedtest && npx -y @genesislcap/genx@latest init blankappseedtest --ref %YOUR-BRANCH-NAME% --no-npm -x --routes '[{"name":"Home","tiles":[{"title":"Entity manager","type":"entity-manager","config":{ "modalPosition": "centre", "sizeColumnsToFit": true, "enableSearchBar": true, "resourceName":"ALL_POSITIONS","title":"My Positions","updateEvent":"EVENT_COUNTERPARTY_MODIFY","deleteEvent":"EVENT_COUNTERPARTY_DELETE","createEvent":"EVENT_COUNTERPARTY_INSERT", "createFormUiSchema": {"type":"VerticalLayout","elements":[{"type":"Control","label":"Inline create schema - main contact","scope":"#/properties/MAIN_CONTACT"},{"type":"Control","label":"Issuer Name - Local Schema","scope":"#/properties/ISSUER_NAME","options":{"readonly":true}},{"type":"Control","label":"Price","scope":"#/properties/PRICE"},{"type":"Control","scope":"#/properties/COUNTERPARTY","options":{"allOptionsResourceName":"ALL_COUNTERPARTYS","valueField":"COUNTERPARTY_ID","labelField":"COUNTERPARTY_ID"}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"isPassword":true}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"textarea":true}}]}, "updateFormUiSchema": {"type":"VerticalLayout","elements":[{"type":"Control","label":"Inline update schema - main contact","scope":"#/properties/MAIN_CONTACT"},{"type":"Control","label":"Issuer Name - Local Schema","scope":"#/properties/ISSUER_NAME","options":{"readonly":true}},{"type":"Control","label":"Price","scope":"#/properties/PRICE"},{"type":"Control","scope":"#/properties/COUNTERPARTY","options":{"allOptionsResourceName":"ALL_COUNTERPARTYS","valueField":"COUNTERPARTY_ID","labelField":"COUNTERPARTY_ID"}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"isPassword":true}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"textarea":true}}]}, "columns": [{"field":"INSTRUMENT_NAME","headerName":"Instrument Name"},{"field":"VALUE","headerName":"Inline coldef - VALUE"},{"field":"QUANTITY","headerName":"Quantity"},{"field":"PNL","headerName":"PNL"}] }},{"title":"Grid","type":"grid-pro","config":{"resourceName":"ALL_TRADES", "gridOptions": {"
|
|
39
|
+
rm -rf blankappseedtest && npx -y @genesislcap/genx@latest init blankappseedtest --ref %YOUR-BRANCH-NAME% --no-npm -x --routes '[{"name":"Home","tiles":[{"title":"Entity manager","type":"entity-manager","config":{ "modalPosition": "centre", "sizeColumnsToFit": true, "enableSearchBar": true, "resourceName":"ALL_POSITIONS","title":"My Positions","updateEvent":"EVENT_COUNTERPARTY_MODIFY","deleteEvent":"EVENT_COUNTERPARTY_DELETE","createEvent":"EVENT_COUNTERPARTY_INSERT", "createFormUiSchema": {"type":"VerticalLayout","elements":[{"type":"Control","label":"Inline create schema - main contact","scope":"#/properties/MAIN_CONTACT"},{"type":"Control","label":"Issuer Name - Local Schema","scope":"#/properties/ISSUER_NAME","options":{"readonly":true}},{"type":"Control","label":"Price","scope":"#/properties/PRICE"},{"type":"Control","scope":"#/properties/COUNTERPARTY","options":{"allOptionsResourceName":"ALL_COUNTERPARTYS","valueField":"COUNTERPARTY_ID","labelField":"COUNTERPARTY_ID"}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"isPassword":true}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"textarea":true}}]}, "updateFormUiSchema": {"type":"VerticalLayout","elements":[{"type":"Control","label":"Inline update schema - main contact","scope":"#/properties/MAIN_CONTACT"},{"type":"Control","label":"Issuer Name - Local Schema","scope":"#/properties/ISSUER_NAME","options":{"readonly":true}},{"type":"Control","label":"Price","scope":"#/properties/PRICE"},{"type":"Control","scope":"#/properties/COUNTERPARTY","options":{"allOptionsResourceName":"ALL_COUNTERPARTYS","valueField":"COUNTERPARTY_ID","labelField":"COUNTERPARTY_ID"}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"isPassword":true}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"textarea":true}}]}, "columns": [{"field":"INSTRUMENT_NAME","headerName":"Instrument Name"},{"field":"VALUE","headerName":"Inline coldef - VALUE"},{"field":"QUANTITY","headerName":"Quantity"},{"field":"PNL","headerName":"PNL"}] }},{"title":"Grid","type":"grid-pro","config":{"resourceName":"ALL_TRADES", "gridOptions": {"columns":[{"field":"INSTRUMENT_NAME","headerName":"Instrument Name"},{"field":"VALUE","headerName":"Inline coldef - VALUE"},{"field":"QUANTITY","headerName":"Quantity"},{"field":"PNL","headerName":"PNL"}]} }},{"title":"Form","type":"smart-form","config":{"resourceName":"EVENT_COUNTERPARTY_INSERT", "uischema": {"type":"VerticalLayout","elements":[{"type":"Control","label":"Inline form schema - main contact","scope":"#/properties/MAIN_CONTACT"},{"type":"Control","label":"Issuer Name - Local Schema","scope":"#/properties/ISSUER_NAME","options":{"readonly":true}},{"type":"Control","label":"Price","scope":"#/properties/PRICE"},{"type":"Control","scope":"#/properties/COUNTERPARTY","options":{"allOptionsResourceName":"ALL_COUNTERPARTYS","valueField":"COUNTERPARTY_ID","labelField":"COUNTERPARTY_ID"}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"isPassword":true}},{"type":"Control","label":"Password","scope":"#/properties/PASSWORD","options":{"textarea":true}}]} }}]}, {"name":"Realtime Dashboard","tiles":[{"title":"Entity manager tile","type":"entity-manager","config":{"resourceName":"ALL_COUNTERPARTYS","title":"Counterparty Management","updateEvent":"EVENT_COUNTERPARTY_MODIFY","deleteEvent":"EVENT_COUNTERPARTY_DELETE","createEvent":"EVENT_COUNTERPARTY_INSERT"}},{"title":"Form tile","type":"smart-form","config":{"resourceName":"EVENT_COUNTERPARTY_INSERT"}}]},{"name":"Analytics","tiles":[{"title":"Grid Tile","type":"grid-pro","config":{"resourceName":"ALL_POSITIONS"}},{"title":"Charts Tile 1","type":"chart","config":{"type":"line","resourceName":"ALL_POSITIONS","xField":"INSTRUMENT_NAME","yField":"VALUE"}},{"title":"Charts Tile 2","type":"chart","config":{"type":"pie","resourceName":"ALL_POSITIONS","xField":"INSTRUMENT_NAME","yField":"VALUE"}},{"title":"Charts Tile 3","type":"chart","config":{"type":"column","resourceName":"ALL_POSITIONS","xField":"INSTRUMENT_ID","yField":"VALUE"}}]}]' --csv '[{"name": "trade", "fields": ["a", "B"]}, {"name": "position", "fields": ["id", "TYPE"]} ]' --apiHost 'wss://public-foundation.genesislab.global/gwf/' --no-shell && cd blankappseedtest/client && npm run bootstrap && npm run dev
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
✅ **Checklist**
|
|
@@ -15,6 +15,7 @@ jobs:
|
|
|
15
15
|
genesisArtifactoryUser: ${{ secrets.JFROG_LIBS_RELEASE_CLIENT_RO_USER }}
|
|
16
16
|
genesisArtifactoryPassword: ${{ secrets.JFROG_LIBS_RELEASE_CLIENT_RO_KEY }}
|
|
17
17
|
USE_DOCKER: 1
|
|
18
|
+
GRADLE_PARAMS: ${{ github.base_ref == 'prerelease' && '-PuseDevRepo=true' || '' }}
|
|
18
19
|
runs-on: ubuntu-latest
|
|
19
20
|
steps:
|
|
20
21
|
- uses: actions/checkout@v4
|
|
@@ -46,7 +47,7 @@ jobs:
|
|
|
46
47
|
|
|
47
48
|
- name: Build sample app
|
|
48
49
|
working-directory: /tmp/testapp
|
|
49
|
-
run: ./gradlew build --info
|
|
50
|
+
run: ./gradlew ${GRADLE_PARAMS} build --info
|
|
50
51
|
|
|
51
52
|
- name: Lint UI
|
|
52
53
|
working-directory: /tmp/testapp/client
|
|
@@ -62,7 +63,7 @@ jobs:
|
|
|
62
63
|
|
|
63
64
|
- name: Create Server Dockerfile
|
|
64
65
|
working-directory: /tmp/testapp
|
|
65
|
-
run: ./gradlew :server:testapp-app:createDockerfile --info
|
|
66
|
+
run: ./gradlew ${GRADLE_PARAMS} :server:testapp-app:createDockerfile --info
|
|
66
67
|
|
|
67
68
|
- name: Build Docker images
|
|
68
69
|
working-directory: /tmp/testapp
|
|
@@ -11,6 +11,10 @@ on:
|
|
|
11
11
|
type: boolean
|
|
12
12
|
required: false
|
|
13
13
|
description: Only update if there are newer patch versions
|
|
14
|
+
skip-server:
|
|
15
|
+
type: boolean
|
|
16
|
+
required: false
|
|
17
|
+
description: Skip updating server dependencies
|
|
14
18
|
secrets:
|
|
15
19
|
GH_USER_TOKEN:
|
|
16
20
|
required: true
|
|
@@ -26,6 +30,7 @@ jobs:
|
|
|
26
30
|
env:
|
|
27
31
|
BRANCH: ${{ inputs.branch }}
|
|
28
32
|
PATCH_ARG: ${{ inputs.patch-only && '--patch-only' || '' }}
|
|
33
|
+
SKIP_SERVER_ARG: ${{ inputs.skip-server && '--skip-server' || '' }}
|
|
29
34
|
steps:
|
|
30
35
|
- uses: actions/checkout@v4
|
|
31
36
|
with:
|
|
@@ -47,7 +52,7 @@ jobs:
|
|
|
47
52
|
jfrog config add --artifactory-url="https://genesisglobal.jfrog.io/artifactory" --user="${{ secrets.JFROG_LIBS_RELEASE_CLIENT_RO_USER }}" --password="${{ secrets.JFROG_LIBS_RELEASE_CLIENT_RO_KEY }}" --interactive=false
|
|
48
53
|
|
|
49
54
|
- name: Update to latest versions if available
|
|
50
|
-
run: node .genx/scripts/update-versions ${PATCH_ARG}
|
|
55
|
+
run: node .genx/scripts/update-versions ${PATCH_ARG} ${SKIP_SERVER_ARG}
|
|
51
56
|
|
|
52
57
|
- name: Check for changes
|
|
53
58
|
id: versions
|
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,18 +1,179 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [3.
|
|
3
|
+
## [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)
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
### Bug Fixes
|
|
7
7
|
|
|
8
|
-
*
|
|
8
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#342) d255814
|
|
9
9
|
|
|
10
|
-
## [3.
|
|
10
|
+
## [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)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* integrate TypeScript support into react - [FUI-2157](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2157) (#338) ac55e1f
|
|
16
|
+
|
|
17
|
+
## [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)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 09ba9a2
|
|
23
|
+
|
|
24
|
+
## [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)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Bug Fixes
|
|
28
|
+
|
|
29
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 5d4f8da
|
|
30
|
+
|
|
31
|
+
## [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)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
### Features
|
|
35
|
+
|
|
36
|
+
* product name specified with settings plugin property (#331) 082cea0
|
|
37
|
+
|
|
38
|
+
## [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)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
### Bug Fixes
|
|
42
|
+
|
|
43
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#341) 1d38563
|
|
44
|
+
|
|
45
|
+
## [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)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
### Features
|
|
49
|
+
|
|
50
|
+
* add unit tests - [FUI-2173](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2173) (#332) a4168f3
|
|
51
|
+
|
|
52
|
+
## [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)
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
### Bug Fixes
|
|
56
|
+
|
|
57
|
+
* update GSF and Auth dependency versions [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#336) d5d69e6
|
|
58
|
+
|
|
59
|
+
## [3.30.0-prerelease.2](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0-prerelease.1...v3.30.0-prerelease.2) (2024-09-06)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Bug Fixes
|
|
63
|
+
|
|
64
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#334) 3af309b
|
|
65
|
+
|
|
66
|
+
## [3.30.0-prerelease.1](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.15...v3.30.0-prerelease.1) (2024-09-05)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
### Features
|
|
70
|
+
|
|
71
|
+
* add entityLabel so toast popups tell us the type of entity added GENC-762 (#333) 692bda0
|
|
72
|
+
|
|
73
|
+
## [3.29.1-prerelease.15](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.14...v3.29.1-prerelease.15) (2024-09-05)
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
### Bug Fixes
|
|
77
|
+
|
|
78
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 9e491e3
|
|
79
|
+
|
|
80
|
+
## [3.29.1-prerelease.14](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.13...v3.29.1-prerelease.14) (2024-09-05)
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
### Bug Fixes
|
|
84
|
+
|
|
85
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) a9473e4
|
|
86
|
+
|
|
87
|
+
## [3.29.1-prerelease.13](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.12...v3.29.1-prerelease.13) (2024-09-05)
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
### Bug Fixes
|
|
91
|
+
|
|
92
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#328) 626c48b
|
|
93
|
+
|
|
94
|
+
## [3.29.1-prerelease.12](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.11...v3.29.1-prerelease.12) (2024-09-03)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
### Bug Fixes
|
|
98
|
+
|
|
99
|
+
* update unit test commands in package.json (#329) 290a3ab
|
|
100
|
+
|
|
101
|
+
## [3.29.1-prerelease.11](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.10...v3.29.1-prerelease.11) (2024-08-28)
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
### Bug Fixes
|
|
105
|
+
|
|
106
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#323) aea0500
|
|
107
|
+
|
|
108
|
+
## [3.29.1-prerelease.10](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.9...v3.29.1-prerelease.10) (2024-08-23)
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
### Bug Fixes
|
|
112
|
+
|
|
113
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 940ebbc
|
|
114
|
+
|
|
115
|
+
## [3.29.1-prerelease.9](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.8...v3.29.1-prerelease.9) (2024-08-23)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
### Bug Fixes
|
|
119
|
+
|
|
120
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) fea6c6f
|
|
121
|
+
|
|
122
|
+
## [3.29.1-prerelease.8](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.7...v3.29.1-prerelease.8) (2024-08-23)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
### Bug Fixes
|
|
126
|
+
|
|
127
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 0fbf0b3
|
|
128
|
+
|
|
129
|
+
## [3.29.1-prerelease.7](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.6...v3.29.1-prerelease.7) (2024-08-20)
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
### Bug Fixes
|
|
133
|
+
|
|
134
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#321) b5d9dd9
|
|
135
|
+
|
|
136
|
+
## [3.29.1-prerelease.6](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.5...v3.29.1-prerelease.6) (2024-08-20)
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
### Bug Fixes
|
|
140
|
+
|
|
141
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) f18c4cf
|
|
142
|
+
|
|
143
|
+
## [3.29.1-prerelease.5](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.4...v3.29.1-prerelease.5) (2024-08-16)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
### Bug Fixes
|
|
147
|
+
|
|
148
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) a2c959c
|
|
149
|
+
|
|
150
|
+
## [3.29.1-prerelease.4](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.3...v3.29.1-prerelease.4) (2024-08-16)
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
### Bug Fixes
|
|
154
|
+
|
|
155
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 872539b
|
|
156
|
+
|
|
157
|
+
## [3.29.1-prerelease.3](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.2...v3.29.1-prerelease.3) (2024-08-15)
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
### Bug Fixes
|
|
161
|
+
|
|
162
|
+
* useonlytemplatecols not enabled from create GENC-703 (#316) 93c9e9f
|
|
163
|
+
|
|
164
|
+
## [3.29.1-prerelease.2](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.1-prerelease.1...v3.29.1-prerelease.2) (2024-08-15)
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
### Bug Fixes
|
|
168
|
+
|
|
169
|
+
* handling multiple hyphens when generating DB namespace PA-1361 (#317) ceda4bb
|
|
170
|
+
|
|
171
|
+
## [3.29.1-prerelease.1](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.29.0...v3.29.1-prerelease.1) (2024-08-14)
|
|
11
172
|
|
|
12
173
|
|
|
13
174
|
### Bug Fixes
|
|
14
175
|
|
|
15
|
-
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#
|
|
176
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#314) 5070baa
|
|
16
177
|
|
|
17
178
|
## [3.29.0](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.28.6...v3.29.0) (2024-08-13)
|
|
18
179
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
module.exports = {
|
|
2
2
|
root: true,
|
|
3
|
-
env: { browser: true, es2020: true },
|
|
3
|
+
env: { browser: true, es2020: true, node: true, jest: true },
|
|
4
4
|
extends: [
|
|
5
5
|
'eslint:recommended',
|
|
6
6
|
'plugin:@typescript-eslint/recommended',
|
|
@@ -10,6 +10,9 @@ module.exports = {
|
|
|
10
10
|
parser: '@typescript-eslint/parser',
|
|
11
11
|
plugins: ['react-refresh'],
|
|
12
12
|
rules: {
|
|
13
|
+
'@typescript-eslint/no-explicit-any': 'off',
|
|
14
|
+
'@typescript-eslint/no-unused-vars': 'off',
|
|
15
|
+
'@typescript-eslint/no-var-requires': 'off',
|
|
13
16
|
'react-refresh/only-export-components': [
|
|
14
17
|
'warn',
|
|
15
18
|
{ allowConstantExport: true },
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
-
<title>{{
|
|
7
|
+
<title>{{capitalCase appName}}</title>
|
|
8
8
|
</head>
|
|
9
9
|
<body>
|
|
10
10
|
<div id="root"></div>
|
|
@@ -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';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { execSync } from 'child_process';
|
|
2
|
+
import glob from 'glob';
|
|
3
|
+
import path from 'path';
|
|
4
|
+
|
|
5
|
+
const cssFiles: string[] = glob.sync(path.join(__dirname, '**/*.css'));
|
|
6
|
+
|
|
7
|
+
if (cssFiles.length === 0) {
|
|
8
|
+
console.log('No CSS files found.');
|
|
9
|
+
process.exit(0);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const command: string = `genx lint -l stylelint ${cssFiles.join(' ')}`;
|
|
13
|
+
|
|
14
|
+
try {
|
|
15
|
+
execSync(command, { stdio: 'inherit' });
|
|
16
|
+
} catch (error) {
|
|
17
|
+
console.error('Error running stylelint:', error);
|
|
18
|
+
process.exit(1);
|
|
19
|
+
}
|
|
@@ -5,12 +5,26 @@
|
|
|
5
5
|
"scripts": {
|
|
6
6
|
"baseline": "npm run clean && npm run bootstrap",
|
|
7
7
|
"bootstrap": "npm i --legacy-peer-deps",
|
|
8
|
+
"bootstrap:ci": "npm ci --no-fund --no-audit",
|
|
9
|
+
"build": "vite build",
|
|
10
|
+
"build:stats": "npm run build --stats-json",
|
|
11
|
+
"clean": "genx clean dist node_modules",
|
|
8
12
|
"dev": "vite",
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
13
|
+
"dev:docker": "npm run dev -- --host 0.0.0.0",
|
|
14
|
+
"dev:no-open": "NO_OPEN=true npm run dev",
|
|
15
|
+
"dev:intellij": "npm run dev",
|
|
16
|
+
"dev:https": "HTTPS=true npm run dev",
|
|
17
|
+
"dsconfig": "dsconfig --path src/styles/design-tokens.json",
|
|
18
|
+
"lint": "eslint src/**/*.ts src/**/*.tsx",
|
|
19
|
+
"lint:fix": "eslint src/**/*.ts src/**/*.tsx --fix",
|
|
20
|
+
"lint:eslint": "npm lint",
|
|
21
|
+
"lint:stylelint": "npx ts-node lint-css.ts",
|
|
22
|
+
"test": "jest",
|
|
23
|
+
"test:coverage": "jest --coverage",
|
|
24
|
+
"test:unit:watch": "jest --watchAll",
|
|
25
|
+
"test:e2e": "genx test --e2e",
|
|
26
|
+
"test:e2e:debug": "genx test --e2e --debug",
|
|
27
|
+
"test:e2e:ui": "genx test --e2e --interactive"
|
|
14
28
|
},
|
|
15
29
|
"dependencies": {
|
|
16
30
|
"@ag-grid-community/client-side-row-model": "29.2.0",
|
|
@@ -19,6 +33,9 @@
|
|
|
19
33
|
"@ag-grid-enterprise/core": "29.2.0",
|
|
20
34
|
"@ag-grid-enterprise/row-grouping": "29.2.0",
|
|
21
35
|
"@ag-grid-enterprise/server-side-row-model": "29.2.0",
|
|
36
|
+
{{#if FDC3.includeDependencies}}
|
|
37
|
+
"@genesislcap/foundation-fdc3": "{{versions.UI}}",
|
|
38
|
+
{{/if}}
|
|
22
39
|
"@genesislcap/foundation-comms": "{{versions.UI}}",
|
|
23
40
|
"@genesislcap/foundation-login": "{{versions.UI}}",
|
|
24
41
|
"@genesislcap/foundation-entity-management": "{{versions.UI}}",
|
|
@@ -31,18 +48,37 @@
|
|
|
31
48
|
"history": "^5.3.0",
|
|
32
49
|
"react": "^19.0.0-beta-94eed63c49-20240425",
|
|
33
50
|
"react-dom": "^19.0.0-beta-94eed63c49-20240425",
|
|
34
|
-
"react-router-dom": "6.24.1"
|
|
51
|
+
"react-router-dom": "6.24.1",
|
|
52
|
+
"web-vitals": "^2.1.4"
|
|
35
53
|
},
|
|
36
54
|
"devDependencies": {
|
|
55
|
+
"@babel/core": "^7.25.2",
|
|
56
|
+
"@babel/preset-env": "^7.25.4",
|
|
57
|
+
"@babel/preset-react": "^7.24.7",
|
|
58
|
+
"@genesislcap/design-system-configurator": "{{versions.UI}}",
|
|
59
|
+
"@genesislcap/eslint-config": "{{versions.UI}}",
|
|
60
|
+
"@genesislcap/prettier-config": "{{versions.UI}}",
|
|
61
|
+
"@genesislcap/foundation-testing": "{{versions.UI}}",
|
|
62
|
+
"@genesislcap/genx": "{{versions.UI}}",
|
|
63
|
+
"@genesislcap/build-kit": "{{versions.UI}}",
|
|
64
|
+
"@testing-library/dom": "^10.4.0",
|
|
65
|
+
"@testing-library/jest-dom": "^6.5.0",
|
|
66
|
+
"@testing-library/react": "^16.0.0",
|
|
67
|
+
"@types/jest": "^29.5.12",
|
|
37
68
|
"@types/node": "^20.14.10",
|
|
38
69
|
"@types/react": "npm:types-react@alpha",
|
|
39
70
|
"@types/react-dom": "npm:types-react-dom@alpha",
|
|
40
71
|
"@typescript-eslint/eslint-plugin": "^7.13.1",
|
|
41
72
|
"@typescript-eslint/parser": "^7.13.1",
|
|
42
73
|
"@vitejs/plugin-react": "^4.3.1",
|
|
74
|
+
"babel-plugin-react-require": "^4.0.3",
|
|
43
75
|
"eslint": "^8.57.0",
|
|
44
76
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
45
77
|
"eslint-plugin-react-refresh": "^0.4.7",
|
|
78
|
+
"jest": "^29.7.0",
|
|
79
|
+
"jest-environment-jsdom": "^29.7.0",
|
|
80
|
+
"ts-jest": "^29.2.5",
|
|
81
|
+
"ts-node": "^10.9.2",
|
|
46
82
|
"typescript": "^5.2.2",
|
|
47
83
|
"vite": "^5.3.1"
|
|
48
84
|
},
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { configDefaults } from '@genesislcap/foundation-testing/e2e';
|
|
2
|
+
|
|
3
|
+
export const PROTOCOL = process.env['PROTOCOL'] || 'http';
|
|
4
|
+
export const HOST = process.env['HOST'] || 'localhost';
|
|
5
|
+
export const PORT: number = Number(process.env['PORT']) || 5173;
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
...configDefaults,
|
|
9
|
+
webServer: {
|
|
10
|
+
...configDefaults.webServer,
|
|
11
|
+
url: `${PROTOCOL}://${HOST}:${PORT}`,
|
|
12
|
+
},
|
|
13
|
+
use: {
|
|
14
|
+
...configDefaults.use,
|
|
15
|
+
baseURL: `${PROTOCOL}://${HOST}:${PORT}`,
|
|
16
|
+
}
|
|
17
|
+
};
|