@hed-hog/core 0.0.325 → 0.0.327

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 (100) hide show
  1. package/dist/core.module.d.ts.map +1 -1
  2. package/dist/core.module.js +3 -0
  3. package/dist/core.module.js.map +1 -1
  4. package/dist/index.d.ts +4 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +4 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/integration/services/outbox.processor.d.ts.map +1 -1
  9. package/dist/integration/services/outbox.processor.js +1 -0
  10. package/dist/integration/services/outbox.processor.js.map +1 -1
  11. package/dist/integration/types/event.types.d.ts +1 -0
  12. package/dist/integration/types/event.types.d.ts.map +1 -1
  13. package/dist/mail/mail.controller.d.ts +2 -0
  14. package/dist/mail/mail.controller.d.ts.map +1 -1
  15. package/dist/mail/mail.module.d.ts.map +1 -1
  16. package/dist/mail/mail.module.js +33 -53
  17. package/dist/mail/mail.module.js.map +1 -1
  18. package/dist/mail/mail.service.d.ts +5 -1
  19. package/dist/mail/mail.service.d.ts.map +1 -1
  20. package/dist/mail/mail.service.js +64 -84
  21. package/dist/mail/mail.service.js.map +1 -1
  22. package/dist/role/role.service.d.ts +3 -1
  23. package/dist/role/role.service.d.ts.map +1 -1
  24. package/dist/role/role.service.js +33 -5
  25. package/dist/role/role.service.js.map +1 -1
  26. package/dist/setting/setting.service.d.ts.map +1 -1
  27. package/dist/setting/setting.service.js +1 -0
  28. package/dist/setting/setting.service.js.map +1 -1
  29. package/dist/user/user.service.d.ts +3 -1
  30. package/dist/user/user.service.d.ts.map +1 -1
  31. package/dist/user/user.service.js +31 -4
  32. package/dist/user/user.service.js.map +1 -1
  33. package/dist/webhook-integration/event-webhook.controller.d.ts +29 -0
  34. package/dist/webhook-integration/event-webhook.controller.d.ts.map +1 -0
  35. package/dist/webhook-integration/event-webhook.controller.js +93 -0
  36. package/dist/webhook-integration/event-webhook.controller.js.map +1 -0
  37. package/dist/webhook-integration/event-webhook.service.d.ts +54 -0
  38. package/dist/webhook-integration/event-webhook.service.d.ts.map +1 -0
  39. package/dist/webhook-integration/event-webhook.service.js +334 -0
  40. package/dist/webhook-integration/event-webhook.service.js.map +1 -0
  41. package/dist/webhook-integration/integration-event-catalog.controller.d.ts +21 -0
  42. package/dist/webhook-integration/integration-event-catalog.controller.d.ts.map +1 -0
  43. package/dist/webhook-integration/integration-event-catalog.controller.js +91 -0
  44. package/dist/webhook-integration/integration-event-catalog.controller.js.map +1 -0
  45. package/dist/webhook-integration/integration-event-catalog.service.d.ts +26 -0
  46. package/dist/webhook-integration/integration-event-catalog.service.d.ts.map +1 -0
  47. package/dist/webhook-integration/integration-event-catalog.service.js +112 -0
  48. package/dist/webhook-integration/integration-event-catalog.service.js.map +1 -0
  49. package/dist/webhook-integration/webhook-integration.controller.d.ts +44 -0
  50. package/dist/webhook-integration/webhook-integration.controller.d.ts.map +1 -0
  51. package/dist/webhook-integration/webhook-integration.controller.js +181 -0
  52. package/dist/webhook-integration/webhook-integration.controller.js.map +1 -0
  53. package/dist/webhook-integration/webhook-integration.module.d.ts +3 -0
  54. package/dist/webhook-integration/webhook-integration.module.d.ts.map +1 -0
  55. package/dist/webhook-integration/webhook-integration.module.js +54 -0
  56. package/dist/webhook-integration/webhook-integration.module.js.map +1 -0
  57. package/dist/webhook-integration/webhook-integration.service.d.ts +73 -0
  58. package/dist/webhook-integration/webhook-integration.service.d.ts.map +1 -0
  59. package/dist/webhook-integration/webhook-integration.service.js +569 -0
  60. package/dist/webhook-integration/webhook-integration.service.js.map +1 -0
  61. package/dist/webhook-integration/webhook-utils.d.ts +7 -0
  62. package/dist/webhook-integration/webhook-utils.d.ts.map +1 -0
  63. package/dist/webhook-integration/webhook-utils.js +104 -0
  64. package/dist/webhook-integration/webhook-utils.js.map +1 -0
  65. package/hedhog/data/integration_event_catalog.yaml +118 -0
  66. package/hedhog/data/mail_profile.yaml +18 -0
  67. package/hedhog/data/menu.yaml +26 -12
  68. package/hedhog/data/route.yaml +152 -8
  69. package/hedhog/data/setting_group.yaml +7 -156
  70. package/hedhog/data/setting_subgroup.yaml +0 -32
  71. package/hedhog/frontend/app/configurations/[slug]/components/setting-field.tsx.ejs +205 -0
  72. package/hedhog/frontend/app/integrations-webhooks/page.tsx.ejs +1835 -0
  73. package/hedhog/frontend/messages/en.json +2 -1
  74. package/hedhog/frontend/messages/pt.json +2 -1
  75. package/hedhog/table/event_webhook.yaml +55 -0
  76. package/hedhog/table/event_webhook_delivery_log.yaml +66 -0
  77. package/hedhog/table/event_webhook_event.yaml +26 -0
  78. package/hedhog/table/integration_event_catalog.yaml +41 -0
  79. package/hedhog/table/setting.yaml +1 -0
  80. package/hedhog/table/webhook_action.yaml +85 -0
  81. package/hedhog/table/webhook_call_log.yaml +46 -0
  82. package/hedhog/table/webhook_integration.yaml +43 -0
  83. package/package.json +3 -3
  84. package/src/core.module.ts +10 -7
  85. package/src/index.ts +10 -5
  86. package/src/integration/services/outbox.processor.ts +5 -4
  87. package/src/integration/types/event.types.ts +4 -3
  88. package/src/mail/mail.module.ts +36 -59
  89. package/src/mail/mail.service.ts +84 -89
  90. package/src/role/role.service.ts +41 -8
  91. package/src/setting/setting.service.ts +7 -6
  92. package/src/user/user.service.ts +34 -3
  93. package/src/webhook-integration/event-webhook.controller.ts +50 -0
  94. package/src/webhook-integration/event-webhook.service.ts +384 -0
  95. package/src/webhook-integration/integration-event-catalog.controller.ts +50 -0
  96. package/src/webhook-integration/integration-event-catalog.service.ts +117 -0
  97. package/src/webhook-integration/webhook-integration.controller.ts +103 -0
  98. package/src/webhook-integration/webhook-integration.module.ts +45 -0
  99. package/src/webhook-integration/webhook-integration.service.ts +735 -0
  100. package/src/webhook-integration/webhook-utils.ts +79 -0
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createPublicUuid = createPublicUuid;
37
+ exports.createPlainToken = createPlainToken;
38
+ exports.hashToken = hashToken;
39
+ exports.renderTemplate = renderTemplate;
40
+ exports.summarizePayload = summarizePayload;
41
+ exports.normalizeJsonObject = normalizeJsonObject;
42
+ const crypto_1 = require("crypto");
43
+ const Handlebars = __importStar(require("handlebars"));
44
+ function createPublicUuid() {
45
+ return (0, crypto_1.randomUUID)();
46
+ }
47
+ function createPlainToken() {
48
+ return (0, crypto_1.randomBytes)(32).toString('hex');
49
+ }
50
+ function hashToken(token) {
51
+ return (0, crypto_1.createHash)('sha256').update(token).digest('hex');
52
+ }
53
+ function renderTemplate(source, context) {
54
+ if (source === undefined || source === null) {
55
+ return source;
56
+ }
57
+ if (typeof source === 'string') {
58
+ return Handlebars.compile(source)(context);
59
+ }
60
+ if (Array.isArray(source)) {
61
+ return source.map((item) => renderTemplate(item, context));
62
+ }
63
+ if (typeof source === 'object') {
64
+ return Object.fromEntries(Object.entries(source).map(([key, value]) => [
65
+ key,
66
+ renderTemplate(value, context),
67
+ ]));
68
+ }
69
+ return source;
70
+ }
71
+ function summarizePayload(value) {
72
+ if (value === undefined || value === null) {
73
+ return null;
74
+ }
75
+ try {
76
+ const serialized = JSON.stringify(value);
77
+ if (serialized.length <= 4000) {
78
+ return value;
79
+ }
80
+ return {
81
+ truncated: true,
82
+ preview: serialized.slice(0, 4000),
83
+ };
84
+ }
85
+ catch (_a) {
86
+ return {
87
+ unsupported: true,
88
+ };
89
+ }
90
+ }
91
+ function normalizeJsonObject(value) {
92
+ if (!value) {
93
+ return null;
94
+ }
95
+ if (typeof value === 'string') {
96
+ const trimmed = value.trim();
97
+ if (!trimmed) {
98
+ return null;
99
+ }
100
+ return JSON.parse(trimmed);
101
+ }
102
+ return value;
103
+ }
104
+ //# sourceMappingURL=webhook-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-utils.js","sourceRoot":"","sources":["../../src/webhook-integration/webhook-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,4CAEC;AAED,4CAEC;AAED,8BAEC;AAED,wCAuBC;AAED,4CAoBC;AAED,kDAeC;AA7ED,mCAA6D;AAC7D,uDAAyC;AAEzC,SAAgB,gBAAgB;IAC9B,OAAO,IAAA,mBAAU,GAAE,CAAC;AACtB,CAAC;AAED,SAAgB,gBAAgB;IAC9B,OAAO,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,SAAS,CAAC,KAAa;IACrC,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,SAAgB,cAAc,CAAC,MAAe,EAAE,OAA4B;IAC1E,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAiC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YACtE,GAAG;YACH,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;SAC/B,CAAC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,UAAU,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC9B,OAAO,KAAY,CAAC;QACtB,CAAC;QAED,OAAO;YACL,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;SACnC,CAAC;IACJ,CAAC;IAAC,WAAM,CAAC;QACP,OAAO;YACL,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,mBAAmB,CAAC,KAAc;IAChD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,118 @@
1
+ - slug: core.setting.changed
2
+ name: Core setting changed
3
+ module: core
4
+ aggregate_type: setting
5
+ description: Disparado quando uma configuração do core é alterada.
6
+ status: active
7
+ payload_schema:
8
+ slug:
9
+ type: string
10
+ description: Slug da configuração alterada
11
+ oldValue:
12
+ type: string
13
+ nullable: true
14
+ description: Valor anterior da configuração
15
+ newValue:
16
+ type: string
17
+ nullable: true
18
+ description: Novo valor da configuração
19
+ hasValue:
20
+ type: boolean
21
+ description: Indica se o novo valor está definido
22
+ metadata_schema:
23
+ settingSlug:
24
+ type: string
25
+ description: Slug da configuração (espelho de payload.slug, usado para roteamento)
26
+ source:
27
+ type: string
28
+ description: Origem da alteração (ex. api, migration, seed)
29
+
30
+ - slug: core.user.created
31
+ name: Core user created
32
+ module: core
33
+ aggregate_type: user
34
+ description: Disparado quando um novo usuário é criado.
35
+ status: active
36
+ payload_schema:
37
+ id:
38
+ type: number
39
+ description: ID do usuário criado
40
+ name:
41
+ type: string
42
+ description: Nome do usuário
43
+ email:
44
+ type: string
45
+ description: E-mail do usuário
46
+ metadata_schema: null
47
+
48
+ - slug: core.user.updated
49
+ name: Core user updated
50
+ module: core
51
+ aggregate_type: user
52
+ description: Disparado quando os dados de um usuário são atualizados.
53
+ status: active
54
+ payload_schema:
55
+ id:
56
+ type: number
57
+ description: ID do usuário atualizado
58
+ name:
59
+ type: string
60
+ nullable: true
61
+ description: Novo nome do usuário
62
+ metadata_schema: null
63
+
64
+ - slug: core.user.deleted
65
+ name: Core user deleted
66
+ module: core
67
+ aggregate_type: user
68
+ description: Disparado quando um ou mais usuários são excluídos.
69
+ status: active
70
+ payload_schema:
71
+ ids:
72
+ type: array
73
+ description: IDs dos usuários excluídos
74
+ metadata_schema: null
75
+
76
+ - slug: core.role.created
77
+ name: Core role created
78
+ module: core
79
+ aggregate_type: role
80
+ description: Disparado quando um novo perfil de acesso é criado.
81
+ status: active
82
+ payload_schema:
83
+ id:
84
+ type: number
85
+ description: ID do perfil criado
86
+ slug:
87
+ type: string
88
+ description: Slug do perfil
89
+ metadata_schema: null
90
+
91
+ - slug: core.role.updated
92
+ name: Core role updated
93
+ module: core
94
+ aggregate_type: role
95
+ description: Disparado quando um perfil de acesso é atualizado.
96
+ status: active
97
+ payload_schema:
98
+ id:
99
+ type: number
100
+ description: ID do perfil atualizado
101
+ slug:
102
+ type: string
103
+ nullable: true
104
+ description: Novo slug do perfil
105
+ metadata_schema: null
106
+
107
+ - slug: core.role.deleted
108
+ name: Core role deleted
109
+ module: core
110
+ aggregate_type: role
111
+ description: Disparado quando um ou mais perfis de acesso são excluídos.
112
+ status: active
113
+ payload_schema:
114
+ ids:
115
+ type: array
116
+ description: IDs dos perfis excluídos
117
+ metadata_schema: null
118
+
@@ -0,0 +1,18 @@
1
+ - slug: default
2
+ name: default
3
+ provider: SMTP
4
+ from_name: Hedhog
5
+ from_email: noreply@hedhog.local
6
+ reply_to_name: null
7
+ reply_to_email: null
8
+ smtp_host: localhost
9
+ smtp_port: 1025
10
+ smtp_secure: false
11
+ smtp_username: null
12
+ smtp_password: null
13
+ gmail_client_id: null
14
+ gmail_client_secret: null
15
+ gmail_refresh_token: null
16
+ ses_access_key_id: null
17
+ ses_secret_access_key: null
18
+ ses_region: null
@@ -139,23 +139,37 @@
139
139
  slug: admin
