@ipetsadmin/contracts 1.2.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +217 -68
- package/dist/index.d.ts +217 -68
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +33 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -115,6 +115,12 @@ interface IAllergy {
|
|
|
115
115
|
name: string;
|
|
116
116
|
severity: number;
|
|
117
117
|
}
|
|
118
|
+
interface IVaccine {
|
|
119
|
+
name: string;
|
|
120
|
+
laboratory: string;
|
|
121
|
+
lotNumber: string;
|
|
122
|
+
date: Date;
|
|
123
|
+
}
|
|
118
124
|
interface IBasePet {
|
|
119
125
|
id: string;
|
|
120
126
|
name: string;
|
|
@@ -132,6 +138,7 @@ interface IBasePet {
|
|
|
132
138
|
description: string;
|
|
133
139
|
status: PetStatus;
|
|
134
140
|
ownerId: string;
|
|
141
|
+
vaccines: IVaccine[];
|
|
135
142
|
photos: string[];
|
|
136
143
|
createdAt: Date;
|
|
137
144
|
updatedAt: Date;
|
|
@@ -146,6 +153,64 @@ interface ICatPet extends IBasePet {
|
|
|
146
153
|
}
|
|
147
154
|
type IPet = IDogPet | ICatPet;
|
|
148
155
|
|
|
156
|
+
declare enum TreatmentStatus {
|
|
157
|
+
WAITING_START = "waiting_start",
|
|
158
|
+
PENDING = "pending",
|
|
159
|
+
IN_PROGRESS = "in_progress",
|
|
160
|
+
COMPLETED = "completed",
|
|
161
|
+
CANCELLED = "cancelled"
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
declare enum TreatmentType {
|
|
165
|
+
MEDICATION = "medication",
|
|
166
|
+
SURGERY = "surgery",
|
|
167
|
+
DIAGNOSIS = "diagnosis",
|
|
168
|
+
DESPARASITIZATION = "desparasitization",
|
|
169
|
+
VACCINATION = "vaccination",
|
|
170
|
+
EXAM = "exam",
|
|
171
|
+
DENTAL = "dental",
|
|
172
|
+
OTHER = "other"
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
interface ITreatment {
|
|
176
|
+
id: string;
|
|
177
|
+
petId: string;
|
|
178
|
+
ownerId: string;
|
|
179
|
+
medicationName: string;
|
|
180
|
+
dosage: string;
|
|
181
|
+
instructions?: string;
|
|
182
|
+
frequencyHours: number;
|
|
183
|
+
durationDays: number;
|
|
184
|
+
totalDoses: number;
|
|
185
|
+
status: TreatmentStatus;
|
|
186
|
+
treatmentType: TreatmentType;
|
|
187
|
+
startDate?: Date;
|
|
188
|
+
endDate?: Date;
|
|
189
|
+
createdAt: Date;
|
|
190
|
+
updatedAt: Date;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
declare enum DoseStatus {
|
|
194
|
+
PENDING = "pending",
|
|
195
|
+
ADMINISTERED = "administered",
|
|
196
|
+
SKIPPED = "skipped",
|
|
197
|
+
SNOOZED = "snoozed"
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
interface IDose {
|
|
201
|
+
id: string;
|
|
202
|
+
treatmentId: string;
|
|
203
|
+
petId: string;
|
|
204
|
+
ownerId: string;
|
|
205
|
+
doseNumber: number;
|
|
206
|
+
scheduledDate: Date;
|
|
207
|
+
actualAdministeredDate?: Date;
|
|
208
|
+
status: DoseStatus;
|
|
209
|
+
notes?: string;
|
|
210
|
+
createdAt: Date;
|
|
211
|
+
updatedAt: Date;
|
|
212
|
+
}
|
|
213
|
+
|
|
149
214
|
declare enum HealthStatus {
|
|
150
215
|
HEALTHY = "healthy",
|
|
151
216
|
UNHEALTHY = "unhealthy"
|
|
@@ -163,6 +228,38 @@ type TokenPair = {
|
|
|
163
228
|
readonly tokenType: 'Bearer';
|
|
164
229
|
};
|
|
165
230
|
|
|
231
|
+
type RepositoryOperationOptions = {
|
|
232
|
+
readonly transactionContext?: unknown;
|
|
233
|
+
};
|
|
234
|
+
|
|
235
|
+
type Auth0UserProfile = {
|
|
236
|
+
readonly sub: string;
|
|
237
|
+
readonly email?: string;
|
|
238
|
+
readonly email_verified?: boolean;
|
|
239
|
+
readonly name?: string;
|
|
240
|
+
readonly given_name?: string;
|
|
241
|
+
readonly family_name?: string;
|
|
242
|
+
readonly picture?: string;
|
|
243
|
+
readonly nickname?: string;
|
|
244
|
+
readonly locale?: string;
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
type EmailAddress = {
|
|
248
|
+
email: string;
|
|
249
|
+
name?: string;
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
type OAuthGoogleStartQuery = {
|
|
253
|
+
readonly redirectUri: string;
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
type Auth0AuthorizationParams = {
|
|
257
|
+
readonly state: string;
|
|
258
|
+
readonly nonce: string;
|
|
259
|
+
readonly redirectUri: string;
|
|
260
|
+
readonly connection?: string;
|
|
261
|
+
};
|
|
262
|
+
|
|
166
263
|
type RegisterRequest = {
|
|
167
264
|
readonly email: string;
|
|
168
265
|
readonly password: string;
|
|
@@ -181,27 +278,16 @@ type LogoutRequest = {
|
|
|
181
278
|
readonly refreshToken: string;
|
|
182
279
|
};
|
|
183
280
|
|
|
184
|
-
type AuthUserResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'authMethod' | 'oauth'>;
|
|
185
|
-
|
|
186
|
-
type AuthSessionResponse = TokenPair & {
|
|
187
|
-
readonly user: AuthUserResponse;
|
|
188
|
-
};
|
|
189
|
-
|
|
190
|
-
type OAuthGoogleStartQuery = {
|
|
191
|
-
readonly redirectUri: string;
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
type OAuthGoogleStartResponse = {
|
|
195
|
-
readonly authorizationUrl: string;
|
|
196
|
-
readonly state: string;
|
|
197
|
-
};
|
|
198
|
-
|
|
199
281
|
type OAuthGoogleCallbackRequest = {
|
|
200
282
|
readonly code: string;
|
|
201
283
|
readonly state: string;
|
|
202
284
|
readonly redirectUri: string;
|
|
203
285
|
};
|
|
204
286
|
|
|
287
|
+
type VerifyEmailRequest = {
|
|
288
|
+
readonly token: string;
|
|
289
|
+
};
|
|
290
|
+
|
|
205
291
|
type CreateUserInput = {
|
|
206
292
|
readonly email: string;
|
|
207
293
|
readonly emailVerified: boolean;
|
|
@@ -237,58 +323,6 @@ type CreatePetInput = {
|
|
|
237
323
|
updatedAt: Date;
|
|
238
324
|
};
|
|
239
325
|
|
|
240
|
-
type Auth0UserProfile = {
|
|
241
|
-
readonly sub: string;
|
|
242
|
-
readonly email?: string;
|
|
243
|
-
readonly email_verified?: boolean;
|
|
244
|
-
readonly name?: string;
|
|
245
|
-
readonly given_name?: string;
|
|
246
|
-
readonly family_name?: string;
|
|
247
|
-
readonly picture?: string;
|
|
248
|
-
readonly nickname?: string;
|
|
249
|
-
readonly locale?: string;
|
|
250
|
-
};
|
|
251
|
-
|
|
252
|
-
type Auth0AuthorizationParams = {
|
|
253
|
-
readonly state: string;
|
|
254
|
-
readonly nonce: string;
|
|
255
|
-
readonly redirectUri: string;
|
|
256
|
-
readonly connection?: string;
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
type OAuthAccessTokenResult = {
|
|
260
|
-
readonly accessToken: string;
|
|
261
|
-
};
|
|
262
|
-
|
|
263
|
-
type RepositoryOperationOptions = {
|
|
264
|
-
readonly transactionContext?: unknown;
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
type EmailAddress = {
|
|
268
|
-
email: string;
|
|
269
|
-
name?: string;
|
|
270
|
-
};
|
|
271
|
-
|
|
272
|
-
type SendEmailInput = {
|
|
273
|
-
from?: EmailAddress;
|
|
274
|
-
to: EmailAddress[];
|
|
275
|
-
subject: string;
|
|
276
|
-
html?: string;
|
|
277
|
-
text?: string;
|
|
278
|
-
};
|
|
279
|
-
|
|
280
|
-
type SendEmailResult = {
|
|
281
|
-
provider: string;
|
|
282
|
-
messageId: string;
|
|
283
|
-
accepted: boolean;
|
|
284
|
-
};
|
|
285
|
-
|
|
286
|
-
type VerifyEmailRequest = {
|
|
287
|
-
readonly token: string;
|
|
288
|
-
};
|
|
289
|
-
|
|
290
|
-
type UserProfileResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'role' | 'isActive' | 'profile'>;
|
|
291
|
-
|
|
292
326
|
type PatchUserProfileInput = {
|
|
293
327
|
readonly firstName?: string;
|
|
294
328
|
readonly lastName?: string;
|
|
@@ -309,8 +343,69 @@ type PatchUserProfileInput = {
|
|
|
309
343
|
};
|
|
310
344
|
};
|
|
311
345
|
|
|
346
|
+
type SendEmailInput = {
|
|
347
|
+
from?: EmailAddress;
|
|
348
|
+
to: EmailAddress[];
|
|
349
|
+
subject: string;
|
|
350
|
+
html?: string;
|
|
351
|
+
text?: string;
|
|
352
|
+
};
|
|
353
|
+
|
|
354
|
+
type CreateTreatmentInput = {
|
|
355
|
+
petId: string;
|
|
356
|
+
ownerId: string;
|
|
357
|
+
medicationName: string;
|
|
358
|
+
dosage: string;
|
|
359
|
+
instructions?: string;
|
|
360
|
+
frequencyHours: number;
|
|
361
|
+
durationDays: number;
|
|
362
|
+
totalDoses: number;
|
|
363
|
+
status: TreatmentStatus;
|
|
364
|
+
treatmentType: TreatmentType;
|
|
365
|
+
startDate?: Date;
|
|
366
|
+
endDate?: Date;
|
|
367
|
+
};
|
|
368
|
+
|
|
369
|
+
type CreateDoseInput = {
|
|
370
|
+
treatmentId: string;
|
|
371
|
+
petId: string;
|
|
372
|
+
ownerId: string;
|
|
373
|
+
doseNumber: number;
|
|
374
|
+
scheduledDate: Date;
|
|
375
|
+
actualAdministeredDate?: Date;
|
|
376
|
+
status: DoseStatus;
|
|
377
|
+
notes?: string;
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
type OAuthAccessTokenResult = {
|
|
381
|
+
readonly accessToken: string;
|
|
382
|
+
};
|
|
383
|
+
|
|
384
|
+
type SendEmailResult = {
|
|
385
|
+
provider: string;
|
|
386
|
+
messageId: string;
|
|
387
|
+
accepted: boolean;
|
|
388
|
+
};
|
|
389
|
+
|
|
390
|
+
type UserProfileResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'role' | 'isActive' | 'profile'>;
|
|
391
|
+
|
|
312
392
|
type PetResponse = IPet;
|
|
313
393
|
|
|
394
|
+
type TreatmentResponse = ITreatment;
|
|
395
|
+
|
|
396
|
+
type DoseResponse = IDose;
|
|
397
|
+
|
|
398
|
+
type OAuthGoogleStartResponse = {
|
|
399
|
+
readonly authorizationUrl: string;
|
|
400
|
+
readonly state: string;
|
|
401
|
+
};
|
|
402
|
+
|
|
403
|
+
type AuthUserResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'authMethod' | 'oauth'>;
|
|
404
|
+
|
|
405
|
+
type AuthSessionResponse = TokenPair & {
|
|
406
|
+
readonly user: AuthUserResponse;
|
|
407
|
+
};
|
|
408
|
+
|
|
314
409
|
interface IConfig {
|
|
315
410
|
port: number;
|
|
316
411
|
cors: {
|
|
@@ -384,6 +479,10 @@ interface IPetRepository {
|
|
|
384
479
|
create(input: CreatePetInput, options?: RepositoryOperationOptions): Promise<IPet>;
|
|
385
480
|
findById(id: string, options?: RepositoryOperationOptions): Promise<IPet | null>;
|
|
386
481
|
findByOwnerId(ownerId: string, options?: RepositoryOperationOptions): Promise<IPet[]>;
|
|
482
|
+
update(params: {
|
|
483
|
+
id: string;
|
|
484
|
+
input: Partial<CreatePetInput>;
|
|
485
|
+
}, options?: RepositoryOperationOptions): Promise<IPet | null>;
|
|
387
486
|
}
|
|
388
487
|
|
|
389
488
|
type RefreshTokenRecord = {
|
|
@@ -422,6 +521,25 @@ interface IEmailVerificationTokenRepository {
|
|
|
422
521
|
consumeByHash(tokenHash: string, options?: RepositoryOperationOptions): Promise<EmailVerificationTokenRecord | null>;
|
|
423
522
|
}
|
|
424
523
|
|
|
524
|
+
interface ITreatmentRepository {
|
|
525
|
+
create(input: CreateTreatmentInput, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
526
|
+
update(params: {
|
|
527
|
+
id: string;
|
|
528
|
+
patch: Partial<CreateTreatmentInput>;
|
|
529
|
+
}, options?: RepositoryOperationOptions): Promise<void>;
|
|
530
|
+
findById(id: string, options?: RepositoryOperationOptions): Promise<ITreatment | null>;
|
|
531
|
+
findByPetId(petId: string, options?: RepositoryOperationOptions): Promise<ITreatment[]>;
|
|
532
|
+
delete(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
interface IDoseRepository {
|
|
536
|
+
create(input: CreateDoseInput, options?: RepositoryOperationOptions): Promise<IDose>;
|
|
537
|
+
findById(id: string, options?: RepositoryOperationOptions): Promise<IDose | null>;
|
|
538
|
+
findByTreatmentId(treatmentId: string, options?: RepositoryOperationOptions): Promise<IDose[]>;
|
|
539
|
+
delete(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
540
|
+
deleteByTreatmentId(treatmentId: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
541
|
+
}
|
|
542
|
+
|
|
425
543
|
interface IAuthService {
|
|
426
544
|
register(email: string, password: string, options?: RepositoryOperationOptions): Promise<AuthSessionResponse>;
|
|
427
545
|
loginWithUser(user: IUser, options?: RepositoryOperationOptions): Promise<AuthSessionResponse>;
|
|
@@ -474,8 +592,39 @@ interface IUserService {
|
|
|
474
592
|
}
|
|
475
593
|
|
|
476
594
|
interface IPetService {
|
|
595
|
+
getPetById(id: string, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
477
596
|
getPetsByUserId(userId: string, options?: RepositoryOperationOptions): Promise<PetResponse[]>;
|
|
478
597
|
createPet(input: CreatePetInput, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
598
|
+
updatePet(params: {
|
|
599
|
+
id: string;
|
|
600
|
+
ownerId: string;
|
|
601
|
+
input: Partial<CreatePetInput>;
|
|
602
|
+
}, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
interface ITreatmentService {
|
|
606
|
+
createTreatment(input: CreateTreatmentInput, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
607
|
+
updateTreatment(params: {
|
|
608
|
+
id: string;
|
|
609
|
+
petId: string;
|
|
610
|
+
ownerId: string;
|
|
611
|
+
input: Partial<CreateTreatmentInput>;
|
|
612
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
613
|
+
updateTreatmentStatus(params: {
|
|
614
|
+
id: string;
|
|
615
|
+
petId: string;
|
|
616
|
+
ownerId: string;
|
|
617
|
+
status: TreatmentStatus;
|
|
618
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
619
|
+
getTreatmentById(params: {
|
|
620
|
+
id: string;
|
|
621
|
+
petId: string;
|
|
622
|
+
ownerId: string;
|
|
623
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment & {
|
|
624
|
+
doses: IDose[];
|
|
625
|
+
}>;
|
|
626
|
+
getTreatmentsByPetId(petId: string, options?: RepositoryOperationOptions): Promise<ITreatment[]>;
|
|
627
|
+
deleteTreatment(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
479
628
|
}
|
|
480
629
|
|
|
481
630
|
declare enum Errors {
|
|
@@ -528,4 +677,4 @@ declare class UnauthorizedError extends BaseError {
|
|
|
528
677
|
constructor(message: string, details?: Record<string, unknown>);
|
|
529
678
|
}
|
|
530
679
|
|
|
531
|
-
export { type Auth0AuthorizationParams, type Auth0UserProfile, AuthMethod, type AuthSessionResponse, type AuthUserResponse, BaseError, BusinessError, CatBreed, type CreatePetInput, type CreateUserInput, DogBreed, type EmailAddress, EmailProvider, type EmailVerificationTokenRecord, Errors, ForbiddenError, Gender, type HealthCheck, HealthStatus, type IApiResponse, type IAuth0GoogleOAuthService, type IAuthService, type IConfig, type IEmailConfig, type IEmailProviderAdapter, type IEmailService, type IEmailVerificationConfig, type IEmailVerificationTokenRepository, type IJwtTokensService, type IOAuthStateRepository, type IPaginatedResponse, type IPet, type IPetRepository, type IPetService, type IRefreshTokenRepository, type IServerInit, type IUser, type IUserRepository, type IUserService, type LoginRequest, type LogoutRequest, NotFoundError, type OAuthAccessTokenResult, type OAuthGoogleCallbackRequest, type OAuthGoogleStartQuery, type OAuthGoogleStartResponse, OAuthProvider, type OAuthStateRecord, type PatchUserProfileInput, type PetResponse, PetStatus, type RefreshRequest, type RefreshTokenRecord, type RegisterRequest, type RepositoryOperationOptions, type SendEmailInput, type SendEmailResult, ServerError, Species, type TokenPair, UnauthorizedError, type UserProfileResponse, UserRole, type VerifyEmailRequest, WeightUnit };
|
|
680
|
+
export { type Auth0AuthorizationParams, type Auth0UserProfile, AuthMethod, type AuthSessionResponse, type AuthUserResponse, BaseError, BusinessError, CatBreed, type CreateDoseInput, type CreatePetInput, type CreateTreatmentInput, type CreateUserInput, DogBreed, type DoseResponse, DoseStatus, type EmailAddress, EmailProvider, type EmailVerificationTokenRecord, Errors, ForbiddenError, Gender, type HealthCheck, HealthStatus, type IApiResponse, type IAuth0GoogleOAuthService, type IAuthService, type IConfig, type IDose, type IDoseRepository, type IEmailConfig, type IEmailProviderAdapter, type IEmailService, type IEmailVerificationConfig, type IEmailVerificationTokenRepository, type IJwtTokensService, type IOAuthStateRepository, type IPaginatedResponse, type IPet, type IPetRepository, type IPetService, type IRefreshTokenRepository, type IServerInit, type ITreatment, type ITreatmentRepository, type ITreatmentService, type IUser, type IUserRepository, type IUserService, type LoginRequest, type LogoutRequest, NotFoundError, type OAuthAccessTokenResult, type OAuthGoogleCallbackRequest, type OAuthGoogleStartQuery, type OAuthGoogleStartResponse, OAuthProvider, type OAuthStateRecord, type PatchUserProfileInput, type PetResponse, PetStatus, type RefreshRequest, type RefreshTokenRecord, type RegisterRequest, type RepositoryOperationOptions, type SendEmailInput, type SendEmailResult, ServerError, Species, type TokenPair, type TreatmentResponse, TreatmentStatus, TreatmentType, UnauthorizedError, type UserProfileResponse, UserRole, type VerifyEmailRequest, WeightUnit };
|
package/dist/index.d.ts
CHANGED
|
@@ -115,6 +115,12 @@ interface IAllergy {
|
|
|
115
115
|
name: string;
|
|
116
116
|
severity: number;
|
|
117
117
|
}
|
|
118
|
+
interface IVaccine {
|
|
119
|
+
name: string;
|
|
120
|
+
laboratory: string;
|
|
121
|
+
lotNumber: string;
|
|
122
|
+
date: Date;
|
|
123
|
+
}
|
|
118
124
|
interface IBasePet {
|
|
119
125
|
id: string;
|
|
120
126
|
name: string;
|
|
@@ -132,6 +138,7 @@ interface IBasePet {
|
|
|
132
138
|
description: string;
|
|
133
139
|
status: PetStatus;
|
|
134
140
|
ownerId: string;
|
|
141
|
+
vaccines: IVaccine[];
|
|
135
142
|
photos: string[];
|
|
136
143
|
createdAt: Date;
|
|
137
144
|
updatedAt: Date;
|
|
@@ -146,6 +153,64 @@ interface ICatPet extends IBasePet {
|
|
|
146
153
|
}
|
|
147
154
|
type IPet = IDogPet | ICatPet;
|
|
148
155
|
|
|
156
|
+
declare enum TreatmentStatus {
|
|
157
|
+
WAITING_START = "waiting_start",
|
|
158
|
+
PENDING = "pending",
|
|
159
|
+
IN_PROGRESS = "in_progress",
|
|
160
|
+
COMPLETED = "completed",
|
|
161
|
+
CANCELLED = "cancelled"
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
declare enum TreatmentType {
|
|
165
|
+
MEDICATION = "medication",
|
|
166
|
+
SURGERY = "surgery",
|
|
167
|
+
DIAGNOSIS = "diagnosis",
|
|
168
|
+
DESPARASITIZATION = "desparasitization",
|
|
169
|
+
VACCINATION = "vaccination",
|
|
170
|
+
EXAM = "exam",
|
|
171
|
+
DENTAL = "dental",
|
|
172
|
+
OTHER = "other"
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
interface ITreatment {
|
|
176
|
+
id: string;
|
|
177
|
+
petId: string;
|
|
178
|
+
ownerId: string;
|
|
179
|
+
medicationName: string;
|
|
180
|
+
dosage: string;
|
|
181
|
+
instructions?: string;
|
|
182
|
+
frequencyHours: number;
|
|
183
|
+
durationDays: number;
|
|
184
|
+
totalDoses: number;
|
|
185
|
+
status: TreatmentStatus;
|
|
186
|
+
treatmentType: TreatmentType;
|
|
187
|
+
startDate?: Date;
|
|
188
|
+
endDate?: Date;
|
|
189
|
+
createdAt: Date;
|
|
190
|
+
updatedAt: Date;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
declare enum DoseStatus {
|
|
194
|
+
PENDING = "pending",
|
|
195
|
+
ADMINISTERED = "administered",
|
|
196
|
+
SKIPPED = "skipped",
|
|
197
|
+
SNOOZED = "snoozed"
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
interface IDose {
|
|
201
|
+
id: string;
|
|
202
|
+
treatmentId: string;
|
|
203
|
+
petId: string;
|
|
204
|
+
ownerId: string;
|
|
205
|
+
doseNumber: number;
|
|
206
|
+
scheduledDate: Date;
|
|
207
|
+
actualAdministeredDate?: Date;
|
|
208
|
+
status: DoseStatus;
|
|
209
|
+
notes?: string;
|
|
210
|
+
createdAt: Date;
|
|
211
|
+
updatedAt: Date;
|
|
212
|
+
}
|
|
213
|
+
|
|
149
214
|
declare enum HealthStatus {
|
|
150
215
|
HEALTHY = "healthy",
|
|
151
216
|
UNHEALTHY = "unhealthy"
|
|
@@ -163,6 +228,38 @@ type TokenPair = {
|
|
|
163
228
|
readonly tokenType: 'Bearer';
|
|
164
229
|
};
|
|
165
230
|
|
|
231
|
+
type RepositoryOperationOptions = {
|
|
232
|
+
readonly transactionContext?: unknown;
|
|
233
|
+
};
|
|
234
|
+
|
|
235
|
+
type Auth0UserProfile = {
|
|
236
|
+
readonly sub: string;
|
|
237
|
+
readonly email?: string;
|
|
238
|
+
readonly email_verified?: boolean;
|
|
239
|
+
readonly name?: string;
|
|
240
|
+
readonly given_name?: string;
|
|
241
|
+
readonly family_name?: string;
|
|
242
|
+
readonly picture?: string;
|
|
243
|
+
readonly nickname?: string;
|
|
244
|
+
readonly locale?: string;
|
|
245
|
+
};
|
|
246
|
+
|
|
247
|
+
type EmailAddress = {
|
|
248
|
+
email: string;
|
|
249
|
+
name?: string;
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
type OAuthGoogleStartQuery = {
|
|
253
|
+
readonly redirectUri: string;
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
type Auth0AuthorizationParams = {
|
|
257
|
+
readonly state: string;
|
|
258
|
+
readonly nonce: string;
|
|
259
|
+
readonly redirectUri: string;
|
|
260
|
+
readonly connection?: string;
|
|
261
|
+
};
|
|
262
|
+
|
|
166
263
|
type RegisterRequest = {
|
|
167
264
|
readonly email: string;
|
|
168
265
|
readonly password: string;
|
|
@@ -181,27 +278,16 @@ type LogoutRequest = {
|
|
|
181
278
|
readonly refreshToken: string;
|
|
182
279
|
};
|
|
183
280
|
|
|
184
|
-
type AuthUserResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'authMethod' | 'oauth'>;
|
|
185
|
-
|
|
186
|
-
type AuthSessionResponse = TokenPair & {
|
|
187
|
-
readonly user: AuthUserResponse;
|
|
188
|
-
};
|
|
189
|
-
|
|
190
|
-
type OAuthGoogleStartQuery = {
|
|
191
|
-
readonly redirectUri: string;
|
|
192
|
-
};
|
|
193
|
-
|
|
194
|
-
type OAuthGoogleStartResponse = {
|
|
195
|
-
readonly authorizationUrl: string;
|
|
196
|
-
readonly state: string;
|
|
197
|
-
};
|
|
198
|
-
|
|
199
281
|
type OAuthGoogleCallbackRequest = {
|
|
200
282
|
readonly code: string;
|
|
201
283
|
readonly state: string;
|
|
202
284
|
readonly redirectUri: string;
|
|
203
285
|
};
|
|
204
286
|
|
|
287
|
+
type VerifyEmailRequest = {
|
|
288
|
+
readonly token: string;
|
|
289
|
+
};
|
|
290
|
+
|
|
205
291
|
type CreateUserInput = {
|
|
206
292
|
readonly email: string;
|
|
207
293
|
readonly emailVerified: boolean;
|
|
@@ -237,58 +323,6 @@ type CreatePetInput = {
|
|
|
237
323
|
updatedAt: Date;
|
|
238
324
|
};
|
|
239
325
|
|
|
240
|
-
type Auth0UserProfile = {
|
|
241
|
-
readonly sub: string;
|
|
242
|
-
readonly email?: string;
|
|
243
|
-
readonly email_verified?: boolean;
|
|
244
|
-
readonly name?: string;
|
|
245
|
-
readonly given_name?: string;
|
|
246
|
-
readonly family_name?: string;
|
|
247
|
-
readonly picture?: string;
|
|
248
|
-
readonly nickname?: string;
|
|
249
|
-
readonly locale?: string;
|
|
250
|
-
};
|
|
251
|
-
|
|
252
|
-
type Auth0AuthorizationParams = {
|
|
253
|
-
readonly state: string;
|
|
254
|
-
readonly nonce: string;
|
|
255
|
-
readonly redirectUri: string;
|
|
256
|
-
readonly connection?: string;
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
type OAuthAccessTokenResult = {
|
|
260
|
-
readonly accessToken: string;
|
|
261
|
-
};
|
|
262
|
-
|
|
263
|
-
type RepositoryOperationOptions = {
|
|
264
|
-
readonly transactionContext?: unknown;
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
type EmailAddress = {
|
|
268
|
-
email: string;
|
|
269
|
-
name?: string;
|
|
270
|
-
};
|
|
271
|
-
|
|
272
|
-
type SendEmailInput = {
|
|
273
|
-
from?: EmailAddress;
|
|
274
|
-
to: EmailAddress[];
|
|
275
|
-
subject: string;
|
|
276
|
-
html?: string;
|
|
277
|
-
text?: string;
|
|
278
|
-
};
|
|
279
|
-
|
|
280
|
-
type SendEmailResult = {
|
|
281
|
-
provider: string;
|
|
282
|
-
messageId: string;
|
|
283
|
-
accepted: boolean;
|
|
284
|
-
};
|
|
285
|
-
|
|
286
|
-
type VerifyEmailRequest = {
|
|
287
|
-
readonly token: string;
|
|
288
|
-
};
|
|
289
|
-
|
|
290
|
-
type UserProfileResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'role' | 'isActive' | 'profile'>;
|
|
291
|
-
|
|
292
326
|
type PatchUserProfileInput = {
|
|
293
327
|
readonly firstName?: string;
|
|
294
328
|
readonly lastName?: string;
|
|
@@ -309,8 +343,69 @@ type PatchUserProfileInput = {
|
|
|
309
343
|
};
|
|
310
344
|
};
|
|
311
345
|
|
|
346
|
+
type SendEmailInput = {
|
|
347
|
+
from?: EmailAddress;
|
|
348
|
+
to: EmailAddress[];
|
|
349
|
+
subject: string;
|
|
350
|
+
html?: string;
|
|
351
|
+
text?: string;
|
|
352
|
+
};
|
|
353
|
+
|
|
354
|
+
type CreateTreatmentInput = {
|
|
355
|
+
petId: string;
|
|
356
|
+
ownerId: string;
|
|
357
|
+
medicationName: string;
|
|
358
|
+
dosage: string;
|
|
359
|
+
instructions?: string;
|
|
360
|
+
frequencyHours: number;
|
|
361
|
+
durationDays: number;
|
|
362
|
+
totalDoses: number;
|
|
363
|
+
status: TreatmentStatus;
|
|
364
|
+
treatmentType: TreatmentType;
|
|
365
|
+
startDate?: Date;
|
|
366
|
+
endDate?: Date;
|
|
367
|
+
};
|
|
368
|
+
|
|
369
|
+
type CreateDoseInput = {
|
|
370
|
+
treatmentId: string;
|
|
371
|
+
petId: string;
|
|
372
|
+
ownerId: string;
|
|
373
|
+
doseNumber: number;
|
|
374
|
+
scheduledDate: Date;
|
|
375
|
+
actualAdministeredDate?: Date;
|
|
376
|
+
status: DoseStatus;
|
|
377
|
+
notes?: string;
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
type OAuthAccessTokenResult = {
|
|
381
|
+
readonly accessToken: string;
|
|
382
|
+
};
|
|
383
|
+
|
|
384
|
+
type SendEmailResult = {
|
|
385
|
+
provider: string;
|
|
386
|
+
messageId: string;
|
|
387
|
+
accepted: boolean;
|
|
388
|
+
};
|
|
389
|
+
|
|
390
|
+
type UserProfileResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'role' | 'isActive' | 'profile'>;
|
|
391
|
+
|
|
312
392
|
type PetResponse = IPet;
|
|
313
393
|
|
|
394
|
+
type TreatmentResponse = ITreatment;
|
|
395
|
+
|
|
396
|
+
type DoseResponse = IDose;
|
|
397
|
+
|
|
398
|
+
type OAuthGoogleStartResponse = {
|
|
399
|
+
readonly authorizationUrl: string;
|
|
400
|
+
readonly state: string;
|
|
401
|
+
};
|
|
402
|
+
|
|
403
|
+
type AuthUserResponse = Pick<IUser, 'id' | 'email' | 'emailVerified' | 'authMethod' | 'oauth'>;
|
|
404
|
+
|
|
405
|
+
type AuthSessionResponse = TokenPair & {
|
|
406
|
+
readonly user: AuthUserResponse;
|
|
407
|
+
};
|
|
408
|
+
|
|
314
409
|
interface IConfig {
|
|
315
410
|
port: number;
|
|
316
411
|
cors: {
|
|
@@ -384,6 +479,10 @@ interface IPetRepository {
|
|
|
384
479
|
create(input: CreatePetInput, options?: RepositoryOperationOptions): Promise<IPet>;
|
|
385
480
|
findById(id: string, options?: RepositoryOperationOptions): Promise<IPet | null>;
|
|
386
481
|
findByOwnerId(ownerId: string, options?: RepositoryOperationOptions): Promise<IPet[]>;
|
|
482
|
+
update(params: {
|
|
483
|
+
id: string;
|
|
484
|
+
input: Partial<CreatePetInput>;
|
|
485
|
+
}, options?: RepositoryOperationOptions): Promise<IPet | null>;
|
|
387
486
|
}
|
|
388
487
|
|
|
389
488
|
type RefreshTokenRecord = {
|
|
@@ -422,6 +521,25 @@ interface IEmailVerificationTokenRepository {
|
|
|
422
521
|
consumeByHash(tokenHash: string, options?: RepositoryOperationOptions): Promise<EmailVerificationTokenRecord | null>;
|
|
423
522
|
}
|
|
424
523
|
|
|
524
|
+
interface ITreatmentRepository {
|
|
525
|
+
create(input: CreateTreatmentInput, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
526
|
+
update(params: {
|
|
527
|
+
id: string;
|
|
528
|
+
patch: Partial<CreateTreatmentInput>;
|
|
529
|
+
}, options?: RepositoryOperationOptions): Promise<void>;
|
|
530
|
+
findById(id: string, options?: RepositoryOperationOptions): Promise<ITreatment | null>;
|
|
531
|
+
findByPetId(petId: string, options?: RepositoryOperationOptions): Promise<ITreatment[]>;
|
|
532
|
+
delete(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
interface IDoseRepository {
|
|
536
|
+
create(input: CreateDoseInput, options?: RepositoryOperationOptions): Promise<IDose>;
|
|
537
|
+
findById(id: string, options?: RepositoryOperationOptions): Promise<IDose | null>;
|
|
538
|
+
findByTreatmentId(treatmentId: string, options?: RepositoryOperationOptions): Promise<IDose[]>;
|
|
539
|
+
delete(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
540
|
+
deleteByTreatmentId(treatmentId: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
541
|
+
}
|
|
542
|
+
|
|
425
543
|
interface IAuthService {
|
|
426
544
|
register(email: string, password: string, options?: RepositoryOperationOptions): Promise<AuthSessionResponse>;
|
|
427
545
|
loginWithUser(user: IUser, options?: RepositoryOperationOptions): Promise<AuthSessionResponse>;
|
|
@@ -474,8 +592,39 @@ interface IUserService {
|
|
|
474
592
|
}
|
|
475
593
|
|
|
476
594
|
interface IPetService {
|
|
595
|
+
getPetById(id: string, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
477
596
|
getPetsByUserId(userId: string, options?: RepositoryOperationOptions): Promise<PetResponse[]>;
|
|
478
597
|
createPet(input: CreatePetInput, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
598
|
+
updatePet(params: {
|
|
599
|
+
id: string;
|
|
600
|
+
ownerId: string;
|
|
601
|
+
input: Partial<CreatePetInput>;
|
|
602
|
+
}, options?: RepositoryOperationOptions): Promise<PetResponse>;
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
interface ITreatmentService {
|
|
606
|
+
createTreatment(input: CreateTreatmentInput, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
607
|
+
updateTreatment(params: {
|
|
608
|
+
id: string;
|
|
609
|
+
petId: string;
|
|
610
|
+
ownerId: string;
|
|
611
|
+
input: Partial<CreateTreatmentInput>;
|
|
612
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
613
|
+
updateTreatmentStatus(params: {
|
|
614
|
+
id: string;
|
|
615
|
+
petId: string;
|
|
616
|
+
ownerId: string;
|
|
617
|
+
status: TreatmentStatus;
|
|
618
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment>;
|
|
619
|
+
getTreatmentById(params: {
|
|
620
|
+
id: string;
|
|
621
|
+
petId: string;
|
|
622
|
+
ownerId: string;
|
|
623
|
+
}, options?: RepositoryOperationOptions): Promise<ITreatment & {
|
|
624
|
+
doses: IDose[];
|
|
625
|
+
}>;
|
|
626
|
+
getTreatmentsByPetId(petId: string, options?: RepositoryOperationOptions): Promise<ITreatment[]>;
|
|
627
|
+
deleteTreatment(id: string, options?: RepositoryOperationOptions): Promise<void>;
|
|
479
628
|
}
|
|
480
629
|
|
|
481
630
|
declare enum Errors {
|
|
@@ -528,4 +677,4 @@ declare class UnauthorizedError extends BaseError {
|
|
|
528
677
|
constructor(message: string, details?: Record<string, unknown>);
|
|
529
678
|
}
|
|
530
679
|
|
|
531
|
-
export { type Auth0AuthorizationParams, type Auth0UserProfile, AuthMethod, type AuthSessionResponse, type AuthUserResponse, BaseError, BusinessError, CatBreed, type CreatePetInput, type CreateUserInput, DogBreed, type EmailAddress, EmailProvider, type EmailVerificationTokenRecord, Errors, ForbiddenError, Gender, type HealthCheck, HealthStatus, type IApiResponse, type IAuth0GoogleOAuthService, type IAuthService, type IConfig, type IEmailConfig, type IEmailProviderAdapter, type IEmailService, type IEmailVerificationConfig, type IEmailVerificationTokenRepository, type IJwtTokensService, type IOAuthStateRepository, type IPaginatedResponse, type IPet, type IPetRepository, type IPetService, type IRefreshTokenRepository, type IServerInit, type IUser, type IUserRepository, type IUserService, type LoginRequest, type LogoutRequest, NotFoundError, type OAuthAccessTokenResult, type OAuthGoogleCallbackRequest, type OAuthGoogleStartQuery, type OAuthGoogleStartResponse, OAuthProvider, type OAuthStateRecord, type PatchUserProfileInput, type PetResponse, PetStatus, type RefreshRequest, type RefreshTokenRecord, type RegisterRequest, type RepositoryOperationOptions, type SendEmailInput, type SendEmailResult, ServerError, Species, type TokenPair, UnauthorizedError, type UserProfileResponse, UserRole, type VerifyEmailRequest, WeightUnit };
|
|
680
|
+
export { type Auth0AuthorizationParams, type Auth0UserProfile, AuthMethod, type AuthSessionResponse, type AuthUserResponse, BaseError, BusinessError, CatBreed, type CreateDoseInput, type CreatePetInput, type CreateTreatmentInput, type CreateUserInput, DogBreed, type DoseResponse, DoseStatus, type EmailAddress, EmailProvider, type EmailVerificationTokenRecord, Errors, ForbiddenError, Gender, type HealthCheck, HealthStatus, type IApiResponse, type IAuth0GoogleOAuthService, type IAuthService, type IConfig, type IDose, type IDoseRepository, type IEmailConfig, type IEmailProviderAdapter, type IEmailService, type IEmailVerificationConfig, type IEmailVerificationTokenRepository, type IJwtTokensService, type IOAuthStateRepository, type IPaginatedResponse, type IPet, type IPetRepository, type IPetService, type IRefreshTokenRepository, type IServerInit, type ITreatment, type ITreatmentRepository, type ITreatmentService, type IUser, type IUserRepository, type IUserService, type LoginRequest, type LogoutRequest, NotFoundError, type OAuthAccessTokenResult, type OAuthGoogleCallbackRequest, type OAuthGoogleStartQuery, type OAuthGoogleStartResponse, OAuthProvider, type OAuthStateRecord, type PatchUserProfileInput, type PetResponse, PetStatus, type RefreshRequest, type RefreshTokenRecord, type RegisterRequest, type RepositoryOperationOptions, type SendEmailInput, type SendEmailResult, ServerError, Species, type TokenPair, type TreatmentResponse, TreatmentStatus, TreatmentType, UnauthorizedError, type UserProfileResponse, UserRole, type VerifyEmailRequest, WeightUnit };
|
package/dist/index.js
CHANGED
|
@@ -124,6 +124,38 @@ var WeightUnit = /* @__PURE__ */ ((WeightUnit2) => {
|
|
|
124
124
|
return WeightUnit2;
|
|
125
125
|
})(WeightUnit || {});
|
|
126
126
|
|
|
127
|
+
// src/enums/treatment-status.ts
|
|
128
|
+
var TreatmentStatus = /* @__PURE__ */ ((TreatmentStatus2) => {
|
|
129
|
+
TreatmentStatus2["WAITING_START"] = "waiting_start";
|
|
130
|
+
TreatmentStatus2["PENDING"] = "pending";
|
|
131
|
+
TreatmentStatus2["IN_PROGRESS"] = "in_progress";
|
|
132
|
+
TreatmentStatus2["COMPLETED"] = "completed";
|
|
133
|
+
TreatmentStatus2["CANCELLED"] = "cancelled";
|
|
134
|
+
return TreatmentStatus2;
|
|
135
|
+
})(TreatmentStatus || {});
|
|
136
|
+
|
|
137
|
+
// src/enums/dose-status.ts
|
|
138
|
+
var DoseStatus = /* @__PURE__ */ ((DoseStatus2) => {
|
|
139
|
+
DoseStatus2["PENDING"] = "pending";
|
|
140
|
+
DoseStatus2["ADMINISTERED"] = "administered";
|
|
141
|
+
DoseStatus2["SKIPPED"] = "skipped";
|
|
142
|
+
DoseStatus2["SNOOZED"] = "snoozed";
|
|
143
|
+
return DoseStatus2;
|
|
144
|
+
})(DoseStatus || {});
|
|
145
|
+
|
|
146
|
+
// src/enums/treatment-type.ts
|
|
147
|
+
var TreatmentType = /* @__PURE__ */ ((TreatmentType2) => {
|
|
148
|
+
TreatmentType2["MEDICATION"] = "medication";
|
|
149
|
+
TreatmentType2["SURGERY"] = "surgery";
|
|
150
|
+
TreatmentType2["DIAGNOSIS"] = "diagnosis";
|
|
151
|
+
TreatmentType2["DESPARASITIZATION"] = "desparasitization";
|
|
152
|
+
TreatmentType2["VACCINATION"] = "vaccination";
|
|
153
|
+
TreatmentType2["EXAM"] = "exam";
|
|
154
|
+
TreatmentType2["DENTAL"] = "dental";
|
|
155
|
+
TreatmentType2["OTHER"] = "other";
|
|
156
|
+
return TreatmentType2;
|
|
157
|
+
})(TreatmentType || {});
|
|
158
|
+
|
|
127
159
|
// src/errors/BaseError.ts
|
|
128
160
|
var BaseError = class extends Error {
|
|
129
161
|
toErrorRecord() {
|
|
@@ -190,6 +222,7 @@ exports.BaseError = BaseError;
|
|
|
190
222
|
exports.BusinessError = BusinessError;
|
|
191
223
|
exports.CatBreed = CatBreed;
|
|
192
224
|
exports.DogBreed = DogBreed;
|
|
225
|
+
exports.DoseStatus = DoseStatus;
|
|
193
226
|
exports.EmailProvider = EmailProvider;
|
|
194
227
|
exports.Errors = Errors;
|
|
195
228
|
exports.ForbiddenError = ForbiddenError;
|
|
@@ -200,6 +233,8 @@ exports.OAuthProvider = OAuthProvider;
|
|
|
200
233
|
exports.PetStatus = PetStatus;
|
|
201
234
|
exports.ServerError = ServerError;
|
|
202
235
|
exports.Species = Species;
|
|
236
|
+
exports.TreatmentStatus = TreatmentStatus;
|
|
237
|
+
exports.TreatmentType = TreatmentType;
|
|
203
238
|
exports.UnauthorizedError = UnauthorizedError;
|
|
204
239
|
exports.UserRole = UserRole;
|
|
205
240
|
exports.WeightUnit = WeightUnit;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/enums/errors.ts","../src/enums/health-status.ts","../src/enums/roles.ts","../src/enums/auth-method.ts","../src/enums/oauth-provider.ts","../src/enums/email-providers.ts","../src/enums/species.ts","../src/enums/dog-breed.ts","../src/enums/cat-breed.ts","../src/enums/gender.ts","../src/enums/pet-status.ts","../src/enums/weight-unit.ts","../src/errors/BaseError.ts","../src/errors/BusinessError.ts","../src/errors/ForbiddenError.ts","../src/errors/NotFoundError.ts","../src/errors/ServerError.ts","../src/errors/UnauthorizedError.ts"],"names":["Errors","HealthStatus","UserRole","AuthMethod","OAuthProvider","EmailProvider","Species","DogBreed","CatBreed","Gender","PetStatus","WeightUnit"],"mappings":"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","file":"index.js","sourcesContent":["export enum Errors {\n NOT_FOUND_ERROR = 'NotFoundError',\n BUSINESS_ERROR = 'BusinessError',\n FORBIDDEN_ERROR = 'ForbiddenError',\n SERVER_ERROR = 'ServerError',\n UNAUTHORIZED_ERROR = 'UnauthorizedError',\n BAD_REQUEST_ERROR = 'BadRequestError',\n UNPROCESSABLE_ENTITY_ERROR = 'UnprocessableEntityError',\n TOO_MANY_REQUESTS_ERROR = 'TooManyRequestsError',\n INTERNAL_SERVER_ERROR = 'InternalServerError',\n SERVICE_UNAVAILABLE_ERROR = 'ServiceUnavailableError',\n GATEWAY_TIMEOUT_ERROR = 'GatewayTimeoutError',\n BAD_GATEWAY_ERROR = 'BadGatewayError',\n PRECONDITION_FAILED_ERROR = 'PreconditionFailedError',\n PAYLOAD_TOO_LARGE_ERROR = 'PayloadTooLargeError',\n}\n","export enum HealthStatus {\n HEALTHY = 'healthy',\n UNHEALTHY = 'unhealthy',\n}\n","export enum UserRole {\n ADMIN = 'admin',\n USER = 'user',\n}\n","/**\n * How the user primarily authenticates. Switching methods is admin-only (future).\n */\nexport enum AuthMethod {\n PASSWORD = 'password',\n OAUTH = 'oauth',\n}\n","/**\n * OAuth identity provider (Auth0 connection / social). MVP: Google only; extend for Microsoft, GitHub, etc.\n */\nexport enum OAuthProvider {\n GOOGLE = 'google',\n}\n","export enum EmailProvider {\n RESEND = 'resend',\n}\n","/**\n * Enum of the animal species admitted.\n */\nexport enum Species {\n DOG = 'Dog',\n CAT = 'Cat',\n}\n","/**\n * Enum of the most common dog breeds.\n */\nexport enum DogBreed {\n LABRADOR_RETRIEVER = 'Labrador Retriever',\n GOLDEN_RETRIEVER = 'Golden Retriever',\n PASTOR_ALEMAN = 'Pastor Alemán',\n BULLDOG_FRANCES = 'Bulldog Francés',\n BULLDOG_INGLES = 'Bulldog Inglés',\n CANICHE = 'Caniche',\n BEAGLE = 'Beagle',\n ROTTWEILER = 'Rottweiler',\n CHIHUAHUA = 'Chihuahua',\n PUG = 'Pug',\n HUSKY_SIBERIANO = 'Husky Siberiano',\n BOXER = 'Bóxer',\n YORKSHIRE_TERRIER = 'Yorkshire Terrier',\n DALMATA = 'Dálmata',\n MESTIZO = 'Mestizo', // Option for common or mixed dogs\n}\n","/**\n * Enum of the most common cat breeds.\n */\nexport enum CatBreed {\n PERSA = 'Persa',\n MAINE_COON = 'Maine Coon',\n SIAMES = 'Siamés',\n RAGDOLL = 'Ragdoll',\n BENGALI = 'Bengalí',\n ESFINGE = 'Esfinge (Sphynx)',\n BRITISH_SHORTHAIR = 'Británico de pelo corto',\n ABISINIO = 'Abisinio',\n SCOTTISH_FOLD = 'Scottish Fold',\n AZUL_RUSO = 'Azul Ruso',\n ANGORA_TURCO = 'Angora Turco',\n BOSQUE_DE_NORUEGA = 'Bosque de Noruega',\n EUROPEO_COMUN = 'Europeo Común',\n MESTIZO = 'Mestizo', // Option for common or mixed cats\n}\n","/**\n * Enum of the animal gender.\n */\nexport enum Gender {\n MALE = 'Male',\n FEMALE = 'Female',\n}\n","export enum PetStatus {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n SOLD = 'sold',\n ADOPTED = 'adopted',\n LOST = 'lost',\n FOUND = 'found',\n DECEASED = 'deceased',\n}\n","export enum WeightUnit {\n KG = 'KG',\n LB = 'LB',\n}\n","export class BaseError extends Error {\n public details?: Record<string, unknown>;\n public toErrorRecord(): { error: string; details?: unknown } {\n const obj: { error: string; details?: unknown } = { error: this.message };\n if (this.details) {\n obj.details = this.details;\n }\n return obj;\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class BusinessError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.BUSINESS_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, BusinessError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ForbiddenError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.FORBIDDEN_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ForbiddenError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class NotFoundError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.NOT_FOUND_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ServerError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.SERVER_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ServerError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class UnauthorizedError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.UNAUTHORIZED_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, UnauthorizedError.prototype);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/enums/errors.ts","../src/enums/health-status.ts","../src/enums/roles.ts","../src/enums/auth-method.ts","../src/enums/oauth-provider.ts","../src/enums/email-providers.ts","../src/enums/species.ts","../src/enums/dog-breed.ts","../src/enums/cat-breed.ts","../src/enums/gender.ts","../src/enums/pet-status.ts","../src/enums/weight-unit.ts","../src/enums/treatment-status.ts","../src/enums/dose-status.ts","../src/enums/treatment-type.ts","../src/errors/BaseError.ts","../src/errors/BusinessError.ts","../src/errors/ForbiddenError.ts","../src/errors/NotFoundError.ts","../src/errors/ServerError.ts","../src/errors/UnauthorizedError.ts"],"names":["Errors","HealthStatus","UserRole","AuthMethod","OAuthProvider","EmailProvider","Species","DogBreed","CatBreed","Gender","PetStatus","WeightUnit","TreatmentStatus","DoseStatus","TreatmentType"],"mappings":"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","file":"index.js","sourcesContent":["export enum Errors {\n NOT_FOUND_ERROR = 'NotFoundError',\n BUSINESS_ERROR = 'BusinessError',\n FORBIDDEN_ERROR = 'ForbiddenError',\n SERVER_ERROR = 'ServerError',\n UNAUTHORIZED_ERROR = 'UnauthorizedError',\n BAD_REQUEST_ERROR = 'BadRequestError',\n UNPROCESSABLE_ENTITY_ERROR = 'UnprocessableEntityError',\n TOO_MANY_REQUESTS_ERROR = 'TooManyRequestsError',\n INTERNAL_SERVER_ERROR = 'InternalServerError',\n SERVICE_UNAVAILABLE_ERROR = 'ServiceUnavailableError',\n GATEWAY_TIMEOUT_ERROR = 'GatewayTimeoutError',\n BAD_GATEWAY_ERROR = 'BadGatewayError',\n PRECONDITION_FAILED_ERROR = 'PreconditionFailedError',\n PAYLOAD_TOO_LARGE_ERROR = 'PayloadTooLargeError',\n}\n","export enum HealthStatus {\n HEALTHY = 'healthy',\n UNHEALTHY = 'unhealthy',\n}\n","export enum UserRole {\n ADMIN = 'admin',\n USER = 'user',\n}\n","/**\n * How the user primarily authenticates. Switching methods is admin-only (future).\n */\nexport enum AuthMethod {\n PASSWORD = 'password',\n OAUTH = 'oauth',\n}\n","/**\n * OAuth identity provider (Auth0 connection / social). MVP: Google only; extend for Microsoft, GitHub, etc.\n */\nexport enum OAuthProvider {\n GOOGLE = 'google',\n}\n","export enum EmailProvider {\n RESEND = 'resend',\n}\n","/**\n * Enum of the animal species admitted.\n */\nexport enum Species {\n DOG = 'Dog',\n CAT = 'Cat',\n}\n","/**\n * Enum of the most common dog breeds.\n */\nexport enum DogBreed {\n LABRADOR_RETRIEVER = 'Labrador Retriever',\n GOLDEN_RETRIEVER = 'Golden Retriever',\n PASTOR_ALEMAN = 'Pastor Alemán',\n BULLDOG_FRANCES = 'Bulldog Francés',\n BULLDOG_INGLES = 'Bulldog Inglés',\n CANICHE = 'Caniche',\n BEAGLE = 'Beagle',\n ROTTWEILER = 'Rottweiler',\n CHIHUAHUA = 'Chihuahua',\n PUG = 'Pug',\n HUSKY_SIBERIANO = 'Husky Siberiano',\n BOXER = 'Bóxer',\n YORKSHIRE_TERRIER = 'Yorkshire Terrier',\n DALMATA = 'Dálmata',\n MESTIZO = 'Mestizo', // Option for common or mixed dogs\n}\n","/**\n * Enum of the most common cat breeds.\n */\nexport enum CatBreed {\n PERSA = 'Persa',\n MAINE_COON = 'Maine Coon',\n SIAMES = 'Siamés',\n RAGDOLL = 'Ragdoll',\n BENGALI = 'Bengalí',\n ESFINGE = 'Esfinge (Sphynx)',\n BRITISH_SHORTHAIR = 'Británico de pelo corto',\n ABISINIO = 'Abisinio',\n SCOTTISH_FOLD = 'Scottish Fold',\n AZUL_RUSO = 'Azul Ruso',\n ANGORA_TURCO = 'Angora Turco',\n BOSQUE_DE_NORUEGA = 'Bosque de Noruega',\n EUROPEO_COMUN = 'Europeo Común',\n MESTIZO = 'Mestizo', // Option for common or mixed cats\n}\n","/**\n * Enum of the animal gender.\n */\nexport enum Gender {\n MALE = 'Male',\n FEMALE = 'Female',\n}\n","export enum PetStatus {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n SOLD = 'sold',\n ADOPTED = 'adopted',\n LOST = 'lost',\n FOUND = 'found',\n DECEASED = 'deceased',\n}\n","export enum WeightUnit {\n KG = 'KG',\n LB = 'LB',\n}\n","export enum TreatmentStatus {\n WAITING_START = 'waiting_start',\n PENDING = 'pending',\n IN_PROGRESS = 'in_progress',\n COMPLETED = 'completed',\n CANCELLED = 'cancelled',\n}\n","export enum DoseStatus {\n PENDING = 'pending',\n ADMINISTERED = 'administered',\n SKIPPED = 'skipped',\n SNOOZED = 'snoozed',\n}\n","export enum TreatmentType {\n MEDICATION = 'medication',\n SURGERY = 'surgery',\n DIAGNOSIS = 'diagnosis',\n DESPARASITIZATION = 'desparasitization',\n VACCINATION = 'vaccination',\n EXAM = 'exam',\n DENTAL = 'dental',\n OTHER = 'other',\n}\n","export class BaseError extends Error {\n public details?: Record<string, unknown>;\n public toErrorRecord(): { error: string; details?: unknown } {\n const obj: { error: string; details?: unknown } = { error: this.message };\n if (this.details) {\n obj.details = this.details;\n }\n return obj;\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class BusinessError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.BUSINESS_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, BusinessError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ForbiddenError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.FORBIDDEN_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ForbiddenError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class NotFoundError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.NOT_FOUND_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ServerError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.SERVER_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ServerError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class UnauthorizedError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.UNAUTHORIZED_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, UnauthorizedError.prototype);\n }\n}\n"]}
|
package/dist/index.mjs
CHANGED
|
@@ -122,6 +122,38 @@ var WeightUnit = /* @__PURE__ */ ((WeightUnit2) => {
|
|
|
122
122
|
return WeightUnit2;
|
|
123
123
|
})(WeightUnit || {});
|
|
124
124
|
|
|
125
|
+
// src/enums/treatment-status.ts
|
|
126
|
+
var TreatmentStatus = /* @__PURE__ */ ((TreatmentStatus2) => {
|
|
127
|
+
TreatmentStatus2["WAITING_START"] = "waiting_start";
|
|
128
|
+
TreatmentStatus2["PENDING"] = "pending";
|
|
129
|
+
TreatmentStatus2["IN_PROGRESS"] = "in_progress";
|
|
130
|
+
TreatmentStatus2["COMPLETED"] = "completed";
|
|
131
|
+
TreatmentStatus2["CANCELLED"] = "cancelled";
|
|
132
|
+
return TreatmentStatus2;
|
|
133
|
+
})(TreatmentStatus || {});
|
|
134
|
+
|
|
135
|
+
// src/enums/dose-status.ts
|
|
136
|
+
var DoseStatus = /* @__PURE__ */ ((DoseStatus2) => {
|
|
137
|
+
DoseStatus2["PENDING"] = "pending";
|
|
138
|
+
DoseStatus2["ADMINISTERED"] = "administered";
|
|
139
|
+
DoseStatus2["SKIPPED"] = "skipped";
|
|
140
|
+
DoseStatus2["SNOOZED"] = "snoozed";
|
|
141
|
+
return DoseStatus2;
|
|
142
|
+
})(DoseStatus || {});
|
|
143
|
+
|
|
144
|
+
// src/enums/treatment-type.ts
|
|
145
|
+
var TreatmentType = /* @__PURE__ */ ((TreatmentType2) => {
|
|
146
|
+
TreatmentType2["MEDICATION"] = "medication";
|
|
147
|
+
TreatmentType2["SURGERY"] = "surgery";
|
|
148
|
+
TreatmentType2["DIAGNOSIS"] = "diagnosis";
|
|
149
|
+
TreatmentType2["DESPARASITIZATION"] = "desparasitization";
|
|
150
|
+
TreatmentType2["VACCINATION"] = "vaccination";
|
|
151
|
+
TreatmentType2["EXAM"] = "exam";
|
|
152
|
+
TreatmentType2["DENTAL"] = "dental";
|
|
153
|
+
TreatmentType2["OTHER"] = "other";
|
|
154
|
+
return TreatmentType2;
|
|
155
|
+
})(TreatmentType || {});
|
|
156
|
+
|
|
125
157
|
// src/errors/BaseError.ts
|
|
126
158
|
var BaseError = class extends Error {
|
|
127
159
|
toErrorRecord() {
|
|
@@ -183,6 +215,6 @@ var UnauthorizedError = class _UnauthorizedError extends BaseError {
|
|
|
183
215
|
}
|
|
184
216
|
};
|
|
185
217
|
|
|
186
|
-
export { AuthMethod, BaseError, BusinessError, CatBreed, DogBreed, EmailProvider, Errors, ForbiddenError, Gender, HealthStatus, NotFoundError, OAuthProvider, PetStatus, ServerError, Species, UnauthorizedError, UserRole, WeightUnit };
|
|
218
|
+
export { AuthMethod, BaseError, BusinessError, CatBreed, DogBreed, DoseStatus, EmailProvider, Errors, ForbiddenError, Gender, HealthStatus, NotFoundError, OAuthProvider, PetStatus, ServerError, Species, TreatmentStatus, TreatmentType, UnauthorizedError, UserRole, WeightUnit };
|
|
187
219
|
//# sourceMappingURL=index.mjs.map
|
|
188
220
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/enums/errors.ts","../src/enums/health-status.ts","../src/enums/roles.ts","../src/enums/auth-method.ts","../src/enums/oauth-provider.ts","../src/enums/email-providers.ts","../src/enums/species.ts","../src/enums/dog-breed.ts","../src/enums/cat-breed.ts","../src/enums/gender.ts","../src/enums/pet-status.ts","../src/enums/weight-unit.ts","../src/errors/BaseError.ts","../src/errors/BusinessError.ts","../src/errors/ForbiddenError.ts","../src/errors/NotFoundError.ts","../src/errors/ServerError.ts","../src/errors/UnauthorizedError.ts"],"names":["Errors","HealthStatus","UserRole","AuthMethod","OAuthProvider","EmailProvider","Species","DogBreed","CatBreed","Gender","PetStatus","WeightUnit"],"mappings":"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","file":"index.mjs","sourcesContent":["export enum Errors {\n NOT_FOUND_ERROR = 'NotFoundError',\n BUSINESS_ERROR = 'BusinessError',\n FORBIDDEN_ERROR = 'ForbiddenError',\n SERVER_ERROR = 'ServerError',\n UNAUTHORIZED_ERROR = 'UnauthorizedError',\n BAD_REQUEST_ERROR = 'BadRequestError',\n UNPROCESSABLE_ENTITY_ERROR = 'UnprocessableEntityError',\n TOO_MANY_REQUESTS_ERROR = 'TooManyRequestsError',\n INTERNAL_SERVER_ERROR = 'InternalServerError',\n SERVICE_UNAVAILABLE_ERROR = 'ServiceUnavailableError',\n GATEWAY_TIMEOUT_ERROR = 'GatewayTimeoutError',\n BAD_GATEWAY_ERROR = 'BadGatewayError',\n PRECONDITION_FAILED_ERROR = 'PreconditionFailedError',\n PAYLOAD_TOO_LARGE_ERROR = 'PayloadTooLargeError',\n}\n","export enum HealthStatus {\n HEALTHY = 'healthy',\n UNHEALTHY = 'unhealthy',\n}\n","export enum UserRole {\n ADMIN = 'admin',\n USER = 'user',\n}\n","/**\n * How the user primarily authenticates. Switching methods is admin-only (future).\n */\nexport enum AuthMethod {\n PASSWORD = 'password',\n OAUTH = 'oauth',\n}\n","/**\n * OAuth identity provider (Auth0 connection / social). MVP: Google only; extend for Microsoft, GitHub, etc.\n */\nexport enum OAuthProvider {\n GOOGLE = 'google',\n}\n","export enum EmailProvider {\n RESEND = 'resend',\n}\n","/**\n * Enum of the animal species admitted.\n */\nexport enum Species {\n DOG = 'Dog',\n CAT = 'Cat',\n}\n","/**\n * Enum of the most common dog breeds.\n */\nexport enum DogBreed {\n LABRADOR_RETRIEVER = 'Labrador Retriever',\n GOLDEN_RETRIEVER = 'Golden Retriever',\n PASTOR_ALEMAN = 'Pastor Alemán',\n BULLDOG_FRANCES = 'Bulldog Francés',\n BULLDOG_INGLES = 'Bulldog Inglés',\n CANICHE = 'Caniche',\n BEAGLE = 'Beagle',\n ROTTWEILER = 'Rottweiler',\n CHIHUAHUA = 'Chihuahua',\n PUG = 'Pug',\n HUSKY_SIBERIANO = 'Husky Siberiano',\n BOXER = 'Bóxer',\n YORKSHIRE_TERRIER = 'Yorkshire Terrier',\n DALMATA = 'Dálmata',\n MESTIZO = 'Mestizo', // Option for common or mixed dogs\n}\n","/**\n * Enum of the most common cat breeds.\n */\nexport enum CatBreed {\n PERSA = 'Persa',\n MAINE_COON = 'Maine Coon',\n SIAMES = 'Siamés',\n RAGDOLL = 'Ragdoll',\n BENGALI = 'Bengalí',\n ESFINGE = 'Esfinge (Sphynx)',\n BRITISH_SHORTHAIR = 'Británico de pelo corto',\n ABISINIO = 'Abisinio',\n SCOTTISH_FOLD = 'Scottish Fold',\n AZUL_RUSO = 'Azul Ruso',\n ANGORA_TURCO = 'Angora Turco',\n BOSQUE_DE_NORUEGA = 'Bosque de Noruega',\n EUROPEO_COMUN = 'Europeo Común',\n MESTIZO = 'Mestizo', // Option for common or mixed cats\n}\n","/**\n * Enum of the animal gender.\n */\nexport enum Gender {\n MALE = 'Male',\n FEMALE = 'Female',\n}\n","export enum PetStatus {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n SOLD = 'sold',\n ADOPTED = 'adopted',\n LOST = 'lost',\n FOUND = 'found',\n DECEASED = 'deceased',\n}\n","export enum WeightUnit {\n KG = 'KG',\n LB = 'LB',\n}\n","export class BaseError extends Error {\n public details?: Record<string, unknown>;\n public toErrorRecord(): { error: string; details?: unknown } {\n const obj: { error: string; details?: unknown } = { error: this.message };\n if (this.details) {\n obj.details = this.details;\n }\n return obj;\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class BusinessError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.BUSINESS_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, BusinessError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ForbiddenError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.FORBIDDEN_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ForbiddenError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class NotFoundError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.NOT_FOUND_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ServerError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.SERVER_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ServerError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class UnauthorizedError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.UNAUTHORIZED_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, UnauthorizedError.prototype);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/enums/errors.ts","../src/enums/health-status.ts","../src/enums/roles.ts","../src/enums/auth-method.ts","../src/enums/oauth-provider.ts","../src/enums/email-providers.ts","../src/enums/species.ts","../src/enums/dog-breed.ts","../src/enums/cat-breed.ts","../src/enums/gender.ts","../src/enums/pet-status.ts","../src/enums/weight-unit.ts","../src/enums/treatment-status.ts","../src/enums/dose-status.ts","../src/enums/treatment-type.ts","../src/errors/BaseError.ts","../src/errors/BusinessError.ts","../src/errors/ForbiddenError.ts","../src/errors/NotFoundError.ts","../src/errors/ServerError.ts","../src/errors/UnauthorizedError.ts"],"names":["Errors","HealthStatus","UserRole","AuthMethod","OAuthProvider","EmailProvider","Species","DogBreed","CatBreed","Gender","PetStatus","WeightUnit","TreatmentStatus","DoseStatus","TreatmentType"],"mappings":"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","file":"index.mjs","sourcesContent":["export enum Errors {\n NOT_FOUND_ERROR = 'NotFoundError',\n BUSINESS_ERROR = 'BusinessError',\n FORBIDDEN_ERROR = 'ForbiddenError',\n SERVER_ERROR = 'ServerError',\n UNAUTHORIZED_ERROR = 'UnauthorizedError',\n BAD_REQUEST_ERROR = 'BadRequestError',\n UNPROCESSABLE_ENTITY_ERROR = 'UnprocessableEntityError',\n TOO_MANY_REQUESTS_ERROR = 'TooManyRequestsError',\n INTERNAL_SERVER_ERROR = 'InternalServerError',\n SERVICE_UNAVAILABLE_ERROR = 'ServiceUnavailableError',\n GATEWAY_TIMEOUT_ERROR = 'GatewayTimeoutError',\n BAD_GATEWAY_ERROR = 'BadGatewayError',\n PRECONDITION_FAILED_ERROR = 'PreconditionFailedError',\n PAYLOAD_TOO_LARGE_ERROR = 'PayloadTooLargeError',\n}\n","export enum HealthStatus {\n HEALTHY = 'healthy',\n UNHEALTHY = 'unhealthy',\n}\n","export enum UserRole {\n ADMIN = 'admin',\n USER = 'user',\n}\n","/**\n * How the user primarily authenticates. Switching methods is admin-only (future).\n */\nexport enum AuthMethod {\n PASSWORD = 'password',\n OAUTH = 'oauth',\n}\n","/**\n * OAuth identity provider (Auth0 connection / social). MVP: Google only; extend for Microsoft, GitHub, etc.\n */\nexport enum OAuthProvider {\n GOOGLE = 'google',\n}\n","export enum EmailProvider {\n RESEND = 'resend',\n}\n","/**\n * Enum of the animal species admitted.\n */\nexport enum Species {\n DOG = 'Dog',\n CAT = 'Cat',\n}\n","/**\n * Enum of the most common dog breeds.\n */\nexport enum DogBreed {\n LABRADOR_RETRIEVER = 'Labrador Retriever',\n GOLDEN_RETRIEVER = 'Golden Retriever',\n PASTOR_ALEMAN = 'Pastor Alemán',\n BULLDOG_FRANCES = 'Bulldog Francés',\n BULLDOG_INGLES = 'Bulldog Inglés',\n CANICHE = 'Caniche',\n BEAGLE = 'Beagle',\n ROTTWEILER = 'Rottweiler',\n CHIHUAHUA = 'Chihuahua',\n PUG = 'Pug',\n HUSKY_SIBERIANO = 'Husky Siberiano',\n BOXER = 'Bóxer',\n YORKSHIRE_TERRIER = 'Yorkshire Terrier',\n DALMATA = 'Dálmata',\n MESTIZO = 'Mestizo', // Option for common or mixed dogs\n}\n","/**\n * Enum of the most common cat breeds.\n */\nexport enum CatBreed {\n PERSA = 'Persa',\n MAINE_COON = 'Maine Coon',\n SIAMES = 'Siamés',\n RAGDOLL = 'Ragdoll',\n BENGALI = 'Bengalí',\n ESFINGE = 'Esfinge (Sphynx)',\n BRITISH_SHORTHAIR = 'Británico de pelo corto',\n ABISINIO = 'Abisinio',\n SCOTTISH_FOLD = 'Scottish Fold',\n AZUL_RUSO = 'Azul Ruso',\n ANGORA_TURCO = 'Angora Turco',\n BOSQUE_DE_NORUEGA = 'Bosque de Noruega',\n EUROPEO_COMUN = 'Europeo Común',\n MESTIZO = 'Mestizo', // Option for common or mixed cats\n}\n","/**\n * Enum of the animal gender.\n */\nexport enum Gender {\n MALE = 'Male',\n FEMALE = 'Female',\n}\n","export enum PetStatus {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n SOLD = 'sold',\n ADOPTED = 'adopted',\n LOST = 'lost',\n FOUND = 'found',\n DECEASED = 'deceased',\n}\n","export enum WeightUnit {\n KG = 'KG',\n LB = 'LB',\n}\n","export enum TreatmentStatus {\n WAITING_START = 'waiting_start',\n PENDING = 'pending',\n IN_PROGRESS = 'in_progress',\n COMPLETED = 'completed',\n CANCELLED = 'cancelled',\n}\n","export enum DoseStatus {\n PENDING = 'pending',\n ADMINISTERED = 'administered',\n SKIPPED = 'skipped',\n SNOOZED = 'snoozed',\n}\n","export enum TreatmentType {\n MEDICATION = 'medication',\n SURGERY = 'surgery',\n DIAGNOSIS = 'diagnosis',\n DESPARASITIZATION = 'desparasitization',\n VACCINATION = 'vaccination',\n EXAM = 'exam',\n DENTAL = 'dental',\n OTHER = 'other',\n}\n","export class BaseError extends Error {\n public details?: Record<string, unknown>;\n public toErrorRecord(): { error: string; details?: unknown } {\n const obj: { error: string; details?: unknown } = { error: this.message };\n if (this.details) {\n obj.details = this.details;\n }\n return obj;\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class BusinessError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.BUSINESS_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, BusinessError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ForbiddenError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.FORBIDDEN_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ForbiddenError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class NotFoundError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.NOT_FOUND_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, NotFoundError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class ServerError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.SERVER_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, ServerError.prototype);\n }\n}\n","import { BaseError } from '@/errors/BaseError';\nimport { Errors } from '@/enums/errors';\n\nexport class UnauthorizedError extends BaseError {\n public details?: Record<string, unknown>;\n public constructor(message: string, details?: Record<string, unknown>) {\n super(message);\n this.name = Errors.UNAUTHORIZED_ERROR;\n this.details = details || {};\n Object.setPrototypeOf(this, UnauthorizedError.prototype);\n }\n}\n"]}
|