@customafk/lunas-api-sdk 0.0.83 → 0.0.85
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.cts +231 -0
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +231 -0
- package/dist/index.d.mts.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -5284,6 +5284,237 @@ declare const _createClient: () => {
|
|
|
5284
5284
|
} & {
|
|
5285
5285
|
'~path': string;
|
|
5286
5286
|
};
|
|
5287
|
+
"order-status-trend": {
|
|
5288
|
+
get: ((options: {
|
|
5289
|
+
fetch?: RequestInit | undefined;
|
|
5290
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5291
|
+
headers?: {} | undefined;
|
|
5292
|
+
query: {
|
|
5293
|
+
interval: "day" | "week" | "month";
|
|
5294
|
+
startDate?: string | undefined;
|
|
5295
|
+
endDate?: string | undefined;
|
|
5296
|
+
};
|
|
5297
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5298
|
+
200: {
|
|
5299
|
+
success: false;
|
|
5300
|
+
statusCode: number;
|
|
5301
|
+
data: null;
|
|
5302
|
+
message: string;
|
|
5303
|
+
error: TResponseError;
|
|
5304
|
+
meta: TResponseMeta;
|
|
5305
|
+
} | {
|
|
5306
|
+
success: true;
|
|
5307
|
+
statusCode: number;
|
|
5308
|
+
data: {
|
|
5309
|
+
interval: "day" | "week" | "month";
|
|
5310
|
+
series: Record<string, string | number>[];
|
|
5311
|
+
};
|
|
5312
|
+
message: null;
|
|
5313
|
+
error: null;
|
|
5314
|
+
meta: TResponseMeta;
|
|
5315
|
+
};
|
|
5316
|
+
422: {
|
|
5317
|
+
type: "validation";
|
|
5318
|
+
on: string;
|
|
5319
|
+
summary?: string;
|
|
5320
|
+
message?: string;
|
|
5321
|
+
found?: unknown;
|
|
5322
|
+
property?: string;
|
|
5323
|
+
expected?: string;
|
|
5324
|
+
};
|
|
5325
|
+
}>>) & {
|
|
5326
|
+
'~path': string;
|
|
5327
|
+
};
|
|
5328
|
+
} & {
|
|
5329
|
+
'~path': string;
|
|
5330
|
+
};
|
|
5331
|
+
"fulfillment-status-trend": {
|
|
5332
|
+
get: ((options: {
|
|
5333
|
+
fetch?: RequestInit | undefined;
|
|
5334
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5335
|
+
headers?: {} | undefined;
|
|
5336
|
+
query: {
|
|
5337
|
+
interval: "day" | "week" | "month";
|
|
5338
|
+
startDate?: string | undefined;
|
|
5339
|
+
endDate?: string | undefined;
|
|
5340
|
+
};
|
|
5341
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5342
|
+
200: {
|
|
5343
|
+
success: false;
|
|
5344
|
+
statusCode: number;
|
|
5345
|
+
data: null;
|
|
5346
|
+
message: string;
|
|
5347
|
+
error: TResponseError;
|
|
5348
|
+
meta: TResponseMeta;
|
|
5349
|
+
} | {
|
|
5350
|
+
success: true;
|
|
5351
|
+
statusCode: number;
|
|
5352
|
+
data: {
|
|
5353
|
+
interval: "day" | "week" | "month";
|
|
5354
|
+
series: Record<string, string | number>[];
|
|
5355
|
+
};
|
|
5356
|
+
message: null;
|
|
5357
|
+
error: null;
|
|
5358
|
+
meta: TResponseMeta;
|
|
5359
|
+
};
|
|
5360
|
+
422: {
|
|
5361
|
+
type: "validation";
|
|
5362
|
+
on: string;
|
|
5363
|
+
summary?: string;
|
|
5364
|
+
message?: string;
|
|
5365
|
+
found?: unknown;
|
|
5366
|
+
property?: string;
|
|
5367
|
+
expected?: string;
|
|
5368
|
+
};
|
|
5369
|
+
}>>) & {
|
|
5370
|
+
'~path': string;
|
|
5371
|
+
};
|
|
5372
|
+
} & {
|
|
5373
|
+
'~path': string;
|
|
5374
|
+
};
|
|
5375
|
+
"top-customers": {
|
|
5376
|
+
get: ((options: {
|
|
5377
|
+
fetch?: RequestInit | undefined;
|
|
5378
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5379
|
+
headers?: {} | undefined;
|
|
5380
|
+
query: {
|
|
5381
|
+
limit: number;
|
|
5382
|
+
startDate?: string | undefined;
|
|
5383
|
+
endDate?: string | undefined;
|
|
5384
|
+
};
|
|
5385
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5386
|
+
200: {
|
|
5387
|
+
success: false;
|
|
5388
|
+
statusCode: number;
|
|
5389
|
+
data: null;
|
|
5390
|
+
message: string;
|
|
5391
|
+
error: TResponseError;
|
|
5392
|
+
meta: TResponseMeta;
|
|
5393
|
+
} | {
|
|
5394
|
+
success: true;
|
|
5395
|
+
statusCode: number;
|
|
5396
|
+
data: {
|
|
5397
|
+
userUuid: string | null;
|
|
5398
|
+
customerEmail: string | null;
|
|
5399
|
+
customerName: string;
|
|
5400
|
+
isGuest: boolean;
|
|
5401
|
+
orderCount: number;
|
|
5402
|
+
totalRevenue: number;
|
|
5403
|
+
}[];
|
|
5404
|
+
message: null;
|
|
5405
|
+
error: null;
|
|
5406
|
+
meta: TResponseMeta;
|
|
5407
|
+
};
|
|
5408
|
+
422: {
|
|
5409
|
+
type: "validation";
|
|
5410
|
+
on: string;
|
|
5411
|
+
summary?: string;
|
|
5412
|
+
message?: string;
|
|
5413
|
+
found?: unknown;
|
|
5414
|
+
property?: string;
|
|
5415
|
+
expected?: string;
|
|
5416
|
+
};
|
|
5417
|
+
}>>) & {
|
|
5418
|
+
'~path': string;
|
|
5419
|
+
};
|
|
5420
|
+
} & {
|
|
5421
|
+
'~path': string;
|
|
5422
|
+
};
|
|
5423
|
+
"outstanding-balance": {
|
|
5424
|
+
get: ((options?: {
|
|
5425
|
+
fetch?: RequestInit | undefined;
|
|
5426
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5427
|
+
headers?: {} | undefined;
|
|
5428
|
+
query?: {
|
|
5429
|
+
startDate?: string | undefined;
|
|
5430
|
+
endDate?: string | undefined;
|
|
5431
|
+
} | undefined;
|
|
5432
|
+
} | undefined) => Promise<Treaty.TreatyResponse<{
|
|
5433
|
+
200: {
|
|
5434
|
+
success: false;
|
|
5435
|
+
statusCode: number;
|
|
5436
|
+
data: null;
|
|
5437
|
+
message: string;
|
|
5438
|
+
error: TResponseError;
|
|
5439
|
+
meta: TResponseMeta;
|
|
5440
|
+
} | {
|
|
5441
|
+
success: true;
|
|
5442
|
+
statusCode: number;
|
|
5443
|
+
data: {
|
|
5444
|
+
totalOutstanding: number;
|
|
5445
|
+
orderCount: number;
|
|
5446
|
+
byStatus: {
|
|
5447
|
+
status: "DRAFT" | "PENDING" | "CONFIRMED" | "PROCESSING" | "COMPLETED" | "CANCELLED";
|
|
5448
|
+
orderCount: number;
|
|
5449
|
+
totalOutstanding: number;
|
|
5450
|
+
}[];
|
|
5451
|
+
};
|
|
5452
|
+
message: null;
|
|
5453
|
+
error: null;
|
|
5454
|
+
meta: TResponseMeta;
|
|
5455
|
+
};
|
|
5456
|
+
422: {
|
|
5457
|
+
type: "validation";
|
|
5458
|
+
on: string;
|
|
5459
|
+
summary?: string;
|
|
5460
|
+
message?: string;
|
|
5461
|
+
found?: unknown;
|
|
5462
|
+
property?: string;
|
|
5463
|
+
expected?: string;
|
|
5464
|
+
};
|
|
5465
|
+
}>>) & {
|
|
5466
|
+
'~path': string;
|
|
5467
|
+
};
|
|
5468
|
+
} & {
|
|
5469
|
+
'~path': string;
|
|
5470
|
+
};
|
|
5471
|
+
"order-type-breakdown": {
|
|
5472
|
+
get: ((options?: {
|
|
5473
|
+
fetch?: RequestInit | undefined;
|
|
5474
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5475
|
+
headers?: {} | undefined;
|
|
5476
|
+
query?: {
|
|
5477
|
+
startDate?: string | undefined;
|
|
5478
|
+
endDate?: string | undefined;
|
|
5479
|
+
} | undefined;
|
|
5480
|
+
} | undefined) => Promise<Treaty.TreatyResponse<{
|
|
5481
|
+
200: {
|
|
5482
|
+
success: false;
|
|
5483
|
+
statusCode: number;
|
|
5484
|
+
data: null;
|
|
5485
|
+
message: string;
|
|
5486
|
+
error: TResponseError;
|
|
5487
|
+
meta: TResponseMeta;
|
|
5488
|
+
} | {
|
|
5489
|
+
success: true;
|
|
5490
|
+
statusCode: number;
|
|
5491
|
+
data: {
|
|
5492
|
+
total: number;
|
|
5493
|
+
byOrderType: {
|
|
5494
|
+
orderType: "ORDER" | "IN-STOCK";
|
|
5495
|
+
orderCount: number;
|
|
5496
|
+
totalRevenue: number;
|
|
5497
|
+
}[];
|
|
5498
|
+
};
|
|
5499
|
+
message: null;
|
|
5500
|
+
error: null;
|
|
5501
|
+
meta: TResponseMeta;
|
|
5502
|
+
};
|
|
5503
|
+
422: {
|
|
5504
|
+
type: "validation";
|
|
5505
|
+
on: string;
|
|
5506
|
+
summary?: string;
|
|
5507
|
+
message?: string;
|
|
5508
|
+
found?: unknown;
|
|
5509
|
+
property?: string;
|
|
5510
|
+
expected?: string;
|
|
5511
|
+
};
|
|
5512
|
+
}>>) & {
|
|
5513
|
+
'~path': string;
|
|
5514
|
+
};
|
|
5515
|
+
} & {
|
|
5516
|
+
'~path': string;
|
|
5517
|
+
};
|
|
5287
5518
|
} & {
|
|
5288
5519
|
'~path': string;
|
|
5289
5520
|
};
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
|
package/dist/index.d.mts
CHANGED
|
@@ -5284,6 +5284,237 @@ declare const _createClient: () => {
|
|
|
5284
5284
|
} & {
|
|
5285
5285
|
'~path': string;
|
|
5286
5286
|
};
|
|
5287
|
+
"order-status-trend": {
|
|
5288
|
+
get: ((options: {
|
|
5289
|
+
fetch?: RequestInit | undefined;
|
|
5290
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5291
|
+
headers?: {} | undefined;
|
|
5292
|
+
query: {
|
|
5293
|
+
interval: "day" | "week" | "month";
|
|
5294
|
+
startDate?: string | undefined;
|
|
5295
|
+
endDate?: string | undefined;
|
|
5296
|
+
};
|
|
5297
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5298
|
+
200: {
|
|
5299
|
+
success: false;
|
|
5300
|
+
statusCode: number;
|
|
5301
|
+
data: null;
|
|
5302
|
+
message: string;
|
|
5303
|
+
error: TResponseError;
|
|
5304
|
+
meta: TResponseMeta;
|
|
5305
|
+
} | {
|
|
5306
|
+
success: true;
|
|
5307
|
+
statusCode: number;
|
|
5308
|
+
data: {
|
|
5309
|
+
interval: "day" | "week" | "month";
|
|
5310
|
+
series: Record<string, string | number>[];
|
|
5311
|
+
};
|
|
5312
|
+
message: null;
|
|
5313
|
+
error: null;
|
|
5314
|
+
meta: TResponseMeta;
|
|
5315
|
+
};
|
|
5316
|
+
422: {
|
|
5317
|
+
type: "validation";
|
|
5318
|
+
on: string;
|
|
5319
|
+
summary?: string;
|
|
5320
|
+
message?: string;
|
|
5321
|
+
found?: unknown;
|
|
5322
|
+
property?: string;
|
|
5323
|
+
expected?: string;
|
|
5324
|
+
};
|
|
5325
|
+
}>>) & {
|
|
5326
|
+
'~path': string;
|
|
5327
|
+
};
|
|
5328
|
+
} & {
|
|
5329
|
+
'~path': string;
|
|
5330
|
+
};
|
|
5331
|
+
"fulfillment-status-trend": {
|
|
5332
|
+
get: ((options: {
|
|
5333
|
+
fetch?: RequestInit | undefined;
|
|
5334
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5335
|
+
headers?: {} | undefined;
|
|
5336
|
+
query: {
|
|
5337
|
+
interval: "day" | "week" | "month";
|
|
5338
|
+
startDate?: string | undefined;
|
|
5339
|
+
endDate?: string | undefined;
|
|
5340
|
+
};
|
|
5341
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5342
|
+
200: {
|
|
5343
|
+
success: false;
|
|
5344
|
+
statusCode: number;
|
|
5345
|
+
data: null;
|
|
5346
|
+
message: string;
|
|
5347
|
+
error: TResponseError;
|
|
5348
|
+
meta: TResponseMeta;
|
|
5349
|
+
} | {
|
|
5350
|
+
success: true;
|
|
5351
|
+
statusCode: number;
|
|
5352
|
+
data: {
|
|
5353
|
+
interval: "day" | "week" | "month";
|
|
5354
|
+
series: Record<string, string | number>[];
|
|
5355
|
+
};
|
|
5356
|
+
message: null;
|
|
5357
|
+
error: null;
|
|
5358
|
+
meta: TResponseMeta;
|
|
5359
|
+
};
|
|
5360
|
+
422: {
|
|
5361
|
+
type: "validation";
|
|
5362
|
+
on: string;
|
|
5363
|
+
summary?: string;
|
|
5364
|
+
message?: string;
|
|
5365
|
+
found?: unknown;
|
|
5366
|
+
property?: string;
|
|
5367
|
+
expected?: string;
|
|
5368
|
+
};
|
|
5369
|
+
}>>) & {
|
|
5370
|
+
'~path': string;
|
|
5371
|
+
};
|
|
5372
|
+
} & {
|
|
5373
|
+
'~path': string;
|
|
5374
|
+
};
|
|
5375
|
+
"top-customers": {
|
|
5376
|
+
get: ((options: {
|
|
5377
|
+
fetch?: RequestInit | undefined;
|
|
5378
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5379
|
+
headers?: {} | undefined;
|
|
5380
|
+
query: {
|
|
5381
|
+
limit: number;
|
|
5382
|
+
startDate?: string | undefined;
|
|
5383
|
+
endDate?: string | undefined;
|
|
5384
|
+
};
|
|
5385
|
+
}) => Promise<Treaty.TreatyResponse<{
|
|
5386
|
+
200: {
|
|
5387
|
+
success: false;
|
|
5388
|
+
statusCode: number;
|
|
5389
|
+
data: null;
|
|
5390
|
+
message: string;
|
|
5391
|
+
error: TResponseError;
|
|
5392
|
+
meta: TResponseMeta;
|
|
5393
|
+
} | {
|
|
5394
|
+
success: true;
|
|
5395
|
+
statusCode: number;
|
|
5396
|
+
data: {
|
|
5397
|
+
userUuid: string | null;
|
|
5398
|
+
customerEmail: string | null;
|
|
5399
|
+
customerName: string;
|
|
5400
|
+
isGuest: boolean;
|
|
5401
|
+
orderCount: number;
|
|
5402
|
+
totalRevenue: number;
|
|
5403
|
+
}[];
|
|
5404
|
+
message: null;
|
|
5405
|
+
error: null;
|
|
5406
|
+
meta: TResponseMeta;
|
|
5407
|
+
};
|
|
5408
|
+
422: {
|
|
5409
|
+
type: "validation";
|
|
5410
|
+
on: string;
|
|
5411
|
+
summary?: string;
|
|
5412
|
+
message?: string;
|
|
5413
|
+
found?: unknown;
|
|
5414
|
+
property?: string;
|
|
5415
|
+
expected?: string;
|
|
5416
|
+
};
|
|
5417
|
+
}>>) & {
|
|
5418
|
+
'~path': string;
|
|
5419
|
+
};
|
|
5420
|
+
} & {
|
|
5421
|
+
'~path': string;
|
|
5422
|
+
};
|
|
5423
|
+
"outstanding-balance": {
|
|
5424
|
+
get: ((options?: {
|
|
5425
|
+
fetch?: RequestInit | undefined;
|
|
5426
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5427
|
+
headers?: {} | undefined;
|
|
5428
|
+
query?: {
|
|
5429
|
+
startDate?: string | undefined;
|
|
5430
|
+
endDate?: string | undefined;
|
|
5431
|
+
} | undefined;
|
|
5432
|
+
} | undefined) => Promise<Treaty.TreatyResponse<{
|
|
5433
|
+
200: {
|
|
5434
|
+
success: false;
|
|
5435
|
+
statusCode: number;
|
|
5436
|
+
data: null;
|
|
5437
|
+
message: string;
|
|
5438
|
+
error: TResponseError;
|
|
5439
|
+
meta: TResponseMeta;
|
|
5440
|
+
} | {
|
|
5441
|
+
success: true;
|
|
5442
|
+
statusCode: number;
|
|
5443
|
+
data: {
|
|
5444
|
+
totalOutstanding: number;
|
|
5445
|
+
orderCount: number;
|
|
5446
|
+
byStatus: {
|
|
5447
|
+
status: "DRAFT" | "PENDING" | "CONFIRMED" | "PROCESSING" | "COMPLETED" | "CANCELLED";
|
|
5448
|
+
orderCount: number;
|
|
5449
|
+
totalOutstanding: number;
|
|
5450
|
+
}[];
|
|
5451
|
+
};
|
|
5452
|
+
message: null;
|
|
5453
|
+
error: null;
|
|
5454
|
+
meta: TResponseMeta;
|
|
5455
|
+
};
|
|
5456
|
+
422: {
|
|
5457
|
+
type: "validation";
|
|
5458
|
+
on: string;
|
|
5459
|
+
summary?: string;
|
|
5460
|
+
message?: string;
|
|
5461
|
+
found?: unknown;
|
|
5462
|
+
property?: string;
|
|
5463
|
+
expected?: string;
|
|
5464
|
+
};
|
|
5465
|
+
}>>) & {
|
|
5466
|
+
'~path': string;
|
|
5467
|
+
};
|
|
5468
|
+
} & {
|
|
5469
|
+
'~path': string;
|
|
5470
|
+
};
|
|
5471
|
+
"order-type-breakdown": {
|
|
5472
|
+
get: ((options?: {
|
|
5473
|
+
fetch?: RequestInit | undefined;
|
|
5474
|
+
throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
|
|
5475
|
+
headers?: {} | undefined;
|
|
5476
|
+
query?: {
|
|
5477
|
+
startDate?: string | undefined;
|
|
5478
|
+
endDate?: string | undefined;
|
|
5479
|
+
} | undefined;
|
|
5480
|
+
} | undefined) => Promise<Treaty.TreatyResponse<{
|
|
5481
|
+
200: {
|
|
5482
|
+
success: false;
|
|
5483
|
+
statusCode: number;
|
|
5484
|
+
data: null;
|
|
5485
|
+
message: string;
|
|
5486
|
+
error: TResponseError;
|
|
5487
|
+
meta: TResponseMeta;
|
|
5488
|
+
} | {
|
|
5489
|
+
success: true;
|
|
5490
|
+
statusCode: number;
|
|
5491
|
+
data: {
|
|
5492
|
+
total: number;
|
|
5493
|
+
byOrderType: {
|
|
5494
|
+
orderType: "ORDER" | "IN-STOCK";
|
|
5495
|
+
orderCount: number;
|
|
5496
|
+
totalRevenue: number;
|
|
5497
|
+
}[];
|
|
5498
|
+
};
|
|
5499
|
+
message: null;
|
|
5500
|
+
error: null;
|
|
5501
|
+
meta: TResponseMeta;
|
|
5502
|
+
};
|
|
5503
|
+
422: {
|
|
5504
|
+
type: "validation";
|
|
5505
|
+
on: string;
|
|
5506
|
+
summary?: string;
|
|
5507
|
+
message?: string;
|
|
5508
|
+
found?: unknown;
|
|
5509
|
+
property?: string;
|
|
5510
|
+
expected?: string;
|
|
5511
|
+
};
|
|
5512
|
+
}>>) & {
|
|
5513
|
+
'~path': string;
|
|
5514
|
+
};
|
|
5515
|
+
} & {
|
|
5516
|
+
'~path': string;
|
|
5517
|
+
};
|
|
5287
5518
|
} & {
|
|
5288
5519
|
'~path': string;
|
|
5289
5520
|
};
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
|