140
140
  - where:
141
141
  slug: admin-mail
142
- - menu_id:
143
- where:
144
- slug: /core/management
145
- url: /core/ai_agent
146
- order: 6
147
- icon: bot
142
+ - menu_id:
143
+ where:
144
+ slug: /core/management
145
+ url: /core/ai_agent
146
+ order: 6
147
+ icon: bot
148
148
  name:
149
149
  en: AI Agents
150
150
  pt: Agentes IA
151
151
  slug: /core/ai-agent
152
152
  relations:
153
- role:
154
- - where:
155
- slug: admin
156
- - url: /core/users
157
- order: 0
158
- icon: users
153
+ role:
154
+ - where:
155
+ slug: admin
156
+ - menu_id:
157
+ where:
158
+ slug: /core/management
159
+ url: /core/integrations-webhooks
160
+ order: 7
161
+ icon: webhook
162
+ name:
163
+ en: Integrations and Webhooks
164
+ pt: Integrações e Webhook
165
+ slug: /core/integrations-webhooks
166
+ relations:
167
+ role:
168
+ - where:
169
+ slug: admin
170
+ - url: /core/users
171
+ order: 0
172
+ icon: users
159
173
  name:
160
174
  en: Users
161
175
  pt: Usuários
@@ -1548,11 +1548,155 @@
1548
1548
  slug: admin
