@vicacha-devs/strapi-plugin-broadcasts 0.0.0-stage → 0.1.0

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 (87) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +15 -2
  3. package/dist/admin/BroadcastsHomePage-CM_N_spo.mjs +1210 -0
  4. package/dist/admin/BroadcastsHomePage-DQueM7nj.js +1228 -0
  5. package/dist/admin/SettingsPage-TawvAAiv.js +1187 -0
  6. package/dist/admin/SettingsPage-ikcb0cfh.mjs +1169 -0
  7. package/dist/admin/ar-vwekVqfp.js +232 -0
  8. package/dist/admin/ar-wZTCd3Za.mjs +232 -0
  9. package/dist/admin/de-IZicxuvv.mjs +232 -0
  10. package/dist/admin/de-Qa2SQQfY.js +232 -0
  11. package/dist/admin/en-B-HnZo8U.mjs +232 -0
  12. package/dist/admin/en-D1byrK0s.js +232 -0
  13. package/dist/admin/es-Co7PmAj8.mjs +232 -0
  14. package/dist/admin/es-Dgylqagv.js +232 -0
  15. package/dist/admin/fr-B9zZn3z1.mjs +232 -0
  16. package/dist/admin/fr-C7-MIWnw.js +232 -0
  17. package/dist/admin/index-CApLw9Uu.mjs +1036 -0
  18. package/dist/admin/index-Dw6J7U1v.js +1053 -0
  19. package/dist/admin/index.js +6 -0
  20. package/dist/admin/index.mjs +6 -0
  21. package/dist/admin/it-DJU9iBqT.mjs +232 -0
  22. package/dist/admin/it-D_mulZtx.js +232 -0
  23. package/dist/admin/pt-B9swwjPu.js +232 -0
  24. package/dist/admin/pt-Dr8u5we0.mjs +232 -0
  25. package/dist/admin/ru-B0NNiMNA.js +232 -0
  26. package/dist/admin/ru-Bd4cEKDV.mjs +232 -0
  27. package/dist/admin/selectOptions-BlvNrhvc.mjs +150 -0
  28. package/dist/admin/selectOptions-DuHQ0KK3.js +149 -0
  29. package/dist/admin/src/components/AutomationAndLogsTabs.d.ts +16 -0
  30. package/dist/admin/src/components/BridgesSandboxTab.d.ts +8 -0
  31. package/dist/admin/src/components/CampaignComposerForm.d.ts +26 -0
  32. package/dist/admin/src/components/CampaignsTableSection.d.ts +27 -0
  33. package/dist/admin/src/components/DeliveryLedgerSection.d.ts +17 -0
  34. package/dist/admin/src/components/Initializer.d.ts +6 -0
  35. package/dist/admin/src/components/OrganizationEmailTab.d.ts +10 -0
  36. package/dist/admin/src/components/PluginIcon.d.ts +3 -0
  37. package/dist/admin/src/components/WhatsAppTransportTab.d.ts +11 -0
  38. package/dist/admin/src/index.d.ts +24 -0
  39. package/dist/admin/src/pages/BroadcastsHomePage.d.ts +2 -0
  40. package/dist/admin/src/pages/SettingsPage.d.ts +3 -0
  41. package/dist/admin/src/permissions.d.ts +30 -0
  42. package/dist/admin/src/pluginId.d.ts +2 -0
  43. package/dist/admin/src/translations/cmLabels.d.ts +1 -0
  44. package/dist/admin/src/translations/cmLabelsExtra.d.ts +1 -0
  45. package/dist/admin/src/translations/cmPlaceholders.d.ts +1 -0
  46. package/dist/admin/src/translations/cmPlaceholdersExtra.d.ts +1 -0
  47. package/dist/admin/src/utils/extractApiError.d.ts +1 -0
  48. package/dist/admin/src/utils/selectOptions.d.ts +21 -0
  49. package/dist/admin/tr-Cc-ItZUP.js +232 -0
  50. package/dist/admin/tr-DlyHa2Vk.mjs +232 -0
  51. package/dist/admin/zh-CLzJ7x3y.mjs +232 -0
  52. package/dist/admin/zh-CaqwZk-p.js +232 -0
  53. package/dist/server/index.js +3399 -0
  54. package/dist/server/index.mjs +3399 -0
  55. package/dist/server/src/bootstrap.d.ts +5 -0
  56. package/dist/server/src/config/index.d.ts +5 -0
  57. package/dist/server/src/content-types/automation-rule/index.d.ts +90 -0
  58. package/dist/server/src/content-types/automation-rule/schema.json.d.ts +90 -0
  59. package/dist/server/src/content-types/campaign/index.d.ts +118 -0
  60. package/dist/server/src/content-types/campaign/schema.json.d.ts +118 -0
  61. package/dist/server/src/content-types/delivery-log/index.d.ts +71 -0
  62. package/dist/server/src/content-types/delivery-log/schema.json.d.ts +71 -0
  63. package/dist/server/src/content-types/index.d.ts +279 -0
  64. package/dist/server/src/controllers/broadcastController.d.ts +32 -0
  65. package/dist/server/src/controllers/index.d.ts +22 -0
  66. package/dist/server/src/destroy.d.ts +5 -0
  67. package/dist/server/src/eventHubRegistry.d.ts +5 -0
  68. package/dist/server/src/index.d.ts +463 -0
  69. package/dist/server/src/register.d.ts +5 -0
  70. package/dist/server/src/routes/admin.d.ts +17 -0
  71. package/dist/server/src/routes/content-api.d.ts +13 -0
  72. package/dist/server/src/routes/index.d.ts +31 -0
  73. package/dist/server/src/services/automationService.d.ts +33 -0
  74. package/dist/server/src/services/campaignChannelDispatch.d.ts +20 -0
  75. package/dist/server/src/services/campaignHelpers.d.ts +20 -0
  76. package/dist/server/src/services/campaignLifecycle.d.ts +23 -0
  77. package/dist/server/src/services/campaignService.d.ts +54 -0
  78. package/dist/server/src/services/deliveryLedger.d.ts +18 -0
  79. package/dist/server/src/services/emailDesignerBridge.d.ts +30 -0
  80. package/dist/server/src/services/idempotency.d.ts +5 -0
  81. package/dist/server/src/services/index.d.ts +119 -0
  82. package/dist/server/src/services/settings.d.ts +12 -0
  83. package/dist/server/src/services/transportService.d.ts +70 -0
  84. package/dist/shared/index.d.ts +1 -0
  85. package/dist/shared/index.js +825 -0
  86. package/dist/shared/index.mjs +823 -0
  87. package/package.json +109 -3
