@hed-hog/core 0.0.330 → 0.0.331

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.
Files changed (54) hide show
  1. package/dist/ai/ai.service.d.ts +1 -1
  2. package/dist/auth/auth.controller.d.ts +23 -23
  3. package/dist/auth/auth.service.d.ts +41 -41
  4. package/dist/challenge/challenge.service.d.ts +14 -14
  5. package/dist/core/system.controller.d.ts +2 -2
  6. package/dist/core/system.service.d.ts +2 -2
  7. package/dist/dashboard/dashboard/dashboard.controller.d.ts +87 -87
  8. package/dist/dashboard/dashboard/dashboard.service.d.ts +87 -87
  9. package/dist/dashboard/dashboard-component/dashboard-component.controller.d.ts +33 -33
  10. package/dist/dashboard/dashboard-component/dashboard-component.service.d.ts +33 -33
  11. package/dist/dashboard/dashboard-component-role/dashboard-component-role.controller.d.ts +42 -42
  12. package/dist/dashboard/dashboard-component-role/dashboard-component-role.service.d.ts +42 -42
  13. package/dist/dashboard/dashboard-core/dashboard-core.controller.d.ts +12 -12
  14. package/dist/dashboard/dashboard-core/dashboard-core.service.d.ts +12 -12
  15. package/dist/dashboard/dashboard-item/dashboard-item.controller.d.ts +7 -7
  16. package/dist/dashboard/dashboard-item/dashboard-item.service.d.ts +7 -7
  17. package/dist/dashboard/dashboard-role/dashboard-role.controller.d.ts +33 -33
  18. package/dist/dashboard/dashboard-role/dashboard-role.service.d.ts +33 -33
  19. package/dist/dashboard/dashboard-user/dashboard-user.controller.d.ts +3 -3
  20. package/dist/dashboard/dashboard-user/dashboard-user.service.d.ts +3 -3
  21. package/dist/file/file.controller.d.ts +8 -8
  22. package/dist/file/file.service.d.ts +18 -18
  23. package/dist/mail/mail.controller.d.ts +15 -15
  24. package/dist/mail/mail.service.d.ts +15 -15
  25. package/dist/mail-profile/mail-profile.controller.d.ts +9 -9
  26. package/dist/mail-profile/mail-profile.service.d.ts +9 -9
  27. package/dist/mail-sent/mail-sent.controller.d.ts +17 -17
  28. package/dist/mail-sent/mail-sent.service.d.ts +17 -17
  29. package/dist/mcp-chat/mcp-chat.controller.d.ts +10 -10
  30. package/dist/mcp-chat/mcp-chat.service.d.ts +10 -10
  31. package/dist/menu/menu.controller.d.ts +11 -11
  32. package/dist/menu/menu.service.d.ts +11 -11
  33. package/dist/profile/profile.controller.d.ts +17 -17
  34. package/dist/profile/profile.service.d.ts +17 -17
  35. package/dist/role/role.controller.d.ts +12 -12
  36. package/dist/role/role.service.d.ts +12 -12
  37. package/dist/screen/screen.controller.d.ts +3 -3
  38. package/dist/screen/screen.service.d.ts +3 -3
  39. package/dist/session/session.controller.d.ts +4 -4
  40. package/dist/session/session.service.d.ts +12 -12
  41. package/dist/setting/setting.controller.d.ts +13 -13
  42. package/dist/setting/setting.service.d.ts +13 -13
  43. package/dist/user/user.controller.d.ts +24 -24
  44. package/dist/user/user.service.d.ts +55 -55
  45. package/hedhog/frontend/app/account/layout.tsx.ejs +1 -1
  46. package/hedhog/frontend/app/configurations/[slug]/components/setting-field.tsx.ejs +27 -23
  47. package/hedhog/frontend/app/mail/template/page.tsx.ejs +5 -5
  48. package/hedhog/frontend/app/menu/page.tsx.ejs +7 -2
  49. package/hedhog/frontend/app/preferences/page.tsx.ejs +1 -1
  50. package/hedhog/frontend/app/roles/page.tsx.ejs +7 -2
  51. package/hedhog/frontend/app/users/page.tsx.ejs +1 -1
  52. package/hedhog/frontend/messages/en.json +34 -1
  53. package/hedhog/frontend/messages/pt.json +34 -1
  54. package/package.json +3 -3