1549
1549
  - where:
1550
1550
  slug: admin-access
1551
- - url: /ai/agent/:slug/chat
1552
- method: POST
1553
- relations:
1554
- role:
1555
- - where:
1556
- slug: admin
1557
- - where:
1558
- slug: admin-access
1551
+ - url: /ai/agent/:slug/chat
1552
+ method: POST
1553
+ relations:
1554
+ role:
1555
+ - where:
1556
+ slug: admin
1557
+ - where:
1558
+ slug: admin-access
1559
+ - url: /integration-event-catalog
1560
+ method: GET
1561
+ relations:
1562
+ role:
1563
+ - where:
1564
+ slug: admin
1565
+ - url: /integration-event-catalog
1566
+ method: POST
1567
+ relations:
1568
+ role:
1569
+ - where:
1570
+ slug: admin
1571
+ - url: /integration-event-catalog/options
1572
+ method: GET
1573
+ relations:
1574
+ role:
1575
+ - where:
1576
+ slug: admin
1577
+ - url: /integration-event-catalog/:id
1578
+ method: GET
1579
+ relations:
1580
+ role:
1581
+ - where:
1582
+ slug: admin
1583
+ - url: /integration-event-catalog/:id
1584
+ method: PATCH
1585
+ relations:
1586
+ role:
1587
+ - where:
1588
+ slug: admin
1589
+ - url: /integration-event-catalog
1590
+ method: DELETE
1591
+ relations:
1592
+ role:
1593
+ - where:
1594
+ slug: admin
1595
+ - url: /webhook-integration
1596
+ method: GET
1597
+ relations:
1598
+ role:
1599
+ - where:
1600
+ slug: admin
1601
+ - url: /webhook-integration
1602
+ method: POST
1603
+ relations:
1604
+ role:
1605
+ - where:
1606
+ slug: admin
1607
+ - url: /webhook-integration/:id
1608
+ method: GET
1609
+ relations:
1610
+ role:
1611
+ - where:
1612
+ slug: admin
1613
+ - url: /webhook-integration/:id
1614
+ method: PATCH
1615
+ relations:
1616
+ role:
1617
+ - where:
1618
+ slug: admin
1619
+ - url: /webhook-integration
1620
+ method: DELETE
1621
+ relations:
1622
+ role:
1623
+ - where:
1624
+ slug: admin
1625
+ - url: /webhook-integration/:id/regenerate-uuid
1626
+ method: POST
1627
+ relations:
1628
+ role:
1629
+ - where:
1630
+ slug: admin
1631
+ - url: /webhook-integration/:id/regenerate-token
1632
+ method: POST
1633
+ relations:
1634
+ role:
1635
+ - where:
1636
+ slug: admin
1637
+ - url: /webhook-integration/:id/action
1638
+ method: GET
1639
+ relations:
1640
+ role:
1641
+ - where:
1642
+ slug: admin
1643
+ - url: /webhook-integration/:id/action
1644
+ method: POST
1645
+ relations:
1646
+ role:
1647
+ - where:
1648
+ slug: admin
1649
+ - url: /webhook-integration/:id/action/:actionId
1650
+ method: PATCH
1651
+ relations:
1652
+ role:
1653
+ - where:
1654
+ slug: admin
1655
+ - url: /webhook-integration/:id/action
1656
+ method: DELETE
1657
+ relations:
1658
+ role:
1659
+ - where:
1660
+ slug: admin
1661
+ - url: /webhook-integration/:id/log
1662
+ method: GET
1663
+ relations:
1664
+ role:
1665
+ - where:
1666
+ slug: admin
1667
+ - url: /event-webhook
1668
+ method: GET
1669
+ relations:
1670
+ role:
1671
+ - where:
1672
+ slug: admin
1673
+ - url: /event-webhook
1674
+ method: POST
1675
+ relations:
1676
+ role:
1677
+ - where:
1678
+ slug: admin
1679
+ - url: /event-webhook/:id
1680
+ method: GET
1681
+ relations:
1682
+ role:
1683
+ - where:
1684
+ slug: admin
1685
+ - url: /event-webhook/:id
1686
+ method: PATCH
1687
+ relations:
1688
+ role:
1689
+ - where:
1690
+ slug: admin
1691
+ - url: /event-webhook
1692
+ method: DELETE
1693
+ relations:
1694
+ role:
1695
+ - where:
1696
+ slug: admin
1697
+ - url: /event-webhook/:id/log
1698
+ method: GET
1699
+ relations:
1700
+ role:
1701
+ - where:
1702
+ slug: admin
@@ -1616,165 +1616,16 @@
1616
1616
  value: false
