evo360-types 1.3.570 → 1.3.574

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 (44) hide show
  1. package/dist/apps/evo-crm/lead/zod-schemas.d.ts +9 -9
  2. package/dist/apps/evo-csq/zod-schemas.d.ts +12 -12
  3. package/dist/apps/evo-finops/zod-schemas.d.ts +18 -18
  4. package/dist/apps/evo-med/dic/zod-schemas.d.ts +2 -2
  5. package/dist/apps/evo-med/people/zod-schemas.d.ts +45 -45
  6. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.d.ts +3 -0
  7. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.js +3 -0
  8. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.ts +3 -0
  9. package/dist/apps/evo-notifications/zod-schemas.d.ts +69 -39
  10. package/dist/apps/evo-task/zod-schemas.d.ts +69 -69
  11. package/dist/apps/evo-task/zod-schemas.js +8 -0
  12. package/dist/apps/evo-task/zod-schemas.ts +8 -0
  13. package/dist/apps/evo-telemedicine/zod-schemas.d.ts +1445 -0
  14. package/dist/apps/evo-telemedicine/zod-schemas.js +641 -0
  15. package/dist/apps/evo-telemedicine/zod-schemas.ts +723 -0
  16. package/dist/apps/evo-tenant/zod-schemas.d.ts +94 -0
  17. package/dist/apps/evo-tenant/zod-schemas.js +29 -1
  18. package/dist/apps/evo-tenant/zod-schemas.ts +32 -1
  19. package/dist/apps/hub-automation/zod-schemas.d.ts +172 -172
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.js +2 -0
  22. package/dist/index.ts +2 -0
  23. package/dist/types/evo-med/calendar/index.d.ts +6 -0
  24. package/dist/types/evo-med/calendar/index.js +6 -0
  25. package/dist/types/evo-med/calendar/index.ts +6 -0
  26. package/dist/types/evo-notifications/index.d.ts +13 -0
  27. package/dist/types/evo-notifications/index.js +6 -0
  28. package/dist/types/evo-notifications/index.ts +13 -0
  29. package/dist/types/evo-task/index.d.ts +1 -0
  30. package/dist/types/evo-task/index.js +8 -0
  31. package/dist/types/evo-task/index.ts +8 -0
  32. package/dist/types/evo-telemedicine/fb_collections.d.ts +16 -0
  33. package/dist/types/evo-telemedicine/fb_collections.js +38 -0
  34. package/dist/types/evo-telemedicine/fb_collections.ts +37 -0
  35. package/dist/types/evo-telemedicine/index.d.ts +890 -0
  36. package/dist/types/evo-telemedicine/index.js +361 -0
  37. package/dist/types/evo-telemedicine/index.ts +1046 -0
  38. package/dist/types/evo-tenant/index.d.ts +45 -0
  39. package/dist/types/evo-tenant/index.js +20 -1
  40. package/dist/types/evo-tenant/index.ts +65 -0
  41. package/dist/types/shared/external-links.d.ts +6 -0
  42. package/dist/types/shared/external-links.js +6 -0
  43. package/dist/types/shared/external-links.ts +6 -0
  44. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -35,6 +35,7 @@ export * from "./types/evo-hub-ia";
35
35
  export * from "./types/evo-csq";
36
36
  export * from "./types/evo-mcp";
37
37
  export * from "./types/evo-reports";
38
+ export * from "./types/evo-telemedicine";
38
39
  export * from "./apps/shared/zod-schemas";
39
40
  export * from "./apps/evo-core/zod-schemas";
40
41
  export * from "./apps/evo-tenant/zod-schemas";
@@ -76,3 +77,4 @@ export * from "./apps/evo-campaigns/zod-schemas";
76
77
  export * from "./apps/evo-task-runner/zod-schemas";
77
78
  export * from "./apps/hub-automation/zod-schemas";
78
79
  export * from "./apps/evo-integrations/zod-schemas";
80
+ export * from "./apps/evo-telemedicine/zod-schemas";
package/dist/index.js CHANGED
@@ -52,6 +52,7 @@ __exportStar(require("./types/evo-hub-ia"), exports);
52
52
  __exportStar(require("./types/evo-csq"), exports);