@@ -192,7 +192,9 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
192
192
  size="icon"
193
193
  className="absolute right-1 top-1/2 h-8 w-8 -translate-y-1/2"
194
194
  onClick={() => setShowSecretValue((prev) => !prev)}
195
- aria-label={showSecretValue ? 'Hide password' : 'Show password'}
195
+ aria-label={
196
+ showSecretValue ? t('hidePassword') : t('showPassword')
197
+ }
196
198
  >
197
199
  {showSecretValue ? (
198
200
  <EyeOff className="h-4 w-4" />
@@ -231,7 +233,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
231
233
  const fileId = response.data?.id;
232
234
 
233
235
  if (!fileId) {
234
- throw new Error('File ID not returned');
236
+ throw new Error(t('fileIdNotReturned'));
235
237
  }
236
238
 
237
239
  const openResponse: any = await request({
@@ -242,7 +244,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
242
244
  const openUrl = openResponse?.data?.url;
243
245
 
244
246
  if (!openUrl) {
245
- throw new Error('Temporary open URL not returned');
247
+ throw new Error(t('temporaryOpenUrlNotReturned'));
246
248
  }
247
249
 
248
250
  const fileUrl =
@@ -492,24 +494,24 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
492
494
  return (
493
495
  <div className="space-y-4">
494
496
  <div className="space-y-1">
495
- <Label>Name *</Label>
497
+ <Label>{t('mailProfile.nameLabel')}</Label>
496
498
  <Input
497
499
  value={values.name || ''}
498
500
  onChange={(e) => setValue('name', e.target.value)}
499
- placeholder="My Mail Profile"
501
+ placeholder={t('mailProfile.namePlaceholder')}
500
502
  />
501
503
  </div>
502
504
  <div className="space-y-1">
503
- <Label>From Email *</Label>
505
+ <Label>{t('mailProfile.fromEmailLabel')}</Label>
504
506
  <Input
505
507
  type="email"
506
508
  value={values.from_email || ''}
507
509
  onChange={(e) => setValue('from_email', e.target.value)}
508
- placeholder="no-reply@example.com"
510
+ placeholder={t('mailProfile.fromEmailPlaceholder')}
509
511
  />
510
512
  </div>
511
513
  <div className="space-y-1">
512
- <Label>Provider *</Label>
514
+ <Label>{t('mailProfile.providerLabel')}</Label>
513
515
  <Select
514
516
  value={provider}
515
517
  onValueChange={(v) => setValue('provider', v)}
@@ -520,41 +522,43 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
520
522
  <SelectContent>
521
523
  <SelectItem value="SMTP">SMTP</SelectItem>
522
524
  <SelectItem value="GMAIL">Gmail</SelectItem>
523
- <SelectItem value="SES">Amazon SES</SelectItem>
525
+ <SelectItem value="SES">
526
+ {t('mailProfile.providers.ses')}
527
+ </SelectItem>
524
528
  </SelectContent>
525
529
  </Select>
526
530
  </div>
527
531
  {provider === 'SMTP' && (
528
532
  <>
529
533
  <div className="space-y-1">
530
- <Label>SMTP Host *</Label>
534
+ <Label>{t('mailProfile.smtpHostLabel')}</Label>
531
535
  <Input
532
536
  value={values.smtp_host || ''}
533
537
  onChange={(e) => setValue('smtp_host', e.target.value)}
534
- placeholder="smtp.example.com"
538
+ placeholder={t('mailProfile.smtpHostPlaceholder')}
535
539
  />
536
540
  </div>
537
541
  <div className="space-y-1">
538
- <Label>SMTP Port *</Label>
542
+ <Label>{t('mailProfile.smtpPortLabel')}</Label>
539
543
  <Input
540
544
  type="number"
541
545
  value={values.smtp_port || '587'}
542
546
  onChange={(e) => setValue('smtp_port', e.target.value)}
543
- placeholder="587"
547
+ placeholder={t('mailProfile.smtpPortPlaceholder')}
544
548
  />
545
549
  </div>
546
550
  <div className="space-y-1">
547
- <Label>SMTP Username *</Label>
551
+ <Label>{t('mailProfile.smtpUsernameLabel')}</Label>
548
552
  <Input
549
553
  value={values.smtp_username || ''}
550
554
  onChange={(e) =>
551
555
  setValue('smtp_username', e.target.value)
552
556
  }
553
- placeholder="user@example.com"
557
+ placeholder={t('mailProfile.smtpUsernamePlaceholder')}
554
558
  />
555
559
  </div>
556
560
  <div className="space-y-1">
557
- <Label>SMTP Password *</Label>
561
+ <Label>{t('mailProfile.smtpPasswordLabel')}</Label>
558
562
  <Input
559
563
  type="password"
560
564
  value={values.smtp_password || ''}
@@ -568,7 +572,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
568
572
  {provider === 'GMAIL' && (
569
573
  <>
570
574
  <div className="space-y-1">
571
- <Label>Client ID *</Label>
575
+ <Label>{t('mailProfile.clientIdLabel')}</Label>
572
576
  <Input
573
577
  value={values.gmail_client_id || ''}
574
578
  onChange={(e) =>
@@ -577,7 +581,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
577
581
  />
578
582
  </div>
579
583
  <div className="space-y-1">
580
- <Label>Client Secret *</Label>
584
+ <Label>{t('mailProfile.clientSecretLabel')}</Label>
581
585
  <Input
582
586
  type="password"
583
587
  value={values.gmail_client_secret || ''}
@@ -587,7 +591,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
587
591
  />
588
592
  </div>
589
593
  <div className="space-y-1">
590
- <Label>Refresh Token *</Label>
594
+ <Label>{t('mailProfile.refreshTokenLabel')}</Label>
591
595
  <Input
592
596
  value={values.gmail_refresh_token || ''}
593
597
  onChange={(e) =>
@@ -600,7 +604,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
600
604
  {provider === 'SES' && (
601
605
  <>
602
606
  <div className="space-y-1">
603
- <Label>Access Key ID *</Label>
607
+ <Label>{t('mailProfile.accessKeyIdLabel')}</Label>
604
608
  <Input
605
609
  value={values.ses_access_key_id || ''}
606
610
  onChange={(e) =>
@@ -609,7 +613,7 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
609
613
  />
610
614
  </div>
611
615
  <div className="space-y-1">
612
- <Label>Secret Access Key *</Label>
616
+ <Label>{t('mailProfile.secretAccessKeyLabel')}</Label>
613
617
  <Input
614
618
  type="password"
615
619
  value={values.ses_secret_access_key || ''}
@@ -619,11 +623,11 @@ export const SettingField = ({ setting, className }: SettingFieldProps) => {
619
623
  />
620
624
  </div>
621
625
  <div className="space-y-1">
622
- <Label>Region *</Label>
626
+ <Label>{t('mailProfile.regionLabel')}</Label>
623
627
  <Input
624
628
  value={values.ses_region || ''}
625
629
  onChange={(e) => setValue('ses_region', e.target.value)}
626
- placeholder="us-east-1"
630
+ placeholder={t('mailProfile.regionPlaceholder')}
627
631
  />
628
632
  </div>
629
633
  </>
@@ -987,7 +987,7 @@ export default function EmailTemplatesPage() {
987
987
  <div className="rounded-lg border bg-white overflow-auto max-h-[calc(90vh-280px)]">
988
988
  <iframe
989
989
  srcDoc={renderHTMLPreview(formData.body)}
990
- className="w-full min-h-[500px] border-0"
990
+ className="w-full min-h-125 border-0"
991
991
  title="Email Preview"
992
992
  style={{ colorScheme: 'light' }}
993
993
  />
@@ -1004,7 +1004,7 @@ export default function EmailTemplatesPage() {
1004
1004
  <div key={idx} className="flex items-center gap-2">
1005
1005
  <Badge
1006
1006
  variant="outline"
1007
- className="font-mono min-w-[120px]"
1007
+ className="font-mono min-w-30"
1008
1008
  >
1009
1009
  {'{{' + v + '}}'}
1010
1010
  </Badge>
@@ -1105,7 +1105,7 @@ export default function EmailTemplatesPage() {
1105
1105
  <div key={idx} className="flex items-center gap-2">
1106
1106
  <Badge
1107
1107
  variant="outline"
1108
- className="font-mono min-w-[120px]"
1108
+ className="font-mono min-w-30"
1109
1109
  >
1110
1110
  {'{{' + v + '}}'}
1111
1111
  </Badge>
@@ -1128,7 +1128,7 @@ export default function EmailTemplatesPage() {
1128
1128
 
1129
1129
  <div className="space-y-2">
1130
1130
  <Label>{t('emailPreview')}</Label>
1131
- <div className="rounded-lg border bg-white overflow-hidden max-h-[400px]">
1131
+ <div className="rounded-lg border bg-white overflow-hidden max-h-100">
1132
1132
  <iframe
1133
1133
  srcDoc={renderHTMLPreview(
1134
1134
  Object.entries(testEmailVariableValues).reduce(
@@ -1145,7 +1145,7 @@ export default function EmailTemplatesPage() {
1145
1145
  formData.body
1146
1146
  )
1147
1147
  )}
1148
- className="w-full min-h-[400px] border-0"
1148
+ className="w-full min-h-100 border-0"
1149
1149
  title="Email Test Preview"
1150
1150
  style={{ colorScheme: 'light' }}
1151
1151
  />
@@ -65,6 +65,7 @@ import {
65
65
  SelectTrigger,
66
66
  SelectValue,
67
67
  } from '@/components/ui/select';
68
+ import { usePersistedPageSize } from '@/hooks/use-persisted-page-size';
68
69
  import {
69
70
  Sheet,
70
71
  SheetContent,
@@ -1297,7 +1298,11 @@ export default function MenuPage() {
1297
1298
  const [isRefreshingMenu, setIsRefreshingMenu] = useState(false);
1298
1299
 
1299
1300
  const [page, setPage] = useState(1);
1300
- const [pageSize, setPageSize] = useState(12);
1301
+ const [pageSize, setPageSize] = usePersistedPageSize({
1302
+ storageKey: 'pagination:core-menu:pageSize',
1303
+ defaultValue: 12,
1304
+ allowedValues: [6, 12, 24, 48],
1305
+ });
1301
1306
 
1302
1307
  const { data: allMenus, refetch: refetchAllMenus } = useQuery<MenuItem[]>({
1303
1308
  queryKey: ['menus-all', currentLocaleCode],
@@ -2286,7 +2291,7 @@ export default function MenuPage() {
2286
2291
  return (
2287
2292
  <Page>
2288
2293
  <PageHeader
2289
- breadcrumbs={[{ label: 'Home', href: '/' }, { label: t('menus') }]}
2294
+ breadcrumbs={[{ label: t('home'), href: '/' }, { label: t('menus') }]}
2290
2295
  actions={[
2291
2296
  {
2292
2297
  label: t('buttonAddMenu'),
@@ -187,7 +187,7 @@ export default function PreferencesPage() {
187
187
  <div className="flex flex-col h-screen px-4">
188
188
  <PageHeader
189
189
  breadcrumbs={[
190
- { label: 'Home', href: '/dashboard' },
190
+ { label: t('home'), href: '/dashboard' },
191
191
  { label: t('title') },
192
192
  ]}
193
193
  title={t('title')}
@@ -73,6 +73,7 @@ import { useEffect, useMemo, useState } from 'react';
73
73
  import { useForm, useWatch } from 'react-hook-form';
74
74
  import { toast } from 'sonner';
75
75
  import { z } from 'zod';
76
+ import { usePersistedPageSize } from '@/hooks/use-persisted-page-size';
76
77
  import { RoleMenusSection } from './menus';
77
78
  import { RoleRoutesSection } from './routes';
78
79
  import { RoleUsersSection } from './users';
@@ -167,7 +168,11 @@ export default function RolePage() {
167
168
  const [selectedLocale, setSelectedLocale] = useState(currentLocaleCode);
168
169
 
169
170
  const [page, setPage] = useState(1);
170
- const [pageSize, setPageSize] = useState(12);
171
+ const [pageSize, setPageSize] = usePersistedPageSize({
172
+ storageKey: 'pagination:core-roles:pageSize',
173
+ defaultValue: 12,
174
+ allowedValues: [6, 12, 24, 48],
175
+ });
171
176
  const [activeTab, setActiveTab] = useState('basic-info');
172
177
  const [openDeleteModal, setOpenDeleteModal] = useState(false);
173
178
 
@@ -545,7 +550,7 @@ export default function RolePage() {
545
550
  return (
546
551
  <Page>
547
552
  <PageHeader
548
- breadcrumbs={[{ label: 'Home', href: '/' }, { label: t('roles') }]}
553
+ breadcrumbs={[{ label: t('home'), href: '/' }, { label: t('roles') }]}
549
554
  actions={[
550
555
  {
551
556
  label: t('buttonAddRole'),
@@ -96,7 +96,7 @@ export default function UserPage() {
96
96
  return (
97
97
  <Page>
98
98
  <PageHeader
99
- breadcrumbs={[{ label: 'Home', href: '/' }, { label: t('users') }]}
99
+ breadcrumbs={[{ label: t('home'), href: '/' }, { label: t('users') }]}
100
100
  actions={[
101
101
  {
102
102
  label: t('buttonAddUser'),
@@ -68,6 +68,7 @@
68
68
  "tabAccounts": "Accounts",
69
69
  "tabSessions": "Sessions",
70
70
  "breadcrumbLabel": "Account",
71
+ "home": "Home",
71
72
  "title": "Account",
72
73
  "description": "Manage your account settings and preferences."
73
74
  },
@@ -93,6 +94,7 @@
93
94
  "languageRequired": "Language is required",
94
95
  "themeRequired": "Theme is required",
95
96
  "title": "Preferences",
97
+ "home": "Home",
96
98
  "description": "Manage your user preferences and settings.",
97
99
  "appearance": "Appearance",
98
100
  "theme": "Theme",
@@ -202,6 +204,7 @@
202
204
  "cancel": "Cancel",
203
205
  "noRecentActivity": "No recent activity from this user.",
204
206
  "users": "Users",
207
+ "home": "Home",
205
208
  "tabPermissions": "Permissions",
206
209
  "permissionsTitle": "User Permissions",
207
210
  "permissionsDescription": "Manage roles assigned to this user",
@@ -245,6 +248,7 @@
245
248
  "title": "Roles Management",
246
249
  "description": "Manage all system roles and permissions",
247
250
  "roles": "Roles",
251
+ "home": "Home",
248
252
  "buttonAddRole": "Add Role",
249
253
  "totalRoles": "Total Roles",
250
254
  "totalUsers": "Total Users",
@@ -1026,12 +1030,40 @@
1026
1030
  "settingUpdated": "Setting updated successfully.",
1027
1031
  "settingUpdateFailed": "Failed to update setting.",
1028
1032
  "iconRevalidated": "System icon revalidated successfully.",
1033
+ "hidePassword": "Hide password",
1034
+ "showPassword": "Show password",
1029
1035
  "fileUploaded": "File uploaded successfully.",
1030
1036
  "fileUploadFailed": "Failed to upload file.",
1037
+ "fileIdNotReturned": "File ID not returned.",
1038
+ "temporaryOpenUrlNotReturned": "Temporary open URL not returned.",
1031
1039
  "uploadedFileAlt": "Uploaded file",
1032
1040
  "fileUrlPlaceholder": "File URL",
1033
1041
  "selectOption": "Select an option",
1034
- "selectMailProfile": "Select a mail profile"
1042
+ "selectMailProfile": "Select a mail profile",
1043
+ "mailProfile": {
1044
+ "nameLabel": "Name *",
1045
+ "namePlaceholder": "My Mail Profile",
1046
+ "fromEmailLabel": "From Email *",
1047
+ "fromEmailPlaceholder": "no-reply@example.com",
1048
+ "providerLabel": "Provider *",
1049
+ "providers": {
1050
+ "ses": "Amazon SES"
1051
+ },
1052
+ "smtpHostLabel": "SMTP Host *",
1053
+ "smtpHostPlaceholder": "smtp.example.com",
1054
+ "smtpPortLabel": "SMTP Port *",
1055
+ "smtpPortPlaceholder": "587",
1056
+ "smtpUsernameLabel": "SMTP Username *",
1057
+ "smtpUsernamePlaceholder": "user@example.com",
1058
+ "smtpPasswordLabel": "SMTP Password *",
1059
+ "clientIdLabel": "Client ID *",
1060
+ "clientSecretLabel": "Client Secret *",
1061
+ "refreshTokenLabel": "Refresh Token *",
1062
+ "accessKeyIdLabel": "Access Key ID *",
1063
+ "secretAccessKeyLabel": "Secret Access Key *",
1064
+ "regionLabel": "Region *",
1065
+ "regionPlaceholder": "us-east-1"
1066
+ }
1035
1067
  },
1036
1068
  "AddWidgetDialog": {
1037
1069
  "title": "Select Dashboard Components",
@@ -1556,6 +1588,7 @@
1556
1588
  "title": "Menus Management",
1557
1589
  "description": "Manage all system navigation menus",
1558
1590
  "menus": "Menus",
1591
+ "home": "Home",
1559
1592
  "totalMenus": "Total Menus",
1560
1593
  "buttonAddMenu": "Add Menu",
1561
1594
  "searchPlaceholder": "Search menus...",
@@ -68,6 +68,7 @@
68
68
  "tabAccounts": "Contas",
69
69
  "tabSessions": "Sessões",
70
70
  "breadcrumbLabel": "Conta",
71
+ "home": "Home",
71
72
  "title": "Conta",
72
73
  "description": "Gerencie as configurações e preferências da sua conta."
73
74
  },
@@ -93,6 +94,7 @@
93
94
  "languageRequired": "Idioma é obrigatório",
94
95
  "themeRequired": "Tema é obrigatório",
95
96
  "title": "Preferências",
97
+ "home": "Home",
96
98
  "description": "Gerencie suas preferências de usuário e configurações.",
97
99
  "appearance": "Aparência",
98
100
  "theme": "Tema",
@@ -202,6 +204,7 @@
202
204
  "cancel": "Cancelar",
203
205
  "noRecentActivity": "Nenhuma atividade recente deste usuário.",
204
206
  "users": "Usuários",
207
+ "home": "Home",
205
208
  "tabPermissions": "Permissões",
206
209
  "permissionsTitle": "Permissões do Usuário",
207
210
  "permissionsDescription": "Gerencie os cargos atribuídos a este usuário",
@@ -245,6 +248,7 @@
245
248
  "title": "Gerenciamento de Cargos",
246
249
  "description": "Gerencie todos os cargos e permissões do sistema",
247
250
  "roles": "Cargos",
251
+ "home": "Home",
248
252
  "buttonAddRole": "Adicionar Cargo",
249
253
  "totalRoles": "Total de Cargos",
250
254
  "totalUsers": "Total de Usuários",
@@ -1029,12 +1033,40 @@
1029
1033
  "settingUpdated": "Configuração atualizada com sucesso.",
1030
1034
  "settingUpdateFailed": "Falha ao atualizar configuração.",
1031
1035
  "iconRevalidated": "Ícone do sistema revalidado com sucesso.",
1036
+ "hidePassword": "Ocultar senha",
1037
+ "showPassword": "Mostrar senha",
1032
1038
  "fileUploaded": "Arquivo enviado com sucesso.",
1033
1039
  "fileUploadFailed": "Falha ao enviar arquivo.",
1040
+ "fileIdNotReturned": "ID do arquivo não retornado.",
1041
+ "temporaryOpenUrlNotReturned": "URL temporária de abertura não retornada.",
1034
1042
  "uploadedFileAlt": "Arquivo enviado",
1035
1043
  "fileUrlPlaceholder": "URL do arquivo",
1036
1044
  "selectOption": "Selecione uma opção",
1037
- "selectMailProfile": "Selecione um perfil de email"
1045
+ "selectMailProfile": "Selecione um perfil de email",
1046
+ "mailProfile": {
1047
+ "nameLabel": "Nome *",
1048
+ "namePlaceholder": "Meu Perfil de Email",
1049
+ "fromEmailLabel": "Email de envio *",
1050
+ "fromEmailPlaceholder": "nao-responda@exemplo.com",
1051
+ "providerLabel": "Provedor *",
1052
+ "providers": {
1053
+ "ses": "Amazon SES"
1054
+ },
1055
+ "smtpHostLabel": "Host SMTP *",
1056
+ "smtpHostPlaceholder": "smtp.exemplo.com",
1057
+ "smtpPortLabel": "Porta SMTP *",
1058
+ "smtpPortPlaceholder": "587",
1059
+ "smtpUsernameLabel": "Usuário SMTP *",
1060
+ "smtpUsernamePlaceholder": "usuario@exemplo.com",
1061
+ "smtpPasswordLabel": "Senha SMTP *",
1062
+ "clientIdLabel": "Client ID *",
1063
+ "clientSecretLabel": "Client Secret *",
1064
+ "refreshTokenLabel": "Refresh Token *",
1065
+ "accessKeyIdLabel": "Access Key ID *",
1066
+ "secretAccessKeyLabel": "Secret Access Key *",
1067
+ "regionLabel": "Região *",
1068
+ "regionPlaceholder": "us-east-1"
1069
+ }
1038
1070
  },
1039
1071
  "AddWidgetDialog": {
1040
1072
  "title": "Selecionar Componentes do Dashboard",
@@ -1611,6 +1643,7 @@
1611
1643
  "title": "Gerenciamento de Menus",
1612
1644
  "description": "Gerencie todos os menus de navegação do sistema",
1613
1645
  "menus": "Menus",
1646
+ "home": "Home",
1614
1647
  "totalMenus": "Total de Menus",
1615
1648
  "buttonAddMenu": "Adicionar Menu",
1616
1649
  "searchPlaceholder": "Pesquisar menus...",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hed-hog/core",
3
- "version": "0.0.330",
3
+ "version": "0.0.331",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "dependencies": {
@@ -31,10 +31,10 @@
31
31
  "speakeasy": "^2.0.0",
32
32
  "uuid": "^11.1.0",
33
33
  "@modelcontextprotocol/sdk": "^1.12.0",
34
+ "@hed-hog/api-locale": "0.0.14",
35
+ "@hed-hog/api": "0.0.8",
34
36
  "@hed-hog/api-types": "0.0.1",
35
37
  "@hed-hog/api-prisma": "0.0.6",
36
- "@hed-hog/api": "0.0.8",
37
- "@hed-hog/api-locale": "0.0.14",
38
38
  "@hed-hog/api-mail": "0.0.9",
39
39
  "@hed-hog/api-pagination": "0.0.7"
40
40
  },