@@ -0,0 +1,279 @@
1
+ declare const _default: {
2
+ campaign: {
3
+ schema: {
4
+ kind: string;
5
+ collectionName: string;
6
+ info: {
7
+ singularName: string;
8
+ pluralName: string;
9
+ displayName: string;
10
+ description: string;
11
+ };
12
+ options: {
13
+ draftAndPublish: boolean;
14
+ };
15
+ pluginOptions: {
16
+ "content-manager": {
17
+ visible: boolean;
18
+ };
19
+ "content-type-builder": {
20
+ visible: boolean;
21
+ };
22
+ };
23
+ attributes: {
24
+ title: {
25
+ type: string;
26
+ required: boolean;
27
+ };
28
+ slug: {
29
+ type: string;
30
+ targetField: string;
31
+ required: boolean;
32
+ };
33
+ topic: {
34
+ type: string;
35
+ default: string;
36
+ required: boolean;
37
+ };
38
+ channels: {
39
+ type: string;
40
+ required: boolean;
41
+ default: string[];
42
+ };
43
+ priority: {
44
+ type: string;
45
+ enum: string[];
46
+ default: string;
47
+ required: boolean;
48
+ };
49
+ status: {
50
+ type: string;
51
+ enum: string[];
52
+ default: string;
53
+ required: boolean;
54
+ };
55
+ scheduledAt: {
56
+ type: string;
57
+ };
58
+ sentAt: {
59
+ type: string;
60
+ };
61
+ subject: {
62
+ type: string;
63
+ required: boolean;
64
+ };
65
+ bodyText: {
66
+ type: string;
67
+ required: boolean;
68
+ };
69
+ bodyHtml: {
70
+ type: string;
71
+ };
72
+ ctaLabel: {
73
+ type: string;
74
+ };
75
+ ctaUrl: {
76
+ type: string;
77
+ };
78
+ mediaUrl: {
79
+ type: string;
80
+ };
81
+ emailTemplateRef: {
82
+ type: string;
83
+ };
84
+ whatsappTemplateName: {
85
+ type: string;
86
+ };
87
+ whatsappGroupIds: {
88
+ type: string;
89
+ default: never[];
90
+ };
91
+ telegramChatId: {
92
+ type: string;
93
+ };
94
+ telegramThreadId: {
95
+ type: string;
96
+ };
97
+ translations: {
98
+ type: string;
99
+ default: {};
100
+ };
101
+ secondaryDate: {
102
+ type: string;
103
+ default: {};
104
+ };
105
+ secondaryDateLabel: {
106
+ type: string;
107
+ };
108
+ stats: {
109
+ type: string;
110
+ default: {};
111
+ };
112
+ metadata: {
113
+ type: string;
114
+ default: {};
115
+ };
116
+ };
117
+ };
118
+ };
119
+ "automation-rule": {
120
+ schema: {
121
+ kind: string;
122
+ collectionName: string;
123
+ info: {
124
+ singularName: string;
125
+ pluralName: string;
126
+ displayName: string;
127
+ description: string;
128
+ };
129
+ options: {
130
+ draftAndPublish: boolean;
131
+ };
132
+ pluginOptions: {
133
+ "content-manager": {
134
+ visible: boolean;
135
+ };
136
+ "content-type-builder": {
137
+ visible: boolean;
138
+ };
139
+ };
140
+ attributes: {
141
+ name: {
142
+ type: string;
143
+ required: boolean;
144
+ };
145
+ slug: {
146
+ type: string;
147
+ targetField: string;
148
+ required: boolean;
149
+ };
150
+ eventName: {
151
+ type: string;
152
+ required: boolean;
153
+ };
154
+ targetContentType: {
155
+ type: string;
156
+ };
157
+ topic: {
158
+ type: string;
159
+ default: string;
160
+ required: boolean;
161
+ };
162
+ channels: {
163
+ type: string;
164
+ required: boolean;
165
+ default: string[];
166
+ };
167
+ active: {
168
+ type: string;
169
+ default: boolean;
170
+ };
171
+ priority: {
172
+ type: string;
173
+ enum: string[];
174
+ default: string;
175
+ };
176
+ subjectTemplate: {
177
+ type: string;
178
+ required: boolean;
179
+ };
180
+ bodyTextTemplate: {
181
+ type: string;
182
+ required: boolean;
183
+ };
184
+ bodyHtmlTemplate: {
185
+ type: string;
186
+ };
187
+ ctaLabelTemplate: {
188
+ type: string;
189
+ };
190
+ ctaUrlTemplate: {
191
+ type: string;
192
+ };
193
+ translations: {
194
+ type: string;
195
+ default: {};
196
+ };
197
+ lastTriggeredAt: {
198
+ type: string;
199
+ };
200
+ triggerCount: {
201
+ type: string;
202
+ default: number;
203
+ min: number;
204
+ };
205
+ };
206
+ };
207
+ };
208
+ "delivery-log": {
209
+ schema: {
210
+ kind: string;
211
+ collectionName: string;
212
+ info: {
213
+ singularName: string;
214
+ pluralName: string;
215
+ displayName: string;
216
+ description: string;
217
+ };
218
+ options: {
219
+ draftAndPublish: boolean;
220
+ };
221
+ pluginOptions: {
222
+ "content-manager": {
223
+ visible: boolean;
224
+ };
225
+ "content-type-builder": {
226
+ visible: boolean;
227
+ };
228
+ };
229
+ attributes: {
230
+ idempotencyKey: {
231
+ type: string;
232
+ required: boolean;
233
+ unique: boolean;
234
+ };
235
+ campaignSlug: {
236
+ type: string;
237
+ required: boolean;
238
+ };
239
+ channel: {
240
+ type: string;
241
+ enum: string[];
242
+ required: boolean;
243
+ };
244
+ driver: {
245
+ type: string;
246
+ required: boolean;
247
+ };
248
+ recipientMasked: {
249
+ type: string;
250
+ required: boolean;
251
+ };
252
+ locale: {
253
+ type: string;
254
+ default: string;
255
+ required: boolean;
256
+ };
257
+ status: {
258
+ type: string;
259
+ enum: string[];
260
+ required: boolean;
261
+ };
262
+ externalMessageId: {
263
+ type: string;
264
+ };
265
+ errorMessage: {
266
+ type: string;
267
+ };
268
+ sentAt: {
269
+ type: string;
270
+ required: boolean;
271
+ };
272
+ secondaryDateLabel: {
273
+ type: string;
274
+ };
275
+ };
276
+ };
277
+ };
278
+ };
279
+ export default _default;
@@ -0,0 +1,32 @@
1
+ import { Core } from '@strapi/strapi';
2
+ export interface ControllerCtx {
3
+ params?: Record<string, unknown>;
4
+ query?: Record<string, unknown>;
5
+ request: {
6
+ body?: Record<string, unknown>;
7
+ };
8
+ status?: number;
9
+ body?: unknown;
10
+ badRequest?: (message: string) => unknown;
11
+ notFound?: (message: string) => unknown;
12
+ }
13
+ declare const _default: ({ strapi }: {
14
+ strapi: Core.Strapi;
15
+ }) => {
16
+ getSettings(ctx: ControllerCtx): Promise<void>;
17
+ updateSettings(ctx: ControllerCtx): Promise<unknown>;
18
+ listStarterTemplates(ctx: ControllerCtx): Promise<void>;
19
+ listEmailTemplates(ctx: ControllerCtx): Promise<void>;
20
+ listCampaigns(ctx: ControllerCtx): Promise<void>;
21
+ createCampaign(ctx: ControllerCtx): Promise<unknown>;
22
+ updateCampaign(ctx: ControllerCtx): Promise<unknown>;
23
+ createFromTemplate(ctx: ControllerCtx): Promise<unknown>;
24
+ sendCampaign(ctx: ControllerCtx): Promise<unknown>;
25
+ listAutomationRules(ctx: ControllerCtx): Promise<void>;
26
+ createAutomationRule(ctx: ControllerCtx): Promise<unknown>;
27
+ updateAutomationRule(ctx: ControllerCtx): Promise<unknown>;
28
+ listDeliveryLogs(ctx: ControllerCtx): Promise<void>;
29
+ listPublicChannels(ctx: ControllerCtx): Promise<void>;
30
+ listPublicArchive(ctx: ControllerCtx): Promise<void>;
31
+ };
32
+ export default _default;
@@ -0,0 +1,22 @@
1
+ declare const _default: {
2
+ broadcastController: ({ strapi }: {
3
+ strapi: import("@strapi/strapi").Core.Strapi;
4
+ }) => {
5
+ getSettings(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
6
+ updateSettings(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
7
+ listStarterTemplates(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
8
+ listEmailTemplates(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
9
+ listCampaigns(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
10
+ createCampaign(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
11
+ updateCampaign(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
12
+ createFromTemplate(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
13
+ sendCampaign(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
14
+ listAutomationRules(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
15
+ createAutomationRule(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
16
+ updateAutomationRule(ctx: import('./broadcastController').ControllerCtx): Promise<unknown>;
17
+ listDeliveryLogs(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
18
+ listPublicChannels(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
19
+ listPublicArchive(ctx: import('./broadcastController').ControllerCtx): Promise<void>;
20
+ };
21
+ };
22
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const destroy: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => void;
5
+ export default destroy;
@@ -0,0 +1,5 @@
1
+ import { Core } from '@strapi/strapi';
2
+ export declare const MONITORED_EVENTS: readonly ["inbox.alert.published", "inbox.subscriber.confirmed", "event.published", "media-feeds.episode.synced"];
3
+ export declare function ensureEventHubListener(strapi: Core.Strapi, rawEventName: string): void;
4
+ export declare function registerEventHubListeners(strapi: Core.Strapi): Promise<void>;
5
+ export declare function cleanupEventHubListeners(strapi: Core.Strapi): void;