@genesislcap/blank-app-seed 3.30.1 → 3.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.genx/package.json +1 -1
- 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 +64 -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 +1 -2
- package/.genx/templates/react/tabsLayout.hbs +5 -5
- package/.genx/utils/generateRoute.js +8 -7
- package/.genx/utils/generateTile.js +31 -16
- package/.genx/versions.json +3 -3
- package/.idea/modules.xml +6 -6
- package/CHANGELOG.md +29 -0
- 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 +18 -8
- package/client-tmp/react/src/App.tsx +1 -1
- 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/custom-elements.d.ts +19 -9
- package/client-tmp/react/src/guards/AuthGuard.tsx +1 -1
- 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/AuthPage/{AuthPage.jsx → AuthPage.tsx} +3 -2
- 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/tsconfig.app.json +2 -5
- package/client-tmp/react/tsconfig.json +4 -1
- package/client-tmp/react/tsconfig.node.json +1 -1
- package/client-tmp/react/{vite.config.js → vite.config.ts} +9 -9
- package/client-tmp/web-components/src/main/main.styles.ts +1 -1
- package/package.json +1 -1
- package/server/settings.gradle.kts +2 -2
- 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/lint-css.js +0 -18
- 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/{setupTests.js → setupTests.ts} +0 -0
- /package/server/{{appName}}-app/src/main/genesis/scripts/{{{appName}}-data-pipelines.kts → {{appName}}-pipelines.kts} +0 -0
package/.genx/package.json
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
{{#if config.permissions.viewRight}}
|
|
1
|
+
{{#if config.permissions.viewRight~}}
|
|
2
|
+
hasUserPermission('{{config.permissions.viewRight}}') ? (
|
|
3
|
+
{{/if}}
|
|
2
4
|
<rapid-g2plot-chart
|
|
3
5
|
type="{{ config.type }}"
|
|
4
6
|
config={chartConfig}
|
|
@@ -7,7 +9,9 @@
|
|
|
7
9
|
resourceName="{{ config.resourceName }}"
|
|
8
10
|
server-fields="{{ config.xField }} {{ config.yField }}"
|
|
9
11
|
></chart-datasource>
|
|
10
|
-
</rapid-g2plot-chart>
|
|
12
|
+
</rapid-g2plot-chart>
|
|
13
|
+
{{#if config.permissions.viewRight~}}
|
|
11
14
|
) : (
|
|
12
15
|
<ErrorMessage elementType="h3" message="You do not have access to view this component." />
|
|
13
|
-
)
|
|
16
|
+
)
|
|
17
|
+
{{/if}}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
{{#if tile.config.columns~}}
|
|
1
2
|
import { ColDef } from '@ag-grid-community/core';
|
|
3
|
+
{{/if}}
|
|
2
4
|
import { getNumberFormatter, getDateFormatter } from '@genesislcap/foundation-utils';
|
|
3
|
-
{{#if route.FDC3EventHandlersEnabled}}
|
|
5
|
+
{{#if route.FDC3EventHandlersEnabled~}}
|
|
4
6
|
import { sendEventOnChannel } from '../../../utils';
|
|
5
7
|
{{/if}}
|
|
6
8
|
|
|
7
|
-
{{#if tile.config.columns}}
|
|
9
|
+
{{#if tile.config.columns~}}
|
|
8
10
|
export const columnDefs: ColDef[] = {{{ tile.config.columns }}}
|
|
9
11
|
{{/if}}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { UiSchema } from '@genesislcap/foundation-forms';
|
|
2
2
|
|
|
3
|
-
{{#if tile.config.createFormUiSchema}}
|
|
3
|
+
{{#if tile.config.createFormUiSchema~}}
|
|
4
4
|
export const createFormSchema: UiSchema = {{{ tile.config.createFormUiSchema }}}
|
|
5
5
|
{{/if}}
|
|
6
|
-
{{#if tile.config.uischema}}
|
|
6
|
+
{{#if tile.config.uischema~}}
|
|
7
7
|
export const createFormSchema: UiSchema = {{{ tile.config.uischema }}}
|
|
8
8
|
{{/if}}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
{{#if tile.config.gridOptions~}}
|
|
1
2
|
import { GridOptionsConfig } from '@genesislcap/rapid-grid-pro';
|
|
3
|
+
{{/if}}
|
|
2
4
|
import { getNumberFormatter, getDateFormatter } from '@genesislcap/foundation-utils';
|
|
3
|
-
{{#if route.FDC3EventHandlersEnabled}}
|
|
5
|
+
{{#if route.FDC3EventHandlersEnabled~}}
|
|
4
6
|
import { sendEventOnChannel } from '../../../utils';
|
|
5
7
|
{{/if}}
|
|
6
8
|
|
|
7
|
-
{{#if tile.config.gridOptions}}
|
|
9
|
+
{{#if tile.config.gridOptions~}}
|
|
8
10
|
export const gridOptions: GridOptionsConfig = {{{ tile.config.gridOptions }}}
|
|
9
11
|
{{/if}}
|
|
@@ -1,40 +1,77 @@
|
|
|
1
|
+
{{#if tile.config.permissions.viewRight~}}
|
|
1
2
|
import { getUser } from '@genesislcap/foundation-user';
|
|
2
3
|
import { getViewUpdateRightComponent } from '../../../utils';
|
|
3
4
|
import ErrorMessage from '../../../components/ErrorMessage/ErrorMessage';
|
|
4
|
-
{{
|
|
5
|
-
import {
|
|
5
|
+
{{else if tile.config.permissions.updateRight~}}
|
|
6
|
+
import { getUser } from '@genesislcap/foundation-user';
|
|
7
|
+
import { getViewUpdateRightComponent } from '../../../utils';
|
|
8
|
+
import ErrorMessage from '../../../components/ErrorMessage/ErrorMessage';
|
|
9
|
+
{{/if}}
|
|
10
|
+
{{#if tile.config.createFormUiSchema~}}
|
|
11
|
+
import { createFormSchema as createFormSchemaTile } from './{{pascalCase tile.title}}CreateFormSchema';
|
|
6
12
|
{{/if}}
|
|
7
|
-
{{#if tile.config.uischema}}
|
|
8
|
-
import { createFormSchema as createFormSchemaTile } from './{{
|
|
13
|
+
{{#if tile.config.uischema~}}
|
|
14
|
+
import { createFormSchema as createFormSchemaTile } from './{{pascalCase tile.title}}CreateFormSchema';
|
|
9
15
|
{{/if}}
|
|
10
|
-
{{#if tile.config.updateFormUiSchema}}
|
|
11
|
-
import { updateFormSchema as updateFormSchemaTile } from './{{
|
|
16
|
+
{{#if tile.config.updateFormUiSchema~}}
|
|
17
|
+
import { updateFormSchema as updateFormSchemaTile } from './{{pascalCase tile.title}}UpdateFormSchema';
|
|
12
18
|
{{/if}}
|
|
13
|
-
{{#if tile.config.columns}}
|
|
14
|
-
import { columnDefs as columnDefsTile } from './{{
|
|
19
|
+
{{#if tile.config.columns~}}
|
|
20
|
+
import { columnDefs as columnDefsTile } from './{{pascalCase tile.title}}ColumnDefs';
|
|
15
21
|
{{/if}}
|
|
16
|
-
{{#if tile.config.gridOptions}}
|
|
17
|
-
import {
|
|
22
|
+
{{#if tile.config.gridOptions~}}
|
|
23
|
+
import { GridOptionsConfig } from '@genesislcap/rapid-grid-pro';
|
|
24
|
+
import { gridOptions as gridOptionsTile } from './{{pascalCase tile.title}}GridOptions';
|
|
18
25
|
{{/if}}
|
|
19
|
-
import './{{
|
|
26
|
+
import './{{pascalCase tile.title}}Component.css';
|
|
20
27
|
|
|
21
|
-
export const {{pascalCase tile.componentName}} = () => {
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
28
|
+
export const {{pascalCase tile.componentName}}: React.FC = () => {
|
|
29
|
+
{{#if tile.config.permissions.viewRight~}}
|
|
30
|
+
const hasUserPermission = (permissionCode: string): boolean => getViewUpdateRightComponent(getUser(), permissionCode);
|
|
31
|
+
{{else if tile.config.permissions.updateRight~}}
|
|
32
|
+
const hasUserPermission = (permissionCode: string): boolean => getViewUpdateRightComponent(getUser(), permissionCode);
|
|
33
|
+
{{/if}}
|
|
34
|
+
{{#if tile.config.createFormUiSchema~}}
|
|
35
|
+
const createFormSchema: typeof createFormSchemaTile = createFormSchemaTile;
|
|
36
|
+
{{/if}}
|
|
37
|
+
{{#if tile.config.uischema~}}
|
|
38
|
+
const uischema: typeof createFormSchemaTile = createFormSchemaTile;
|
|
39
|
+
{{/if}}
|
|
40
|
+
{{#if tile.config.updateFormUiSchema~}}
|
|
41
|
+
const updateFormSchema: typeof updateFormSchemaTile = updateFormSchemaTile;
|
|
42
|
+
{{/if}}
|
|
43
|
+
{{#if tile.config.columns~}}
|
|
44
|
+
const columnDefs: typeof columnDefsTile = columnDefsTile;
|
|
45
|
+
{{/if}}
|
|
46
|
+
{{#if tile.config.gridOptions~}}
|
|
47
|
+
const deferredGridOptions: { onRowClicked: GridOptionsConfig.onRowClicked } = { onRowClicked: gridOptionsTile?.onRowClicked }
|
|
48
|
+
{{/if}}
|
|
49
|
+
{{#if tile.config.reqrep~}}
|
|
50
|
+
const reqrep: { pollingInterval: number } = { pollingInterval: 5000 };
|
|
51
|
+
{{/if}}
|
|
52
|
+
{{#if tile.config.type~}}
|
|
53
|
+
const chartConfig: {
|
|
54
|
+
{{#ifEquals tile.config.type 'pie'~}}
|
|
55
|
+
radius: number;
|
|
56
|
+
angleField: string;
|
|
57
|
+
colorField: string;
|
|
58
|
+
{{else~}}
|
|
59
|
+
xField: string;
|
|
60
|
+
yField: string;
|
|
61
|
+
{{/ifEquals}}
|
|
62
|
+
} = {
|
|
63
|
+
{{#ifEquals tile.config.type 'pie'~}}
|
|
64
|
+
radius: 0.75,
|
|
65
|
+
angleField: 'value',
|
|
66
|
+
colorField: 'groupBy',
|
|
67
|
+
{{else~}}
|
|
68
|
+
xField: 'groupBy',
|
|
69
|
+
yField: 'value',
|
|
70
|
+
{{/ifEquals}}
|
|
71
|
+
};
|
|
72
|
+
{{/if}}
|
|
36
73
|
|
|
37
74
|
return (
|
|
38
75
|
{{> (lookup tile 'type') tile}}
|
|
39
76
|
);
|
|
40
|
-
};
|
|
77
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './{{
|
|
1
|
+
export * from './{{pascalCase tile.title}}Component.tsx';
|
|
@@ -1,52 +1,65 @@
|
|
|
1
|
-
{{#if config.permissions.viewRight}}
|
|
1
|
+
{{#if config.permissions.viewRight~}}
|
|
2
|
+
hasUserPermission('{{config.permissions.viewRight}}') ? (
|
|
3
|
+
{{/if}}
|
|
2
4
|
<entity-management
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
5
|
+
design-system-prefix="rapid"
|
|
6
|
+
enable-row-flashing
|
|
7
|
+
enable-cell-flashing
|
|
8
|
+
{{#if config.title~}}
|
|
9
|
+
title="{{ config.title }}"
|
|
10
|
+
{{/if}}
|
|
11
|
+
resourceName="{{ config.resourceName }}"
|
|
12
|
+
{{#if config.createEvent~}}
|
|
13
|
+
{{#if config.permissions.updateRight~}}
|
|
14
|
+
createEvent={hasUserPermission('{{config.permissions.updateRight}}') ? '{{ config.createEvent }}' : undefined}
|
|
15
|
+
{{else~}}
|
|
16
|
+
createEvent="{{ config.updateEvent }}"
|
|
17
|
+
{{/if}}
|
|
18
|
+
{{#if config.createFormUiSchema~}}
|
|
19
|
+
createFormUiSchema={createFormSchema}
|
|
20
|
+
{{/if}}
|
|
21
|
+
{{/if}}
|
|
22
|
+
{{#if config.updateEvent~}}
|
|
23
|
+
{{#if config.permissions.updateRight~}}
|
|
24
|
+
updateEvent={hasUserPermission('{{config.permissions.updateRight}}') ? '{{ config.updateEvent }}' : undefined}
|
|
25
|
+
{{else~}}
|
|
26
|
+
updateEvent="{{ config.updateEvent }}"
|
|
27
|
+
{{/if}}
|
|
28
|
+
{{#if config.updateFormUiSchema~}}
|
|
29
|
+
updateFormUiSchema={updateFormSchema}
|
|
30
|
+
{{/if}}
|
|
31
|
+
{{/if}}
|
|
32
|
+
{{#if config.deleteEvent~}}
|
|
33
|
+
{{#if config.permissions.updateRight~}}
|
|
34
|
+
deleteEvent={hasUserPermission('{{config.permissions.updateRight}}') ? '{{ config.deleteEvent }}' : undefined}
|
|
35
|
+
{{else~}}
|
|
36
|
+
deleteEvent="{{ config.deleteEvent }}"
|
|
37
|
+
{{/if}}
|
|
38
|
+
{{/if}}
|
|
39
|
+
{{#if config.gridOptions~}}
|
|
40
|
+
gridOptions={gridOptions}
|
|
41
|
+
{{/if}}
|
|
42
|
+
{{#if config.snapshot~}}
|
|
43
|
+
datasourceConfig={ isSnapshot: {{ config.snapshot }} }
|
|
44
|
+
{{/if}}
|
|
45
|
+
{{#if config.reqrep~}}
|
|
46
|
+
datasourceConfig={reqrep}
|
|
47
|
+
{{/if}}
|
|
48
|
+
{{#if config.columns~}}
|
|
49
|
+
columns={columnDefs}
|
|
50
|
+
{{/if}}
|
|
51
|
+
{{#if config.modalPosition~}}
|
|
52
|
+
modal-position="{{ config.modalPosition }}"
|
|
53
|
+
{{/if}}
|
|
54
|
+
{{#if config.sizeColumnsToFit~}}
|
|
55
|
+
size-columns-to-fit
|
|
56
|
+
{{/if}}
|
|
57
|
+
{{#if config.enableSearchBar~}}
|
|
58
|
+
enable-search-bar
|
|
59
|
+
{{/if}}
|
|
60
|
+
></entity-management>
|
|
61
|
+
{{#if config.permissions.viewRight~}}
|
|
50
62
|
) : (
|
|
51
63
|
<ErrorMessage elementType="h3" message="You do not have access to view this component." />
|
|
52
|
-
)
|
|
64
|
+
)
|
|
65
|
+
{{/if}}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
{{#if config.permissions.updateRight}}
|
|
1
|
+
{{#if config.permissions.updateRight~}}
|
|
2
|
+
hasUserPermission('{{config.permissions.updateRight}}') ? (
|
|
3
|
+
{{/if}}
|
|
2
4
|
<foundation-form
|
|
3
5
|
design-system-prefix="rapid"
|
|
4
6
|
resourceName="{{config.resourceName}}"
|
|
@@ -6,7 +8,9 @@
|
|
|
6
8
|
uischema={uischema}
|
|
7
9
|
{{/if}}
|
|
8
10
|
>
|
|
9
|
-
</foundation-form>
|
|
11
|
+
</foundation-form>
|
|
12
|
+
{{#if config.permissions.updateRight~}}
|
|
10
13
|
) : (
|
|
11
14
|
<ErrorMessage elementType="h3" message="You do not have access to view this component." />
|
|
12
|
-
)
|
|
15
|
+
)
|
|
16
|
+
{{/if}}
|
|
@@ -1,28 +1,34 @@
|
|
|
1
|
-
{{#if config.permissions.viewRight}}
|
|
1
|
+
{{#if config.permissions.viewRight~}}
|
|
2
|
+
hasUserPermission('{{config.permissions.viewRight}}') ? (
|
|
3
|
+
{{/if}}
|
|
2
4
|
<rapid-grid-pro
|
|
3
|
-
header-case-type="capitalCase"
|
|
4
|
-
|
|
5
|
+
header-case-type="capitalCase"
|
|
6
|
+
{{#if config.useOnlyTemplateCols~}}
|
|
7
|
+
only-template-col-defs
|
|
8
|
+
{{/if}}
|
|
5
9
|
enable-row-flashing
|
|
6
10
|
enable-cell-flashing
|
|
7
11
|
>
|
|
8
12
|
<grid-pro-genesis-datasource
|
|
9
13
|
resource-name="{{config.resourceName}}"
|
|
10
|
-
{{#if config.snapshot}}
|
|
14
|
+
{{#if config.snapshot~}}
|
|
11
15
|
isSnapshot="{{config.snapshot}}"
|
|
12
16
|
{{/if}}
|
|
13
|
-
{{#if config.reqrep}}
|
|
17
|
+
{{#if config.reqrep~}}
|
|
14
18
|
datasourceConfig="reqrep"
|
|
15
19
|
{{/if}}
|
|
16
|
-
{{#if config.gridOptions}}
|
|
17
|
-
deferredGridOptions
|
|
20
|
+
{{#if config.gridOptions~}}
|
|
21
|
+
deferredGridOptions={deferredGridOptions}
|
|
18
22
|
{{/if}}
|
|
19
23
|
></grid-pro-genesis-datasource>
|
|
20
24
|
{{#if config.gridOptions}}
|
|
21
|
-
{
|
|
25
|
+
{gridOptionsTile?.columnDefs?.map((columnDef, index) => (
|
|
22
26
|
<grid-pro-column key={index} definition={columnDef}></grid-pro-column>
|
|
23
27
|
))}
|
|
24
28
|
{{/if}}
|
|
25
|
-
</rapid-grid-pro>
|
|
29
|
+
</rapid-grid-pro>
|
|
30
|
+
{{#if config.permissions.viewRight~}}
|
|
26
31
|
) : (
|
|
27
32
|
<ErrorMessage elementType="h3" message="You do not have access to view this component." />
|
|
28
|
-
)
|
|
33
|
+
)
|
|
34
|
+
{{/if}}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import './{{pascalCase route.name}}.css';
|
|
2
2
|
{{#each route.tiles}}
|
|
3
|
-
import { {{pascalCase this.componentName}} } from './{{
|
|
3
|
+
import { {{pascalCase this.componentName}} } from './{{pascalCase this.title}}{{pascalCase this.componentType}}';
|
|
4
4
|
{{/each}}
|
|
5
5
|
|
|
6
6
|
const {{pascalCase route.name}} = () => {
|
|
7
|
-
|
|
8
7
|
return (
|
|
9
8
|
<section className="{{kebabCase route.name}}-page">
|
|
10
9
|
{{#if route.tiles}}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<rapid-layout-region type="tabs">
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
{{#each route.tiles}}
|
|
3
|
+
<rapid-layout-item title="{{this.title}}">
|
|
4
|
+
{{> (lookup . 'type') }}
|
|
5
|
+
</rapid-layout-item>
|
|
6
|
+
{{/each}}
|
|
7
7
|
</rapid-layout-region>
|
|
@@ -14,7 +14,7 @@ const getPathByFramework = {
|
|
|
14
14
|
route: (clientSrcPath, routeName) => `${clientSrcPath}/${routeName}`,
|
|
15
15
|
component: (routeDir, routeName) => `${routeDir}/${routeName}.ts`,
|
|
16
16
|
template: (routeDir, routeName) => `${routeDir}/${routeName}.template.ts`,
|
|
17
|
-
style: (
|
|
17
|
+
style: (routeDir, routeName) => `${routeDir}/${routeName}.styles.ts`,
|
|
18
18
|
},
|
|
19
19
|
[FRAMEWORK_ANGULAR_ALIAS]: {
|
|
20
20
|
clientSrcPath: `../../client/src/app/pages`,
|
|
@@ -22,15 +22,16 @@ const getPathByFramework = {
|
|
|
22
22
|
component: (routeDir, routeName) => `${routeDir}/${routeName}.component.ts`,
|
|
23
23
|
template: (routeDir, routeName) =>
|
|
24
24
|
`${routeDir}/${routeName}.component.html`,
|
|
25
|
-
style: (
|
|
25
|
+
style: (routeDir, routeName) => `${routeDir}/${routeName}.component.css`,
|
|
26
26
|
},
|
|
27
27
|
[FRAMEWORK_REACT_ALIAS]: {
|
|
28
28
|
clientSrcPath: `../../client/src/pages`,
|
|
29
|
-
route: (clientSrcPath, routeName) =>
|
|
29
|
+
route: (clientSrcPath, routeName, changeCase) =>
|
|
30
|
+
`${clientSrcPath}/${changeCase.pascalCase(routeName)}`,
|
|
30
31
|
component: (routeDir, routeName, changeCase) =>
|
|
31
|
-
`${routeDir}/${changeCase.pascalCase(routeName)}.
|
|
32
|
-
style: (
|
|
33
|
-
`${
|
|
32
|
+
`${routeDir}/${changeCase.pascalCase(routeName)}.tsx`,
|
|
33
|
+
style: (routeDir, routeName, changeCase) =>
|
|
34
|
+
`${routeDir}/${changeCase.pascalCase(routeName)}.css`,
|
|
34
35
|
},
|
|
35
36
|
};
|
|
36
37
|
|
|
@@ -44,7 +45,7 @@ const generateRoute = (route, { changeCase, writeFileWithData }, framework) => {
|
|
|
44
45
|
} = getPathByFramework[framework];
|
|
45
46
|
const routeName = changeCase.paramCase(route.name);
|
|
46
47
|
const sourceTemplateDir = `../${DIR_TEMPLATE_BY_FRAMEWORK[framework]}`;
|
|
47
|
-
const routeDir = getRouteDir(clientSrcPath, routeName);
|
|
48
|
+
const routeDir = getRouteDir(clientSrcPath, routeName, changeCase);
|
|
48
49
|
|
|
49
50
|
const filesToWrite = [
|
|
50
51
|
{
|
|
@@ -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/versions.json
CHANGED
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,34 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.31.0](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.2...v3.31.0) (2024-10-01)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add unit tests - [FUI-2173](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2173) (#332) a4168f3
|
|
9
|
+
* integrate TypeScript support into react - [FUI-2157](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2157) (#338) ac55e1f
|
|
10
|
+
* product name specified with settings plugin property (#331) 082cea0
|
|
11
|
+
* release 8.4.0 [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) (#352) 8f3144e
|
|
12
|
+
* replaced karma with jest in angular (#348) 805d7ec
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#341) 1d38563
|
|
18
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#342) d255814
|
|
19
|
+
* update --nav-height value - [FUI-2207](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/2207) (#345) 83894b1
|
|
20
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) d7eab5a
|
|
21
|
+
* updating server version information for Auth [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 09ba9a2
|
|
22
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) eabf8c7
|
|
23
|
+
* updating server version information for GSF [PSD-0](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/0) 5d4f8da
|
|
24
|
+
|
|
25
|
+
## [3.30.2](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.1...v3.30.2) (2024-09-13)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* automated dependency version update [skip-ci] [PSD-9](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/9) (#344) 96e08ca
|
|
31
|
+
|
|
3
32
|
## [3.30.1](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v3.30.0...v3.30.1) (2024-09-09)
|
|
4
33
|
|
|
5
34
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = 'test-file-stub';
|