@blackcode_sa/metaestetics-api 1.7.47 → 1.8.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 (83) hide show
  1. package/dist/admin/index.d.mts +1815 -1667
  2. package/dist/admin/index.d.ts +1815 -1667
  3. package/dist/admin/index.js +6993 -6535
  4. package/dist/admin/index.mjs +6991 -6532
  5. package/dist/backoffice/index.d.mts +1418 -1418
  6. package/dist/backoffice/index.d.ts +1418 -1418
  7. package/dist/backoffice/index.js +1464 -1454
  8. package/dist/backoffice/index.mjs +1509 -1499
  9. package/dist/index.d.mts +16217 -14582
  10. package/dist/index.d.ts +16217 -14582
  11. package/dist/index.js +11419 -13806
  12. package/dist/index.mjs +12081 -14593
  13. package/package.json +5 -5
  14. package/src/admin/aggregation/appointment/index.ts +1 -0
  15. package/src/admin/aggregation/clinic/index.ts +1 -0
  16. package/src/admin/aggregation/forms/index.ts +1 -0
  17. package/src/admin/aggregation/index.ts +8 -0
  18. package/src/admin/aggregation/patient/index.ts +1 -0
  19. package/src/admin/aggregation/practitioner/index.ts +1 -0
  20. package/src/admin/aggregation/practitioner-invite/index.ts +1 -0
  21. package/src/admin/aggregation/procedure/index.ts +1 -0
  22. package/src/admin/aggregation/reviews/index.ts +1 -0
  23. package/src/admin/booking/index.ts +1 -1
  24. package/src/admin/calendar/index.ts +1 -0
  25. package/src/admin/documentation-templates/index.ts +1 -0
  26. package/src/admin/free-consultation/index.ts +1 -0
  27. package/src/admin/index.ts +23 -118
  28. package/src/admin/mailing/appointment/index.ts +1 -0
  29. package/src/admin/mailing/index.ts +1 -2
  30. package/src/admin/mailing/practitionerInvite/index.ts +1 -0
  31. package/src/admin/notifications/index.ts +1 -0
  32. package/src/admin/requirements/index.ts +1 -0
  33. package/src/admin/users/index.ts +1 -0
  34. package/src/admin/users/user-profile.admin.ts +1 -0
  35. package/src/backoffice/constants/index.ts +1 -0
  36. package/src/backoffice/errors/index.ts +1 -0
  37. package/src/backoffice/index.ts +5 -14
  38. package/src/backoffice/services/index.ts +7 -0
  39. package/src/backoffice/validations/index.ts +1 -0
  40. package/src/index.backup.ts +407 -0
  41. package/src/index.ts +5 -406
  42. package/src/services/PATIENTAUTH.MD +197 -0
  43. package/src/services/__tests__/auth/auth.setup.ts +2 -2
  44. package/src/services/__tests__/auth.service.test.ts +1 -1
  45. package/src/services/__tests__/user.service.test.ts +1 -1
  46. package/src/services/appointment/index.ts +1 -2
  47. package/src/services/{auth.service.ts → auth/auth.service.ts} +36 -22
  48. package/src/services/{auth.v2.service.ts → auth/auth.v2.service.ts} +17 -17
  49. package/src/services/auth/index.ts +2 -16
  50. package/src/services/calendar/calendar-refactored.service.ts +1 -1
  51. package/src/services/calendar/index.ts +5 -0
  52. package/src/services/clinic/index.ts +4 -0
  53. package/src/services/index.ts +12 -0
  54. package/src/services/media/index.ts +1 -0
  55. package/src/services/notifications/index.ts +1 -0
  56. package/src/services/patient/README.md +48 -0
  57. package/src/services/patient/To-Do.md +43 -0
  58. package/src/services/patient/index.ts +2 -0
  59. package/src/services/patient/patient.service.ts +289 -34
  60. package/src/services/patient/utils/index.ts +9 -0
  61. package/src/services/patient/utils/medical.utils.ts +114 -157
  62. package/src/services/patient/utils/profile.utils.ts +9 -0
  63. package/src/services/patient/utils/sensitive.utils.ts +79 -14
  64. package/src/services/patient/utils/token.utils.ts +211 -0
  65. package/src/services/practitioner/index.ts +1 -0
  66. package/src/services/procedure/index.ts +1 -0
  67. package/src/services/reviews/index.ts +1 -0
  68. package/src/services/user/index.ts +1 -0
  69. package/src/services/{user.service.ts → user/user.service.ts} +61 -12
  70. package/src/services/{user.v2.service.ts → user/user.v2.service.ts} +12 -12
  71. package/src/types/index.ts +42 -42
  72. package/src/types/patient/index.ts +33 -6
  73. package/src/types/patient/token.types.ts +61 -0
  74. package/src/types/user/index.ts +38 -0
  75. package/src/utils/index.ts +1 -0
  76. package/src/validations/calendar.schema.ts +6 -45
  77. package/src/validations/documentation-templates/index.ts +1 -0
  78. package/src/validations/documentation-templates.schema.ts +1 -1
  79. package/src/validations/index.ts +20 -0
  80. package/src/validations/patient/token.schema.ts +29 -0
  81. package/src/validations/patient.schema.ts +23 -6
  82. package/src/validations/profile-info.schema.ts +1 -1
  83. package/src/validations/schemas.ts +24 -24