53
53
  __exportStar(require("./types/evo-mcp"), exports);
54
54
  __exportStar(require("./types/evo-reports"), exports);
55
+ __exportStar(require("./types/evo-telemedicine"), exports);
55
56
  // zod schemas
56
57
  __exportStar(require("./apps/shared/zod-schemas"), exports);
57
58
  __exportStar(require("./apps/evo-core/zod-schemas"), exports);
@@ -94,3 +95,4 @@ __exportStar(require("./apps/evo-campaigns/zod-schemas"), exports);
94
95
  __exportStar(require("./apps/evo-task-runner/zod-schemas"), exports);
95
96
  __exportStar(require("./apps/hub-automation/zod-schemas"), exports);
96
97
  __exportStar(require("./apps/evo-integrations/zod-schemas"), exports);
98
+ __exportStar(require("./apps/evo-telemedicine/zod-schemas"), exports);
package/dist/index.ts CHANGED
@@ -36,6 +36,7 @@ export * from "./types/evo-hub-ia";
36
36
  export * from "./types/evo-csq";
37
37
  export * from "./types/evo-mcp";
38
38
  export * from "./types/evo-reports";
39
+ export * from "./types/evo-telemedicine";
39
40
 
40
41
  // zod schemas
41
42
  export * from "./apps/shared/zod-schemas";
@@ -79,3 +80,4 @@ export * from "./apps/evo-campaigns/zod-schemas";
79
80
  export * from "./apps/evo-task-runner/zod-schemas";
80
81
  export * from "./apps/hub-automation/zod-schemas";
81
82
  export * from "./apps/evo-integrations/zod-schemas";
83
+ export * from "./apps/evo-telemedicine/zod-schemas";
@@ -123,6 +123,12 @@ export declare const MedCalendarNotificationConfigKeys: {
123
123
  readonly AppointmentPayment: "appointment_payment";
124
124
  readonly AppointmentPaymentDone: "appointment_payment_done";
125
125
  readonly AppointmentInvoice: "appointment_invoice";
126
+ /**
127
+ * feat-160 — CTA de ENTRADA na teleconsulta (link `/qr` com capability), lido
128
+ * pelo handler `telemedicine_join_reminder`. Só faz sentido em agendas com
129
+ * `appointmentMode = telemedicine` e tenant com `modules.telemedicine` ativo.
130
+ */
131
+ readonly TelemedicineJoinReminder: "telemedicine_join_reminder";
126
132
  };
127
133
  export type MedCalendarNotificationConfigKey = (typeof MedCalendarNotificationConfigKeys)[keyof typeof MedCalendarNotificationConfigKeys];
