@hedhog/admin 0.0.7 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hedhog/admin",
3
- "version": "0.0.7",
3
+ "version": "0.0.9",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -10,19 +10,19 @@ export class Migrate implements MigrationInterface {
10
10
  async up(queryRunner: QueryRunner) {
11
11
  await queryRunner.createTable(
12
12
  new Table({
13
- name: 'role_screens',
13
+ name: 'route_screens',
14
14
  columns: [
15
15
  {
16
- name: 'role_id',
16
+ name: 'route_id',
17
17
  type: 'int',
18
- isPrimary: true,
19
18
  unsigned: true,
19
+ isPrimary: true,
20
20
  },
21
21
  {
22
22
  name: 'screen_id',
23
23
  type: 'int',
24
- isPrimary: true,
25
24
  unsigned: true,
25
+ isPrimary: true,
26
26
  },
27
27
  timestampColumn(),
28
28
  timestampColumn('updated_at'),
@@ -30,89 +30,25 @@ export class Migrate implements MigrationInterface {
30
30
  }),
31
31
  );
32
32
 
33
- await queryRunner.createForeignKeys('role_screens', [
33
+ await queryRunner.createForeignKeys('route_screens', [
34
34
  new TableForeignKey({
35
- columnNames: ['role_id'],
35
+ columnNames: ['route_id'],
36
36
  referencedColumnNames: ['id'],
37
- referencedTableName: 'roles',
37
+ referencedTableName: 'routes',
38
38
  onDelete: 'CASCADE',
39
- name: 'fk_role_screens_roles',
39
+ name: 'fk_route_screens_routes',
40
40
  }),
41
41
  new TableForeignKey({
42
42
  columnNames: ['screen_id'],
43
43
  referencedColumnNames: ['id'],
44
44
  referencedTableName: 'screens',
45
45
  onDelete: 'CASCADE',
46
- name: 'fk_role_screens_screens',
46
+ name: 'fk_route_screens_screens',
47
47
  }),
48
48
  ]);
49
-
50
- const screenIdScreen = await queryRunner.manager
51
- .createQueryBuilder()
52
- .select()
53
- .from('screens', 's')
54
- .where('slug = :slug', { slug: '/management/screens' })
55
- .execute();
56
- const screenIdRole = await queryRunner.manager
57
- .createQueryBuilder()
58
- .select()
59
- .from('screens', 's')
60
- .where('slug = :slug', { slug: '/management/roles' })
61
- .execute();
62
- const screenIdUser = await queryRunner.manager
63
- .createQueryBuilder()
64
- .select()
65
- .from('screens', 's')
66
- .where('slug = :slug', { slug: '/management/users' })
67
- .execute();
68
- const screenIdMenu = await queryRunner.manager
69
- .createQueryBuilder()
70
- .select()
71
- .from('screens', 's')
72
- .where('slug = :slug', { slug: '/management/menus' })
73
- .execute();
74
-
75
- for (const { url, screendId } of [
76
- { url: '/screens%', screendId: screenIdScreen[0].id },
77
- { url: '/roles%', screendId: screenIdRole[0].id },
78
- { url: '/users%', screendId: screenIdUser[0].id },
79
- { url: '/menus%', screendId: screenIdMenu[0].id },
80
- ]) {
81
- const routesScreens = await queryRunner.manager
82
- .createQueryBuilder()
83
- .select()
84
- .from('routes', 's')
85
- .where('s.url LIKE :url', { url })
86
- .execute();
87
-
88
- for (const route of routesScreens) {
89
- await queryRunner.manager
90
- .createQueryBuilder()
91
- .insert()
92
- .into('route_screens')
93
- .values({
94
- route_id: route.id,
95
- screen_id: screendId,
96
- })
97
- .execute();
98
- }
99
- }
100
49
  }
101
50
 
102
51
  async down(queryRunner: QueryRunner) {
103
- for (const slug of [
104
- '/management/users',
105
- '/management/roles',
106
- '/management/screens',
107
- '/management/menus',
108
- ]) {
109
- await queryRunner.manager
110
- .createQueryBuilder()
111
- .delete()
112
- .from('screens')
113
- .where('slug = :slug', { slug })
114
- .execute();
115
- }
116
- await queryRunner.dropTable('role_screens');
52
+ await queryRunner.dropTable('route_screens');
117
53
  }
118
54
  }
@@ -10,7 +10,7 @@ export class Migrate implements MigrationInterface {
10
10
  async up(queryRunner: QueryRunner) {
11
11
  await queryRunner.createTable(
12
12
  new Table({
13
- name: 'role_users',
13
+ name: 'role_screens',
14
14
  columns: [
15
15
  {
16
16
  name: 'role_id',
@@ -19,7 +19,7 @@ export class Migrate implements MigrationInterface {
19
19
  unsigned: true,
20
20
  },
21
21
  {
22
- name: 'user_id',
22
+ name: 'screen_id',
23
23
  type: 'int',
24
24
  isPrimary: true,
25
25
  unsigned: true,
@@ -30,40 +30,125 @@ export class Migrate implements MigrationInterface {
30
30
  }),
31
31
  );
32
32
 
33
- await queryRunner.createForeignKeys('role_users', [
33
+ await queryRunner.createForeignKeys('role_screens', [
34
34
  new TableForeignKey({
35
35
  columnNames: ['role_id'],
36
36
  referencedColumnNames: ['id'],
37
37
  referencedTableName: 'roles',
38
38
  onDelete: 'CASCADE',
39
- name: 'fk_role_users_roles',
39
+ name: 'fk_role_screens_roles',
40
40
  }),
41
-
42
41
  new TableForeignKey({
43
- columnNames: ['user_id'],
42
+ columnNames: ['screen_id'],
44
43
  referencedColumnNames: ['id'],
45
- referencedTableName: 'users',
44
+ referencedTableName: 'screens',
46
45
  onDelete: 'CASCADE',
47
- name: 'fk_role_users_users',
46
+ name: 'fk_role_screens_screens',
48
47
  }),
49
48
  ]);
50
49
 
51
- const roleUsers = [
52
- { role_id: 1, user_id: 1 },
53
- { role_id: 2, user_id: 2 },
54
- ];
50
+ await queryRunner.manager
51
+ .createQueryBuilder()
52
+ .insert()
53
+ .into('screens', ['name', 'slug', 'description', 'icon'])
54
+ .values([
55
+ {
56
+ name: 'Users',
57
+ slug: '/management/users',
58
+ description: 'Check all users registered in the system.',
59
+ icon: 'users',
60
+ },
61
+ {
62
+ name: 'Roles',
63
+ slug: '/management/roles',
64
+ description: 'Check all roles registered in the system.',
65
+ icon: 'circles',
66
+ },
67
+ {
68
+ name: 'Screens',
69
+ slug: '/management/screens',
70
+ description: 'Check all screens registered in the system.',
71
+ icon: 'monitor',
72
+ },
73
+ {
74
+ name: 'Menus',
75
+ slug: '/management/menus',
76
+ description: 'Check all menus registered in the system.',
77
+ icon: 'menu',
78
+ },
79
+ ])
80
+ .returning('id')
81
+ .execute();
55
82
 
56
- for (const roleUser of roleUsers) {
57
- await queryRunner.manager
83
+ const screenIdScreen = await queryRunner.manager
84
+ .createQueryBuilder()
85
+ .select()
86
+ .from('screens', 's')
87
+ .where('slug = :slug', { slug: '/management/screens' })
88
+ .execute();
89
+
90
+ const screenIdRole = await queryRunner.manager
91
+ .createQueryBuilder()
92
+ .select()
93
+ .from('screens', 's')
94
+ .where('slug = :slug', { slug: '/management/roles' })
95
+ .execute();
96
+
97
+ const screenIdUser = await queryRunner.manager
98
+ .createQueryBuilder()
99
+ .select()
100
+ .from('screens', 's')
101
+ .where('slug = :slug', { slug: '/management/users' })
102
+ .execute();
103
+
104
+ const screenIdMenu = await queryRunner.manager
105
+ .createQueryBuilder()
106
+ .select()
107
+ .from('screens', 's')
108
+ .where('slug = :slug', { slug: '/management/menus' })
109
+ .execute();
110
+
111
+ for (const { url, screendId } of [
112
+ { url: '/screens%', screendId: screenIdScreen[0].id },
113
+ { url: '/roles%', screendId: screenIdRole[0].id },
114
+ { url: '/users%', screendId: screenIdUser[0].id },
115
+ { url: '/menus%', screendId: screenIdMenu[0].id },
116
+ ]) {
117
+ const routesScreens = await queryRunner.manager
58
118
  .createQueryBuilder()
59
- .insert()
60
- .into('role_users')
61
- .values(roleUser)
119
+ .select()
120
+ .from('routes', 's')
121
+ .where('s.url LIKE :url', { url })
62
122
  .execute();
123
+
124
+ for (const route of routesScreens) {
125
+ await queryRunner.manager
126
+ .createQueryBuilder()
127
+ .insert()
128
+ .into('route_screens')
129
+ .values({
130
+ route_id: route.id,
131
+ screen_id: screendId,
132
+ })
133
+ .execute();
134
+ }
63
135
  }
64
136
  }
65
137
 
66
138
  async down(queryRunner: QueryRunner) {
67
- await queryRunner.dropTable('role_users');
139
+ for (const slug of [
140
+ '/management/users',
141
+ '/management/roles',
142
+ '/management/screens',
143
+ '/management/menus',
144
+ ]) {
145
+ await queryRunner.manager
146
+ .createQueryBuilder()
147
+ .delete()
148
+ .from('screens')
149
+ .where('slug = :slug', { slug })
150
+ .execute();
151
+ }
152
+ await queryRunner.dropTable('role_screens');
68
153
  }
69
154
  }
@@ -1,91 +1,27 @@
1
- import { timestampColumn } from '@hedhog/utils';
2
- import {
3
- MigrationInterface,
4
- QueryRunner,
5
- Table,
6
- TableForeignKey,
7
- } from 'typeorm';
1
+ import { MigrationInterface, QueryRunner } from 'typeorm';
8
2
 
9
3
  export class Migrate implements MigrationInterface {
10
4
  async up(queryRunner: QueryRunner) {
11
- await queryRunner.createTable(
12
- new Table({
13
- name: 'role_routes',
14
- columns: [
15
- {
16
- name: 'role_id',
17
- type: 'int',
18
- isPrimary: true,
19
- unsigned: true,
20
- },
21
- {
22
- name: 'route_id',
23
- type: 'int',
24
- isPrimary: true,
25
- unsigned: true,
26
- },
27
- timestampColumn(),
28
- timestampColumn('updated_at'),
29
- ],
30
- }),
31
- );
32
-
33
- await queryRunner.createForeignKeys('role_routes', [
34
- new TableForeignKey({
35
- columnNames: ['role_id'],
36
- referencedColumnNames: ['id'],
37
- referencedTableName: 'roles',
38
- onDelete: 'CASCADE',
39
- name: 'fk_role_routes_roles',
40
- }),
41
- new TableForeignKey({
42
- columnNames: ['route_id'],
43
- referencedColumnNames: ['id'],
44
- referencedTableName: 'routes',
45
- onDelete: 'CASCADE',
46
- name: 'fk_role_routes_routes',
47
- }),
48
- ]);
49
-
50
- const routes = await queryRunner.manager
5
+ const screens = await queryRunner.manager
51
6
  .createQueryBuilder()
52
7
  .select()
53
- .from('routes', 'r')
8
+ .from('screens', 's')
54
9
  .execute();
55
10
 
56
- for (const route of routes) {
11
+ for (const screen of screens.raw) {
57
12
  await queryRunner.manager
58
13
  .createQueryBuilder()
59
14
  .insert()
60
- .into('role_routes')
15
+ .into('role_screens')
61
16
  .values({
62
17
  role_id: 1,
63
- route_id: route.id,
64
- })
65
- .execute();
66
- }
67
-
68
- const routesScreens = await queryRunner.manager
69
- .createQueryBuilder()
70
- .select()
71
- .from('routes', 's')
72
- .where('s.url LIKE :url', { url: '/screens%' })
73
- .execute();
74
-
75
- for (const route of routesScreens) {
76
- await queryRunner.manager
77
- .createQueryBuilder()
78
- .insert()
79
- .into('role_routes')
80
- .values({
81
- role_id: 2,
82
- route_id: route.id,
18
+ screen_id: screen.id,
83
19
  })
84
20
  .execute();
85
21
  }
86
22
  }
87
23
 
88
24
  async down(queryRunner: QueryRunner) {
89
- await queryRunner.dropTable('role_routes');
25
+ await queryRunner.dropTable('role_screens');
90
26
  }
91
27
  }
@@ -1,129 +1,69 @@
1
- import { MigrationInterface, QueryRunner } from 'typeorm';
1
+ import { timestampColumn } from '@hedhog/utils';
2
+ import {
3
+ MigrationInterface,
4
+ QueryRunner,
5
+ Table,
6
+ TableForeignKey,
7
+ } from 'typeorm';
2
8
 
3
9
  export class Migrate implements MigrationInterface {
4
10
  async up(queryRunner: QueryRunner) {
5
- await queryRunner.manager
6
- .createQueryBuilder()
7
- .insert()
8
- .into('routes', ['url', 'method'])
9
- .values([
10
- {
11
- url: '/auth/verify',
12
- method: 'GET',
13
- },
14
- {
15
- url: '/menus',
16
- method: 'GET',
17
- },
18
- {
19
- url: '/menus/system',
20
- method: 'GET',
21
- },
22
- {
23
- url: '/menus/:menuId',
24
- method: 'GET',
25
- },
26
- {
27
- url: '/menus',
28
- method: 'POST',
29
- },
30
- {
31
- url: '/menus/:menuId',
32
- method: 'PATCH',
33
- },
34
- {
35
- url: '/menus',
36
- method: 'DELETE',
37
- },
38
- {
39
- url: '/menus/order',
40
- method: 'PATCH',
41
- },
42
- {
43
- url: '/permissions',
44
- method: 'GET',
45
- },
46
- {
47
- url: '/permissions/:permissionId',
48
- method: 'GET',
49
- },
50
- {
51
- url: '/permissions',
52
- method: 'POST',
53
- },
54
- {
55
- url: '/permissions/:permissionId',
56
- method: 'PATCH',
57
- },
58
- {
59
- url: '/permissions',
60
- method: 'DELETE',
61
- },
62
- {
63
- url: '/screens',
64
- method: 'GET',
65
- },
66
- {
67
- url: '/screens/:screenId',
68
- method: 'GET',
69
- },
70
- {
71
- url: '/screens',
72
- method: 'POST',
73
- },
74
- {
75
- url: '/screens/:screenId',
76
- method: 'PATCH',
77
- },
78
- {
79
- url: '/screens',
80
- method: 'DELETE',
81
- },
82
- {
83
- url: '/settings',
84
- method: 'GET',
85
- },
86
- {
87
- url: '/settings/:settingId',
88
- method: 'GET',
89
- },
90
- {
91
- url: '/settings',
92
- method: 'POST',
93
- },
94
- {
95
- url: '/settings/:settingId',
96
- method: 'PATCH',
97
- },
98
- {
99
- url: '/settings',
100
- method: 'DELETE',
101
- },
102
- {
103
- url: '/users',
104
- method: 'GET',
105
- },
106
- {
107
- url: '/users/:userId',
108
- method: 'GET',
109
- },
110
- {
111
- url: '/users',
112
- method: 'POST',
113
- },
114
- {
115
- url: '/users/:userId',
116
- method: 'PATCH',
117
- },
118
- {
119
- url: '/users',
120
- method: 'DELETE',
121
- },
122
- ])
123
- .execute();
11
+ await queryRunner.createTable(
12
+ new Table({
13
+ name: 'role_users',
14
+ columns: [
15
+ {
16
+ name: 'role_id',
17
+ type: 'int',
18
+ isPrimary: true,
19
+ unsigned: true,
20
+ },
21
+ {
22
+ name: 'user_id',
23
+ type: 'int',
24
+ isPrimary: true,
25
+ unsigned: true,
26
+ },
27
+ timestampColumn(),
28
+ timestampColumn('updated_at'),
29
+ ],
30
+ }),
31
+ );
32
+
33
+ await queryRunner.createForeignKeys('role_users', [
34
+ new TableForeignKey({
35
+ columnNames: ['role_id'],
36
+ referencedColumnNames: ['id'],
37
+ referencedTableName: 'roles',
38
+ onDelete: 'CASCADE',
39
+ name: 'fk_role_users_roles',
40
+ }),
41
+
42
+ new TableForeignKey({
43
+ columnNames: ['user_id'],
44
+ referencedColumnNames: ['id'],
45
+ referencedTableName: 'users',
46
+ onDelete: 'CASCADE',
47
+ name: 'fk_role_users_users',
48
+ }),
49
+ ]);
50
+
51
+ const roleUsers = [
52
+ { role_id: 1, user_id: 1 },
53
+ { role_id: 2, user_id: 2 },
54
+ ];
55
+
56
+ for (const roleUser of roleUsers) {
57
+ await queryRunner.manager
58
+ .createQueryBuilder()
59
+ .insert()
60
+ .into('role_users')
61
+ .values(roleUser)
62
+ .execute();
63
+ }
124
64
  }
125
65
 
126
66
  async down(queryRunner: QueryRunner) {
127
- await queryRunner.dropTable('routes');
67
+ await queryRunner.dropTable('role_users');
128
68
  }
129
69
  }
@@ -10,19 +10,19 @@ export class Migrate implements MigrationInterface {
10
10
  async up(queryRunner: QueryRunner) {
11
11
  await queryRunner.createTable(
12
12
  new Table({
13
- name: 'route_screens',
13
+ name: 'role_routes',
14
14
  columns: [
15
15
  {
16
- name: 'route_id',
16
+ name: 'role_id',
17
17
  type: 'int',
18
- unsigned: true,
19
18
  isPrimary: true,
19
+ unsigned: true,
20
20
  },
21
21
  {
22
- name: 'screen_id',
22
+ name: 'route_id',
23
23
  type: 'int',
24
- unsigned: true,
25
24
  isPrimary: true,
25
+ unsigned: true,
26
26
  },
27
27
  timestampColumn(),
28
28
  timestampColumn('updated_at'),
@@ -30,25 +30,62 @@ export class Migrate implements MigrationInterface {
30
30
  }),
31
31
  );
32
32
 
33
- await queryRunner.createForeignKeys('route_screens', [
33
+ await queryRunner.createForeignKeys('role_routes', [
34
34
  new TableForeignKey({
35
- columnNames: ['route_id'],
35
+ columnNames: ['role_id'],
36
36
  referencedColumnNames: ['id'],
37
- referencedTableName: 'routes',
37
+ referencedTableName: 'roles',
38
38
  onDelete: 'CASCADE',
39
- name: 'fk_route_screens_routes',
39
+ name: 'fk_role_routes_roles',
40
40
  }),
41
41
  new TableForeignKey({
42
- columnNames: ['screen_id'],
42
+ columnNames: ['route_id'],
43
43
  referencedColumnNames: ['id'],
44
- referencedTableName: 'screens',
44
+ referencedTableName: 'routes',
45
45
  onDelete: 'CASCADE',
46
- name: 'fk_route_screens_screens',
46
+ name: 'fk_role_routes_routes',
47
47
  }),
48
48
  ]);
49
+
50
+ const routes = await queryRunner.manager
51
+ .createQueryBuilder()
52
+ .select()
53
+ .from('routes', 'r')
54
+ .execute();
55
+
56
+ for (const route of routes) {
57
+ await queryRunner.manager
58
+ .createQueryBuilder()
59
+ .insert()
60
+ .into('role_routes')
61
+ .values({
62
+ role_id: 1,
63
+ route_id: route.id,
64
+ })
65
+ .execute();
66
+ }
67
+
68
+ const routesScreens = await queryRunner.manager
69
+ .createQueryBuilder()
70
+ .select()
71
+ .from('routes', 's')
72
+ .where('s.url LIKE :url', { url: '/screens%' })
73
+ .execute();
74
+
75
+ for (const route of routesScreens) {
76
+ await queryRunner.manager
77
+ .createQueryBuilder()
78
+ .insert()
79
+ .into('role_routes')
80
+ .values({
81
+ role_id: 2,
82
+ route_id: route.id,
83
+ })
84
+ .execute();
85
+ }
49
86
  }
50
87
 
51
88
  async down(queryRunner: QueryRunner) {
52
- await queryRunner.dropTable('route_screens');
89
+ await queryRunner.dropTable('role_routes');
53
90
  }
54
91
  }
@@ -2,54 +2,128 @@ import { MigrationInterface, QueryRunner } from 'typeorm';
2
2
 
3
3
  export class Migrate implements MigrationInterface {
4
4
  async up(queryRunner: QueryRunner) {
5
- const screens = await queryRunner.manager
5
+ await queryRunner.manager
6
6
  .createQueryBuilder()
7
7
  .insert()
8
- .into('screens', ['name', 'slug', 'description', 'icon'])
8
+ .into('routes', ['url', 'method'])
9
9
  .values([
10
10
  {
11
- name: 'Users',
12
- slug: '/management/users',
13
- description: 'Check all users registered in the system.',
14
- icon: 'users',
11
+ url: '/auth/verify',
12
+ method: 'GET',
15
13
  },
16
14
  {
17
- name: 'Roles',
18
- slug: '/management/roles',
19
- description: 'Check all roles registered in the system.',
20
- icon: 'circles',
15
+ url: '/menus',
16
+ method: 'GET',
21
17
  },
22
18
  {
23
- name: 'Screens',
24
- slug: '/management/screens',
25
- description: 'Check all screens registered in the system.',
26
- icon: 'monitor',
19
+ url: '/menus/system',
20
+ method: 'GET',
27
21
  },
28
22
  {
29
- name: 'Menus',
30
- slug: '/management/menus',
31
- description: 'Check all menus registered in the system.',
32
- icon: 'menu',
23
+ url: '/menus/:menuId',
24
+ method: 'GET',
25
+ },
26
+ {
27
+ url: '/menus',
28
+ method: 'POST',
29
+ },
30
+ {
31
+ url: '/menus/:menuId',
32
+ method: 'PATCH',
33
+ },
34
+ {
35
+ url: '/menus',
36
+ method: 'DELETE',
37
+ },
38
+ {
39
+ url: '/menus/order',
40
+ method: 'PATCH',
41
+ },
42
+ {
43
+ url: '/permissions',
44
+ method: 'GET',
45
+ },
46
+ {
47
+ url: '/permissions/:permissionId',
48
+ method: 'GET',
49
+ },
50
+ {
51
+ url: '/permissions',
52
+ method: 'POST',
53
+ },
54
+ {
55
+ url: '/permissions/:permissionId',
56
+ method: 'PATCH',
57
+ },
58
+ {
59
+ url: '/permissions',
60
+ method: 'DELETE',
61
+ },
62
+ {
63
+ url: '/screens',
64
+ method: 'GET',
65
+ },
66
+ {
67
+ url: '/screens/:screenId',
68
+ method: 'GET',
69
+ },
70
+ {
71
+ url: '/screens',
72
+ method: 'POST',
73
+ },
74
+ {
75
+ url: '/screens/:screenId',
76
+ method: 'PATCH',
77
+ },
78
+ {
79
+ url: '/screens',
80
+ method: 'DELETE',
81
+ },
82
+ {
83
+ url: '/settings',
84
+ method: 'GET',
85
+ },
86
+ {
87
+ url: '/settings/:settingId',
88
+ method: 'GET',
89
+ },
90
+ {
91
+ url: '/settings',
92
+ method: 'POST',
93
+ },
94
+ {
95
+ url: '/settings/:settingId',
96
+ method: 'PATCH',
97
+ },
98
+ {
99
+ url: '/settings',
100
+ method: 'DELETE',
101
+ },
102
+ {
103
+ url: '/users',
104
+ method: 'GET',
105
+ },
106
+ {
107
+ url: '/users/:userId',
108
+ method: 'GET',
109
+ },
110
+ {
111
+ url: '/users',
112
+ method: 'POST',
113
+ },
114
+ {
115
+ url: '/users/:userId',
116
+ method: 'PATCH',
117
+ },
118
+ {
119
+ url: '/users',
120
+ method: 'DELETE',
33
121
  },
34
122
  ])
35
- .returning('id')
36
123
  .execute();
37
-
38
- for (const screen of screens.raw) {
39
- await queryRunner.manager
40
- .createQueryBuilder()
41
- .insert()
42
- .into('role_screens')
43
- .values({
44
- role_id: 1,
45
- screen_id: screen.id,
46
- })
47
- .execute();
48
- }
49
124
  }
50
125
 
51
126
  async down(queryRunner: QueryRunner) {
52
- await queryRunner.dropTable('screens');
53
- await queryRunner.dropTable('role_screens');
127
+ await queryRunner.dropTable('routes');
54
128
  }
55
129
  }