@hed-hog/core 0.0.278 → 0.0.285
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/README.md +60 -0
- package/dist/auth/auth.controller.d.ts +3 -3
- package/dist/auth/auth.service.d.ts +8 -8
- package/dist/dashboard/dashboard-core/dashboard-core.controller.d.ts +12 -0
- package/dist/dashboard/dashboard-core/dashboard-core.controller.d.ts.map +1 -1
- package/dist/dashboard/dashboard-core/dashboard-core.controller.js +9 -0
- package/dist/dashboard/dashboard-core/dashboard-core.controller.js.map +1 -1
- package/dist/dashboard/dashboard-core/dashboard-core.service.d.ts +12 -0
- package/dist/dashboard/dashboard-core/dashboard-core.service.d.ts.map +1 -1
- package/dist/dashboard/dashboard-core/dashboard-core.service.js +25 -0
- package/dist/dashboard/dashboard-core/dashboard-core.service.js.map +1 -1
- package/dist/file/file.controller.d.ts +2 -2
- package/dist/file/file.service.d.ts +4 -4
- package/dist/role/guards/role.guard.d.ts.map +1 -1
- package/dist/role/guards/role.guard.js +1 -1
- package/dist/role/guards/role.guard.js.map +1 -1
- package/dist/session/session.controller.d.ts +1 -1
- package/dist/session/session.service.d.ts +3 -3
- package/dist/user/user.controller.d.ts +2 -2
- package/dist/user/user.service.d.ts +6 -6
- package/hedhog/data/dashboard_component.yaml +95 -77
- package/hedhog/data/dashboard_component_role.yaml +91 -79
- package/hedhog/data/dashboard_item.yaml +121 -101
- package/hedhog/data/route.yaml +8 -0
- package/hedhog/frontend/app/ai_agent/page.tsx.ejs +69 -62
- package/hedhog/frontend/app/dashboard/[slug]/dashboard-content.tsx.ejs +23 -12
- package/hedhog/frontend/app/dashboard/components/draggable-grid.tsx.ejs +80 -5
- package/hedhog/frontend/app/dashboard/components/widgets/account-security.tsx.ejs +33 -29
- package/hedhog/frontend/app/dashboard/components/widgets/activity-timeline.tsx.ejs +18 -14
- package/hedhog/frontend/app/dashboard/components/widgets/email-notifications.tsx.ejs +39 -32
- package/hedhog/frontend/app/dashboard/components/widgets/login-history-chart.tsx.ejs +22 -19
- package/hedhog/frontend/app/dashboard/components/widgets/menus-card.tsx.ejs +58 -0
- package/hedhog/frontend/app/dashboard/components/widgets/routes-card.tsx.ejs +58 -0
- package/hedhog/frontend/app/dashboard/components/widgets/stat-access-level.tsx.ejs +18 -18
- package/hedhog/frontend/app/dashboard/components/widgets/stat-actions-today.tsx.ejs +18 -18
- package/hedhog/frontend/app/dashboard/components/widgets/stat-consecutive-days.tsx.ejs +18 -18
- package/hedhog/frontend/app/dashboard/components/widgets/stat-online-time.tsx.ejs +18 -18
- package/hedhog/frontend/app/dashboard/components/widgets/user-roles.tsx.ejs +15 -11
- package/hedhog/frontend/app/dashboard/components/widgets/user-sessions.tsx.ejs +39 -37
- package/hedhog/frontend/app/dashboard/dashboard.css.ejs +20 -4
- package/hedhog/frontend/app/mail/log/page.tsx.ejs +36 -47
- package/hedhog/frontend/app/mail/template/page.tsx.ejs +176 -126
- package/hedhog/frontend/app/menu/page.tsx.ejs +45 -39
- package/hedhog/frontend/app/roles/page.tsx.ejs +45 -46
- package/hedhog/frontend/app/users/page.tsx.ejs +70 -73
- package/hedhog/frontend/messages/en.json +15 -2
- package/hedhog/frontend/messages/pt.json +15 -2
- package/package.json +4 -4
- package/src/dashboard/dashboard-core/dashboard-core.controller.ts +5 -0
- package/src/dashboard/dashboard-core/dashboard-core.service.ts +34 -0
- package/src/role/guards/role.guard.ts +9 -8
|
@@ -68,8 +68,8 @@ export declare class UserService {
|
|
|
68
68
|
created_at: Date;
|
|
69
69
|
updated_at: Date;
|
|
70
70
|
user_id: number;
|
|
71
|
-
revoked_at: Date | null;
|
|
72
71
|
expires_at: Date | null;
|
|
72
|
+
revoked_at: Date | null;
|
|
73
73
|
requires_reset: boolean;
|
|
74
74
|
}[];
|
|
75
75
|
user_identifier: {
|
|
@@ -89,8 +89,8 @@ export declare class UserService {
|
|
|
89
89
|
updated_at: Date;
|
|
90
90
|
ip_address: string;
|
|
91
91
|
user_id: number;
|
|
92
|
-
revoked_at: Date | null;
|
|
93
92
|
expires_at: Date;
|
|
93
|
+
revoked_at: Date | null;
|
|
94
94
|
user_agent: string;
|
|
95
95
|
}[];
|
|
96
96
|
} & {
|
|
@@ -168,8 +168,8 @@ export declare class UserService {
|
|
|
168
168
|
created_at: Date;
|
|
169
169
|
updated_at: Date;
|
|
170
170
|
user_id: number;
|
|
171
|
-
revoked_at: Date | null;
|
|
172
171
|
expires_at: Date | null;
|
|
172
|
+
revoked_at: Date | null;
|
|
173
173
|
requires_reset: boolean;
|
|
174
174
|
}[];
|
|
175
175
|
user_identifier: {
|
|
@@ -189,8 +189,8 @@ export declare class UserService {
|
|
|
189
189
|
updated_at: Date;
|
|
190
190
|
ip_address: string;
|
|
191
191
|
user_id: number;
|
|
192
|
-
revoked_at: Date | null;
|
|
193
192
|
expires_at: Date;
|
|
193
|
+
revoked_at: Date | null;
|
|
194
194
|
user_agent: string;
|
|
195
195
|
}[];
|
|
196
196
|
} & {
|
|
@@ -212,8 +212,8 @@ export declare class UserService {
|
|
|
212
212
|
created_at: Date;
|
|
213
213
|
updated_at: Date;
|
|
214
214
|
user_id: number;
|
|
215
|
-
revoked_at: Date | null;
|
|
216
215
|
expires_at: Date | null;
|
|
216
|
+
revoked_at: Date | null;
|
|
217
217
|
requires_reset: boolean;
|
|
218
218
|
}[];
|
|
219
219
|
user_identifier: {
|
|
@@ -233,8 +233,8 @@ export declare class UserService {
|
|
|
233
233
|
updated_at: Date;
|
|
234
234
|
ip_address: string;
|
|
235
235
|
user_id: number;
|
|
236
|
-
revoked_at: Date | null;
|
|
237
236
|
expires_at: Date;
|
|
237
|
+
revoked_at: Date | null;
|
|
238
238
|
user_agent: string;
|
|
239
239
|
}[];
|
|
240
240
|
} & {
|
|
@@ -61,6 +61,24 @@
|
|
|
61
61
|
description:
|
|
62
62
|
en: Shows a card of the sessions today.
|
|
63
63
|
pt: Mostra um card das sessões de hoje.
|
|
64
|
+
- slug: menus-card
|
|
65
|
+
width: 2
|
|
66
|
+
height: 2
|
|
67
|
+
name:
|
|
68
|
+
en: Menus Card
|
|
69
|
+
pt: Card de Menus
|
|
70
|
+
description:
|
|
71
|
+
en: Shows the total number of navigation menus.
|
|
72
|
+
pt: Mostra o total de menus de navegação.
|
|
73
|
+
- slug: routes-card
|
|
74
|
+
width: 2
|
|
75
|
+
height: 2
|
|
76
|
+
name:
|
|
77
|
+
en: Routes Card
|
|
78
|
+
pt: Card de Rotas
|
|
79
|
+
description:
|
|
80
|
+
en: Shows the total number of registered API routes.
|
|
81
|
+
pt: Mostra o total de rotas de API registradas.
|
|
64
82
|
- slug: user-growth-chart
|
|
65
83
|
width: 6
|
|
66
84
|
height: 5
|
|
@@ -70,143 +88,143 @@
|
|
|
70
88
|
description:
|
|
71
89
|
en: Shows a chart of the user growth over time.
|
|
72
90
|
pt: Mostra um gráfico do crescimento de usuários ao longo do tempo.
|
|
73
|
-
- slug: account-security
|
|
74
|
-
min_width: 4
|
|
75
|
-
max_width: 6
|
|
76
|
-
min_height: 4
|
|
77
|
-
max_height: 6
|
|
78
|
-
width: 5
|
|
79
|
-
height: 5
|
|
91
|
+
- slug: account-security
|
|
92
|
+
min_width: 4
|
|
93
|
+
max_width: 6
|
|
94
|
+
min_height: 4
|
|
95
|
+
max_height: 6
|
|
96
|
+
width: 5
|
|
97
|
+
height: 5
|
|
80
98
|
name:
|
|
81
99
|
en: Account Security
|
|
82
100
|
pt: Segurança da Conta
|
|
83
101
|
description:
|
|
84
102
|
en: Shows the security level and recommendations for your account.
|
|
85
103
|
pt: Mostra o nível de segurança e recomendações para sua conta.
|
|
86
|
-
- slug: activity-timeline
|
|
87
|
-
min_width: 4
|
|
88
|
-
max_width: 6
|
|
89
|
-
min_height: 2
|
|
90
|
-
max_height: 4
|
|
91
|
-
width: 5
|
|
92
|
-
height: 3
|
|
104
|
+
- slug: activity-timeline
|
|
105
|
+
min_width: 4
|
|
106
|
+
max_width: 6
|
|
107
|
+
min_height: 2
|
|
108
|
+
max_height: 4
|
|
109
|
+
width: 5
|
|
110
|
+
height: 3
|
|
93
111
|
name:
|
|
94
112
|
en: Activity Timeline
|
|
95
113
|
pt: Histórico de Atividades
|
|
96
114
|
description:
|
|
97
115
|
en: Displays your recent activity events in the system.
|
|
98
116
|
pt: Exibe os eventos recentes de atividade no sistema.
|
|
99
|
-
- slug: email-notifications
|
|
100
|
-
min_width: 5
|
|
101
|
-
max_width: 8
|
|
102
|
-
min_height: 4
|
|
103
|
-
max_height: 6
|
|
104
|
-
width: 7
|
|
105
|
-
height: 5
|
|
117
|
+
- slug: email-notifications
|
|
118
|
+
min_width: 5
|
|
119
|
+
max_width: 8
|
|
120
|
+
min_height: 4
|
|
121
|
+
max_height: 6
|
|
122
|
+
width: 7
|
|
123
|
+
height: 5
|
|
106
124
|
name:
|
|
107
125
|
en: Email Notifications
|
|
108
126
|
pt: Notificações por E-mail
|
|
109
127
|
description:
|
|
110
128
|
en: Shows statistics and chart of system emails received and read.
|
|
111
129
|
pt: Mostra estatísticas e gráfico de e-mails do sistema recebidos e lidos.
|
|
112
|
-
- slug: login-history-chart
|
|
113
|
-
min_width: 5
|
|
114
|
-
max_width: 8
|
|
115
|
-
min_height: 3
|
|
116
|
-
max_height: 5
|
|
117
|
-
width: 7
|
|
118
|
-
height: 4
|
|
130
|
+
- slug: login-history-chart
|
|
131
|
+
min_width: 5
|
|
132
|
+
max_width: 8
|
|
133
|
+
min_height: 3
|
|
134
|
+
max_height: 5
|
|
135
|
+
width: 7
|
|
136
|
+
height: 4
|
|
119
137
|
name:
|
|
120
138
|
en: Login History Chart
|
|
121
139
|
pt: Gráfico de Histórico de Login
|
|
122
140
|
description:
|
|
123
141
|
en: Shows a chart of logins and failed attempts for the week.
|
|
124
142
|
pt: Mostra um gráfico de logins e tentativas falhas da semana.
|
|
125
|
-
- slug: profile-card
|
|
126
|
-
min_width: 6
|
|
127
|
-
max_width: 12
|
|
128
|
-
min_height: 2
|
|
129
|
-
max_height: 3
|
|
130
|
-
width: 12
|
|
131
|
-
height:
|
|
143
|
+
- slug: profile-card
|
|
144
|
+
min_width: 6
|
|
145
|
+
max_width: 12
|
|
146
|
+
min_height: 2
|
|
147
|
+
max_height: 3
|
|
148
|
+
width: 12
|
|
149
|
+
height: 3
|
|
132
150
|
name:
|
|
133
151
|
en: Profile Card
|
|
134
152
|
pt: Cartão de Perfil
|
|
135
153
|
description:
|
|
136
154
|
en: Displays user profile information and quick actions.
|
|
137
155
|
pt: Exibe informações do perfil do usuário e ações rápidas.
|
|
138
|
-
- slug: stat-online-time
|
|
139
|
-
min_width: 2
|
|
140
|
-
max_width: 3
|
|
141
|
-
min_height: 1
|
|
142
|
-
max_height: 2
|
|
143
|
-
width: 3
|
|
144
|
-
height: 1
|
|
156
|
+
- slug: stat-online-time
|
|
157
|
+
min_width: 2
|
|
158
|
+
max_width: 3
|
|
159
|
+
min_height: 1
|
|
160
|
+
max_height: 2
|
|
161
|
+
width: 3
|
|
162
|
+
height: 1
|
|
145
163
|
name:
|
|
146
164
|
en: Online Time
|
|
147
165
|
pt: Tempo Online
|
|
148
166
|
description:
|
|
149
167
|
en: Shows how long you have been online in the current session.
|
|
150
168
|
pt: Mostra há quanto tempo você está online na sessão atual.
|
|
151
|
-
- slug: stat-actions-today
|
|
152
|
-
min_width: 2
|
|
153
|
-
max_width: 3
|
|
154
|
-
min_height: 1
|
|
155
|
-
max_height: 2
|
|
156
|
-
width: 3
|
|
157
|
-
height: 1
|
|
169
|
+
- slug: stat-actions-today
|
|
170
|
+
min_width: 2
|
|
171
|
+
max_width: 3
|
|
172
|
+
min_height: 1
|
|
173
|
+
max_height: 2
|
|
174
|
+
width: 3
|
|
175
|
+
height: 1
|
|
158
176
|
name:
|
|
159
177
|
en: Actions Today
|
|
160
178
|
pt: Ações Hoje
|
|
161
179
|
description:
|
|
162
180
|
en: Shows the number of actions performed today.
|
|
163
181
|
pt: Mostra o número de ações realizadas hoje.
|
|
164
|
-
- slug: stat-consecutive-days
|
|
165
|
-
min_width: 2
|
|
166
|
-
max_width: 3
|
|
167
|
-
min_height: 1
|
|
168
|
-
max_height: 2
|
|
169
|
-
width: 3
|
|
170
|
-
height: 1
|
|
182
|
+
- slug: stat-consecutive-days
|
|
183
|
+
min_width: 2
|
|
184
|
+
max_width: 3
|
|
185
|
+
min_height: 1
|
|
186
|
+
max_height: 2
|
|
187
|
+
width: 3
|
|
188
|
+
height: 1
|
|
171
189
|
name:
|
|
172
190
|
en: Consecutive Days
|
|
173
191
|
pt: Dias Consecutivos
|
|
174
192
|
description:
|
|
175
193
|
en: Shows how many consecutive days you have logged in.
|
|
176
194
|
pt: Mostra quantos dias consecutivos você fez login.
|
|
177
|
-
- slug: stat-access-level
|
|
178
|
-
min_width: 2
|
|
179
|
-
max_width: 3
|
|
180
|
-
min_height: 1
|
|
181
|
-
max_height: 2
|
|
182
|
-
width: 3
|
|
183
|
-
height: 1
|
|
195
|
+
- slug: stat-access-level
|
|
196
|
+
min_width: 2
|
|
197
|
+
max_width: 3
|
|
198
|
+
min_height: 1
|
|
199
|
+
max_height: 2
|
|
200
|
+
width: 3
|
|
201
|
+
height: 1
|
|
184
202
|
name:
|
|
185
203
|
en: Access Level
|
|
186
204
|
pt: Nível de Acesso
|
|
187
205
|
description:
|
|
188
206
|
en: Shows your current security and access level.
|
|
189
207
|
pt: Mostra seu nível atual de segurança e acesso.
|
|
190
|
-
- slug: user-roles
|
|
191
|
-
min_width: 4
|
|
192
|
-
max_width: 8
|
|
193
|
-
min_height: 2
|
|
194
|
-
max_height: 4
|
|
195
|
-
width: 7
|
|
196
|
-
height: 3
|
|
208
|
+
- slug: user-roles
|
|
209
|
+
min_width: 4
|
|
210
|
+
max_width: 8
|
|
211
|
+
min_height: 2
|
|
212
|
+
max_height: 4
|
|
213
|
+
width: 7
|
|
214
|
+
height: 3
|
|
197
215
|
name:
|
|
198
216
|
en: User Roles
|
|
199
217
|
pt: Papéis do Usuário
|
|
200
218
|
description:
|
|
201
219
|
en: Shows the roles assigned to your profile.
|
|
202
220
|
pt: Mostra os papéis atribuídos ao seu perfil.
|
|
203
|
-
- slug: user-sessions
|
|
204
|
-
min_width: 4
|
|
205
|
-
max_width: 7
|
|
206
|
-
min_height: 3
|
|
207
|
-
max_height: 5
|
|
208
|
-
width: 5
|
|
209
|
-
height: 4
|
|
221
|
+
- slug: user-sessions
|
|
222
|
+
min_width: 4
|
|
223
|
+
max_width: 7
|
|
224
|
+
min_height: 3
|
|
225
|
+
max_height: 5
|
|
226
|
+
width: 5
|
|
227
|
+
height: 4
|
|
210
228
|
name:
|
|
211
229
|
en: User Sessions
|
|
212
230
|
pt: Sessões do Usuário
|
|
@@ -1,51 +1,63 @@
|
|
|
1
|
-
- component_id:
|
|
2
|
-
where:
|
|
3
|
-
slug: active-users-card
|
|
4
|
-
role_id:
|
|
5
|
-
where:
|
|
6
|
-
slug: admin-access
|
|
7
|
-
- component_id:
|
|
8
|
-
where:
|
|
9
|
-
slug: mail-sent-card
|
|
10
|
-
role_id:
|
|
11
|
-
where:
|
|
12
|
-
slug: admin-access
|
|
13
|
-
- component_id:
|
|
14
|
-
where:
|
|
15
|
-
slug: mail-sent-chart
|
|
16
|
-
role_id:
|
|
17
|
-
where:
|
|
18
|
-
slug: admin-access
|
|
19
|
-
- component_id:
|
|
20
|
-
where:
|
|
21
|
-
slug: permissions-card
|
|
22
|
-
role_id:
|
|
23
|
-
where:
|
|
24
|
-
slug: admin-access
|
|
25
|
-
- component_id:
|
|
26
|
-
where:
|
|
27
|
-
slug: permissions-chart
|
|
28
|
-
role_id:
|
|
29
|
-
where:
|
|
30
|
-
slug: admin-access
|
|
31
|
-
- component_id:
|
|
32
|
-
where:
|
|
33
|
-
slug: session-activity-chart
|
|
34
|
-
role_id:
|
|
35
|
-
where:
|
|
36
|
-
slug: admin-access
|
|
37
|
-
- component_id:
|
|
38
|
-
where:
|
|
39
|
-
slug: sessions-today-card
|
|
40
|
-
role_id:
|
|
41
|
-
where:
|
|
42
|
-
slug: admin-access
|
|
43
|
-
- component_id:
|
|
44
|
-
where:
|
|
45
|
-
slug:
|
|
46
|
-
role_id:
|
|
47
|
-
where:
|
|
48
|
-
slug: admin-access
|
|
1
|
+
- component_id:
|
|
2
|
+
where:
|
|
3
|
+
slug: active-users-card
|
|
4
|
+
role_id:
|
|
5
|
+
where:
|
|
6
|
+
slug: admin-access
|
|
7
|
+
- component_id:
|
|
8
|
+
where:
|
|
9
|
+
slug: mail-sent-card
|
|
10
|
+
role_id:
|
|
11
|
+
where:
|
|
12
|
+
slug: admin-access
|
|
13
|
+
- component_id:
|
|
14
|
+
where:
|
|
15
|
+
slug: mail-sent-chart
|
|
16
|
+
role_id:
|
|
17
|
+
where:
|
|
18
|
+
slug: admin-access
|
|
19
|
+
- component_id:
|
|
20
|
+
where:
|
|
21
|
+
slug: permissions-card
|
|
22
|
+
role_id:
|
|
23
|
+
where:
|
|
24
|
+
slug: admin-access
|
|
25
|
+
- component_id:
|
|
26
|
+
where:
|
|
27
|
+
slug: permissions-chart
|
|
28
|
+
role_id:
|
|
29
|
+
where:
|
|
30
|
+
slug: admin-access
|
|
31
|
+
- component_id:
|
|
32
|
+
where:
|
|
33
|
+
slug: session-activity-chart
|
|
34
|
+
role_id:
|
|
35
|
+
where:
|
|
36
|
+
slug: admin-access
|
|
37
|
+
- component_id:
|
|
38
|
+
where:
|
|
39
|
+
slug: sessions-today-card
|
|
40
|
+
role_id:
|
|
41
|
+
where:
|
|
42
|
+
slug: admin-access
|
|
43
|
+
- component_id:
|
|
44
|
+
where:
|
|
45
|
+
slug: menus-card
|
|
46
|
+
role_id:
|
|
47
|
+
where:
|
|
48
|
+
slug: admin-access
|
|
49
|
+
- component_id:
|
|
50
|
+
where:
|
|
51
|
+
slug: routes-card
|
|
52
|
+
role_id:
|
|
53
|
+
where:
|
|
54
|
+
slug: admin-access
|
|
55
|
+
- component_id:
|
|
56
|
+
where:
|
|
57
|
+
slug: user-growth-chart
|
|
58
|
+
role_id:
|
|
59
|
+
where:
|
|
60
|
+
slug: admin-access
|
|
49
61
|
- component_id:
|
|
50
62
|
where:
|
|
51
63
|
slug: account-security
|
|
@@ -178,34 +190,34 @@
|
|
|
178
190
|
role_id:
|
|
179
191
|
where:
|
|
180
192
|
slug: admin-access
|
|
181
|
-
|
|
182
|
-
- component_id:
|
|
183
|
-
where:
|
|
184
|
-
slug: mail-config
|
|
185
|
-
role_id:
|
|
186
|
-
where:
|
|
187
|
-
slug: admin
|
|
188
|
-
- component_id:
|
|
189
|
-
where:
|
|
190
|
-
slug: locale-config
|
|
191
|
-
role_id:
|
|
192
|
-
where:
|
|
193
|
-
slug: admin
|
|
194
|
-
- component_id:
|
|
195
|
-
where:
|
|
196
|
-
slug: oauth-config
|
|
197
|
-
role_id:
|
|
198
|
-
where:
|
|
199
|
-
slug: admin
|
|
200
|
-
- component_id:
|
|
201
|
-
where:
|
|
202
|
-
slug: storage-config
|
|
203
|
-
role_id:
|
|
204
|
-
where:
|
|
205
|
-
slug: admin
|
|
206
|
-
- component_id:
|
|
207
|
-
where:
|
|
208
|
-
slug: theme-config
|
|
209
|
-
role_id:
|
|
210
|
-
where:
|
|
211
|
-
slug: admin
|
|
193
|
+
|
|
194
|
+
- component_id:
|
|
195
|
+
where:
|
|
196
|
+
slug: mail-config
|
|
197
|
+
role_id:
|
|
198
|
+
where:
|
|
199
|
+
slug: admin
|
|
200
|
+
- component_id:
|
|
201
|
+
where:
|
|
202
|
+
slug: locale-config
|
|
203
|
+
role_id:
|
|
204
|
+
where:
|
|
205
|
+
slug: admin
|
|
206
|
+
- component_id:
|
|
207
|
+
where:
|
|
208
|
+
slug: oauth-config
|
|
209
|
+
role_id:
|
|
210
|
+
where:
|
|
211
|
+
slug: admin
|
|
212
|
+
- component_id:
|
|
213
|
+
where:
|
|
214
|
+
slug: storage-config
|
|
215
|
+
role_id:
|
|
216
|
+
where:
|
|
217
|
+
slug: admin
|
|
218
|
+
- component_id:
|
|
219
|
+
where:
|
|
220
|
+
slug: theme-config
|
|
221
|
+
role_id:
|
|
222
|
+
where:
|
|
223
|
+
slug: admin
|