@@ -0,0 +1,407 @@
1
+ import { UserRole } from "./types";
2
+ import { Category } from "./backoffice/types/category.types";
3
+ import {
4
+ createAppointmentSchema as appointmentCreateSchema,
5
+ updateAppointmentSchema as appointmentUpdateSchema,
6
+ searchAppointmentsSchema,
7
+ } from "./validations/appointment.schema";
8
+
9
+ // Firebase
10
+ export {
11
+ initializeFirebase,
12
+ getFirebaseInstance,
13
+ getFirebaseAuth,
14
+ getFirebaseDB,
15
+ getFirebaseApp,
16
+ } from "./config/firebase";
17
+
18
+ // Services
19
+ export { AuthService } from "./services/auth/auth.service";
20
+ export { UserService } from "./services/user/user.service";
21
+ export { NotificationService } from "./services/notifications/notification.service";
22
+ export { PatientService } from "./services/patient/patient.service";
23
+ export { PractitionerService } from "./services/practitioner/practitioner.service";
24
+ export { ProcedureService } from "./services/procedure/procedure.service";
25
+ export { ClinicService } from "./services/clinic/clinic.service";
26
+ export { ClinicAdminService } from "./services/clinic/clinic-admin.service";
27
+ export { ClinicGroupService } from "./services/clinic/clinic-group.service";
28
+ export { PractitionerInviteService } from "./services/clinic/practitioner-invite.service";
29
+ export {
30
+ DocumentationTemplateService,
31
+ FilledDocumentService,
32
+ } from "./services/documentation-templates";
33
+ export { CalendarServiceV2 } from "./services/calendar/calendar-refactored.service";
34
+ export { CalendarServiceV3 } from "./services/calendar/calendar.v3.service";
35
+ export { SyncedCalendarsService } from "./services/calendar/synced-calendars.service";
36
+ export { ReviewService } from "./services/reviews/reviews.service";
37
+ export { AppointmentService } from "./services/appointment/appointment.service";
38
+ export { PatientRequirementsService } from "./services/patient/patientRequirements.service";
39
+ export { MediaService } from "./services/media/media.service";
40
+
41
+ // Backoffice services
42
+ export { BrandService } from "./backoffice/services/brand.service";
43
+ export { CategoryService } from "./backoffice/services/category.service";
44
+ export { SubcategoryService } from "./backoffice/services/subcategory.service";
45
+ export { TechnologyService } from "./backoffice/services/technology.service";
46
+ export { ProductService } from "./backoffice/services/product.service";
47
+
48
+ // Types
49
+ export type { User, UserRole, CreateUserData, FirebaseUser } from "./types";
50
+ export { AUTH_ERRORS } from "./errors/auth.errors";
51
+ export { USER_ERRORS } from "./errors/user.errors";
52
+ export type { AuthError } from "./errors/auth.errors";
53
+ export * from "./validations/schemas";
54
+ export * from "./validations/notification.schema";
55
+ export * from "./validations/patient.schema";
56
+ export * from "./validations/practitioner.schema";
57
+ export * from "./validations/clinic.schema";
58
+ export * from "./validations/patient/medical-info.schema";
59
+ export * from "./validations/documentation-templates.schema";
60
+ export * from "./validations/calendar.schema";
61
+ export {
62
+ practitionerProfileInfoSchema,
63
+ patientProfileInfoSchema,
64
+ } from "./validations/profile-info.schema";
65
+ export { FirebaseErrorCode } from "./errors/firebase.errors";
66
+
67
+ // Appointment schemas
68
+ export {
69
+ appointmentCreateSchema as createAppointmentSchema,
70
+ appointmentUpdateSchema as updateAppointmentSchema,
71
+ searchAppointmentsSchema,
72
+ };
73
+
74
+ // Notification types
75
+ export type {
76
+ Notification,
77
+ BaseNotification,
78
+ PreRequirementNotification,
79
+ PostRequirementNotification,
80
+ AppointmentReminderNotification,
81
+ } from "./types/notifications";
82
+ export { NotificationType, NotificationStatus } from "./types/notifications";
83
+
84
+ // Patient types
85
+ export type {
86
+ PatientProfile,
87
+ CreatePatientProfileData,
88
+ UpdatePatientProfileData,
89
+ PatientLocationInfo,
90
+ CreatePatientLocationInfoData,
91
+ UpdatePatientLocationInfoData,
92
+ AddressData,
93
+ LocationData,
94
+ GamificationInfo,
95
+ EmergencyContact,
96
+ PatientDoctor,
97
+ PatientSensitiveInfo,
98
+ CreatePatientSensitiveInfoData,
99
+ UpdatePatientSensitiveInfoData,
100
+ PatientClinic,
101
+ PatientMedicalInfo,
102
+ CreatePatientMedicalInfoData,
103
+ UpdatePatientMedicalInfoData,
104
+ VitalStats,
105
+ UpdateVitalStatsData,
106
+ AddAllergyData,
107
+ UpdateAllergyData,
108
+ AddBlockingConditionData,
109
+ UpdateBlockingConditionData,
110
+ AddContraindicationData,
111
+ UpdateContraindicationData,
112
+ AddMedicationData,
113
+ UpdateMedicationData,
114
+ Allergy,
115
+ PatientProfileComplete,
116
+ SearchPatientsParams,
117
+ RequesterInfo,
118
+ PatientProfileForDoctor,
119
+ CreateManualPatientData,
120
+ } from "./types/patient";
121
+ export {
122
+ Gender,
123
+ PATIENTS_COLLECTION,
124
+ PATIENT_MEDICAL_INFO_COLLECTION,
125
+ PATIENT_SENSITIVE_INFO_COLLECTION,
126
+ PATIENT_LOCATION_INFO_COLLECTION,
127
+ PATIENT_MEDICAL_HISTORY_COLLECTION,
128
+ PATIENT_APPOINTMENTS_COLLECTION,
129
+ } from "./types/patient";
130
+
131
+ // Appointment types
132
+ export type {
133
+ Appointment,
134
+ CreateAppointmentData,
135
+ CreateAppointmentHttpData,
136
+ UpdateAppointmentData,
137
+ SearchAppointmentsParams,
138
+ AppointmentMetadata,
139
+ BeforeAfterPerZone,
140
+ BillingPerZone,
141
+ FinalBilling,
142
+ } from "./types/appointment";
143
+ export {
144
+ AppointmentStatus,
145
+ PaymentStatus,
146
+ APPOINTMENTS_COLLECTION,
147
+ } from "./types/appointment";
148
+
149
+ // Allergy tipovi
150
+ export type {
151
+ AllergyTypeWithSubtype,
152
+ AllergySubtype,
153
+ } from "./types/patient/allergies";
154
+
155
+ export {
156
+ AllergyType,
157
+ MedicationAllergySubtype,
158
+ FoodAllergySubtype,
159
+ EnvironmentalAllergySubtype,
160
+ CosmeticAllergySubtype,
161
+ } from "./types/patient/allergies";
162
+
163
+ // Practitioner types
164
+ export type {
165
+ Practitioner,
166
+ PractitionerBasicInfo,
167
+ PractitionerCertification,
168
+ CreatePractitionerData,
169
+ UpdatePractitionerData,
170
+ PractitionerClinicProcedures,
171
+ PractitionerWorkingHours,
172
+ PractitionerClinicWorkingHours,
173
+ CreateDraftPractitionerData,
174
+ PractitionerToken,
175
+ CreatePractitionerTokenData,
176
+ } from "./types/practitioner";
177
+ export {
178
+ PRACTITIONERS_COLLECTION,
179
+ REGISTER_TOKENS_COLLECTION,
180
+ PractitionerStatus,
181
+ PractitionerTokenStatus,
182
+ } from "./types/practitioner";
183
+
184
+ // Clinic types
185
+ export type {
186
+ Clinic,
187
+ ClinicGroup,
188
+ ClinicAdmin,
189
+ CreateClinicData,
190
+ UpdateClinicData,
191
+ CreateClinicGroupData,
192
+ UpdateClinicGroupData,
193
+ CreateClinicAdminData,
194
+ UpdateClinicAdminData,
195
+ ClinicLocation,
196
+ ClinicContactInfo,
197
+ WorkingHours,
198
+ ClinicTags,
199
+ ClinicAdminSignupData,
200
+ ContactPerson,
201
+ AdminToken,
202
+ AdminInfo,
203
+ CreateAdminTokenData,
204
+ DoctorInfo,
205
+ CreateDefaultClinicGroupData,
206
+ ClinicGroupSetupData,
207
+ ClinicBranchSetupData,
208
+ PractitionerInvite,
209
+ CreatePractitionerInviteData,
210
+ UpdatePractitionerInviteData,
211
+ PractitionerInviteFilters,
212
+ ProposedWorkingHours,
213
+ } from "./types/clinic";
214
+ export {
215
+ CLINICS_COLLECTION,
216
+ CLINIC_GROUPS_COLLECTION,
217
+ CLINIC_ADMINS_COLLECTION,
218
+ PRACTITIONER_INVITES_COLLECTION,
219
+ PracticeType,
220
+ Language,
221
+ ClinicTag,
222
+ ClinicPhotoTag,
223
+ AdminTokenStatus,
224
+ SubscriptionModel,
225
+ PractitionerInviteStatus,
226
+ } from "./types/clinic";
227
+
228
+ // Profile info types
229
+ export type {
230
+ ClinicInfo,
231
+ PractitionerProfileInfo,
232
+ PatientProfileInfo,
233
+ } from "./types/profile";
234
+
235
+ // Calendar types
236
+ export type {
237
+ CalendarEvent,
238
+ CalendarEventTime,
239
+ CreateCalendarEventData,
240
+ UpdateCalendarEventData,
241
+ TimeSlot,
242
+ ProcedureInfo,
243
+ ProcedureCategorization,
244
+ SyncedCalendarEvent,
245
+ CreateAppointmentParams,
246
+ UpdateAppointmentParams,
247
+ CreateBlockingEventParams,
248
+ UpdateBlockingEventParams,
249
+ } from "./types/calendar";
250
+
251
+ export {
252
+ CalendarEventStatus,
253
+ CalendarEventType,
254
+ CalendarSyncStatus,
255
+ SearchLocationEnum,
256
+ DateRange,
257
+ SearchCalendarEventsParams,
258
+ CALENDAR_COLLECTION,
259
+ } from "./types/calendar";
260
+
261
+ // Synced calendar types
262
+ export type {
263
+ SyncedCalendar,
264
+ CreateSyncedCalendarData,
265
+ UpdateSyncedCalendarData,
266
+ } from "./types/calendar/synced-calendar.types";
267
+
268
+ export {
269
+ SyncedCalendarProvider,
270
+ SYNCED_CALENDARS_COLLECTION,
271
+ } from "./types/calendar/synced-calendar.types";
272
+
273
+ // Certification types
274
+
275
+ // Brand types
276
+ export type { Brand } from "./backoffice/types/brand.types";
277
+
278
+ // Category types
279
+ export type { Category } from "./backoffice/types/category.types";
280
+
281
+ // Product types
282
+ export type { Product } from "./backoffice/types/product.types";
283
+
284
+ // Requirement types
285
+ export type { Requirement } from "./backoffice/types/requirement.types";
286
+
287
+ // Subcategory types
288
+ export type { Subcategory } from "./backoffice/types/subcategory.types";
289
+
290
+ // Technology types
291
+ export type {
292
+ Technology,
293
+ TechnologyDocumentationTemplate,
294
+ } from "./backoffice/types/technology.types";
295
+
296
+ // Pricing enums
297
+ export {
298
+ PricingMeasure,
299
+ Currency,
300
+ } from "./backoffice/types/static/pricing.types";
301
+
302
+ // Static types
303
+ export { BlockingCondition } from "./backoffice/types/static/blocking-condition.types";
304
+ export {
305
+ CertificationSpecialty,
306
+ CertificationLevel,
307
+ } from "./backoffice/types/static/certification.types";
308
+ export { Contraindication } from "./backoffice/types/static/contraindication.types";
309
+ export { ProcedureFamily } from "./backoffice/types/static/procedure-family.types";
310
+ export { TreatmentBenefit } from "./backoffice/types/static/treatment-benefit.types";
311
+ export {
312
+ RequirementType,
313
+ TimeUnit,
314
+ } from "./backoffice/types/requirement.types";
315
+
316
+ // Media types
317
+ export type {
318
+ MediaMetadata,
319
+ MediaResource,
320
+ } from "./services/media/media.service";
321
+ export { MEDIA_METADATA_COLLECTION } from "./services/media/media.service";
322
+ export { MediaAccessLevel } from "./services/media/media.service";
323
+ // Documentation Templates types
324
+ export type {
325
+ DocumentTemplate,
326
+ CreateDocumentTemplateData,
327
+ UpdateDocumentTemplateData,
328
+ DocumentElement,
329
+ FilledDocument,
330
+ BaseDocumentElement,
331
+ HeadingElement,
332
+ ParagraphElement,
333
+ ListElement,
334
+ DynamicTextElement,
335
+ BinaryChoiceElement,
336
+ MultipleChoiceElement,
337
+ SingleChoiceElement,
338
+ RatingScaleElement,
339
+ TextInputElement,
340
+ DatePickerElement,
341
+ SignatureElement,
342
+ DigitalSignatureElement,
343
+ FileUploadElement,
344
+ } from "./types/documentation-templates";
345
+ export {
346
+ DocumentElementType,
347
+ HeadingLevel,
348
+ ListType,
349
+ DynamicVariable,
350
+ FilledDocumentStatus,
351
+ FilledDocumentFileValue,
352
+ DOCUMENTATION_TEMPLATES_COLLECTION,
353
+ FILLED_DOCUMENTS_COLLECTION,
354
+ USER_FORMS_SUBCOLLECTION,
355
+ DOCTOR_FORMS_SUBCOLLECTION,
356
+ } from "./types/documentation-templates";
357
+
358
+ // Procedure types
359
+ export type {
360
+ Procedure,
361
+ CreateProcedureData,
362
+ UpdateProcedureData,
363
+ } from "./types/procedure";
364
+ export { PROCEDURES_COLLECTION } from "./types/procedure";
365
+
366
+ // Review types
367
+ export type {
368
+ ClinicReview,
369
+ PractitionerReview,
370
+ ProcedureReview,
371
+ ClinicReviewInfo,
372
+ PractitionerReviewInfo,
373
+ ProcedureReviewInfo,
374
+ Review,
375
+ } from "./types/reviews";
376
+
377
+ export { REVIEWS_COLLECTION } from "./types/reviews/index";
378
+
379
+ // Review schemas
380
+ export {
381
+ clinicReviewSchema,
382
+ createClinicReviewSchema,
383
+ practitionerReviewSchema,
384
+ createPractitionerReviewSchema,
385
+ procedureReviewSchema,
386
+ createProcedureReviewSchema,
387
+ clinicReviewInfoSchema,
388
+ practitionerReviewInfoSchema,
389
+ procedureReviewInfoSchema,
390
+ reviewSchema,
391
+ createReviewSchema,
392
+ } from "./validations/reviews.schema";
393
+
394
+ // Patient Requirement Types
395
+ export type {
396
+ PatientRequirementInstance,
397
+ PatientRequirementInstruction,
398
+ } from "./types/patient/patient-requirements";
399
+ export {
400
+ PatientInstructionStatus,
401
+ PatientRequirementOverallStatus,
402
+ PATIENT_REQUIREMENTS_SUBCOLLECTION_NAME,
403
+ } from "./types/patient/patient-requirements";
404
+
405
+ // Patient Requirement Validation Schemas (if they exist and are for client use)
406
+ // Assuming the path, add if it exists and is needed:
407
+ // export * from "./validations/patient/patient-requirements.schema";