1617
1617
  user_override: false
1618
1618
  component: switch
1619
- subgroup_id:
1620
- where:
1621
- slug: mail-general
1622
- - slug: mail-provider
1623
- type: string
1624
- name:
1625
- en: Email Provider
1626
- pt: Provedor de Email
1627
- description:
1628
- en: Email service provider to use for sending notifications
1629
- pt: Provedor de serviço de email a usar para enviar notificações
1630
- value: SMTP
1631
- component: combobox
1632
- relations:
1633
- setting_list:
1634
- - value: SMTP
1635
- order: 0
1636
- - value: GMAIL
1637
- order: 1
1638
- - value: SES
1639
- order: 2
1640
- subgroup_id:
1641
- where:
1642
- slug: mail-general
1643
- - slug: mail-from
1644
- type: string
1645
- name:
1646
- en: Sender Address
1647
- pt: Endereço do Remetente
1648
- description:
1649
- en: Email address used as the "From" field for outgoing system emails
1650
- pt: Endereço de email usado como campo "De" para emails de saída do sistema
1651
- value: no-reply@hedhog.com
1652
- subgroup_id:
1653
- where:
1654
- slug: mail-general
1655
- - slug: mail-smtp-host
1656
- type: string
1657
- name:
1658
- en: SMTP Server
1659
- pt: Servidor SMTP
1660
- description:
1661
- en: Hostname or IP address of the SMTP server
1662
- pt: Nome do host ou endereço IP do servidor SMTP
1663
- value: localhost
1664
- subgroup_id:
1665
- where:
1666
- slug: smtp-config
1667
- - slug: mail-smtp-port
1619
+ - slug: mail-profile-id
1668
1620
  type: number
