@mediquo/elements 0.3.1

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 (187) hide show
  1. package/README.md +22 -0
  2. package/dist/chunks/api-chat-client-BTBtu01T.js +1 -0
  3. package/dist/chunks/apple-pay-outcomes-BlytM6W-.js +1 -0
  4. package/dist/chunks/appointment-details-DpzdYLjq.d.ts +24 -0
  5. package/dist/chunks/appointment.model.d-Dy50gMPg.d.ts +171 -0
  6. package/dist/chunks/ca_ES-nttMFJzr.js +1 -0
  7. package/dist/chunks/chunk-S5RWG6G2-oTcdgk2H.js +1 -0
  8. package/dist/chunks/chunk-YTQUGGS3-DN-JZpgG.js +1 -0
  9. package/dist/chunks/class-map-Co76I6aw.js +1 -0
  10. package/dist/chunks/context-provider-CiMFpvDA.js +1 -0
  11. package/dist/chunks/context-request-event-Dfydf1ub.js +1 -0
  12. package/dist/chunks/custom-element-DA9Fxvxd.js +1 -0
  13. package/dist/chunks/de_DE-CrwfSJnS.js +1 -0
  14. package/dist/chunks/default-IpEn36CA.d.ts +5 -0
  15. package/dist/chunks/directive-2EDmOukv.js +1 -0
  16. package/dist/chunks/en_US-BslWF9nj.js +1 -0
  17. package/dist/chunks/ensure-context-root-DbdqwnKB.js +1 -0
  18. package/dist/chunks/exports-XZaVrMLd.js +1 -0
  19. package/dist/chunks/external-zAbuzxDj.js +1 -0
  20. package/dist/chunks/format-Cm3B1GMy.js +1 -0
  21. package/dist/chunks/get-organization-setup-query-BMbuRi6v.js +1 -0
  22. package/dist/chunks/get-patient-profile-query-C8T8DJ7z.js +1 -0
  23. package/dist/chunks/if-defined-BYeVdwgd.js +1 -0
  24. package/dist/chunks/index-B9iWdvW3.js +1 -0
  25. package/dist/chunks/index-BYHKNPG2.js +1 -0
  26. package/dist/chunks/index-Bxh8Qfwr.js +1 -0
  27. package/dist/chunks/isBefore-Cof0D841.js +1 -0
  28. package/dist/chunks/isSameDay-DPfclwIL.js +1 -0
  29. package/dist/chunks/lit-element-DiWJYFwC.js +1 -0
  30. package/dist/chunks/login-token-task-BI-L2zSV.js +1 -0
  31. package/dist/chunks/mq-chat-room-DuG4RuIp.d.ts +503 -0
  32. package/dist/chunks/mq-layout-D8Mak16a.d.ts +21 -0
  33. package/dist/chunks/mq-layout-DpzeL9_i.js +1 -0
  34. package/dist/chunks/mutation-controller-OVT8NEt6.js +1 -0
  35. package/dist/chunks/parseISO-jT42c8Ob.js +1 -0
  36. package/dist/chunks/price-Dtdjx70D.js +1 -0
  37. package/dist/chunks/price.d-CwLosdAN.d.ts +10 -0
  38. package/dist/chunks/professional-overview-mO3tuMuH.d.ts +25 -0
  39. package/dist/chunks/property-scuRaFcM.js +1 -0
  40. package/dist/chunks/provide-CfT7g_Zi.js +1 -0
  41. package/dist/chunks/pt_PT-CFbbWowX.js +1 -0
  42. package/dist/chunks/query-CeeutdfT.js +1 -0
  43. package/dist/chunks/query-QJ1INUTG.js +1 -0
  44. package/dist/chunks/refund-cancel-policy-Bm5djPds.js +1 -0
  45. package/dist/chunks/runtime-Bg1WXVCx.js +1 -0
  46. package/dist/chunks/schemas.d-BEA8Pl6w.d.ts +44 -0
  47. package/dist/chunks/state-LQivXIgA.js +1 -0
  48. package/dist/chunks/style-map-CIdqdn7C.js +1 -0
  49. package/dist/chunks/task-Bj8p7kJX.js +1 -0
  50. package/dist/chunks/telemetry-client-CKCb9Gnf.js +1 -0
  51. package/dist/env.d.ts +21 -0
  52. package/dist/env.js +1 -0
  53. package/dist/events.d.ts +141 -0
  54. package/dist/events.js +1 -0
  55. package/dist/i18n.d.ts +11 -0
  56. package/dist/i18n.js +1 -0
  57. package/dist/index.d.ts +5 -0
  58. package/dist/index.js +1 -0
  59. package/dist/mq-apple-pay-checkout.d.ts +82 -0
  60. package/dist/mq-apple-pay-checkout.js +1 -0
  61. package/dist/mq-appointment-checkout.d.ts +55 -0
  62. package/dist/mq-appointment-checkout.js +1 -0
  63. package/dist/mq-chat-room.d.ts +20 -0
  64. package/dist/mq-chat-room.js +1 -0
  65. package/dist/mq-checkout.d.ts +108 -0
  66. package/dist/mq-checkout.js +1 -0
  67. package/dist/mq-google-pay-checkout.d.ts +117 -0
  68. package/dist/mq-google-pay-checkout.js +1 -0
  69. package/dist/mq-immediate-videocall-checkout.d.ts +47 -0
  70. package/dist/mq-immediate-videocall-checkout.js +1 -0
  71. package/dist/mq-my-appointments.d.ts +602 -0
  72. package/dist/mq-my-appointments.js +1 -0
  73. package/dist/mq-query-client-provider.d.ts +17 -0
  74. package/dist/mq-query-client-provider.js +1 -0
  75. package/dist/mq-schedule-success.d.ts +84 -0
  76. package/dist/mq-schedule-success.js +4 -0
  77. package/dist/mq-schedule.d.ts +1013 -0
  78. package/dist/mq-schedule.js +1 -0
  79. package/dist/mq-socket-provider.d.ts +103 -0
  80. package/dist/mq-socket-provider.js +1 -0
  81. package/dist/mq-support-chat.d.ts +86 -0
  82. package/dist/mq-support-chat.js +1 -0
  83. package/dist/mq-theme-provider.d.ts +34 -0
  84. package/dist/mq-theme-provider.js +1 -0
  85. package/dist/mq-videocall.d.ts +151 -0
  86. package/dist/mq-videocall.js +1 -0
  87. package/dist/theme.d.ts +200 -0
  88. package/dist/theme.js +1 -0
  89. package/dist/ui/back-link.d.ts +21 -0
  90. package/dist/ui/back-link.js +1 -0
  91. package/dist/ui/icons/alert-circle-icon.d.ts +6 -0
  92. package/dist/ui/icons/alert-circle-icon.js +1 -0
  93. package/dist/ui/icons/annotation-question-icon.d.ts +6 -0
  94. package/dist/ui/icons/annotation-question-icon.js +1 -0
  95. package/dist/ui/icons/briefcase-icon.d.ts +6 -0
  96. package/dist/ui/icons/briefcase-icon.js +1 -0
  97. package/dist/ui/icons/calendar-icon.d.ts +6 -0
  98. package/dist/ui/icons/calendar-icon.js +1 -0
  99. package/dist/ui/icons/chat-bubble-icon.d.ts +6 -0
  100. package/dist/ui/icons/chat-bubble-icon.js +1 -0
  101. package/dist/ui/icons/check-circle-icon.d.ts +5 -0
  102. package/dist/ui/icons/check-circle-icon.js +1 -0
  103. package/dist/ui/icons/check-double-icon.d.ts +6 -0
  104. package/dist/ui/icons/check-double-icon.js +1 -0
  105. package/dist/ui/icons/check-icon.d.ts +6 -0
  106. package/dist/ui/icons/check-icon.js +1 -0
  107. package/dist/ui/icons/chevron-down-icon.d.ts +6 -0
  108. package/dist/ui/icons/chevron-down-icon.js +1 -0
  109. package/dist/ui/icons/chevron-left-icon.d.ts +6 -0
  110. package/dist/ui/icons/chevron-left-icon.js +1 -0
  111. package/dist/ui/icons/chevron-right-icon.d.ts +6 -0
  112. package/dist/ui/icons/chevron-right-icon.js +1 -0
  113. package/dist/ui/icons/clock-icon.d.ts +6 -0
  114. package/dist/ui/icons/clock-icon.js +1 -0
  115. package/dist/ui/icons/download-icon.d.ts +6 -0
  116. package/dist/ui/icons/download-icon.js +1 -0
  117. package/dist/ui/icons/file-icon.d.ts +6 -0
  118. package/dist/ui/icons/file-icon.js +1 -0
  119. package/dist/ui/icons/heartbeat-icon.d.ts +5 -0
  120. package/dist/ui/icons/heartbeat-icon.js +1 -0
  121. package/dist/ui/icons/info-circle-outine-icon.d.ts +6 -0
  122. package/dist/ui/icons/info-circle-outine-icon.js +1 -0
  123. package/dist/ui/icons/message-bubble-icon.d.ts +6 -0
  124. package/dist/ui/icons/message-bubble-icon.js +1 -0
  125. package/dist/ui/icons/message-square-icon.d.ts +6 -0
  126. package/dist/ui/icons/message-square-icon.js +1 -0
  127. package/dist/ui/icons/mic-icon.d.ts +6 -0
  128. package/dist/ui/icons/mic-icon.js +1 -0
  129. package/dist/ui/icons/mic-off-icon.d.ts +6 -0
  130. package/dist/ui/icons/mic-off-icon.js +1 -0
  131. package/dist/ui/icons/phone-icon.d.ts +6 -0
  132. package/dist/ui/icons/phone-icon.js +1 -0
  133. package/dist/ui/icons/spinner-icon.d.ts +6 -0
  134. package/dist/ui/icons/spinner-icon.js +1 -0
  135. package/dist/ui/icons/tag-icon.d.ts +6 -0
  136. package/dist/ui/icons/tag-icon.js +1 -0
  137. package/dist/ui/icons/time-left-icon.d.ts +5 -0
  138. package/dist/ui/icons/time-left-icon.js +1 -0
  139. package/dist/ui/icons/types.d.ts +9 -0
  140. package/dist/ui/icons/types.js +1 -0
  141. package/dist/ui/icons/upload-icon.d.ts +6 -0
  142. package/dist/ui/icons/upload-icon.js +1 -0
  143. package/dist/ui/icons/video-icon.d.ts +6 -0
  144. package/dist/ui/icons/video-icon.js +1 -0
  145. package/dist/ui/icons/video-off-icon.d.ts +6 -0
  146. package/dist/ui/icons/video-off-icon.js +1 -0
  147. package/dist/ui/icons/x-icon.d.ts +6 -0
  148. package/dist/ui/icons/x-icon.js +1 -0
  149. package/dist/ui/mq-avatar.d.ts +37 -0
  150. package/dist/ui/mq-avatar.js +1 -0
  151. package/dist/ui/mq-button.d.ts +34 -0
  152. package/dist/ui/mq-button.js +1 -0
  153. package/dist/ui/mq-calendar.d.ts +66 -0
  154. package/dist/ui/mq-calendar.js +1 -0
  155. package/dist/ui/mq-callout.d.ts +23 -0
  156. package/dist/ui/mq-callout.js +1 -0
  157. package/dist/ui/mq-card.d.ts +18 -0
  158. package/dist/ui/mq-card.js +1 -0
  159. package/dist/ui/mq-checkbox.d.ts +41 -0
  160. package/dist/ui/mq-checkbox.js +1 -0
  161. package/dist/ui/mq-clamped-text.d.ts +46 -0
  162. package/dist/ui/mq-clamped-text.js +1 -0
  163. package/dist/ui/mq-dialog.d.ts +53 -0
  164. package/dist/ui/mq-dialog.js +1 -0
  165. package/dist/ui/mq-floating-bubble.d.ts +42 -0
  166. package/dist/ui/mq-floating-bubble.js +1 -0
  167. package/dist/ui/mq-input.d.ts +41 -0
  168. package/dist/ui/mq-input.js +1 -0
  169. package/dist/ui/mq-rating.d.ts +30 -0
  170. package/dist/ui/mq-rating.js +1 -0
  171. package/dist/ui/mq-select.d.ts +83 -0
  172. package/dist/ui/mq-select.js +1 -0
  173. package/dist/ui/mq-skeleton.d.ts +18 -0
  174. package/dist/ui/mq-skeleton.js +1 -0
  175. package/dist/ui/mq-tabs.d.ts +56 -0
  176. package/dist/ui/mq-tabs.js +1 -0
  177. package/dist/ui/mq-text-button.d.ts +39 -0
  178. package/dist/ui/mq-text-button.js +1 -0
  179. package/dist/ui/mq-textarea.d.ts +38 -0
  180. package/dist/ui/mq-textarea.js +1 -0
  181. package/dist/ui/mq-time-slot-picker.d.ts +84 -0
  182. package/dist/ui/mq-time-slot-picker.js +1 -0
  183. package/dist/ui/mq-toast.d.ts +111 -0
  184. package/dist/ui/mq-toast.js +1 -0
  185. package/dist/ui/mq-unread-badge.d.ts +15 -0
  186. package/dist/ui/mq-unread-badge.js +1 -0
  187. package/package.json +176 -0
