@solidstarters/solid-core 1.2.91 → 1.2.93
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/# Password field.md +8 -0
- package/dist/controllers/import-transaction.controller.d.ts +2 -1
- package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
- package/dist/controllers/import-transaction.controller.js +16 -4
- package/dist/controllers/import-transaction.controller.js.map +1 -1
- package/dist/dtos/create-menu-item-metadata.dto.d.ts +2 -1
- package/dist/dtos/create-menu-item-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-menu-item-metadata.dto.js +22 -3
- package/dist/dtos/create-menu-item-metadata.dto.js.map +1 -1
- package/dist/dtos/create-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-role-metadata.dto.js +11 -0
- package/dist/dtos/create-role-metadata.dto.js.map +1 -1
- package/dist/dtos/update-menu-item-metadata.dto.d.ts +2 -1
- package/dist/dtos/update-menu-item-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-menu-item-metadata.dto.js +24 -5
- package/dist/dtos/update-menu-item-metadata.dto.js.map +1 -1
- package/dist/dtos/update-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-role-metadata.dto.js +12 -1
- package/dist/dtos/update-role-metadata.dto.js.map +1 -1
- package/dist/entities/menu-item-metadata.entity.d.ts +2 -1
- package/dist/entities/menu-item-metadata.entity.d.ts.map +1 -1
- package/dist/entities/menu-item-metadata.entity.js +13 -8
- package/dist/entities/menu-item-metadata.entity.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +31 -0
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +8 -3
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/crud.service.js +1 -1
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/import-transaction.service.d.ts +19 -6
- package/dist/services/import-transaction.service.d.ts.map +1 -1
- package/dist/services/import-transaction.service.js +214 -87
- package/dist/services/import-transaction.service.js.map +1 -1
- package/dist/services/menu-item-metadata.service.d.ts.map +1 -1
- package/dist/services/menu-item-metadata.service.js +1 -0
- package/dist/services/menu-item-metadata.service.js.map +1 -1
- package/dist/services/setting.service.d.ts.map +1 -1
- package/dist/services/setting.service.js +6 -2
- package/dist/services/setting.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/controllers/import-transaction.controller.ts +9 -3
- package/src/dtos/create-menu-item-metadata.dto.ts +21 -13
- package/src/dtos/create-role-metadata.dto.ts +48 -45
- package/src/dtos/update-menu-item-metadata.dto.ts +23 -16
- package/src/dtos/update-role-metadata.dto.ts +49 -47
- package/src/entities/menu-item-metadata.entity.ts +14 -14
- package/src/seeders/seed-data/email-templates/forgot-password.handlebars.html +134 -154
- package/src/seeders/seed-data/email-templates/on-force-password-change.handlebars.html +141 -195
- package/src/seeders/seed-data/email-templates/otp-on-login.handlebars.html +130 -144
- package/src/seeders/seed-data/email-templates/otp-on-register.handlebars.html +131 -145
- package/src/seeders/seed-data/solid-core-metadata.json +31 -0
- package/src/services/authentication.service.ts +8 -3
- package/src/services/crud.service.ts +1 -1
- package/src/services/import-transaction.service.ts +313 -121
- package/src/services/menu-item-metadata.service.ts +2 -0
- package/src/services/pending_import_issues +3 -0
- package/src/services/setting.service.ts +6 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solidstarters/solid-core",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.93",
|
|
4
4
|
"description": "This module is a NestJS module containing all the required core providers required by a Solid application",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -108,9 +108,15 @@ export class ImportTransactionController {
|
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
@ApiBearerAuth("jwt")
|
|
111
|
-
@Post(':id/import
|
|
112
|
-
async
|
|
113
|
-
return this.service.
|
|
111
|
+
@Post(':id/start-import/sync')
|
|
112
|
+
async startImportSync(@Param('id') id: string) {
|
|
113
|
+
return this.service.startImportSync(+id);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
@ApiBearerAuth("jwt")
|
|
117
|
+
@Post(':id/start-import/async')
|
|
118
|
+
async startImportAsync(@Param('id') id: string) {
|
|
119
|
+
return this.service.startImportAsync(+id);
|
|
114
120
|
}
|
|
115
121
|
|
|
116
122
|
@ApiBearerAuth("jwt")
|
|
@@ -2,59 +2,67 @@ import { IsNumber, IsString } from 'class-validator';
|
|
|
2
2
|
import { Matches } from 'class-validator';
|
|
3
3
|
import { IsNotEmpty, IsInt, IsOptional, ValidateNested, IsArray } from 'class-validator';
|
|
4
4
|
import { Transform, Type } from 'class-transformer';
|
|
5
|
-
import { UpdateRoleMetadataDto } from './update-role-metadata.dto';
|
|
6
5
|
import arrayTransformer from '../transformers/array-transformer';
|
|
6
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
7
|
+
import { UpdateRoleMetadataDto } from 'src/dtos/update-role-metadata.dto';
|
|
8
|
+
|
|
7
9
|
export class CreateMenuItemMetadataDto {
|
|
8
10
|
@IsNotEmpty()
|
|
9
11
|
@Matches(/[a-z]+(-[a-z]+)*/)
|
|
10
12
|
@IsString()
|
|
13
|
+
@ApiProperty()
|
|
11
14
|
name: string;
|
|
12
|
-
|
|
13
15
|
@IsNotEmpty()
|
|
14
16
|
@IsString()
|
|
17
|
+
@ApiProperty()
|
|
15
18
|
displayName: string;
|
|
16
|
-
|
|
17
19
|
@IsOptional()
|
|
18
20
|
@IsInt()
|
|
21
|
+
@ApiProperty()
|
|
19
22
|
moduleId: number;
|
|
20
|
-
|
|
21
23
|
@IsString()
|
|
22
24
|
@IsOptional()
|
|
25
|
+
@ApiProperty()
|
|
23
26
|
moduleUserKey: string;
|
|
24
|
-
|
|
25
27
|
@IsOptional()
|
|
26
28
|
@IsInt()
|
|
29
|
+
@ApiProperty()
|
|
27
30
|
parentMenuItemId: number;
|
|
28
|
-
|
|
29
31
|
@IsString()
|
|
30
32
|
@IsOptional()
|
|
33
|
+
@ApiProperty()
|
|
31
34
|
parentMenuItemUserKey: string;
|
|
32
|
-
|
|
33
35
|
@IsOptional()
|
|
34
36
|
@IsInt()
|
|
37
|
+
@ApiProperty()
|
|
35
38
|
actionId: number;
|
|
36
|
-
|
|
37
39
|
@IsString()
|
|
38
40
|
@IsOptional()
|
|
41
|
+
@ApiProperty()
|
|
39
42
|
actionUserKey: string;
|
|
40
|
-
|
|
43
|
+
@Transform(arrayTransformer)
|
|
41
44
|
@IsOptional()
|
|
45
|
+
@ApiProperty()
|
|
42
46
|
@IsArray()
|
|
43
|
-
@Transform(arrayTransformer)
|
|
44
47
|
@ValidateNested({ each: true })
|
|
45
48
|
@Type(() => UpdateRoleMetadataDto)
|
|
46
49
|
roles: UpdateRoleMetadataDto[];
|
|
47
|
-
|
|
48
50
|
@IsOptional()
|
|
49
51
|
@IsArray()
|
|
52
|
+
@ApiProperty()
|
|
50
53
|
rolesIds: number[];
|
|
51
|
-
|
|
52
54
|
@IsString()
|
|
53
55
|
@IsOptional()
|
|
56
|
+
@ApiProperty()
|
|
54
57
|
rolesCommand: string;
|
|
55
|
-
|
|
56
58
|
@IsOptional()
|
|
57
59
|
@IsNumber()
|
|
60
|
+
@ApiProperty()
|
|
58
61
|
sequenceNumber: number;
|
|
59
62
|
|
|
63
|
+
@IsOptional()
|
|
64
|
+
@IsString()
|
|
65
|
+
@ApiProperty()
|
|
66
|
+
iconName: string;
|
|
67
|
+
|
|
60
68
|
}
|
|
@@ -4,50 +4,53 @@ import { Type } from 'class-transformer';
|
|
|
4
4
|
import { UpdatePermissionMetadataDto } from 'src/dtos/update-permission-metadata.dto';
|
|
5
5
|
import { UpdateUserDto } from 'src/dtos/update-user.dto';
|
|
6
6
|
import { UpdateMenuItemMetadataDto } from 'src/dtos/update-menu-item-metadata.dto';
|
|
7
|
-
|
|
8
|
-
@IsNotEmpty()
|
|
9
|
-
@IsString()
|
|
10
|
-
name: string;
|
|
11
|
-
|
|
12
|
-
@IsOptional()
|
|
13
|
-
@IsArray()
|
|
14
|
-
@ValidateNested({ each : true })
|
|
15
|
-
@Type(() => UpdatePermissionMetadataDto)
|
|
16
|
-
permissions: UpdatePermissionMetadataDto[];
|
|
17
|
-
|
|
18
|
-
@IsOptional()
|
|
19
|
-
@IsArray()
|
|
20
|
-
permissionsIds: number[];
|
|
21
|
-
|
|
22
|
-
@IsString()
|
|
23
|
-
@IsOptional()
|
|
24
|
-
permissionsCommand: string;
|
|
25
|
-
|
|
26
|
-
@IsOptional()
|
|
27
|
-
@IsArray()
|
|
28
|
-
@ValidateNested({ each : true })
|
|
29
|
-
@Type(() => UpdateUserDto)
|
|
30
|
-
users: UpdateUserDto[];
|
|
7
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
31
8
|
|
|
32
|
-
|
|
33
|
-
@
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
@IsOptional()
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
@
|
|
41
|
-
@
|
|
42
|
-
|
|
43
|
-
@
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
@
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
@IsOptional()
|
|
52
|
-
|
|
9
|
+
export class CreateRoleMetadataDto {
|
|
10
|
+
@IsNotEmpty()
|
|
11
|
+
@IsString()
|
|
12
|
+
@ApiProperty()
|
|
13
|
+
name: string;
|
|
14
|
+
@IsOptional()
|
|
15
|
+
@ApiProperty()
|
|
16
|
+
@IsArray()
|
|
17
|
+
@ValidateNested({ each: true })
|
|
18
|
+
@Type(() => UpdatePermissionMetadataDto)
|
|
19
|
+
permissions: UpdatePermissionMetadataDto[];
|
|
20
|
+
@IsOptional()
|
|
21
|
+
@IsArray()
|
|
22
|
+
@ApiProperty()
|
|
23
|
+
permissionsIds: number[];
|
|
24
|
+
@IsString()
|
|
25
|
+
@IsOptional()
|
|
26
|
+
@ApiProperty()
|
|
27
|
+
permissionsCommand: string;
|
|
28
|
+
@IsOptional()
|
|
29
|
+
@ApiProperty()
|
|
30
|
+
@IsArray()
|
|
31
|
+
@ValidateNested({ each: true })
|
|
32
|
+
@Type(() => UpdateUserDto)
|
|
33
|
+
users: UpdateUserDto[];
|
|
34
|
+
@IsOptional()
|
|
35
|
+
@IsArray()
|
|
36
|
+
@ApiProperty()
|
|
37
|
+
usersIds: number[];
|
|
38
|
+
@IsString()
|
|
39
|
+
@IsOptional()
|
|
40
|
+
@ApiProperty()
|
|
41
|
+
usersCommand: string;
|
|
42
|
+
@IsOptional()
|
|
43
|
+
@ApiProperty()
|
|
44
|
+
@IsArray()
|
|
45
|
+
@ValidateNested({ each: true })
|
|
46
|
+
@Type(() => UpdateMenuItemMetadataDto)
|
|
47
|
+
menuItems: UpdateMenuItemMetadataDto[];
|
|
48
|
+
@IsOptional()
|
|
49
|
+
@IsArray()
|
|
50
|
+
@ApiProperty()
|
|
51
|
+
menuItemsIds: number[];
|
|
52
|
+
@IsString()
|
|
53
|
+
@IsOptional()
|
|
54
|
+
@ApiProperty()
|
|
55
|
+
menuItemsCommand: string;
|
|
53
56
|
}
|
|
@@ -1,64 +1,71 @@
|
|
|
1
1
|
import { IsInt, IsOptional, IsString, Matches, IsNotEmpty, ValidateNested, IsArray, IsNumber } from 'class-validator';
|
|
2
2
|
import { Transform, Type } from 'class-transformer';
|
|
3
|
-
import { UpdateRoleMetadataDto } from './update-role-metadata.dto';
|
|
4
3
|
import arrayTransformer from '../transformers/array-transformer';
|
|
4
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
5
|
+
import { UpdateRoleMetadataDto } from 'src/dtos/update-role-metadata.dto';
|
|
6
|
+
|
|
5
7
|
export class UpdateMenuItemMetadataDto {
|
|
6
8
|
@IsOptional()
|
|
7
9
|
@IsInt()
|
|
8
10
|
id: number;
|
|
9
|
-
|
|
10
|
-
@IsOptional()
|
|
11
11
|
@IsNotEmpty()
|
|
12
|
+
@IsOptional()
|
|
12
13
|
@Matches(/[a-z]+(-[a-z]+)*/)
|
|
13
14
|
@IsString()
|
|
15
|
+
@ApiProperty()
|
|
14
16
|
name: string;
|
|
15
|
-
|
|
16
|
-
@IsOptional()
|
|
17
17
|
@IsNotEmpty()
|
|
18
|
+
@IsOptional()
|
|
18
19
|
@IsString()
|
|
20
|
+
@ApiProperty()
|
|
19
21
|
displayName: string;
|
|
20
|
-
|
|
21
22
|
@IsOptional()
|
|
22
23
|
@IsInt()
|
|
24
|
+
@ApiProperty()
|
|
23
25
|
moduleId: number;
|
|
24
|
-
|
|
25
26
|
@IsString()
|
|
26
27
|
@IsOptional()
|
|
28
|
+
@ApiProperty()
|
|
27
29
|
moduleUserKey: string;
|
|
28
|
-
|
|
29
30
|
@IsOptional()
|
|
30
31
|
@IsInt()
|
|
32
|
+
@ApiProperty()
|
|
31
33
|
parentMenuItemId: number;
|
|
32
|
-
|
|
33
34
|
@IsString()
|
|
34
35
|
@IsOptional()
|
|
36
|
+
@ApiProperty()
|
|
35
37
|
parentMenuItemUserKey: string;
|
|
36
|
-
|
|
37
38
|
@IsOptional()
|
|
38
39
|
@IsInt()
|
|
40
|
+
@ApiProperty()
|
|
39
41
|
actionId: number;
|
|
40
|
-
|
|
41
42
|
@IsString()
|
|
42
43
|
@IsOptional()
|
|
44
|
+
@ApiProperty()
|
|
43
45
|
actionUserKey: string;
|
|
44
|
-
|
|
46
|
+
@Transform(arrayTransformer)
|
|
45
47
|
@IsOptional()
|
|
48
|
+
@ApiProperty()
|
|
46
49
|
@IsArray()
|
|
47
|
-
@Transform(arrayTransformer)
|
|
48
50
|
@ValidateNested({ each: true })
|
|
49
51
|
@Type(() => UpdateRoleMetadataDto)
|
|
50
52
|
roles: UpdateRoleMetadataDto[];
|
|
51
|
-
|
|
52
53
|
@IsOptional()
|
|
53
54
|
@IsArray()
|
|
55
|
+
@ApiProperty()
|
|
54
56
|
rolesIds: number[];
|
|
55
|
-
|
|
56
57
|
@IsString()
|
|
57
58
|
@IsOptional()
|
|
59
|
+
@ApiProperty()
|
|
58
60
|
rolesCommand: string;
|
|
59
|
-
|
|
60
61
|
@IsOptional()
|
|
61
62
|
@IsNumber()
|
|
63
|
+
@ApiProperty()
|
|
62
64
|
sequenceNumber: number;
|
|
63
65
|
|
|
66
|
+
@IsOptional()
|
|
67
|
+
@IsString()
|
|
68
|
+
@ApiProperty()
|
|
69
|
+
iconName: string;
|
|
70
|
+
|
|
64
71
|
}
|
|
@@ -3,55 +3,57 @@ import { Type } from 'class-transformer';
|
|
|
3
3
|
import { UpdatePermissionMetadataDto } from 'src/dtos/update-permission-metadata.dto';
|
|
4
4
|
import { UpdateUserDto } from 'src/dtos/update-user.dto';
|
|
5
5
|
import { UpdateMenuItemMetadataDto } from 'src/dtos/update-menu-item-metadata.dto';
|
|
6
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
7
|
+
|
|
6
8
|
export class UpdateRoleMetadataDto {
|
|
7
9
|
@IsOptional()
|
|
8
10
|
@IsInt()
|
|
9
11
|
id: number;
|
|
10
|
-
|
|
11
|
-
@IsOptional()
|
|
12
|
-
@
|
|
13
|
-
@
|
|
14
|
-
name: string;
|
|
15
|
-
|
|
16
|
-
@
|
|
17
|
-
@IsArray()
|
|
18
|
-
@ValidateNested({ each
|
|
19
|
-
@Type(() => UpdatePermissionMetadataDto)
|
|
20
|
-
permissions: UpdatePermissionMetadataDto[];
|
|
21
|
-
|
|
22
|
-
@
|
|
23
|
-
@
|
|
24
|
-
permissionsIds: number[];
|
|
25
|
-
|
|
26
|
-
@
|
|
27
|
-
@
|
|
28
|
-
permissionsCommand: string;
|
|
29
|
-
|
|
30
|
-
@
|
|
31
|
-
@IsArray()
|
|
32
|
-
@ValidateNested({ each
|
|
33
|
-
@Type(() => UpdateUserDto)
|
|
34
|
-
users: UpdateUserDto[];
|
|
35
|
-
|
|
36
|
-
@
|
|
37
|
-
@
|
|
38
|
-
usersIds: number[];
|
|
39
|
-
|
|
40
|
-
@
|
|
41
|
-
@
|
|
42
|
-
usersCommand: string;
|
|
43
|
-
|
|
44
|
-
@
|
|
45
|
-
@IsArray()
|
|
46
|
-
@ValidateNested({ each
|
|
47
|
-
@Type(() => UpdateMenuItemMetadataDto)
|
|
48
|
-
menuItems: UpdateMenuItemMetadataDto[];
|
|
49
|
-
|
|
50
|
-
@
|
|
51
|
-
@
|
|
52
|
-
menuItemsIds: number[];
|
|
53
|
-
|
|
54
|
-
@
|
|
55
|
-
@
|
|
56
|
-
menuItemsCommand: string;
|
|
12
|
+
@IsNotEmpty()
|
|
13
|
+
@IsOptional()
|
|
14
|
+
@IsString()
|
|
15
|
+
@ApiProperty()
|
|
16
|
+
name: string;
|
|
17
|
+
@IsOptional()
|
|
18
|
+
@ApiProperty()
|
|
19
|
+
@IsArray()
|
|
20
|
+
@ValidateNested({ each: true })
|
|
21
|
+
@Type(() => UpdatePermissionMetadataDto)
|
|
22
|
+
permissions: UpdatePermissionMetadataDto[];
|
|
23
|
+
@IsOptional()
|
|
24
|
+
@IsArray()
|
|
25
|
+
@ApiProperty()
|
|
26
|
+
permissionsIds: number[];
|
|
27
|
+
@IsString()
|
|
28
|
+
@IsOptional()
|
|
29
|
+
@ApiProperty()
|
|
30
|
+
permissionsCommand: string;
|
|
31
|
+
@IsOptional()
|
|
32
|
+
@ApiProperty()
|
|
33
|
+
@IsArray()
|
|
34
|
+
@ValidateNested({ each: true })
|
|
35
|
+
@Type(() => UpdateUserDto)
|
|
36
|
+
users: UpdateUserDto[];
|
|
37
|
+
@IsOptional()
|
|
38
|
+
@IsArray()
|
|
39
|
+
@ApiProperty()
|
|
40
|
+
usersIds: number[];
|
|
41
|
+
@IsString()
|
|
42
|
+
@IsOptional()
|
|
43
|
+
@ApiProperty()
|
|
44
|
+
usersCommand: string;
|
|
45
|
+
@IsOptional()
|
|
46
|
+
@ApiProperty()
|
|
47
|
+
@IsArray()
|
|
48
|
+
@ValidateNested({ each: true })
|
|
49
|
+
@Type(() => UpdateMenuItemMetadataDto)
|
|
50
|
+
menuItems: UpdateMenuItemMetadataDto[];
|
|
51
|
+
@IsOptional()
|
|
52
|
+
@IsArray()
|
|
53
|
+
@ApiProperty()
|
|
54
|
+
menuItemsIds: number[];
|
|
55
|
+
@IsString()
|
|
56
|
+
@IsOptional()
|
|
57
|
+
@ApiProperty()
|
|
58
|
+
menuItemsCommand: string;
|
|
57
59
|
}
|
|
@@ -2,34 +2,34 @@ import { CommonEntity } from "src/entities/common.entity"
|
|
|
2
2
|
import { Entity, Column, ManyToOne, Index, JoinTable, ManyToMany, JoinColumn } from "typeorm";
|
|
3
3
|
import { ModuleMetadata } from 'src/entities/module-metadata.entity';
|
|
4
4
|
import { ActionMetadata } from 'src/entities/action-metadata.entity';
|
|
5
|
-
import { RoleMetadata } from
|
|
5
|
+
import { RoleMetadata } from 'src/entities/role-metadata.entity';
|
|
6
|
+
|
|
6
7
|
@Entity("ss_menu_item_metadata")
|
|
7
8
|
export class MenuItemMetadata extends CommonEntity {
|
|
9
|
+
@Index({ unique: true })
|
|
8
10
|
@Column({ name: "name", type: "varchar", unique: true })
|
|
9
11
|
name: string;
|
|
10
|
-
|
|
11
12
|
@Column({ name: "display_name", type: "varchar" })
|
|
12
13
|
displayName: string;
|
|
13
|
-
|
|
14
|
-
@JoinColumn({ name: 'module_id', referencedColumnName: 'id' })
|
|
15
14
|
@Index()
|
|
16
|
-
@ManyToOne(() => ModuleMetadata, { onDelete: "CASCADE" })
|
|
15
|
+
@ManyToOne(() => ModuleMetadata, { onDelete: "CASCADE", nullable: false })
|
|
16
|
+
@JoinColumn({ referencedColumnName: 'id' })
|
|
17
17
|
module: ModuleMetadata;
|
|
18
|
-
|
|
19
|
-
@JoinColumn({ name: 'parent_menu_item_id', referencedColumnName: 'id' })
|
|
20
18
|
@Index()
|
|
21
|
-
@ManyToOne(() => MenuItemMetadata, { onDelete: "CASCADE" })
|
|
19
|
+
@ManyToOne(() => MenuItemMetadata, { onDelete: "CASCADE", nullable: true })
|
|
20
|
+
@JoinColumn({ referencedColumnName: 'id' })
|
|
22
21
|
parentMenuItem: MenuItemMetadata;
|
|
23
|
-
|
|
24
|
-
@JoinColumn({ name: 'action_id', referencedColumnName: 'id' })
|
|
25
22
|
@Index()
|
|
26
|
-
@ManyToOne(() => ActionMetadata, { onDelete: "CASCADE" })
|
|
23
|
+
@ManyToOne(() => ActionMetadata, { onDelete: "CASCADE", nullable: true })
|
|
24
|
+
@JoinColumn({ referencedColumnName: 'id' })
|
|
27
25
|
action: ActionMetadata;
|
|
28
|
-
|
|
29
|
-
@ManyToMany(() => RoleMetadata, roleMetadata => roleMetadata.menuItems, { cascade: true })
|
|
26
|
+
@ManyToMany(() => RoleMetadata, roleMetadata => roleMetadata.users, { cascade: true })
|
|
30
27
|
@JoinTable()
|
|
31
28
|
roles: RoleMetadata[];
|
|
32
|
-
|
|
33
29
|
@Column({ name: "sequence_number", type: "int", nullable: true })
|
|
34
30
|
sequenceNumber: number;
|
|
31
|
+
|
|
32
|
+
@Column({ name: "icon_name", type: "varchar", nullable: true })
|
|
33
|
+
iconName: string;
|
|
34
|
+
|
|
35
35
|
}
|