1621
+ component: entity-picker
1669
1622
  name:
1670
- en: SMTP Port
1671
- pt: Porta SMTP
1672
- description:
1673
- en: SMTP server port (typically 587 for TLS or 465 for SSL)
1674
- pt: Porta do servidor SMTP (geralmente 587 para TLS ou 465 para SSL)
1675
- value: 1025
1676
- subgroup_id:
1677
- where:
1678
- slug: smtp-config
1679
- - slug: mail-smtp-secure
1680
- type: boolean
1681
- name:
1682
- en: Secure Connection
1683
- pt: Conexão Segura
1684
- description:
1685
- en: Use TLS/SSL encryption for SMTP connection
1686
- pt: Usar criptografia TLS/SSL para conexão SMTP
1687
- value: false
1688
- subgroup_id:
1689
- where:
1690
- slug: smtp-config
1691
- - slug: mail-client-secret
1692
- type: secret
1693
- component: input-secret
1694
- name:
1695
- en: SMTP Password
1696
- pt: Senha SMTP
1697
- description:
1698
- en: Authentication password for SMTP server
1699
- pt: Senha de autenticação do servidor SMTP
1700
- value: ''
1701
- subgroup_id:
1702
- where:
1703
- slug: smtp-config
1704
- - slug: mail-gmail-client-id
1705
- type: string
1706
- name:
1707
- en: Client ID
1708
- pt: ID do Cliente
1709
- description:
1710
- en: Google OAuth application client ID for Gmail API
1711
- pt: ID do cliente da aplicação Google OAuth para API do Gmail
1712
- value: ''
1713
- subgroup_id:
1714
- where:
1715
- slug: gmail-config
1716
- - slug: mail-gmail-client-secret
1717
- type: secret
1718
- component: input-secret
1719
- name:
1720
- en: Client Secret
1721
- pt: Segredo do Cliente
1623
+ en: Mail Profile
1624
+ pt: Perfil de Email
1722
1625
  description:
1723
- en: Google OAuth client secret for Gmail API authentication
1724
- pt: Segredo do cliente Google OAuth para autenticação da API do Gmail
1725
- value: ''
1726
- subgroup_id:
1727
- where:
1728
- slug: gmail-config
1729
- - slug: mail-gmail-refresh-token
1730
- type: string
1731
- name:
1732
- en: Refresh Token
1733
- pt: Token de Atualização
1734
- description:
1735
- en: OAuth refresh token for maintaining long-term access to Gmail API
1736
- pt: Token de atualização OAuth para manter acesso de longo prazo à API do Gmail
1737
- value: ''
1738
- subgroup_id:
1739
- where:
1740
- slug: gmail-config
1741
- - slug: mail-aws-access-key-id
1742
- type: string
1743
- name:
1744
- en: AWS Access Key ID
1745
- pt: ID da Chave de Acesso AWS
1746
- description:
1747
- en: AWS IAM access key for Amazon SES service
1748
- pt: Chave de acesso IAM da AWS para o serviço Amazon SES
1749
- value: ''
1750
- subgroup_id:
1751
- where:
1752
- slug: ses-config
1753
- - slug: mail-aws-secret-access-key
1754
- type: secret
1755
- component: input-secret
1756
- name:
1757
- en: AWS Secret Key
1758
- pt: Chave Secreta AWS
1759
- description:
1760
- en: AWS IAM secret key for Amazon SES authentication
1761
- pt: Chave secreta IAM da AWS para autenticação do Amazon SES
1762
- value: ''
1763
- subgroup_id:
1764
- where:
1765
- slug: ses-config
1766
- - slug: mail-aws-region
1767
- type: string
1768
- name:
1769
- en: AWS Region
1770
- pt: Região AWS
1771
- description:
1772
- en: AWS region where SES service is configured
1773
- pt: Região AWS onde o serviço SES está configurado
1774
- value: 'us-east-1'
1775
- subgroup_id:
1776
- where:
1777
- slug: ses-config
1626
+ en: Select the mail profile to use for sending system notifications
1627
+ pt: Selecione o perfil de email a usar para enviar notificações do sistema
1628
+ value: '1'
1778
1629
  - slug: ai