128
134
  export interface IMedCalendar extends IFireDoc {
@@ -59,4 +59,10 @@ exports.MedCalendarNotificationConfigKeys = {
59
59
  AppointmentPayment: "appointment_payment",
60
60
  AppointmentPaymentDone: "appointment_payment_done",
61
61
  AppointmentInvoice: "appointment_invoice",
62
+ /**
63
+ * feat-160 — CTA de ENTRADA na teleconsulta (link `/qr` com capability), lido
64
+ * pelo handler `telemedicine_join_reminder`. Só faz sentido em agendas com
65
+ * `appointmentMode = telemedicine` e tenant com `modules.telemedicine` ativo.
66
+ */
67
+ TelemedicineJoinReminder: "telemedicine_join_reminder",
62
68
  };
@@ -141,6 +141,12 @@ export const MedCalendarNotificationConfigKeys = {
141
141
  AppointmentPayment: "appointment_payment",
142
142
  AppointmentPaymentDone: "appointment_payment_done",
143
143
  AppointmentInvoice: "appointment_invoice",
144
+ /**
145
+ * feat-160 — CTA de ENTRADA na teleconsulta (link `/qr` com capability), lido
146
+ * pelo handler `telemedicine_join_reminder`. Só faz sentido em agendas com
147
+ * `appointmentMode = telemedicine` e tenant com `modules.telemedicine` ativo.
148
+ */
149
+ TelemedicineJoinReminder: "telemedicine_join_reminder",
144
150
  } as const;
145
151
 
146
152
  export type MedCalendarNotificationConfigKey =
@@ -19,6 +19,12 @@ export declare const EvoNotificationsCollections: {
19
19
  export type EvoNotificationsCollectionName = (typeof EvoNotificationsCollections)[keyof typeof EvoNotificationsCollections];
20
20
  export declare const NotificationTaskKindEnum: {
21
21
  readonly Send: "notification.send";
22
+ /**
23
+ * feat-160 — kind da task fina de envio do CTA de entrada na teleconsulta
24
+ * (handler `telemedicine_join_reminder`). Mesmo payload de `notification.send`;
25
+ * o kind distinto permite dedup/observabilidade próprias do reenvio manual.
26
+ */
27
+ readonly TelemedicineJoinSend: "telemedicine_join.send";
22
28
  };
23
29
  export type NotificationTaskKind = (typeof NotificationTaskKindEnum)[keyof typeof NotificationTaskKindEnum];
24
30
  export declare const NotificationsTopics: {
@@ -98,6 +104,13 @@ export interface IQuickReplyActionIntent {
98
104
  button_index: number;
99
105
  button_label: string;
100
106
  expires_at?: Date;
107
+ /**
108
+ * feat-160 — segredo de URL (capability de 128 bits, base64url) anexado como
109
+ * sufixo do link `/qr/{tenant}/{actionId}/{url_secret}`. NUNCA persistido: só
110
+ * memória de envio (o provider concatena no botão/link e descarta); no grant
111
+ * fica apenas o HMAC. Nunca logar.
112
+ */
113
+ url_secret?: string;
101
114
  [key: string]: unknown;
102
115
  }
103
116
  export interface INotificationSendPayload {
@@ -55,6 +55,12 @@ exports.EvoNotificationsCollections = {
55
55
  // ----- Task Runner integration
56
56
  exports.NotificationTaskKindEnum = {
57
57
  Send: "notification.send",
58
+ /**
59
+ * feat-160 — kind da task fina de envio do CTA de entrada na teleconsulta
60
+ * (handler `telemedicine_join_reminder`). Mesmo payload de `notification.send`;
61
+ * o kind distinto permite dedup/observabilidade próprias do reenvio manual.
62
+ */
63
+ TelemedicineJoinSend: "telemedicine_join.send",
58
64
  };
59
65
  // Logical Pub/Sub topic names (optional, but useful as shared constants)
60
66
  exports.NotificationsTopics = {
@@ -50,6 +50,12 @@ export type EvoNotificationsCollectionName =
50
50
  // ----- Task Runner integration
51
51
  export const NotificationTaskKindEnum = {
52
52
  Send: "notification.send",
53
+ /**
54
+ * feat-160 — kind da task fina de envio do CTA de entrada na teleconsulta
55
+ * (handler `telemedicine_join_reminder`). Mesmo payload de `notification.send`;
56
+ * o kind distinto permite dedup/observabilidade próprias do reenvio manual.
57
+ */
58
+ TelemedicineJoinSend: "telemedicine_join.send",
53
59
  } as const;
54
60
 
55
61
  export type NotificationTaskKind =
@@ -176,6 +182,13 @@ export interface IQuickReplyActionIntent {
176
182
  button_index: number; // template button position (0, 1, 2...)
177
183
  button_label: string; // visible button text ("Confirmar")
178
184
  expires_at?: Date; // after this, the action cannot be executed
185
+ /**
186
+ * feat-160 — segredo de URL (capability de 128 bits, base64url) anexado como
187
+ * sufixo do link `/qr/{tenant}/{actionId}/{url_secret}`. NUNCA persistido: só
188
+ * memória de envio (o provider concatena no botão/link e descarta); no grant
189
+ * fica apenas o HMAC. Nunca logar.
190
+ */
191
+ url_secret?: string;
179
192
  [key: string]: unknown;
180
193
  }
181
194
 
@@ -61,6 +61,7 @@ export declare const TaskAutoHandlerEnum: {
61
61
  readonly LeadFormCapture: "lead_form_capture";
62
62
  readonly CampaignMaterialize: "campaign.materialize";
63
63
  readonly CampaignDispatchBatch: "campaign.dispatch_batch";
64
+ readonly TelemedicineJoinReminder: "telemedicine_join_reminder";
64
65
  };
65
66
  export type TaskAutoHandler = (typeof TaskAutoHandlerEnum)[keyof typeof TaskAutoHandlerEnum];
66
67
  export declare const TaskRetryStrategyEnum: {
@@ -129,6 +129,14 @@ exports.TaskAutoHandlerEnum = {
129
129
  // `campaign.dispatch_batch.execute_requests` para a cadeia de lotes da F2).
130
130
  CampaignMaterialize: "campaign.materialize",
131
131
  CampaignDispatchBatch: "campaign.dispatch_batch",
132
+ // feat-160: CTA de ENTRADA na teleconsulta — variant do executor único do
133
+ // lembrete (functions-integrations), lendo
134
+ // `notification_config.configs.telemedicine_join_reminder`, SEM CTAs de
135
+ // confirmar/remarcar; emite o botão "Entrar na teleconsulta" com a capability
136
+ // `/qr` (`IQuickReplyActionIntent.url_secret`). Tópico:
137
+ // `telemedicine_join_reminder.execute_requests`.
138
+ // Espelhado à mão em `zTaskAutoHandlerSchema` — sem lá, criar a task estoura ZodError.
139
+ TelemedicineJoinReminder: "telemedicine_join_reminder",
132
140
  };
133
141
  // ----- Retry policy
134
142
  exports.TaskRetryStrategyEnum = {
@@ -140,6 +140,14 @@ export const TaskAutoHandlerEnum = {
140
140
  // `campaign.dispatch_batch.execute_requests` para a cadeia de lotes da F2).
141
141
  CampaignMaterialize: "campaign.materialize",
142
142
  CampaignDispatchBatch: "campaign.dispatch_batch",
143
+ // feat-160: CTA de ENTRADA na teleconsulta — variant do executor único do
144
+ // lembrete (functions-integrations), lendo
145
+ // `notification_config.configs.telemedicine_join_reminder`, SEM CTAs de
146
+ // confirmar/remarcar; emite o botão "Entrar na teleconsulta" com a capability
147
+ // `/qr` (`IQuickReplyActionIntent.url_secret`). Tópico:
148
+ // `telemedicine_join_reminder.execute_requests`.
149
+ // Espelhado à mão em `zTaskAutoHandlerSchema` — sem lá, criar a task estoura ZodError.
150
+ TelemedicineJoinReminder: "telemedicine_join_reminder",
143
151
  } as const;
144
152
 
145
153
  export type TaskAutoHandler =
@@ -0,0 +1,16 @@
1
+ export declare const EVO_TELEMEDICINE_APP = "evo-telemedicine";
2
+ export declare const TELECONSULTATIONS_COLLECTION = "teleconsultations";
3
+ export declare const TELECONSULTATION_PARTICIPANTS_COLLECTION = "participants";
4
+ export declare const TELECONSULTATION_ACCESS_GRANTS_COLLECTION = "access-grants";
5
+ export declare const TELECONSULTATION_CONSENTS_COLLECTION = "consents";
6
+ export declare const TELECONSULTATION_ARTIFACTS_COLLECTION = "artifacts";
7
+ export declare const TELECONSULTATION_EVENTS_COLLECTION = "events";
8
+ export declare const TELECONSULTATION_WEBHOOK_EVENTS_COLLECTION = "webhook-events";
9
+ export declare const TELEMEDICINE_APPOINTMENT_INDEX_COLLECTION = "appointment-index";
10
+ export declare const TELEMEDICINE_ENTITLEMENT_AUDIT_COLLECTION = "entitlement-audit";
11
+ export declare const TELEMEDICINE_PLATFORM_PATH = "platform/evo-telemedicine";
12
+ export declare const TELEMEDICINE_LEGAL_TEXTS_COLLECTION = "legal-texts";
13
+ export declare const TELEMEDICINE_GRANT_INDEX_COLLECTION = "grant-index";
14
+ export declare const TELEMEDICINE_CONFIG_COLLECTION = "config";
15
+ export declare const TELEMEDICINE_CONFIG_ROLLOUT_DOC = "rollout";
16
+ export declare const TELEMEDICINE_CONFIG_TRANSCRIPTION_DOC = "transcription";
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TELEMEDICINE_CONFIG_TRANSCRIPTION_DOC = exports.TELEMEDICINE_CONFIG_ROLLOUT_DOC = exports.TELEMEDICINE_CONFIG_COLLECTION = exports.TELEMEDICINE_GRANT_INDEX_COLLECTION = exports.TELEMEDICINE_LEGAL_TEXTS_COLLECTION = exports.TELEMEDICINE_PLATFORM_PATH = exports.TELEMEDICINE_ENTITLEMENT_AUDIT_COLLECTION = exports.TELEMEDICINE_APPOINTMENT_INDEX_COLLECTION = exports.TELECONSULTATION_WEBHOOK_EVENTS_COLLECTION = exports.TELECONSULTATION_EVENTS_COLLECTION = exports.TELECONSULTATION_ARTIFACTS_COLLECTION = exports.TELECONSULTATION_CONSENTS_COLLECTION = exports.TELECONSULTATION_ACCESS_GRANTS_COLLECTION = exports.TELECONSULTATION_PARTICIPANTS_COLLECTION = exports.TELECONSULTATIONS_COLLECTION = exports.EVO_TELEMEDICINE_APP = void 0;
4
+ // EVO Telemedicine Application Doc (feat-160)
5
+ //
6
+ // Firestore (por tenant):
7
+ // - App root: /tenants/{t}/apps/evo-telemedicine
8
+ // - Teleconsultations: /tenants/{t}/apps/evo-telemedicine/teleconsultations/{teleconsultationId}
9
+ // - Participants: .../teleconsultations/{id}/participants/{participantId}
10
+ // - Access grants: .../teleconsultations/{id}/access-grants/{grantId}
11
+ // - Consents: .../teleconsultations/{id}/consents/{consentId}
12
+ // - Artifacts: .../teleconsultations/{id}/artifacts/{artifactId}
13
+ // - Events: .../teleconsultations/{id}/events/{eventId} (append-only)
14
+ // - Webhook events: .../teleconsultations/{id}/webhook-events/{providerEventId} (dedup + outbox)
15
+ // - Appointment index: /tenants/{t}/apps/evo-telemedicine/appointment-index/{calendarId}__{appointmentId}
16
+ // - Entitlement audit: /tenants/{t}/apps/evo-telemedicine/entitlement-audit/{id}
17
+ //
18
+ // Plataforma (só backend; rules negam leitura ao FE):
19
+ // - Legal texts: /platform/evo-telemedicine/legal-texts/{subject}-{locale}-{version}
20
+ // - Grant index: /platform/evo-telemedicine/grant-index/{hmac(cap)}
21
+ // - Config: /platform/evo-telemedicine/config/{rollout|transcription}
22
+ exports.EVO_TELEMEDICINE_APP = "evo-telemedicine";
23
+ exports.TELECONSULTATIONS_COLLECTION = "teleconsultations";
24
+ exports.TELECONSULTATION_PARTICIPANTS_COLLECTION = "participants";
25
+ exports.TELECONSULTATION_ACCESS_GRANTS_COLLECTION = "access-grants";
26
+ exports.TELECONSULTATION_CONSENTS_COLLECTION = "consents";
27
+ exports.TELECONSULTATION_ARTIFACTS_COLLECTION = "artifacts";
28
+ exports.TELECONSULTATION_EVENTS_COLLECTION = "events";
29
+ exports.TELECONSULTATION_WEBHOOK_EVENTS_COLLECTION = "webhook-events";
30
+ exports.TELEMEDICINE_APPOINTMENT_INDEX_COLLECTION = "appointment-index";
31
+ exports.TELEMEDICINE_ENTITLEMENT_AUDIT_COLLECTION = "entitlement-audit";
32
+ // Plataforma
33
+ exports.TELEMEDICINE_PLATFORM_PATH = "platform/evo-telemedicine";
34
+ exports.TELEMEDICINE_LEGAL_TEXTS_COLLECTION = "legal-texts";
35
+ exports.TELEMEDICINE_GRANT_INDEX_COLLECTION = "grant-index";
36
+ exports.TELEMEDICINE_CONFIG_COLLECTION = "config";
37
+ exports.TELEMEDICINE_CONFIG_ROLLOUT_DOC = "rollout";
38
+ exports.TELEMEDICINE_CONFIG_TRANSCRIPTION_DOC = "transcription";
@@ -0,0 +1,37 @@
1
+ // EVO Telemedicine Application Doc (feat-160)
2
+ //
3
+ // Firestore (por tenant):
4
+ // - App root: /tenants/{t}/apps/evo-telemedicine
5
+ // - Teleconsultations: /tenants/{t}/apps/evo-telemedicine/teleconsultations/{teleconsultationId}
6
+ // - Participants: .../teleconsultations/{id}/participants/{participantId}
7
+ // - Access grants: .../teleconsultations/{id}/access-grants/{grantId}
8
+ // - Consents: .../teleconsultations/{id}/consents/{consentId}
9
+ // - Artifacts: .../teleconsultations/{id}/artifacts/{artifactId}
10
+ // - Events: .../teleconsultations/{id}/events/{eventId} (append-only)
11
+ // - Webhook events: .../teleconsultations/{id}/webhook-events/{providerEventId} (dedup + outbox)
12
+ // - Appointment index: /tenants/{t}/apps/evo-telemedicine/appointment-index/{calendarId}__{appointmentId}
13
+ // - Entitlement audit: /tenants/{t}/apps/evo-telemedicine/entitlement-audit/{id}
14
+ //
15
+ // Plataforma (só backend; rules negam leitura ao FE):
16
+ // - Legal texts: /platform/evo-telemedicine/legal-texts/{subject}-{locale}-{version}
17
+ // - Grant index: /platform/evo-telemedicine/grant-index/{hmac(cap)}
18
+ // - Config: /platform/evo-telemedicine/config/{rollout|transcription}
19
+ export const EVO_TELEMEDICINE_APP = "evo-telemedicine";
20
+
21
+ export const TELECONSULTATIONS_COLLECTION = "teleconsultations";
22
+ export const TELECONSULTATION_PARTICIPANTS_COLLECTION = "participants";
23
+ export const TELECONSULTATION_ACCESS_GRANTS_COLLECTION = "access-grants";
24
+ export const TELECONSULTATION_CONSENTS_COLLECTION = "consents";
25
+ export const TELECONSULTATION_ARTIFACTS_COLLECTION = "artifacts";
26
+ export const TELECONSULTATION_EVENTS_COLLECTION = "events";
27
+ export const TELECONSULTATION_WEBHOOK_EVENTS_COLLECTION = "webhook-events";
28
+ export const TELEMEDICINE_APPOINTMENT_INDEX_COLLECTION = "appointment-index";
29
+ export const TELEMEDICINE_ENTITLEMENT_AUDIT_COLLECTION = "entitlement-audit";
30
+
31
+ // Plataforma
32
+ export const TELEMEDICINE_PLATFORM_PATH = "platform/evo-telemedicine";
33
+ export const TELEMEDICINE_LEGAL_TEXTS_COLLECTION = "legal-texts";
34
+ export const TELEMEDICINE_GRANT_INDEX_COLLECTION = "grant-index";
35
+ export const TELEMEDICINE_CONFIG_COLLECTION = "config";
36
+ export const TELEMEDICINE_CONFIG_ROLLOUT_DOC = "rollout";
37
+ export const TELEMEDICINE_CONFIG_TRANSCRIPTION_DOC = "transcription";