@@ -0,0 +1,503 @@
1
+ import * as lit_html from 'lit-html';
2
+ import * as lit from 'lit';
3
+ import { LitElement, PropertyValues } from 'lit';
4
+ import '../ui/mq-avatar.js';
5
+ import '../ui/mq-button.js';
6
+ import '../ui/mq-skeleton.js';
7
+ import { z } from 'zod';
8
+ import { C as ConsultationType } from './appointment.model.d-Dy50gMPg.js';
9
+ import { QueryClient } from '@tanstack/query-core';
10
+
11
+ /**
12
+ * @fires mq-chat-room-profile when the profile is clicked
13
+ * @fires mq-chat-room-close when the close button is clicked
14
+ */
15
+ declare class ChatRoomHeader extends LitElement {
16
+ static styles: lit.CSSResult;
17
+ professionalHash: string;
18
+ hideCloseButton: boolean;
19
+ view: "chat" | "profile";
20
+ private getProfessionalQuery;
21
+ private handleClose;
22
+ private handleClickProfile;
23
+ private renderProfile;
24
+ private renderChat;
25
+ render(): lit_html.TemplateResult<1>;
26
+ }
27
+ declare global {
28
+ interface HTMLElementTagNameMap {
29
+ "chat-room-header": ChatRoomHeader;
30
+ }
31
+ }
32
+
33
+ declare const StringMessageSchema: z.ZodObject<{
34
+ roomId: z.ZodNumber;
35
+ messageId: z.ZodString;
36
+ string: z.ZodString;
37
+ status: z.ZodNumber;
38
+ senderType: z.ZodEnum<["ordinary", "system"]>;
39
+ fromUserHash: z.ZodString;
40
+ auto: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
41
+ createdAt: z.ZodNullable<z.ZodString>;
42
+ deletedAt: z.ZodNullable<z.ZodString>;
43
+ time: z.ZodNullable<z.ZodNumber>;
44
+ } & {
45
+ type: z.ZodLiteral<"string">;
46
+ attachment: z.ZodNull;
47
+ }, "strip", z.ZodTypeAny, {
48
+ string: string;
49
+ type: "string";
50
+ status: number;
51
+ roomId: number;
52
+ messageId: string;
53
+ senderType: "ordinary" | "system";
54
+ fromUserHash: string;
55
+ auto: 0 | 1;
56
+ createdAt: string | null;
57
+ deletedAt: string | null;
58
+ time: number | null;
59
+ attachment: null;
60
+ }, {
61
+ string: string;
62
+ type: "string";
63
+ status: number;
64
+ roomId: number;
65
+ messageId: string;
66
+ senderType: "ordinary" | "system";
67
+ fromUserHash: string;
68
+ auto: 0 | 1;
69
+ createdAt: string | null;
70
+ deletedAt: string | null;
71
+ time: number | null;
72
+ attachment: null;
73
+ }>;
74
+ declare const FileMessageSchema: z.ZodObject<{
75
+ roomId: z.ZodNumber;
76
+ messageId: z.ZodString;
77
+ string: z.ZodString;
78
+ status: z.ZodNumber;
79
+ senderType: z.ZodEnum<["ordinary", "system"]>;
80
+ fromUserHash: z.ZodString;
81
+ auto: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
82
+ createdAt: z.ZodNullable<z.ZodString>;
83
+ deletedAt: z.ZodNullable<z.ZodString>;
84
+ time: z.ZodNullable<z.ZodNumber>;
85
+ } & {
86
+ type: z.ZodLiteral<"file">;
87
+ attachment: z.ZodObject<{
88
+ file_name: z.ZodString;
89
+ file_size: z.ZodNumber;
90
+ url: z.ZodString;
91
+ signed_url: z.ZodNullable<z.ZodString>;
92
+ type: z.ZodEnum<["uncategorized", "voice_note"]>;
93
+ meta: z.ZodObject<{
94
+ duration: z.ZodNumber;
95
+ }, "strip", z.ZodTypeAny, {
96
+ duration: number;
97
+ }, {
98
+ duration: number;
99
+ }>;
100
+ }, "strip", z.ZodTypeAny, {
101
+ url: string;
102
+ type: "uncategorized" | "voice_note";
103
+ file_name: string;
104
+ meta: {
105
+ duration: number;
106
+ };
107
+ file_size: number;
108
+ signed_url: string | null;
109
+ }, {
110
+ url: string;
111
+ type: "uncategorized" | "voice_note";
112
+ file_name: string;
113
+ meta: {
114
+ duration: number;
115
+ };
116
+ file_size: number;
117
+ signed_url: string | null;
118
+ }>;
119
+ }, "strip", z.ZodTypeAny, {
120
+ string: string;
121
+ type: "file";
122
+ status: number;
123
+ roomId: number;
124
+ messageId: string;
125
+ senderType: "ordinary" | "system";
126
+ fromUserHash: string;
127
+ auto: 0 | 1;
128
+ createdAt: string | null;
129
+ deletedAt: string | null;
130
+ time: number | null;
131
+ attachment: {
132
+ url: string;
133
+ type: "uncategorized" | "voice_note";
134
+ file_name: string;
135
+ meta: {
136
+ duration: number;
137
+ };
138
+ file_size: number;
139
+ signed_url: string | null;
140
+ };
141
+ }, {
142
+ string: string;
143
+ type: "file";
144
+ status: number;
145
+ roomId: number;
146
+ messageId: string;
147
+ senderType: "ordinary" | "system";
148
+ fromUserHash: string;
149
+ auto: 0 | 1;
150
+ createdAt: string | null;
151
+ deletedAt: string | null;
152
+ time: number | null;
153
+ attachment: {
154
+ url: string;
155
+ type: "uncategorized" | "voice_note";
156
+ file_name: string;
157
+ meta: {
158
+ duration: number;
159
+ };
160
+ file_size: number;
161
+ signed_url: string | null;
162
+ };
163
+ }>;
164
+ declare const ImageMessageSchema: z.ZodObject<{
165
+ roomId: z.ZodNumber;
166
+ messageId: z.ZodString;
167
+ string: z.ZodString;
168
+ status: z.ZodNumber;
169
+ senderType: z.ZodEnum<["ordinary", "system"]>;
170
+ fromUserHash: z.ZodString;
171
+ auto: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>]>;
172
+ createdAt: z.ZodNullable<z.ZodString>;
173
+ deletedAt: z.ZodNullable<z.ZodString>;
174
+ time: z.ZodNullable<z.ZodNumber>;
175
+ } & {
176
+ type: z.ZodLiteral<"image">;
177
+ attachment: z.ZodObject<{
178
+ file_name: z.ZodString;
179
+ file_size: z.ZodNumber;
180
+ url: z.ZodString;
181
+ signed_url: z.ZodNullable<z.ZodString>;
182
+ type: z.ZodEnum<["uncategorized", "voice_note"]>;
183
+ meta: z.ZodObject<{
184
+ duration: z.ZodNumber;
185
+ }, "strip", z.ZodTypeAny, {
186
+ duration: number;
187
+ }, {
188
+ duration: number;
189
+ }>;
190
+ }, "strip", z.ZodTypeAny, {
191
+ url: string;
192
+ type: "uncategorized" | "voice_note";
193
+ file_name: string;
194
+ meta: {
195
+ duration: number;
196
+ };
197
+ file_size: number;
198
+ signed_url: string | null;
199
+ }, {
200
+ url: string;
201
+ type: "uncategorized" | "voice_note";
202
+ file_name: string;
203
+ meta: {
204
+ duration: number;
205
+ };
206
+ file_size: number;
207
+ signed_url: string | null;
208
+ }>;
209
+ }, "strip", z.ZodTypeAny, {
210
+ string: string;
211
+ type: "image";
212
+ status: number;
213
+ roomId: number;
214
+ messageId: string;
215
+ senderType: "ordinary" | "system";
216
+ fromUserHash: string;
217
+ auto: 0 | 1;
218
+ createdAt: string | null;
219
+ deletedAt: string | null;
220
+ time: number | null;
221
+ attachment: {
222
+ url: string;
223
+ type: "uncategorized" | "voice_note";
224
+ file_name: string;
225
+ meta: {
226
+ duration: number;
227
+ };
228
+ file_size: number;
229
+ signed_url: string | null;
230
+ };
231
+ }, {
232
+ string: string;
233
+ type: "image";
234
+ status: number;
235
+ roomId: number;
236
+ messageId: string;
237
+ senderType: "ordinary" | "system";
238
+ fromUserHash: string;
239
+ auto: 0 | 1;
240
+ createdAt: string | null;
241
+ deletedAt: string | null;
242
+ time: number | null;
243
+ attachment: {
244
+ url: string;
245
+ type: "uncategorized" | "voice_note";
246
+ file_name: string;
247
+ meta: {
248
+ duration: number;
249
+ };
250
+ file_size: number;
251
+ signed_url: string | null;
252
+ };
253
+ }>;
254
+ type StringMessage = z.infer<typeof StringMessageSchema>;
255
+ type FileMessage = z.infer<typeof FileMessageSchema>;
256
+ type ImageMessage = z.infer<typeof ImageMessageSchema>;
257
+ type Message = StringMessage | FileMessage | ImageMessage;
258
+
259
+ type MessageKind = "sent" | "received" | "system";
260
+
261
+ declare class TextMessageBubble extends LitElement {
262
+ static styles: lit.CSSResult[];
263
+ message: Message;
264
+ kind: MessageKind;
265
+ private formatMessageContent;
266
+ render(): lit_html.TemplateResult<1>;
267
+ }
268
+ declare global {
269
+ interface HTMLElementTagNameMap {
270
+ "text-message-bubble": TextMessageBubble;
271
+ }
272
+ }
273
+
274
+ declare class ImageMessageBubble extends LitElement {
275
+ static styles: lit.CSSResult;
276
+ message: ImageMessage;
277
+ kind: MessageKind;
278
+ token?: string | undefined;
279
+ private showPreview;
280
+ private isPreviewRendered;
281
+ private isPreviewActive;
282
+ private closeTimer;
283
+ private handleImageError;
284
+ private handleImageLoad;
285
+ private handleImageClick;
286
+ private handleImageKeyDown;
287
+ private handleClosePreview;
288
+ private handleOverlayClick;
289
+ private handleOverlayKeyDown;
290
+ private handleKeyDown;
291
+ private handlePreviewImageKeyDown;
292
+ connectedCallback(): void;
293
+ disconnectedCallback(): void;
294
+ render(): lit_html.TemplateResult<1>;
295
+ }
296
+ declare global {
297
+ interface HTMLElementTagNameMap {
298
+ "image-message-bubble": ImageMessageBubble;
299
+ }
300
+ }
301
+
302
+ declare class FileMessageBubble extends LitElement {
303
+ static styles: lit.CSSResult;
304
+ message: FileMessage;
305
+ kind: MessageKind;
306
+ token?: string | undefined;
307
+ private isDownloading;
308
+ private formatMessageContent;
309
+ private handleDownload;
310
+ render(): lit_html.TemplateResult<1>;
311
+ }
312
+ declare global {
313
+ interface HTMLElementTagNameMap {
314
+ "file-message-bubble": FileMessageBubble;
315
+ }
316
+ }
317
+
318
+ declare class MessageBubble extends LitElement {
319
+ static styles: lit.CSSResult[];
320
+ kind: MessageKind;
321
+ message: Message;
322
+ showTimestamp: boolean;
323
+ private formatTimestamp;
324
+ private renderStatusIcon;
325
+ private renderBubbleContent;
326
+ render(): lit_html.TemplateResult<1>;
327
+ }
328
+ declare global {
329
+ interface HTMLElementTagNameMap {
330
+ "message-bubble": MessageBubble;
331
+ }
332
+ }
333
+
334
+ declare class DateBanner extends LitElement {
335
+ static styles: lit.CSSResult[];
336
+ date: string;
337
+ private formatDate;
338
+ render(): lit_html.TemplateResult<1>;
339
+ }
340
+ declare global {
341
+ interface HTMLElementTagNameMap {
342
+ "date-banner": DateBanner;
343
+ }
344
+ }
345
+
346
+ declare class MessagesList extends LitElement {
347
+ static styles: lit.CSSResult[];
348
+ messages: Array<Message>;
349
+ professionalHash: string;
350
+ private messagesContainerEnd;
351
+ private scrollToBottom;
352
+ private shouldShowMessageTimestamp;
353
+ private groupMessagesByDate;
354
+ firstUpdated(): void;
355
+ protected willUpdate(_changedProperties: PropertyValues): void;
356
+ render(): lit_html.TemplateResult<1>;
357
+ }
358
+ declare global {
359
+ interface HTMLElementTagNameMap {
360
+ "messages-list": MessagesList;
361
+ }
362
+ }
363
+
364
+ declare class MessageBubbleSkeleton extends LitElement {
365
+ static styles: lit.CSSResult[];
366
+ variant: "doctor" | "patient";
367
+ height: "sm" | "md";
368
+ showTimestamp: boolean;
369
+ render(): lit_html.TemplateResult<1>;
370
+ }
371
+ declare global {
372
+ interface HTMLElementTagNameMap {
373
+ "message-bubble-skeleton": MessageBubbleSkeleton;
374
+ }
375
+ }
376
+
377
+ declare class MessagesSkeleton extends LitElement {
378
+ static styles: lit.CSSResult[];
379
+ messageCount: number;
380
+ private getSkeletonHeight;
381
+ private getSkeletonVariant;
382
+ private renderSkeletonMessages;
383
+ render(): lit_html.TemplateResult<1>;
384
+ }
385
+ declare global {
386
+ interface HTMLElementTagNameMap {
387
+ "messages-skeleton": MessagesSkeleton;
388
+ }
389
+ }
390
+
391
+ declare class ChatRoomMessages extends LitElement {
392
+ static styles: lit.CSSResult[];
393
+ roomId: number;
394
+ professionalHash: string;
395
+ private getRoomMessagesQuery;
396
+ private optimisticUpdatesController;
397
+ private onMessageReceived;
398
+ private onMessageDeleted;
399
+ private onMessageStatusUpdated;
400
+ private _socketController;
401
+ render(): lit_html.TemplateResult<1> | null;
402
+ }
403
+ declare global {
404
+ interface HTMLElementTagNameMap {
405
+ "chat-room-messages": ChatRoomMessages;
406
+ }
407
+ }
408
+
409
+ declare class ChatRoomFooter extends LitElement {
410
+ static styles: lit.CSSResult[];
411
+ private isTyping;
412
+ private typingTimeoutId;
413
+ consultationId: string | undefined;
414
+ consultationType: ConsultationType | undefined;
415
+ roomId: number;
416
+ private inputValue;
417
+ private attachmentInput;
418
+ private socketController;
419
+ private handleInputChange;
420
+ private handleKeyDown;
421
+ private handleAttachment;
422
+ private handleAttachmentClick;
423
+ private handleSendMessage;
424
+ disconnectedCallback(): void;
425
+ render(): lit_html.TemplateResult<1>;
426
+ }
427
+ declare global {
428
+ interface HTMLElementTagNameMap {
429
+ "chat-room-footer": ChatRoomFooter;
430
+ }
431
+ }
432
+
433
+ declare const GapSchema: z.ZodObject<{
434
+ days_of_week: z.ZodEnum<["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday", "working_week", "weekend", "all_week"]>;
435
+ from_time: z.ZodString;
436
+ to_time: z.ZodString;
437
+ }, "strip", z.ZodTypeAny, {
438
+ days_of_week: "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday" | "working_week" | "weekend" | "all_week";
439
+ from_time: string;
440
+ to_time: string;
441
+ }, {
442
+ days_of_week: "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday" | "working_week" | "weekend" | "all_week";
443
+ from_time: string;
444
+ to_time: string;
445
+ }>;
446
+ type Gap = z.infer<typeof GapSchema>;
447
+
448
+ declare class AvailabilitySection extends LitElement {
449
+ static styles: lit.CSSResult;
450
+ gaps: Array<Gap>;
451
+ private selectedDay;
452
+ updated(changedProperties: Map<string | number | symbol, unknown>): void;
453
+ render(): lit_html.TemplateResult<1>;
454
+ }
455
+ declare global {
456
+ interface HTMLElementTagNameMap {
457
+ "availability-section": AvailabilitySection;
458
+ }
459
+ }
460
+
461
+ /**
462
+ * @fires mq-chat-room-chat when the profile is clicked
463
+ */
464
+ declare class ChatRoomProfile extends LitElement {
465
+ static styles: lit.CSSResult[];
466
+ professionalHash: string;
467
+ private getProfessionalQuery;
468
+ private renderProfile;
469
+ render(): lit_html.TemplateResult<1> | null;
470
+ }
471
+ declare global {
472
+ interface HTMLElementTagNameMap {
473
+ "chat-room-profile": ChatRoomProfile;
474
+ }
475
+ }
476
+
477
+ /**
478
+ * @fires mq-chat-room-close when the close button is clicked
479
+ */
480
+ declare class MqChatRoom extends LitElement {
481
+ static styles: lit.CSSResult[];
482
+ apiKey?: string | undefined;
483
+ token: string;
484
+ professionalHash: string;
485
+ roomId: number;
486
+ consultationId: string | undefined;
487
+ consultationType: ConsultationType | undefined;
488
+ readonly: boolean;
489
+ hideCloseButton: boolean;
490
+ view: "chat" | "profile";
491
+ queryClientContext: QueryClient | undefined;
492
+ private socketController;
493
+ private readAllMessagesMutation;
494
+ willUpdate(_changedProperties: PropertyValues<this>): void;
495
+ render(): lit_html.TemplateResult<1>;
496
+ }
497
+ declare global {
498
+ interface HTMLElementTagNameMap {
499
+ "mq-chat-room": MqChatRoom;
500
+ }
501
+ }
502
+
503
+ export { MqChatRoom as M };
@@ -0,0 +1,21 @@
1
+ import * as lit_html from 'lit-html';
2
+ import * as lit from 'lit';
3
+ import { LitElement } from 'lit';
4
+
5
+ /**
6
+ * Presentational page frame: a centered content column with an optional
7
+ * "provided by mediquo" branding footer. Pure chrome — no navigation. Shared
8
+ * across features that need a full-screen wizard-style layout.
9
+ */
10
+ declare class MQLayout extends LitElement {
11
+ static styles: lit.CSSResult;
12
+ background: "solid" | "default" | "transparent";
13
+ variant: "default" | "wide";
14
+ showMediquoBranding: boolean;
15
+ render(): lit_html.TemplateResult<1>;
16
+ }
17
+ declare global {
18
+ interface HTMLElementTagNameMap {
19
+ "mq-layout": MQLayout;
20
+ }
21
+ }
@@ -0,0 +1 @@
1
+ import{_ as t,t as o}from"./custom-element-DA9Fxvxd.js";import{m as C}from"./runtime-Bg1WXVCx.js";import{l as a}from"./parseISO-jT42c8Ob.js";import{a as r,i as n,x as e}from"./lit-element-DiWJYFwC.js";import{n as i}from"./property-scuRaFcM.js";let d=class MQLayout extends r{constructor(){super(...arguments),this.background="default",this.variant="default",this.showMediquoBranding=!0}static{this.styles=n`:host{--content-max-width:560px;display:flex;flex-direction:column;height:100%;width:100%;max-width:var(--content-max-width);margin:0 auto;background-color:var(--color-background)}:host([background=solid]){background-color:var(--color-background)}:host([background=transparent]){background-color:transparent}:host([variant=wide]){--content-max-width:1000px}.content{flex:1;padding:var(--mq-layout-padding,0)}footer{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);padding-top:var(--sp-10);padding-bottom:var(--sp-3);padding-inline:var(--mq-layout-padding,0);margin-bottom:var(--sp-3);text-align:center}.branding{display:flex;justify-content:center;align-items:center;gap:var(--size-2);font-family:var(--font-body);font-size:var(--text-sm);line-height:normal;font-weight:var(--font-weight-normal);color:var(--color-neutrals-text-default)}`}render(){return this.showMediquoBranding?e`<div class="content"><slot></slot></div><footer><div class="branding">${C("Servicio y plataforma prestados por")} ${e`<svg width="82" height="16" viewBox="0 0 82 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M52.4506 8.97739V10.5665C52.4506 11.1054 52.0077 11.5477 51.4682 11.5477C50.9288 11.5477 50.486 11.1054 50.486 10.5665V8.97739H48.8531C48.3276 8.97739 47.8984 8.54894 47.8984 8.02383C47.8984 7.49893 48.3276 7.07053 48.8531 7.07053H50.486V5.48128C50.486 4.94243 50.9288 4.5002 51.4682 4.5002C52.0077 4.5002 52.4506 4.94243 52.4506 5.48128V7.07053H54.0836C54.609 7.07053 55.0379 7.49893 55.0379 8.02383C55.0379 8.54894 54.609 8.97739 54.0836 8.97739H52.4506ZM56.8563 5.46693C56.055 3.75203 54.5229 2.55033 52.6531 2.16979C52.3272 2.10809 51.9339 2.06818 51.5273 2.05679C48.7327 2.10005 46.4191 3.93204 45.7665 6.6209C45.397 8.13705 45.6843 9.78156 46.555 11.134C47.4258 12.4867 48.8053 13.431 50.3396 13.7243C51.7168 13.9883 53.0199 13.8046 54.2312 13.1767L54.2853 13.1506C54.554 13.0306 54.8304 12.9977 55.1481 13.0559L55.2243 13.0728C55.8277 13.2312 56.4308 13.389 57.0345 13.5467C56.8787 12.9784 56.7231 12.4168 56.5656 11.86L56.5512 11.8035C56.4673 11.4258 56.5163 11.0837 56.7011 10.7579C57.5947 9.11014 57.6548 7.17549 56.8563 5.46693ZM59.2901 15.5846C59.0891 15.8486 58.7811 16 58.4446 16C58.2872 16 58.1621 15.967 58.0617 15.9405L57.0944 15.6878C56.3739 15.4997 55.6553 15.312 54.936 15.1233C53.8594 15.6379 52.7204 15.8988 51.5464 15.8988C51.0243 15.8988 50.4877 15.8466 49.9521 15.7439C47.8668 15.3452 45.9973 14.0703 44.823 12.2461C43.6488 10.4223 43.2634 8.19505 43.7656 6.13553C44.6446 2.51324 47.7615 0.0472629 51.5211 0.000260881L51.5409 0L51.5605 0.000391321C52.0913 0.0140876 52.5926 0.0651767 53.0508 0.152094C55.5798 0.666768 57.6424 2.28597 58.7224 4.59729C59.7655 6.82947 59.7232 9.34593 58.6144 11.5401C58.8921 12.5275 59.1643 13.5268 59.4414 14.5471C59.4869 14.7106 59.6124 15.1611 59.2901 15.5846ZM79.7577 8.77869C79.7577 7.05748 78.5162 5.63246 76.7557 5.63246C74.9582 5.63246 73.8092 7.03887 73.8092 8.7416V8.77869C73.8092 10.4814 75.0508 11.9064 76.7927 11.9064C78.6089 11.9064 79.7577 10.4999 79.7577 8.81573V8.77869ZM76.7557 13.868C73.7722 13.868 71.5669 11.5915 71.5669 8.81573V8.77869C71.5669 5.98404 73.7907 3.67068 76.7927 3.67068C79.7949 3.67068 82 5.94717 82 8.7416V8.77869C82 11.5545 79.7764 13.868 76.7557 13.868ZM68.7934 13.7387C68.1816 13.7387 67.6628 13.2571 67.6628 12.6281V12.1285C67.0328 13.0538 66.1247 13.8495 64.6051 13.8495C62.4 13.8495 61.1213 12.3691 61.1213 10.0925V4.89208C61.1213 4.2631 61.6216 3.76329 62.2331 3.76329C62.8633 3.76329 63.3637 4.2631 63.3637 4.89208V9.42637C63.3637 10.944 64.1233 11.7951 65.4575 11.7951C66.7547 11.7951 67.6628 10.9071 67.6628 9.38919V4.89208C67.6628 4.2631 68.1631 3.76329 68.7934 3.76329C69.4048 3.76329 69.9236 4.2631 69.9236 4.89208V12.6281C69.9236 13.2386 69.4233 13.7387 68.7934 13.7387ZM40.4153 3.76329C41.0454 3.76329 41.5457 4.2631 41.5457 4.89208V12.6281C41.5457 13.2571 41.0454 13.7387 40.4153 13.7387C39.8038 13.7387 39.3034 13.2571 39.3034 12.6281V4.89208C39.3034 4.2631 39.7852 3.76329 40.4153 3.76329ZM40.4153 2.4678C39.6925 2.4678 39.1368 2.02361 39.1368 1.35732V1.2464C39.1368 0.580156 39.6925 0.154442 40.4153 0.154442C41.1379 0.154442 41.694 0.580156 41.694 1.2464V1.35732C41.694 2.02361 41.1379 2.4678 40.4153 2.4678ZM34.7693 8.7416C34.7693 6.85382 33.435 5.6139 31.9339 5.6139C30.3961 5.6139 29.1173 6.79821 29.1173 8.7416V8.77869C29.1173 10.6665 30.4145 11.9064 31.9339 11.9064C33.435 11.9064 34.7693 10.6476 34.7693 8.77869V8.7416ZM35.8627 13.7387C35.2325 13.7387 34.7321 13.2571 34.7321 12.6281V12.0172C34.0095 13.0353 32.9903 13.8495 31.3966 13.8495C29.0988 13.8495 26.8566 12.0172 26.8566 8.77869V8.7416C26.8566 5.50298 29.0616 3.67068 31.3966 3.67068C33.0088 3.67068 34.028 4.4665 34.7321 5.39189V1.15383C34.7321 0.524632 35.2325 0.0434802 35.8439 0.0434802C36.4742 0.0434802 36.9745 0.524632 36.9745 1.15383V12.6281C36.9745 13.2571 36.4742 13.7387 35.8627 13.7387ZM21.0065 5.50298C19.6353 5.50298 18.6718 6.55763 18.4678 8.07548H23.4897C23.3416 6.63203 22.4892 5.50298 21.0065 5.50298ZM24.6203 9.55589H18.4864C18.7272 11.1477 19.8578 12.0357 21.3032 12.0357C22.2482 12.0357 22.9895 11.7028 23.6196 11.1846C23.7863 11.0548 23.9346 10.981 24.194 10.981C24.6945 10.981 25.0836 11.3698 25.0836 11.8879C25.0836 12.1654 24.9539 12.406 24.787 12.5727C23.8975 13.3683 22.7858 13.868 21.2662 13.868C18.4308 13.868 16.244 11.8136 16.244 8.79712V8.76021C16.244 5.96556 18.227 3.67068 21.0253 3.67068C24.1384 3.67068 25.6765 6.22475 25.6765 8.48246C25.6765 9.1117 25.1948 9.55589 24.6203 9.55589ZM13.7686 13.7387C13.1387 13.7387 12.6382 13.2571 12.6382 12.6281V8.09396C12.6382 6.53915 11.9155 5.70655 10.6555 5.70655C9.43232 5.70655 8.56142 6.55763 8.56142 8.13083V12.6281C8.56142 13.2571 8.06108 13.7387 7.44958 13.7387C6.81941 13.7387 6.3192 13.2571 6.3192 12.6281V8.07548C6.3192 6.55763 5.57796 5.70655 4.33625 5.70655C3.09479 5.70655 2.24235 6.63203 2.24235 8.13083V12.6281C2.24235 13.2571 1.74205 13.7387 1.1118 13.7387C0.500341 13.7387 0 13.2571 0 12.6281V4.89208C0 4.2631 0.481844 3.76329 1.1118 3.76329C1.74205 3.76329 2.24235 4.2631 2.24235 4.89208V5.35475C2.87235 4.48511 3.72475 3.67068 5.22586 3.67068C6.63431 3.67068 7.63481 4.35545 8.15378 5.39189C8.93198 4.35545 9.96987 3.67068 11.4522 3.67068C13.5833 3.67068 14.8804 5.02183 14.8804 7.40919V12.6281C14.8804 13.2571 14.3988 13.7387 13.7686 13.7387Z" fill="#0A0A22"/></svg>`}</div></footer>`:e`<div class="content"><slot></slot></div>`}};t([i({type:String})],d.prototype,"background",void 0),t([i()],d.prototype,"variant",void 0),t([i({type:Boolean,attribute:"show-mediquo-branding"})],d.prototype,"showMediquoBranding",void 0),d=t([a(),o("mq-layout")],d);
@@ -0,0 +1 @@
1
+ import{S as t,p as e,r,s as i,a as n,n as h,i as o,b as u,t as a,c,f as l,d,e as p,g as b,Q as f}from"./query-QJ1INUTG.js";import{s as y}from"./context-request-event-Dfydf1ub.js";class s{constructor(t,e,r,i){if(this.subscribe=!1,this.provided=!1,this.value=void 0,this.t=(t,e)=>{this.unsubscribe&&(this.unsubscribe!==e&&(this.provided=!1,this.unsubscribe()),this.subscribe||this.unsubscribe()),this.value=t,this.host.requestUpdate(),this.provided&&!this.subscribe||(this.provided=!0,this.callback&&this.callback(t,e)),this.unsubscribe=e},this.host=t,void 0!==e.context){const t=e;this.context=t.context,this.callback=t.callback,this.subscribe=t.subscribe??!1}else this.context=e,this.callback=r,this.subscribe=i??!1;this.host.addController(this)}hostConnected(){this.dispatchRequest()}hostDisconnected(){this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=void 0)}dispatchRequest(){this.host.dispatchEvent(new y(this.context,this.host,this.t,this.subscribe))}}function v({context:t,subscribe:e}){return(r,i)=>{"object"==typeof i?i.addInitializer(function(){new s(this,{context:t,callback:t=>{r.set.call(this,t)},subscribe:e})}):r.constructor.addInitializer(r=>{new s(r,{context:t,callback:t=>{r[i]=t},subscribe:e})})}}var R=class extends t{constructor(t,r){super(),this.options=r,this.#t=t,this.#e=null,this.#s=e(),this.bindMethods(),this.setOptions(r)}#t;#r=void 0;#i=void 0;#n=void 0;#h;#o;#s;#e;#u;#a;#c;#l;#d;#p;#b=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#r.addObserver(this),Q(this.#r,this.options)?this.#f():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return m(this.#r,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return m(this.#r,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#v(),this.#R(),this.#r.removeObserver(this)}setOptions(t){const e=this.options,h=this.#r;if(this.options=this.#t.defaultQueryOptions(t),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof r(this.options.enabled,this.#r))throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#Q(),this.#r.setOptions(this.options),e._defaulted&&!i(this.options,e)&&this.#t.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#r,observer:this});const o=this.hasListeners();o&&g(this.#r,h,this.options,e)&&this.#f(),this.updateResult(),!o||this.#r===h&&r(this.options.enabled,this.#r)===r(e.enabled,this.#r)&&n(this.options.staleTime,this.#r)===n(e.staleTime,this.#r)||this.#m();const u=this.#g();!o||this.#r===h&&r(this.options.enabled,this.#r)===r(e.enabled,this.#r)&&u===this.#p||this.#I(u)}getOptimisticResult(t){const e=this.#t.getQueryCache().build(this.#t,t),r=this.createResult(e,t);return function(t,e){if(!i(t.getCurrentResult(),e))return!0;return!1}(this,r)&&(this.#n=r,this.#o=this.options,this.#h=this.#r.state),r}getCurrentResult(){return this.#n}trackResult(t,e){return new Proxy(t,{get:(t,r)=>(this.trackProp(r),e?.(r),"promise"!==r||this.options.experimental_prefetchInRender||"pending"!==this.#s.status||this.#s.reject(new Error("experimental_prefetchInRender feature flag is not enabled")),Reflect.get(t,r))})}trackProp(t){this.#b.add(t)}getCurrentQuery(){return this.#r}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const e=this.#t.defaultQueryOptions(t),r=this.#t.getQueryCache().build(this.#t,e);return r.fetch().then(()=>this.createResult(r,e))}fetch(t){return this.#f({...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#n))}#f(t){this.#Q();let e=this.#r.fetch(this.options,t);return t?.throwOnError||(e=e.catch(h)),e}#m(){this.#v();const t=n(this.options.staleTime,this.#r);if(o||this.#n.isStale||!u(t))return;const e=a(this.#n.dataUpdatedAt,t)+1;this.#l=c.setTimeout(()=>{this.#n.isStale||this.updateResult()},e)}#g(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#r):this.options.refetchInterval)??!1}#I(t){this.#R(),this.#p=t,!o&&!1!==r(this.options.enabled,this.#r)&&u(this.#p)&&0!==this.#p&&(this.#d=c.setInterval(()=>{(this.options.refetchIntervalInBackground||l.isFocused())&&this.#f()},this.#p))}#y(){this.#m(),this.#I(this.#g())}#v(){this.#l&&(c.clearTimeout(this.#l),this.#l=void 0)}#R(){this.#d&&(c.clearInterval(this.#d),this.#d=void 0)}createResult(t,i){const n=this.#r,h=this.options,o=this.#n,u=this.#h,a=this.#o,c=t!==n?t.state:this.#i,{state:l}=t;let b,f={...l},y=!1;if(i._optimisticResults){const e=this.hasListeners(),r=!e&&Q(t,i),o=e&&g(t,n,i,h);(r||o)&&(f={...f,...d(l.data,t.options)}),"isRestoring"===i._optimisticResults&&(f.fetchStatus="idle")}let{error:v,errorUpdatedAt:R,status:m}=f;b=f.data;let w=!1;if(void 0!==i.placeholderData&&void 0===b&&"pending"===m){let t;o?.isPlaceholderData&&i.placeholderData===a?.placeholderData?(t=o.data,w=!0):t="function"==typeof i.placeholderData?i.placeholderData(this.#c?.state.data,this.#c):i.placeholderData,void 0!==t&&(m="success",b=p(o?.data,t,i),y=!0)}if(i.select&&void 0!==b&&!w)if(o&&b===u?.data&&i.select===this.#u)b=this.#a;else try{this.#u=i.select,b=i.select(b),b=p(o?.data,b,i),this.#a=b,this.#e=null}catch(t){this.#e=t}this.#e&&(v=this.#e,b=this.#a,R=Date.now(),m="error");const S="fetching"===f.fetchStatus,O="pending"===m,_="error"===m,C=O&&S,T=void 0!==b,E={status:m,fetchStatus:f.fetchStatus,isPending:O,isSuccess:"success"===m,isError:_,isInitialLoading:C,isLoading:C,data:b,dataUpdatedAt:f.dataUpdatedAt,error:v,errorUpdatedAt:R,failureCount:f.fetchFailureCount,failureReason:f.fetchFailureReason,errorUpdateCount:f.errorUpdateCount,isFetched:f.dataUpdateCount>0||f.errorUpdateCount>0,isFetchedAfterMount:f.dataUpdateCount>c.dataUpdateCount||f.errorUpdateCount>c.errorUpdateCount,isFetching:S,isRefetching:S&&!O,isLoadingError:_&&!T,isPaused:"paused"===f.fetchStatus,isPlaceholderData:y,isRefetchError:_&&T,isStale:I(t,i),refetch:this.refetch,promise:this.#s,isEnabled:!1!==r(i.enabled,t)};if(this.options.experimental_prefetchInRender){const r=t=>{"error"===E.status?t.reject(E.error):void 0!==E.data&&t.resolve(E.data)},i=()=>{const t=this.#s=E.promise=e();r(t)},h=this.#s;switch(h.status){case"pending":t.queryHash===n.queryHash&&r(h);break;case"fulfilled":"error"!==E.status&&E.data===h.value||i();break;case"rejected":"error"===E.status&&E.error===h.reason||i()}}return E}updateResult(){const t=this.#n,e=this.createResult(this.#r,this.options);if(this.#h=this.#r.state,this.#o=this.options,void 0!==this.#h.data&&(this.#c=this.#r),i(e,t))return;this.#n=e;this.#w({listeners:(()=>{if(!t)return!0;const{notifyOnChangeProps:e}=this.options,r="function"==typeof e?e():e;if("all"===r||!r&&!this.#b.size)return!0;const i=new Set(r??this.#b);return this.options.throwOnError&&i.add("error"),Object.keys(this.#n).some(e=>{const r=e;return this.#n[r]!==t[r]&&i.has(r)})})()})}#Q(){const t=this.#t.getQueryCache().build(this.#t,this.options);if(t===this.#r)return;const e=this.#r;this.#r=t,this.#i=t.state,this.hasListeners()&&(e?.removeObserver(this),t.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#w(t){b.batch(()=>{t.listeners&&this.listeners.forEach(t=>{t(this.#n)}),this.#t.getQueryCache().notify({query:this.#r,type:"observerResultsUpdated"})})}};function Q(t,e){return function(t,e){return!1!==r(e.enabled,t)&&void 0===t.state.data&&!("error"===t.state.status&&!1===e.retryOnMount)}(t,e)||void 0!==t.state.data&&m(t,e,e.refetchOnMount)}function m(t,e,i){if(!1!==r(e.enabled,t)&&"static"!==n(e.staleTime,t)){const r="function"==typeof i?i(t):i;return"always"===r||!1!==r&&I(t,e)}return!1}function g(t,e,i,n){return(t!==e||!1===r(n.enabled,t))&&(!i.suspense||"error"!==t.state.status)&&I(t,i)}function I(t,e){return!1!==r(e.enabled,t)&&t.isStaleByTime(n(e.staleTime,t))}Promise.withResolvers||(Promise.withResolvers=function(){let t,e;const r=new this((r,i)=>{t=r,e=i});return{resolve:t,reject:e,promise:r}});var w=class{constructor(t,e,r){this.host=t,this.optionsFn=e,this._queryClient=r,this.whenQueryClient=Promise.withResolvers(),this.whenQueryObserver=Promise.withResolvers(),this.host.addController(this),this.context=new s(this.host,{context:f,subscribe:!0,callback:t=>{t&&(this.queryClient=t)}}),this.optionsFn&&this.observeQuery(this.optionsFn)}set queryClient(t){this._queryClient=t,t&&this.whenQueryClient.resolve(t),this.host.requestUpdate()}get queryClient(){return this._queryClient}async observeQuery(t,e=!0){const r=await this.whenQueryClient.promise,i=await this.getDefaultedOptions("function"==typeof t?t():t);this.queryObserver=new R(r,i),this.result=e?this.queryObserver.getOptimisticResult(i):void 0,this.host.requestUpdate(),this.whenQueryObserver.resolve(this.queryObserver)}async hostUpdate(){if(this.optionsFn){const t=await this.whenQueryObserver.promise,e=await this.getDefaultedOptions(this.optionsFn());t.setOptions(e)}}hostConnected(){this.subscribe()}async subscribe(){const t=await this.whenQueryObserver.promise;this.unsubscribe?.(),this.unsubscribe=t.subscribe(t=>{this.result=t,this.host.requestUpdate()}),t.updateResult(),this.host.requestUpdate()}hostDisconnected(){this.unsubscribe?.(),this.unsubscribe=void 0}async getDefaultedOptions(t){return(await this.whenQueryClient.promise).defaultQueryOptions(t)}render(t){const e=this.result;return"pending"!==e?.status||"idle"!==e?.fetchStatus||e?.data?e?.isPending?t.pending?.()??null:e?.isError?t.error?.(e?.error)??null:e?.isSuccess?t.complete(e?.data):t.initial?.()??null:t.initial?.()??null}},S=class{constructor(t,e){this.host=t,this.options=e,this._isPending=!1,this._isError=!1,this._isSuccess=!1,this._data=void 0,this._error=void 0,this.host.addController(this)}hostConnected(){}hostDisconnected(){}async run(t){this._isPending=!0,this._isError=!1,this._isSuccess=!1,this._data=void 0,this._error=void 0,this.host.requestUpdate();try{const e=await this.options.mutationFn(t);return this._isPending=!1,this._isSuccess=!0,this._data=e,this.host.requestUpdate(),this.options.onSuccess&&await this.options.onSuccess(e,t),this.options.onSettled&&await this.options.onSettled(e,void 0,t),e}catch(e){if(this._isPending=!1,this._isError=!0,this._error=e,this.host.requestUpdate(),this.options.onError&&await this.options.onError(e,t),this.options.onSettled&&await this.options.onSettled(void 0,e,t),this.options.throwOnError)throw e;return}}reset(){this._isPending=!1,this._isError=!1,this._isSuccess=!1,this._data=void 0,this._error=void 0,this.host.requestUpdate()}updateOptions(t){this.options={...this.options,...t}}get isPending(){return this._isPending}get isError(){return this._isError}get isSuccess(){return this._isSuccess}get isIdle(){return!this._isPending&&!this._isError&&!this._isSuccess}get data(){return this._data}get error(){return this._error}};export{S as M,w as Q,v as c,s};
@@ -0,0 +1 @@
1
+ import{L as t}from"./runtime-Bg1WXVCx.js";class LocalizeController{constructor(t){this.__litLocalizeEventHandler=t=>{"ready"===t.detail.status&&this.host.requestUpdate()},this.host=t}hostConnected(){window.addEventListener(t,this.__litLocalizeEventHandler)}hostDisconnected(){window.removeEventListener(t,this.__litLocalizeEventHandler)}}const e=t=>t.addController(new LocalizeController(t)),n=()=>(t,n)=>(t.addInitializer(e),t),r=6048e5,i=864e5,o=6e4,a=36e5,s=Symbol.for("constructDateFrom");function u(t,e){return"function"==typeof t?t(e):t&&"object"==typeof t&&s in t?t[s](e):t instanceof Date?new t.constructor(e):new Date(e)}function c(t,e){return u(e||t,t)}let l={};function d(){return l}function f(t,e){const n=d(),r=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,i=c(t,e?.in),o=i.getDay(),a=(o<r?7:0)+o-r;return i.setDate(i.getDate()-a),i.setHours(0,0,0,0),i}function m(t,...e){const n=u.bind(null,e.find(t=>"object"==typeof t));return e.map(n)}function D(t,e){const n=c(t,e?.in);return n.setHours(0,0,0,0),n}function N(t,e){const n=()=>u(e?.in,NaN),r=function(t){const e={},n=t.split(p.dateTimeDelimiter);let r;if(n.length>2)return e;/:/.test(n[0])?r=n[0]:(e.date=n[0],r=n[1],p.timeZoneDelimiter.test(e.date)&&(e.date=t.split(p.timeZoneDelimiter)[0],r=t.substr(e.date.length,t.length)));if(r){const t=p.timezone.exec(r);t?(e.time=r.replace(t[1],""),e.timezone=t[1]):e.time=r}return e}(t);let i;if(r.date){const t=function(t,e){const n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+e)+"})|(\\d{2}|[+-]\\d{"+(2+e)+"})$)"),r=t.match(n);if(!r)return{year:NaN,restDateString:""};const i=r[1]?parseInt(r[1]):null,o=r[2]?parseInt(r[2]):null;return{year:null===o?i:100*o,restDateString:t.slice((r[1]||r[2]).length)}}(r.date,2);i=function(t,e){if(null===e)return new Date(NaN);const n=t.match(g);if(!n)return new Date(NaN);const r=!!n[4],i=C(n[1]),o=C(n[2])-1,a=C(n[3]),s=C(n[4]),u=C(n[5])-1;if(r)return function(t,e,n){return e>=1&&e<=53&&n>=0&&n<=6}(0,s,u)?function(t,e,n){const r=new Date(0);r.setUTCFullYear(t,0,4);const i=r.getUTCDay()||7,o=7*(e-1)+n+1-i;return r.setUTCDate(r.getUTCDate()+o),r}(e,s,u):new Date(NaN);{const t=new Date(0);return function(t,e,n){return e>=0&&e<=11&&n>=1&&n<=(U[e]||(z(t)?29:28))}(e,o,a)&&function(t,e){return e>=1&&e<=(z(t)?366:365)}(e,i)?(t.setUTCFullYear(e,o,Math.max(i,a)),t):new Date(NaN)}}(t.restDateString,t.year)}if(!i||isNaN(+i))return n();const s=+i;let l,d=0;if(r.time&&(d=function(t){const e=t.match(h);if(!e)return NaN;const n=T(e[1]),r=T(e[2]),i=T(e[3]);if(!function(t,e,n){if(24===t)return 0===e&&0===n;return n>=0&&n<60&&e>=0&&e<60&&t>=0&&t<25}(n,r,i))return NaN;return n*a+r*o+1e3*i}(r.time),isNaN(d)))return n();if(!r.timezone){const t=new Date(s+d),n=c(0,e?.in);return n.setFullYear(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()),n.setHours(t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds()),n}return l=function(t){if("Z"===t)return 0;const e=t.match(w);if(!e)return 0;const n="+"===e[1]?-1:1,r=parseInt(e[2]),i=e[3]&&parseInt(e[3])||0;if(!function(t,e){return e>=0&&e<=59}(0,i))return NaN;return n*(r*a+i*o)}(r.timezone),isNaN(l)?n():c(s+d+l,e?.in)}const p={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},g=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,h=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,w=/^([+-])(\d{2})(?::?(\d{2}))?$/;function C(t){return t?parseInt(t):1}function T(t){return t&&parseFloat(t.replace(",","."))||0}const U=[31,null,31,30,31,30,31,31,30,31,30,31];function z(t){return t%400==0||t%4==0&&t%100!=0}export{f as a,r as b,u as c,d as g,n as l,i as m,m as n,N as p,D as s,c as t};
@@ -0,0 +1 @@
1
+ import{_ as t,t as e}from"./custom-element-DA9Fxvxd.js";import{m as i}from"./runtime-Bg1WXVCx.js";import{l as n}from"./parseISO-jT42c8Ob.js";import{g as o}from"./api-chat-client-BTBtu01T.js";import{a as r}from"./telemetry-client-CKCb9Gnf.js";import{i as a,a as s,E as l,x as p}from"./lit-element-DiWJYFwC.js";import{n as m}from"./property-scuRaFcM.js";import{e as c}from"./class-map-Co76I6aw.js";import{getLocale as h}from"../i18n.js";import{briefcaseIcon as d}from"../ui/icons/briefcase-icon.js";import{calendarIcon as u}from"../ui/icons/calendar-icon.js";import{clockIcon as f}from"../ui/icons/clock-icon.js";import{messageBubbleIcon as v}from"../ui/icons/message-bubble-icon.js";import{phoneIcon as w}from"../ui/icons/phone-icon.js";const y=a`.appointment-details{display:flex;flex-direction:column;gap:var(--sp-3)}.detail-row{display:inline-flex;width:fit-content;align-items:center;gap:var(--sp-2);color:var(--color-neutrals-text-default);font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--text-sm--line-height);font-weight:var(--font-weight-bold)}.detail-row svg{flex-shrink:0}.detail-row span::first-letter{text-transform:uppercase}.detail-row.full-width{width:100%}:host([strike-through]) .detail-row span{text-decoration:line-through}@media (min-width:768px){.appointment-details.wide{flex-direction:row;flex-wrap:wrap}}`;let g=class AppointmentDetails extends s{constructor(){super(...arguments),this.channel=void 0,this.variant="default",this.strikeThrough=!1,this.timezone=void 0,this._appointmentChannelToLabel=t=>{switch(t){case"videocall":return i("Videoconsulta");case"chat":return i("Chat");case"phonecall":return i("Consulta telefónica");default:return""}},this._appointmentChannelToIcon=t=>{switch(t){case"videocall":return d({size:24});case"chat":return v({size:24});case"phonecall":return w({size:24});default:return l}}}static{this.styles=y}render(){const t=h().replace("_","-"),e=new Intl.DateTimeFormat(t,{weekday:"long",year:"numeric",month:"long",day:"numeric",...this.timezone?{timeZone:this.timezone}:{}}),i=new Intl.DateTimeFormat(t,{timeStyle:"short",...this.timezone?{timeZone:this.timezone}:{}}),n=new Date(this.startsAt),a=r(n,this.duration),s=e.format(n),m=i.format(n),d=i.format(a),v=this.timezone?o(this.timezone,n):"";return p`<div class="${c({"appointment-details":!0,wide:"wide"===this.variant})}"><div class="detail-row">${u({size:24})} <span>${s}</span></div><div class="detail-row">${f({size:24})} <span>${m} - ${d}${v?` (${v})`:""}</span></div>${this.channel?p`<div class="detail-row full-width">${this._appointmentChannelToIcon(this.channel)} <span>${this._appointmentChannelToLabel(this.channel)}</span></div>`:l}</div>`}};function j(t){return t/100}function x(t,e){const i=e.replaceAll("_","-");return new Intl.NumberFormat(i,{style:"currency",currency:t.currency}).format(j(t.amount))}function z(t){return null!=t&&t.amount>0}t([m({type:String})],g.prototype,"startsAt",void 0),t([m({type:Number})],g.prototype,"duration",void 0),t([m({type:String})],g.prototype,"channel",void 0),t([m({type:String})],g.prototype,"variant",void 0),t([m({type:Boolean,attribute:"strike-through"})],g.prototype,"strikeThrough",void 0),t([m({type:String})],g.prototype,"timezone",void 0),g=t([n(),e("appointment-details")],g);export{g as A,j as c,x as f,z as h};
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Schedule / payment amounts from the API are in the smallest currency unit
3
+ * (e.g. cents for EUR and USD).
4
+ */
5
+ type PriceInCents = {
6
+ amount: number;
7
+ currency: string;
8
+ };
9
+
10
+ export type { PriceInCents as P };
@@ -0,0 +1,25 @@
1
+ import * as lit_html from 'lit-html';
2
+ import * as lit from 'lit';
3
+ import { LitElement } from 'lit';
4
+ import '../ui/mq-text-button.js';
5
+ import '../ui/mq-avatar.js';
6
+
7
+ declare class ProfessionalOverview extends LitElement {
8
+ static styles: lit.CSSResult;
9
+ name: string;
10
+ specialtyName?: string;
11
+ collegiateNumber?: string;
12
+ description: string;
13
+ languages: Array<string>;
14
+ avatar: string;
15
+ alwaysExpandedOnDesktop: boolean;
16
+ detailsExpanded: boolean;
17
+ render(): lit_html.TemplateResult<1>;
18
+ }
19
+ declare global {
20
+ interface HTMLElementTagNameMap {
21
+ "professional-overview": ProfessionalOverview;
22
+ }
23
+ }
24
+
25
+ export { ProfessionalOverview as P };
@@ -0,0 +1 @@
1
+ import{f as t,u as e}from"./lit-element-DiWJYFwC.js";const r={attribute:!0,type:String,converter:e,reflect:!1,hasChanged:t},o=(t=r,e,o)=>{const{kind:s,metadata:n}=o;let a=globalThis.litPropertyMetadata.get(n);if(void 0===a&&globalThis.litPropertyMetadata.set(n,a=new Map),"setter"===s&&((t=Object.create(t)).wrapped=!0),a.set(o.name,t),"accessor"===s){const{name:r}=o;return{set(o){const s=e.get.call(this);e.set.call(this,o),this.requestUpdate(r,s,t)},init(e){return void 0!==e&&this.C(r,void 0,t,e),e}}}if("setter"===s){const{name:r}=o;return function(o){const s=this[r];e.call(this,o),this.requestUpdate(r,s,t)}}throw Error("Unsupported decorator location: "+s)};function s(t){return(e,r)=>"object"==typeof r?o(t,e,r):((t,e,r)=>{const o=e.hasOwnProperty(r);return e.constructor.createProperty(r,t),o?Object.getOwnPropertyDescriptor(e,r):void 0})(t,e,r)}export{s as n};
@@ -0,0 +1 @@
1
+ import{i as t}from"./context-provider-CiMFpvDA.js";function e({context:e}){return(r,n)=>{const s=new WeakMap;if("object"==typeof n)return{get(){return r.get.call(this)},set(t){return s.get(this).setValue(t),r.set.call(this,t)},init(r){return s.set(this,new t(this,{context:e,initialValue:r})),r}};{r.constructor.addInitializer(r=>{s.set(r,new t(r,{context:e}))});const i=Object.getOwnPropertyDescriptor(r,n);let o;if(void 0===i){const t=new WeakMap;o={get(){return t.get(this)},set(e){s.get(this).setValue(e),t.set(this,e)},configurable:!0,enumerable:!0}}else{const t=i.set;o={...i,set(e){s.get(this).setValue(e),t?.call(this,e)}}}return void Object.defineProperty(r,n,o)}}}export{e};
@@ -0,0 +1 @@
1
+ import{s as a}from"./runtime-Bg1WXVCx.js";const e={s0043fc30b467bc43:"Ocultar detalhes",s00c8bf60a179e056:"O Google Pay não está disponível. Tente com cartão ou outro método de pagamento.",s035706a468d0c40b:"Viernes",s0520ac0a7da193d4:"Não foi possível validar o código. Tente novamente.",s071bd6bbf6c08f34:"Carregando",s08404262212123ef:"Como posso ajudar-te?",s08fe5307b5987c42:"De",s08fe5907b5988674:"Do",s09165307b5ad0e23:"Mi",s09165b07b5ad1bbb:"Ma",s09195307b5af43fa:"Lu",s092e4f07b5c19938:"Ju",s093b3307b5cbf400:"Vi",s09462f07b5d5f4b9:"Sa",s09528d5c26b62213:"Jueves",s0aaec824f7c6b501:"Enviar mensagem",s0b0085a15991b134:"Reconectando...",s0b0955208f737a86:"O arquivo excede o tamanho máximo permitido",s0df1cead9c1f2a72:"Ver toda a documentação",s0eb69642cbc19745:"Esta consulta já passou, pelo que não pode ser modificada.",s0fcbdef9dc977231:"Ocorreu um erro ao carregar a página. Por favor, tente novamente ou contacte o suporte.",s11605fc03de64e14:"Escreve aqui...",s12f171594a5379d2:"Tem certeza que deseja cancelar esta consulta?",s132e84f499a23985:"Não há horários disponíveis atualmente",s13317a76a9ed776e:"Repetir",s142eba34d93fe59e:"Descrição",s146ca1354435fc45:a`Resultados de consultas de ${0} para ${1}`,s1513f3687bfcac96:"Domingo",s1a0efa6ac51e8a85:"Página anterior",s1a684f249c3b5e88:"Ver consultas de especialidades digitais",s1d318e9d0ccba86b:"Chat",s1ee6d7e6d04932a4:"O email não é válido",s1fe8bb7f6ae07f9b:"Não tens consultas no histórico",s219b833c5ca095b3:"Aqui você verá todas as consultas que você teve. Pode acessar os documentos de cada consulta e reagendar uma consulta se necessário.",s22cf91a84fba4c4e:"Quando você agenda uma consulta, aparecerá aqui para que você possa consultá-la, modificá-la ou cancelá-la.",s255bf4de23c83482:"Condições de reserva:",s256189bafbcd2e34:"O telefone não é válido",s27e462e9f48eb3a6:"Documentação",s2a1d212b3cb5c1a1:"Pode chatear com o profissional até 48 horas após a sua consulta",s2aab27b26a86469f:"Motivo da consulta",s2b9bc77fa535f9e4:"política de privacidade",s2b9fde9a5739d2a0:"Nome",s2bb20b2162a18938:"Por que precisa da consulta?",s2d6183fa992e10e9:"Este profissional não tem horários disponíveis",s2ebd846b5a30f9d1:"Lamentamos, não foi possível repetir a sua consulta. Por favor, contacte o suporte.",s30c9095a2e07d929:"Sala de espera",s31219c9bdeb7bc3e:"Continuar",s337e34cd11150eb6:"Ver as minhas consultas",s346d488070fe4cc8:"Pedir consulta",s3944638e633d719a:"Consulta",s3b77baf6a4864231:"Erro desconhecido",s3bd87e3e21b07900:"Espere enquanto a conexão é restabelecida",s3f55bc3bfec41a5d:"Anexar arquivos",s4177fe7f5d70fd33:"Voltar",s41826ac201c3cd85:"Não foi possível abrir o chat com suporte",s4364d4be7641e15f:"Confirmar consulta",s43e5edcc8801e9a4:"Perfil de profesional",s4813ee5d305442e5:"Parece que não encontramos-te na hora da sua consulta. Pode programar outra consulta para resolver as suas dúvidas.",s49683919cdaeca83:"Hoje",s4a061033615c8016:"Documentos",s4a8494821c987a17:"Relatório",s4a8f1fcd3f5e5952:"Ainda não é hora!",s4d20157b5a655e70:"Este horário não está disponível. Por favor, selecione outro.",s4de424f531892818:"Ir para videoconferência",s4e68109a2a1f3197:"Meus consultas de especialidades digitais",s51c461d40f9fb865:"Seleciona o seu especialista",s53d957dda6cc200b:"Serviço e plataforma prestados por",s53e2497bf900c7fd:"Não tens consultas próximas",s5558a2e389d04223:"Modificar",s556822ae58338252:"de mediQuo",s55c5126e99bae190:"Buscar disponibilidade",s563dcbfd432eb18f:"Cancelar consulta",s565e4739859aa5e3:"Aceda ao nosso serviço",s57e65113a89160cf:"Modalidade da consulta",s5eef402d73eecbdc:"Anexar arquivo",s5f7956aacb5c6ca2:"A verificar Google Pay…",s60cc7f0f9b185dee:"Documentação mais recente",s631f73a10d156b22:"Consulta expirada",s63f7af84683dd7c3:"Esta consulta já não pode ser modificada ou cancelada: o tempo mínimo requerido antes do início já passou.",s6431bc5f3d97fa7b:"Aqui você verá suas prescrições e relatórios médicos. Consulte seu profissional de saúde para receber documentação.",s64b78a5026d4ce8d:"Não há horários disponíveis",s65bedc0e516977d9:"Sábado",s66bd313462d604c0:"Atualizamos a nossa política de privacidade e termos e condições",s679be6312356a21c:"Agende uma consulta médica quando você precisar. Aqui você verá todos os detalhes e poderá gerenciar as suas consultas próximas.",s67f30f9f4ea881f3:"Este código não é válido.",s6a50fd7f52263b04:"Não foi possível voltar à sala de espera",s6b1c4fb634461e7c:"Mês anterior",s6b6fa877ec1e6968:"Chatear com o profissional",s6c81d42670932f93:"Atualizar",s6e2423db05f36856:"Pedido de consulta",s6ecdc22accc55af7:"Videochamada",s70258a0040dd9e19:"Voltar à sala de espera",s718177442a7447b2:"Consulta com um especialista em menos de 72 horas",s733b3bf647b7b0fa:"Aceita os permissões de câmara e microfone",s73cad78d8a3c39c2:"Prescrição",s74d7a739b6ab651d:"Histórico",s7507a60673e2911a:"e os",s757fef148e0c94c6:"Disponibilidade",s765afe147d83cf2b:"quando precisar.",s77320b73fdd9cc40:"Sair",s775370fdb0af1546:"Data de nascimento",s77c2b712a9813175:"Pedir uma nova consulta",s77f8e4bee88d44aa:a`${0} de ${1}`,s7907902da8916212:"O profissional vai te ligar no número que indicas neste campo.",s7a710e775e3a5bf3:"termos e condições",s7aa3cd94d51825fc:"Não há profissionais disponíveis para a especialidade selecionada. Por favor, tente novamente em outro momento ou selecione outra especialidade.",s7af26e861bb6f905:"Falta o identificador de gateway do Google Pay",s7fd8da9511b66dd4:"Pode anexar imagens ou documentação adicional (análises, resultados de testes, etc.) para que o médico avalie",s83c6ce869a2bbaa7:"(1 é muito mau, 5 é excelente)",s8447efe79d058943:"Valor pago",s8581adc786786298:"Formato de arquivo não suportado",s862ca980b16911d0:"Chatear com o profissional",s8c18dbf02590a72e:"Código promocional aplicado",s8cce15c931017937:"Voltar ao início",s8e7a6119525dc7c9:a`Lamentamos, como faltam menos de ${0} minutos para a sua consulta não a podemos modificar.`,s8ffad4a9921aac18:"Consultas de especialidades digitais",s92f34d487d1d0355:"Promoção",s94626d2ffd70f075:"Código promocional validado com sucesso",s950a7fcbc8aab185:"Lê a",s9536695467bcf9c4:"Esta consulta já passou, pelo que não pode ser cancelada.",s96ceb408923a7ab1:a`Nº COL. ${0}`,s979ee14368bf1505:"Fala comigo",s9802dd10b2c2f760:"Enviar",s99898f495319cd49:"Este mensagem foi eliminado",s9c309154722f8e06:"Carregando portal de pagamento",s9cabdaf42f04afee:"Introduza o código",s9cbf16425cadadb1:"Por favor, tente novamente mais tarde.",s9d22fa67943fdc4c:"Consulta telefónica",sa00e726e1e7e46a9:"Adicionar código promocional",sa27f38ad9db3bc4f:"Assistente comercial",sa2fe3f3b565f15f4:"Cancelar",sa4186d5e26cab4bb:"Página não encontrada",sa497ebaaeb251035:"Repetir consulta",sa7de4334479674c6:"Modificar consulta",sa82bc40dafbe3256:a`Consulta agendada de ${0}`,sa83d79734eb60ee3:"Aplicar",sa87d2c48a52b2617:"Você não tem documentação",sab964c37a0934399:"Não foi possível carregar o Google Pay. Verifique a configuração do site e tente novamente.",sac2728ace11e5f4b:"Especialidade*",sadc5ede25dd6e126:"O profissional vai te enviar uma mensagem para que possamos协调ar a consulta. Certifique-se de ter boa cobertura e poder atender no horário escolhido.",sae8f7ac5552b2af1:"Quando faltarem 10 minutos para a sua consulta, poderás aceder à videoconferência",saf63dc4c8601ec8c:"a",safe333e385f371ff:"Verificando seu pagamento...",saff3019e8a8c5f98:"Lunes",sb01184796ad3832e:"Como correu a tua consulta?",sb410a3509b92a90c:"Tens algum comentário sobre a consulta?",sb49dc4c5edae9d4e:"Avaliação da consulta",sb5387e21dc21422b:"Consulta modificada",sb5b37b884b43f165:a`Para: ${0}`,sb5bab542835ac67e:"Para falar com os nossos médicos precisamos que aceite os nossos termos e condições.",sb621415007181c43:"Mês seguinte",sb73394814d122852:"Se o seu médico gerou alguma documentação, poderás ver e descarregar aqui, na secção de documentação, o seu e-mail ou o chat.",sb882f28c9b20052e:"Consulta confirmada",sba98cf8b2a7dfca4:"Ontem",sbbee712c4900abc2:"Não conseguimos iniciar o pagamento",sbc0be90393c87447:a`Resumo da consulta para ${0}`,sbcf081de432a2172:"Ver detalhes",sbcfc05bdb868b383:"Prescrição",sbd07d1f779e482ae:"Não conseguimos confirmar seu pagamento",sbd9803cceb34513a:"Iniciar chat com assistente comercial",sbda1cf7b293e17d2:"Carregar arquivo",sbf384382fcf7a1e3:"Meus documentos",sc27e7c4850fc5a34:a`Lamentamos, como faltam menos de ${0} horas para a sua consulta não a podemos cancelar.`,sc2a6e8255b23ee36:"Controles",sc3c7734c15d2a045:"Conta-nos como foi o atendimento ou se tiveste algum problema com a videochamada…",sc43929cc6582a185:"Ver agenda completa",sc4edf6a4e0157d4e:"Consultas próximas",sc7cf2be40c8614fa:a`Lamentamos, como faltam menos de ${0} minutos para a sua consulta não a podemos cancelar.`,sc9f22b3630cf9bf8:"Cancelar",sca0e87aae6bde276:"Ocorreu algum problema?",sca4bd395e3148194:"Confirmar cancelação",sca90bc30758f9082:"A página que estás a procurar foi removida, renomeada ou pode não existir.",sca932c6c2f3f0459:"Eu li e aceitei a",scbe4c6673872bda5:"Telefone",scdaca37ba2f60707:"Aceda, modifique ou cancele as suas consultas de especialidades digitais",sce29e337ebd75277:"Chat com suporte",scf469737e1670fd4:"Página seguinte",scfc7f5c5f41936dc:"Meus consultas",sd011d7fdf458cf1e:"Tem certeza que deseja cancelar esta consulta?",sd1f44f1a8bc20e67:"Email",sd24922a2783f286e:"Miércoles",sd2a8fc66c53c1a27:"Saltar",sd3f7579076c6611c:"Parece que rejeitou os permissões necessárias para entrar na videoconferência. Edita os permissões no seu navegador para entrar. Uma vez concedidos, deves atualizar esta tela.",sd4beaeb9a1b1fed5:"Datas anteriores",sd812eb30f385776d:"Completa o seu perfil",sd853d3bcf5341b59:"Ver mais",sd9eaf9ee20de20e8:"Confirmar anulação",sda962b28e9110c82:"Realiza a busca no seu perfil médico digital",sdb7004e477873574:"Consulta cancelada com sucesso",sdd963b1b2ce9a1f5:a`O profissional vai te ligar no ${0} no horário selecionado. Certifique-se de ter boa cobertura e poder atender no horário escolhido.`,sde96f90d22013a39:"Tem certeza que deseja anular esta consulta? O valor pago será devolvido em um prazo de 5-10 dias úteis.",sde993da26c048f19:"Traumatologia, ginecologia, endocrinologia, digestivo ou psiquiatria",sdee32ae81ca0d6d8:"Adicionar ao calendário",se00b081edccfae39:"Datas seguintes",se07ea9607704c5ad:"Alterar código",se090f7226b372a4a:"Se a consulta não pôde ser realizada, podes",se0c7cc77f86aa8a0:"Apelidos",se17f2b402ecea2e1:"Valor a devolver",se18fa3ef98e155de:"A preparar Google Pay…",se1cce5af3e9bb6ee:"Ocorreu um erro ao enviar o arquivo",se1cf783f86c53031:"Martes",se45e6f6f3428ad50:a`Link para a consulta: ${0}`,se5a09223256f98db:"Este campo é obrigatório",se5f9264155b99909:"Ocorreu um problema ao verificar o estado do seu pagamento. Por favor, contate o suporte se o pagamento foi realizado.",se92e438da4e7099f:a`Lamentamos, como faltam menos de ${0} horas para a sua consulta não a podemos modificar.`,sea11fd8a12559bc5:"Consulta prévia:",seb6739450e8d9c8d:"Tem certeza que deseja cancelar esta consulta? Você receberá o valor pago em um prazo de 5-10 dias úteis.",seb850e89f9ff58e8:"Próxima consulta",sed836a96c3b5d523:"Portal de pagamento",sed8ec5e3c64fa25d:"Total",sed97e90642983578:"Continuar ao pagamento",sedb2092dda465ea1:"DNI/NIE",sedbca9676f07a51f:"Modalidade da consulta*",see7c0a7b5b6ebbc5:"Utiliza o chat para enviar o motivo da consulta, documentos ou imagens",seed79c6614f243b4:"Consulta digital especialidades",sefc0dd68776c9466:"Questionário pré-consulta",sf0638d3fc50964d2:"Escolhe outra data",sf0695a0a125ae748:"Confirmar",sf09d5e51b63f2b7d:"Pagar com Google Pay",sf199b210440b7c5f:"Consulta finalizada",sf2d65c6d416609f3:"Voltar ao início de especialidades digitais",sf3457daf057bff15:"voltar à sala de espera.",sf484a0e20a7829ac:"Nós enviaremos um e-mail para o e-mail indicado quando for a hora de conectar-se à videoconferência. Certifique-se de ter uma boa conexão com a internet e um dispositivo com câmara e microfone.",sf48d12e7ae207023:"Especialidade",sf5258cfb2fa10bdc:"Aguarde ser atendido sem sair desta tela",sf9705e1c4e82c017:"Não foi possível enviar o questionário",sfa6bc28a7faedc92:"Nova consulta de especialidades digitais",sfc63af0362cfb78b:"Falta o identificador de comerciante do Google Pay",sfd51ca4e1b145054:"Não foi possível reservar este horário. Por favor, selecione outro.",sff337500b69abf7f:"O médico está a terminar a sua consulta. Atualiza em alguns minutos para ver se tem documentação.",sffbc330c8a19f838:"Ver menos",sc6a6d42245892254:"Falta el identificador de comercio de Apple Pay",s3da77e69fe62cb2a:"No se ha podido cargar Apple Pay. Comprueba la configuración del sitio e inténtalo de nuevo.",se1dd5d211b5b00e4:"Apple Pay no está disponible",s7e8b7a5acbdf83ed:"Preparando Apple Pay…",sc8271ba819299b59:"Comprobando Apple Pay…",s57e95bc3afddfeb0:"Para pagar con Apple Pay, escanea el código QR con tu iPhone (iOS 18 o posterior) y confirma el pago.",sf32cd04f9a848ee2:"Pagar con Apple Pay"};export{e as templates};
@@ -0,0 +1 @@
1
+ function r(r,e){return(e,n,t)=>{return(u={get(){return e=this,e.renderRoot?.querySelector(r)??null;var e}}).configurable=!0,u.enumerable=!0,u;var u}}export{r as e};