1779
1630
  icon: brain
1780
1631
  name:
@@ -230,38 +230,6 @@
230
230
  en: Google Cloud Storage authentication settings
231
231
  pt: Configurações de autenticação do Google Cloud Storage
232
232
 
233
- - slug: mail-general
234
- name:
235
- en: Mail General
236
- pt: Email Geral
237
- description:
238
- en: Shared mail delivery settings and provider selection
239
- pt: Configurações compartilhadas de entrega de email e seleção de provedor
240
-
241
- - slug: smtp-config
242
- name:
243
- en: SMTP Configuration
244
- pt: Configuração SMTP
245
- description:
246
- en: SMTP server connection and credential settings
247
- pt: Configurações de conexão e credenciais do servidor SMTP
248
-
249
- - slug: gmail-config
250
- name:
251
- en: Gmail Configuration
252
- pt: Configuração do Gmail
253
- description:
254
- en: OAuth settings for Gmail-based email delivery
255
- pt: Configurações OAuth para envio de email via Gmail
256
-
257
- - slug: ses-config
258
- name:
259
- en: Amazon SES Configuration
260
- pt: Configuração do Amazon SES
261
- description:
262
- en: AWS SES credentials and regional settings
263
- pt: Credenciais e configurações regionais do AWS SES
264
-
265
233
  - slug: openai
266
234
  name:
267
235
  en: OpenAI