@plyaz/types 1.27.2 → 1.27.4

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.cjs CHANGED
@@ -6,767 +6,6 @@ var zod = require('zod');
6
6
  var __defProp = Object.defineProperty;
7
7
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
8
 
9
- // src/http/constants.ts
10
- var HTTP_STATUS = {
11
- // 1xx Informational
12
- /**
13
- * 100 Continue - The initial part of a request has been received
14
- */
15
- CONTINUE: 100,
16
- /**
17
- * 101 Switching Protocols - The server is switching protocols
18
- */
19
- SWITCHING_PROTOCOLS: 101,
20
- /**
21
- * 102 Processing - The server has received and is processing the request
22
- */
23
- PROCESSING: 102,
24
- /**
25
- * 103 Early Hints - Used to return some response headers before final HTTP message
26
- */
27
- EARLY_HINTS: 103,
28
- // 2xx Success
29
- /**
30
- * 200 OK - The request succeeded
31
- */
32
- OK: 200,
33
- /**
34
- * 201 Created - The request succeeded and a new resource was created
35
- */
36
- CREATED: 201,
37
- /**
38
- * 202 Accepted - The request has been received but not yet acted upon
39
- */
40
- ACCEPTED: 202,
41
- /**
42
- * 203 Non-Authoritative Information - The returned metadata is not from the origin server
43
- */
44
- NON_AUTHORITATIVE_INFORMATION: 203,
45
- /**
46
- * 204 No Content - There is no content to send for this request
47
- */
48
- NO_CONTENT: 204,
49
- /**
50
- * 205 Reset Content - Tells the user agent to reset the document
51
- */
52
- RESET_CONTENT: 205,
53
- /**
54
- * 206 Partial Content - The server is delivering only part of the resource
55
- */
56
- PARTIAL_CONTENT: 206,
57
- /**
58
- * 207 Multi-Status - Conveys information about multiple resources
59
- */
60
- MULTI_STATUS: 207,
61
- /**
62
- * 208 Already Reported - The members of a DAV binding have already been enumerated
63
- */
64
- ALREADY_REPORTED: 208,
65
- /**
66
- * 226 IM Used - The server has fulfilled a request for the resource
67
- */
68
- IM_USED: 226,
69
- // 3xx Redirection
70
- /**
71
- * 300 Multiple Choices - Multiple options for the resource are available
72
- */
73
- MULTIPLE_CHOICES: 300,
74
- /**
75
- * 301 Moved Permanently - The URL of the requested resource has been changed permanently
76
- */
77
- MOVED_PERMANENTLY: 301,
78
- /**
79
- * 302 Found - The resource resides temporarily under a different URI
80
- */
81
- FOUND: 302,
82
- /**
83
- * 303 See Other - Direct the client to get the resource at another URI
84
- */
85
- SEE_OTHER: 303,
86
- /**
87
- * 304 Not Modified - The cached version is still valid
88
- */
89
- NOT_MODIFIED: 304,
90
- /**
91
- * 305 Use Proxy - Defined in a previous version of the HTTP specification
92
- */
93
- USE_PROXY: 305,
94
- /**
95
- * 307 Temporary Redirect - The request should be repeated with another URI
96
- */
97
- TEMPORARY_REDIRECT: 307,
98
- /**
99
- * 308 Permanent Redirect - The resource is permanently located at another URI
100
- */
101
- PERMANENT_REDIRECT: 308,
102
- // 4xx Client Errors
103
- /**
104
- * 400 Bad Request - The server cannot process the request due to client error
105
- */
106
- BAD_REQUEST: 400,
107
- /**
108
- * 401 Unauthorized - Authentication is required and has failed or not been provided
109
- */
110
- UNAUTHORIZED: 401,
111
- /**
112
- * 402 Payment Required - Reserved for future use
113
- */
114
- PAYMENT_REQUIRED: 402,
115
- /**
116
- * 403 Forbidden - The server understood the request but refuses to authorize it
117
- */
118
- FORBIDDEN: 403,
119
- /**
120
- * 404 Not Found - The server cannot find the requested resource
121
- */
122
- NOT_FOUND: 404,
123
- /**
124
- * 405 Method Not Allowed - The request method is not supported for the requested resource
125
- */
126
- METHOD_NOT_ALLOWED: 405,
127
- /**
128
- * 406 Not Acceptable - The requested resource is not available in a format acceptable to the client
129
- */
130
- NOT_ACCEPTABLE: 406,
131
- /**
132
- * 407 Proxy Authentication Required - The client must authenticate itself with the proxy
133
- */
134
- PROXY_AUTHENTICATION_REQUIRED: 407,
135
- /**
136
- * 408 Request Timeout - The server timed out waiting for the request
137
- */
138
- REQUEST_TIMEOUT: 408,
139
- /**
140
- * 409 Conflict - The request conflicts with the current state of the server
141
- */
142
- CONFLICT: 409,
143
- /**
144
- * 410 Gone - The requested resource is no longer available and will not be available again
145
- */
146
- GONE: 410,
147
- /**
148
- * 411 Length Required - The request did not specify the length of its content
149
- */
150
- LENGTH_REQUIRED: 411,
151
- /**
152
- * 412 Precondition Failed - The server does not meet one of the preconditions
153
- */
154
- PRECONDITION_FAILED: 412,
155
- /**
156
- * 413 Payload Too Large - The request is larger than the server is willing to process
157
- */
158
- PAYLOAD_TOO_LARGE: 413,
159
- /**
160
- * 414 URI Too Long - The URI provided was too long for the server to process
161
- */
162
- URI_TOO_LONG: 414,
163
- /**
164
- * 415 Unsupported Media Type - The request entity has a media type not supported by the server
165
- */
166
- UNSUPPORTED_MEDIA_TYPE: 415,
167
- /**
168
- * 416 Range Not Satisfiable - The client has asked for a portion of the file that the server cannot supply
169
- */
170
- RANGE_NOT_SATISFIABLE: 416,
171
- /**
172
- * 417 Expectation Failed - The server cannot meet the requirements of the Expect request-header field
173
- */
174
- EXPECTATION_FAILED: 417,
175
- /**
176
- * 418 I'm a teapot - The server refuses to brew coffee because it is a teapot
177
- */
178
- IM_A_TEAPOT: 418,
179
- /**
180
- * 421 Misdirected Request - The request was directed at a server that is not able to produce a response
181
- */
182
- MISDIRECTED_REQUEST: 421,
183
- /**
184
- * 422 Unprocessable Entity - The request was well-formed but was unable to be followed due to semantic errors
185
- */
186
- UNPROCESSABLE_ENTITY: 422,
187
- /**
188
- * 423 Locked - The resource that is being accessed is locked
189
- */
190
- LOCKED: 423,
191
- /**
192
- * 424 Failed Dependency - The request failed due to failure of a previous request
193
- */
194
- FAILED_DEPENDENCY: 424,
195
- /**
196
- * 425 Too Early - The server is unwilling to risk processing a request that might be replayed
197
- */
198
- TOO_EARLY: 425,
199
- /**
200
- * 426 Upgrade Required - The client should switch to a different protocol
201
- */
202
- UPGRADE_REQUIRED: 426,
203
- /**
204
- * 428 Precondition Required - The origin server requires the request to be conditional
205
- */
206
- PRECONDITION_REQUIRED: 428,
207
- /**
208
- * 429 Too Many Requests - The user has sent too many requests in a given amount of time
209
- */
210
- TOO_MANY_REQUESTS: 429,
211
- /**
212
- * 431 Request Header Fields Too Large - The server is unwilling to process the request because its header fields are too large
213
- */
214
- REQUEST_HEADER_FIELDS_TOO_LARGE: 431,
215
- /**
216
- * 451 Unavailable For Legal Reasons - The user requested a resource that cannot legally be provided
217
- */
218
- UNAVAILABLE_FOR_LEGAL_REASONS: 451,
219
- // 5xx Server Errors
220
- /**
221
- * 500 Internal Server Error - The server encountered an unexpected condition
222
- */
223
- INTERNAL_SERVER_ERROR: 500,
224
- /**
225
- * 501 Not Implemented - The server does not support the functionality required to fulfill the request
226
- */
227
- NOT_IMPLEMENTED: 501,
228
- /**
229
- * 502 Bad Gateway - The server received an invalid response from the upstream server
230
- */
231
- BAD_GATEWAY: 502,
232
- /**
233
- * 503 Service Unavailable - The server is not ready to handle the request
234
- */
235
- SERVICE_UNAVAILABLE: 503,
236
- /**
237
- * 504 Gateway Timeout - The server did not get a response in time from the upstream server
238
- */
239
- GATEWAY_TIMEOUT: 504,
240
- /**
241
- * 505 HTTP Version Not Supported - The HTTP version used in the request is not supported by the server
242
- */
243
- HTTP_VERSION_NOT_SUPPORTED: 505,
244
- /**
245
- * 506 Variant Also Negotiates - The server has an internal configuration error
246
- */
247
- VARIANT_ALSO_NEGOTIATES: 506,
248
- /**
249
- * 507 Insufficient Storage - The server is unable to store the representation needed to complete the request
250
- */
251
- INSUFFICIENT_STORAGE: 507,
252
- /**
253
- * 508 Loop Detected - The server detected an infinite loop while processing the request
254
- */
255
- LOOP_DETECTED: 508,
256
- /**
257
- * 510 Not Extended - Further extensions to the request are required for the server to fulfill it
258
- */
259
- NOT_EXTENDED: 510,
260
- /**
261
- * 511 Network Authentication Required - The client needs to authenticate to gain network access
262
- */
263
- NETWORK_AUTHENTICATION_REQUIRED: 511
264
- };
265
-
266
- // src/auth/types.ts
267
- var AUTH_ERROR_CODES = {
268
- INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
269
- TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED",
270
- TOKEN_INVALID: "AUTH_TOKEN_INVALID",
271
- TOKEN_REVOKED: "AUTH_TOKEN_REVOKED",
272
- SESSION_EXPIRED: "AUTH_SESSION_EXPIRED",
273
- MFA_REQUIRED: "AUTH_MFA_REQUIRED",
274
- MFA_INVALID: "AUTH_MFA_INVALID",
275
- INSUFFICIENT_PERMISSIONS: "AUTH_INSUFFICIENT_PERMISSIONS",
276
- ROLE_REQUIRED: "AUTH_ROLE_REQUIRED",
277
- WALLET_SIGNATURE_INVALID: "AUTH_WALLET_SIGNATURE_INVALID",
278
- NONCE_EXPIRED: "AUTH_NONCE_EXPIRED",
279
- NONCE_ALREADY_USED: "AUTH_NONCE_ALREADY_USED",
280
- ACCOUNT_LOCKED: "AUTH_ACCOUNT_LOCKED",
281
- ACCOUNT_SUSPENDED: "AUTH_ACCOUNT_SUSPENDED"
282
- };
283
-
284
- // src/auth/enums.ts
285
- var USER_ROLE = {
286
- /** A user who is an athlete and participates in sports activities. */
287
- Athlete: "athlete",
288
- /** A user who scouts and discovers talent. */
289
- Scout: "scout",
290
- /** A user who acts as an agent representing athletes or clubs. */
291
- Agent: "agent",
292
- /** A user representing a sports club or organization. */
293
- Club: "club",
294
- /** A fan or supporter of athletes or clubs. */
295
- Fan: "fan",
296
- /** A system administrator with access to management tools. */
297
- Admin: "admin",
298
- /** A super admin with the highest level of access and control. */
299
- SuperAdmin: "super.admin"
300
- };
301
- var USER_STATUS = {
302
- /** Active user with full access. */
303
- Active: "active",
304
- /** Inactive user, typically not currently using the platform. */
305
- Inactive: "inactive",
306
- /** User account is awaiting approval or completion of setup. */
307
- Pending: "pending",
308
- /** User has been temporarily suspended due to policy violations or manual review. */
309
- Suspended: "suspended",
310
- /** User has been permanently banned from the platform. */
311
- Banned: "banned"
312
- };
313
- var AUTH_PROVIDER_TYPE = /* @__PURE__ */ ((AUTH_PROVIDER_TYPE2) => {
314
- AUTH_PROVIDER_TYPE2["ClerkSupabase"] = "CLERK_SUPABASE";
315
- AUTH_PROVIDER_TYPE2["InternalDb"] = "INTERNAL_DB";
316
- return AUTH_PROVIDER_TYPE2;
317
- })(AUTH_PROVIDER_TYPE || {});
318
- var AUTH_PROVIDER = /* @__PURE__ */ ((AUTH_PROVIDER2) => {
319
- AUTH_PROVIDER2["EMAIL"] = "EMAIL";
320
- AUTH_PROVIDER2["CLERK"] = "CLERK";
321
- AUTH_PROVIDER2["GOOGLE"] = "GOOGLE";
322
- AUTH_PROVIDER2["FACEBOOK"] = "FACEBOOK";
323
- AUTH_PROVIDER2["APPLE"] = "APPLE";
324
- AUTH_PROVIDER2["WEB3"] = "WEB3";
325
- return AUTH_PROVIDER2;
326
- })(AUTH_PROVIDER || {});
327
- var USER_ROLE_STATUS = /* @__PURE__ */ ((USER_ROLE_STATUS2) => {
328
- USER_ROLE_STATUS2["ACTIVE"] = "ACTIVE";
329
- USER_ROLE_STATUS2["INACTIVE"] = "INACTIVE";
330
- USER_ROLE_STATUS2["SUSPENDED"] = "SUSPENDED";
331
- return USER_ROLE_STATUS2;
332
- })(USER_ROLE_STATUS || {});
333
- var TOKEN_TYPE = /* @__PURE__ */ ((TOKEN_TYPE2) => {
334
- TOKEN_TYPE2["BEARER"] = "Bearer";
335
- TOKEN_TYPE2["JWT"] = "JWT";
336
- return TOKEN_TYPE2;
337
- })(TOKEN_TYPE || {});
338
- var AUTH_ERROR_DEFINITIONS = {
339
- [AUTH_ERROR_CODES.INVALID_CREDENTIALS]: {
340
- status: HTTP_STATUS.UNAUTHORIZED,
341
- message: "Wrong email/password.",
342
- severity: "medium",
343
- retryable: false
344
- },
345
- [AUTH_ERROR_CODES.TOKEN_EXPIRED]: {
346
- status: HTTP_STATUS.UNAUTHORIZED,
347
- message: "Access/refresh token expired.",
348
- severity: "medium",
349
- retryable: false
350
- },
351
- [AUTH_ERROR_CODES.TOKEN_INVALID]: {
352
- status: HTTP_STATUS.UNAUTHORIZED,
353
- message: "Token signature invalid.",
354
- severity: "high",
355
- retryable: false
356
- },
357
- [AUTH_ERROR_CODES.TOKEN_REVOKED]: {
358
- status: HTTP_STATUS.UNAUTHORIZED,
359
- message: "Token has been revoked.",
360
- severity: "medium",
361
- retryable: false
362
- },
363
- [AUTH_ERROR_CODES.SESSION_EXPIRED]: {
364
- status: HTTP_STATUS.UNAUTHORIZED,
365
- message: "Session no longer valid.",
366
- severity: "medium",
367
- retryable: false
368
- },
369
- [AUTH_ERROR_CODES.MFA_REQUIRED]: {
370
- status: HTTP_STATUS.FORBIDDEN,
371
- // 403 Forbidden is appropriate here
372
- message: "MFA verification needed.",
373
- severity: "low",
374
- retryable: false
375
- },
376
- [AUTH_ERROR_CODES.MFA_INVALID]: {
377
- status: HTTP_STATUS.UNAUTHORIZED,
378
- message: "MFA code incorrect.",
379
- severity: "medium",
380
- retryable: false
381
- },
382
- [AUTH_ERROR_CODES.INSUFFICIENT_PERMISSIONS]: {
383
- status: HTTP_STATUS.FORBIDDEN,
384
- message: "User lacks required permission.",
385
- severity: "medium",
386
- retryable: false
387
- },
388
- [AUTH_ERROR_CODES.ROLE_REQUIRED]: {
389
- status: HTTP_STATUS.FORBIDDEN,
390
- message: "User lacks required role.",
391
- severity: "medium",
392
- retryable: false
393
- },
394
- [AUTH_ERROR_CODES.WALLET_SIGNATURE_INVALID]: {
395
- status: HTTP_STATUS.UNAUTHORIZED,
396
- message: "Web3 signature verification failed.",
397
- severity: "high",
398
- retryable: false
399
- },
400
- [AUTH_ERROR_CODES.NONCE_EXPIRED]: {
401
- status: HTTP_STATUS.UNAUTHORIZED,
402
- message: "SIWE nonce has expired.",
403
- severity: "medium",
404
- retryable: false
405
- },
406
- [AUTH_ERROR_CODES.NONCE_ALREADY_USED]: {
407
- status: HTTP_STATUS.UNAUTHORIZED,
408
- message: "Replay attack detected.",
409
- severity: "high",
410
- retryable: false
411
- },
412
- [AUTH_ERROR_CODES.ACCOUNT_LOCKED]: {
413
- status: HTTP_STATUS.LOCKED,
414
- // 423 Locked is perfect for this
415
- message: "Too many failed attempts.",
416
- severity: "high",
417
- retryable: false
418
- },
419
- [AUTH_ERROR_CODES.ACCOUNT_SUSPENDED]: {
420
- status: HTTP_STATUS.FORBIDDEN,
421
- message: "Account has been suspended.",
422
- severity: "high",
423
- retryable: false
424
- }
425
- };
426
- var DEFAULT_PASSWORD = 8;
427
- var ContactUsFormSchema = zod.z.object({
428
- name: zod.z.string({ error: "errors.form.missingField" }).min(1, "errors.form.nameMissing"),
429
- email: zod.z.email({ error: "errors.form.emailInvalid" })
430
- });
431
- var SignupFormSchema = zod.z.object({
432
- name: zod.z.string({ error: "errors.form.missingField" }).min(1, "errors.form.nameMissing"),
433
- email: zod.z.email({ error: "errors.form.emailInvalid" }),
434
- password: zod.z.string({ error: "errors.form.missingField" }).min(DEFAULT_PASSWORD, "errors.form.passwordTooShort")
435
- });
436
-
437
- // src/core/modules.ts
438
- var BACKEND_RUNTIMES = [
439
- "node",
440
- "nestjs",
441
- "express",
442
- "deno",
443
- "bun"
444
- ];
445
- var FRONTEND_RUNTIMES = ["browser"];
446
- var UNIVERSAL_RUNTIMES = [
447
- "nextjs",
448
- "nuxt",
449
- "edge"
450
- ];
451
- var APP_CONTEXTS = [
452
- "webapp",
453
- "backoffice",
454
- "mobile",
455
- "microapp",
456
- "cli"
457
- ];
458
-
459
- // src/core/tables/enum.ts
460
- var TABLES = /* @__PURE__ */ ((TABLES2) => {
461
- TABLES2["User"] = "users";
462
- return TABLES2;
463
- })(TABLES || {});
464
-
465
- // src/core/featureFlag/enums.ts
466
- var SORT_DIRECTION = /* @__PURE__ */ ((SORT_DIRECTION2) => {
467
- SORT_DIRECTION2["Asc"] = "asc";
468
- SORT_DIRECTION2["Desc"] = "desc";
469
- return SORT_DIRECTION2;
470
- })(SORT_DIRECTION || {});
471
- var FEATURE_FLAG_TABLE = /* @__PURE__ */ ((FEATURE_FLAG_TABLE2) => {
472
- FEATURE_FLAG_TABLE2["FeatureFlags"] = "feature_flags";
473
- FEATURE_FLAG_TABLE2["FeatureFlagRules"] = "feature_flag_rules";
474
- FEATURE_FLAG_TABLE2["FeatureFlagEvaluations"] = "feature_flag_evaluations";
475
- FEATURE_FLAG_TABLE2["FeatureFlagOverrides"] = "feature_flag_overrides";
476
- return FEATURE_FLAG_TABLE2;
477
- })(FEATURE_FLAG_TABLE || {});
478
- var FEATURE_FLAG_FIELD = /* @__PURE__ */ ((FEATURE_FLAG_FIELD2) => {
479
- FEATURE_FLAG_FIELD2["Key"] = "key";
480
- FEATURE_FLAG_FIELD2["Name"] = "name";
481
- FEATURE_FLAG_FIELD2["Value"] = "value";
482
- FEATURE_FLAG_FIELD2["Type"] = "type";
483
- FEATURE_FLAG_FIELD2["IsEnabled"] = "is_enabled";
484
- FEATURE_FLAG_FIELD2["Environments"] = "environments";
485
- FEATURE_FLAG_FIELD2["Description"] = "description";
486
- FEATURE_FLAG_FIELD2["CreatedAt"] = "created_at";
487
- FEATURE_FLAG_FIELD2["UpdatedAt"] = "updated_at";
488
- return FEATURE_FLAG_FIELD2;
489
- })(FEATURE_FLAG_FIELD || {});
490
- var FEATURE_FLAG_RULE_FIELD = /* @__PURE__ */ ((FEATURE_FLAG_RULE_FIELD2) => {
491
- FEATURE_FLAG_RULE_FIELD2["Id"] = "id";
492
- FEATURE_FLAG_RULE_FIELD2["FlagKey"] = "flag_key";
493
- FEATURE_FLAG_RULE_FIELD2["Name"] = "name";
494
- FEATURE_FLAG_RULE_FIELD2["Conditions"] = "conditions";
495
- FEATURE_FLAG_RULE_FIELD2["Value"] = "value";
496
- FEATURE_FLAG_RULE_FIELD2["Priority"] = "priority";
497
- FEATURE_FLAG_RULE_FIELD2["IsEnabled"] = "is_enabled";
498
- return FEATURE_FLAG_RULE_FIELD2;
499
- })(FEATURE_FLAG_RULE_FIELD || {});
500
- var FEATURE_FLAG_PROVIDERS = /* @__PURE__ */ ((FEATURE_FLAG_PROVIDERS2) => {
501
- FEATURE_FLAG_PROVIDERS2["MEMORY"] = "memory";
502
- FEATURE_FLAG_PROVIDERS2["FILE"] = "file";
503
- FEATURE_FLAG_PROVIDERS2["REDIS"] = "redis";
504
- FEATURE_FLAG_PROVIDERS2["API"] = "api";
505
- FEATURE_FLAG_PROVIDERS2["DATABASE"] = "database";
506
- return FEATURE_FLAG_PROVIDERS2;
507
- })(FEATURE_FLAG_PROVIDERS || {});
508
- var NODE_ENVIRONMENTS = /* @__PURE__ */ ((NODE_ENVIRONMENTS2) => {
509
- NODE_ENVIRONMENTS2["DEVELOPMENT"] = "development";
510
- NODE_ENVIRONMENTS2["PRODUCTION"] = "production";
511
- NODE_ENVIRONMENTS2["STAGING"] = "staging";
512
- NODE_ENVIRONMENTS2["TEST"] = "test";
513
- return NODE_ENVIRONMENTS2;
514
- })(NODE_ENVIRONMENTS || {});
515
- var DATABASE_FIELDS = /* @__PURE__ */ ((DATABASE_FIELDS2) => {
516
- DATABASE_FIELDS2["Key"] = "key";
517
- DATABASE_FIELDS2["FlagKey"] = "flag_key";
518
- DATABASE_FIELDS2["UserId"] = "user_id";
519
- DATABASE_FIELDS2["IsEnabled"] = "is_enabled";
520
- DATABASE_FIELDS2["CreatedAt"] = "created_at";
521
- DATABASE_FIELDS2["UpdatedAt"] = "updated_at";
522
- DATABASE_FIELDS2["ExpiresAt"] = "expires_at";
523
- DATABASE_FIELDS2["EvaluatedAt"] = "evaluated_at";
524
- return DATABASE_FIELDS2;
525
- })(DATABASE_FIELDS || {});
526
- var SYSTEM_USERS = /* @__PURE__ */ ((SYSTEM_USERS2) => {
527
- SYSTEM_USERS2["SYSTEM"] = "system";
528
- return SYSTEM_USERS2;
529
- })(SYSTEM_USERS || {});
530
- var EVALUATION_REASONS = /* @__PURE__ */ ((EVALUATION_REASONS2) => {
531
- EVALUATION_REASONS2["Default"] = "default";
532
- EVALUATION_REASONS2["RuleMatch"] = "rule_match";
533
- EVALUATION_REASONS2["Rollout"] = "rollout";
534
- EVALUATION_REASONS2["Override"] = "override";
535
- EVALUATION_REASONS2["Disabled"] = "disabled";
536
- return EVALUATION_REASONS2;
537
- })(EVALUATION_REASONS || {});
538
- var FEATURE_FLAG_TYPES = /* @__PURE__ */ ((FEATURE_FLAG_TYPES2) => {
539
- FEATURE_FLAG_TYPES2["BOOLEAN"] = "boolean";
540
- FEATURE_FLAG_TYPES2["STRING"] = "string";
541
- FEATURE_FLAG_TYPES2["NUMBER"] = "number";
542
- FEATURE_FLAG_TYPES2["OBJECT"] = "object";
543
- return FEATURE_FLAG_TYPES2;
544
- })(FEATURE_FLAG_TYPES || {});
545
-
546
- // src/core/featureFlag/constants.ts
547
- var FEATURE_FLAG_DEFAULTS = {
548
- CACHE_TTL: 300,
549
- REFRESH_INTERVAL: 0,
550
- POOL_SIZE: 10,
551
- TIMEOUT: 3e4,
552
- TABLE_NAME: "feature_flags"
553
- };
554
- var FEATURE_FLAG_METADATA = {
555
- FLAG_CHECK: "plyaz:feature_flag_check",
556
- // Single feature flag check
557
- RESOLVE_FLAGS: "plyaz:resolve_feature_flags"
558
- // Multiple flags resolved at once
559
- };
560
-
561
- // src/core/events/enums.ts
562
- var CoreEventScope = {
563
- SYSTEM: "system",
564
- ENTITY: "entity",
565
- VALIDATION: "validation",
566
- SANITIZATION: "sanitization",
567
- API: "api",
568
- CACHE: "cache",
569
- AUTH: "auth",
570
- DATABASE: "database",
571
- FEATURE_FLAG: "featureFlag",
572
- STORE: "store",
573
- STORAGE: "storage",
574
- NOTIFICATION: "notification"
575
- };
576
- var SystemEventAction = {
577
- INITIALIZED: "initialized",
578
- READY: "ready",
579
- SHUTDOWN: "shutdown",
580
- ERROR: "error",
581
- WARNING: "warning"
582
- };
583
- var EntityEventAction = {
584
- // Lifecycle (before API call)
585
- CREATING: "creating",
586
- UPDATING: "updating",
587
- PATCHING: "patching",
588
- DELETING: "deleting",
589
- // Completed (after API call)
590
- CREATED: "created",
591
- UPDATED: "updated",
592
- PATCHED: "patched",
593
- DELETED: "deleted",
594
- // Error/Complete
595
- ERROR: "error",
596
- COMPLETE: "complete",
597
- // Bulk operations
598
- BULK_CREATED: "bulkCreated",
599
- BULK_DELETED: "bulkDeleted"
600
- };
601
- var ValidationEventAction = {
602
- STARTED: "started",
603
- SUCCESS: "success",
604
- FAILED: "failed"
605
- };
606
- var SanitizationEventAction = {
607
- STARTED: "started",
608
- SUCCESS: "success",
609
- FAILED: "failed"
610
- };
611
- var ApiEventAction = {
612
- REQUEST_START: "requestStart",
613
- REQUEST_SUCCESS: "requestSuccess",
614
- REQUEST_ERROR: "requestError",
615
- RETRY: "retry",
616
- TIMEOUT: "timeout"
617
- };
618
- var CacheEventAction = {
619
- HIT: "hit",
620
- MISS: "miss",
621
- SET: "set",
622
- DELETE: "delete",
623
- CLEAR: "clear",
624
- EXPIRED: "expired"
625
- };
626
- var AuthEventAction = {
627
- LOGIN: "login",
628
- LOGOUT: "logout",
629
- TOKEN_REFRESH: "tokenRefresh",
630
- SESSION_EXPIRED: "sessionExpired",
631
- UNAUTHORIZED: "unauthorized"
632
- };
633
- var DatabaseEventAction = {
634
- CONNECTED: "connected",
635
- DISCONNECTED: "disconnected",
636
- QUERY: "query",
637
- ERROR: "error",
638
- TRANSACTION_START: "transactionStart",
639
- TRANSACTION_COMMIT: "transactionCommit",
640
- TRANSACTION_ROLLBACK: "transactionRollback"
641
- };
642
- var FeatureFlagEventAction = {
643
- CHANGED: "changed",
644
- EVALUATED: "evaluated",
645
- REFRESHED: "refreshed"
646
- };
647
- var StoreEventAction = {
648
- UPDATED: "updated",
649
- RESET: "reset",
650
- HYDRATED: "hydrated"
651
- };
652
- var StorageEventAction = {
653
- UPLOADED: "uploaded",
654
- DOWNLOADED: "downloaded",
655
- DELETED: "deleted",
656
- ERROR: "error",
657
- HEALTH_CHECK: "healthCheck"
658
- };
659
- var NotificationEventAction = {
660
- SENT: "sent",
661
- FAILED: "failed",
662
- DELIVERED: "delivered",
663
- OPENED: "opened",
664
- CLICKED: "clicked",
665
- ERROR: "error",
666
- HEALTH_CHECK: "healthCheck"
667
- };
668
- var CORE_EVENTS = {
669
- SYSTEM: {
670
- INITIALIZED: `${CoreEventScope.SYSTEM}:${SystemEventAction.INITIALIZED}`,
671
- READY: `${CoreEventScope.SYSTEM}:${SystemEventAction.READY}`,
672
- SHUTDOWN: `${CoreEventScope.SYSTEM}:${SystemEventAction.SHUTDOWN}`,
673
- ERROR: `${CoreEventScope.SYSTEM}:${SystemEventAction.ERROR}`,
674
- WARNING: `${CoreEventScope.SYSTEM}:${SystemEventAction.WARNING}`
675
- },
676
- ENTITY: {
677
- CREATING: `${CoreEventScope.ENTITY}:${EntityEventAction.CREATING}`,
678
- UPDATING: `${CoreEventScope.ENTITY}:${EntityEventAction.UPDATING}`,
679
- PATCHING: `${CoreEventScope.ENTITY}:${EntityEventAction.PATCHING}`,
680
- DELETING: `${CoreEventScope.ENTITY}:${EntityEventAction.DELETING}`,
681
- CREATED: `${CoreEventScope.ENTITY}:${EntityEventAction.CREATED}`,
682
- UPDATED: `${CoreEventScope.ENTITY}:${EntityEventAction.UPDATED}`,
683
- PATCHED: `${CoreEventScope.ENTITY}:${EntityEventAction.PATCHED}`,
684
- DELETED: `${CoreEventScope.ENTITY}:${EntityEventAction.DELETED}`,
685
- ERROR: `${CoreEventScope.ENTITY}:${EntityEventAction.ERROR}`,
686
- COMPLETE: `${CoreEventScope.ENTITY}:${EntityEventAction.COMPLETE}`,
687
- BULK_CREATED: `${CoreEventScope.ENTITY}:${EntityEventAction.BULK_CREATED}`,
688
- BULK_DELETED: `${CoreEventScope.ENTITY}:${EntityEventAction.BULK_DELETED}`
689
- },
690
- VALIDATION: {
691
- STARTED: `${CoreEventScope.VALIDATION}:${ValidationEventAction.STARTED}`,
692
- SUCCESS: `${CoreEventScope.VALIDATION}:${ValidationEventAction.SUCCESS}`,
693
- FAILED: `${CoreEventScope.VALIDATION}:${ValidationEventAction.FAILED}`
694
- },
695
- SANITIZATION: {
696
- STARTED: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.STARTED}`,
697
- SUCCESS: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.SUCCESS}`,
698
- FAILED: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.FAILED}`
699
- },
700
- API: {
701
- REQUEST_START: `${CoreEventScope.API}:${ApiEventAction.REQUEST_START}`,
702
- REQUEST_SUCCESS: `${CoreEventScope.API}:${ApiEventAction.REQUEST_SUCCESS}`,
703
- REQUEST_ERROR: `${CoreEventScope.API}:${ApiEventAction.REQUEST_ERROR}`,
704
- RETRY: `${CoreEventScope.API}:${ApiEventAction.RETRY}`,
705
- TIMEOUT: `${CoreEventScope.API}:${ApiEventAction.TIMEOUT}`
706
- },
707
- CACHE: {
708
- HIT: `${CoreEventScope.CACHE}:${CacheEventAction.HIT}`,
709
- MISS: `${CoreEventScope.CACHE}:${CacheEventAction.MISS}`,
710
- SET: `${CoreEventScope.CACHE}:${CacheEventAction.SET}`,
711
- DELETE: `${CoreEventScope.CACHE}:${CacheEventAction.DELETE}`,
712
- CLEAR: `${CoreEventScope.CACHE}:${CacheEventAction.CLEAR}`,
713
- EXPIRED: `${CoreEventScope.CACHE}:${CacheEventAction.EXPIRED}`
714
- },
715
- AUTH: {
716
- LOGIN: `${CoreEventScope.AUTH}:${AuthEventAction.LOGIN}`,
717
- LOGOUT: `${CoreEventScope.AUTH}:${AuthEventAction.LOGOUT}`,
718
- TOKEN_REFRESH: `${CoreEventScope.AUTH}:${AuthEventAction.TOKEN_REFRESH}`,
719
- SESSION_EXPIRED: `${CoreEventScope.AUTH}:${AuthEventAction.SESSION_EXPIRED}`,
720
- UNAUTHORIZED: `${CoreEventScope.AUTH}:${AuthEventAction.UNAUTHORIZED}`
721
- },
722
- DATABASE: {
723
- CONNECTED: `${CoreEventScope.DATABASE}:${DatabaseEventAction.CONNECTED}`,
724
- DISCONNECTED: `${CoreEventScope.DATABASE}:${DatabaseEventAction.DISCONNECTED}`,
725
- QUERY: `${CoreEventScope.DATABASE}:${DatabaseEventAction.QUERY}`,
726
- ERROR: `${CoreEventScope.DATABASE}:${DatabaseEventAction.ERROR}`,
727
- TRANSACTION_START: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_START}`,
728
- TRANSACTION_COMMIT: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_COMMIT}`,
729
- TRANSACTION_ROLLBACK: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_ROLLBACK}`
730
- },
731
- FEATURE_FLAG: {
732
- CHANGED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.CHANGED}`,
733
- EVALUATED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.EVALUATED}`,
734
- REFRESHED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.REFRESHED}`
735
- },
736
- STORE: {
737
- UPDATED: `${CoreEventScope.STORE}:${StoreEventAction.UPDATED}`,
738
- RESET: `${CoreEventScope.STORE}:${StoreEventAction.RESET}`,
739
- HYDRATED: `${CoreEventScope.STORE}:${StoreEventAction.HYDRATED}`
740
- },
741
- STORAGE: {
742
- UPLOADED: `${CoreEventScope.STORAGE}:${StorageEventAction.UPLOADED}`,
743
- DOWNLOADED: `${CoreEventScope.STORAGE}:${StorageEventAction.DOWNLOADED}`,
744
- DELETED: `${CoreEventScope.STORAGE}:${StorageEventAction.DELETED}`,
745
- ERROR: `${CoreEventScope.STORAGE}:${StorageEventAction.ERROR}`,
746
- HEALTH_CHECK: `${CoreEventScope.STORAGE}:${StorageEventAction.HEALTH_CHECK}`
747
- },
748
- NOTIFICATION: {
749
- SENT: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.SENT}`,
750
- FAILED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.FAILED}`,
751
- DELIVERED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.DELIVERED}`,
752
- OPENED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.OPENED}`,
753
- CLICKED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.CLICKED}`,
754
- ERROR: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.ERROR}`,
755
- HEALTH_CHECK: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.HEALTH_CHECK}`
756
- }
757
- };
758
-
759
- // src/core/services/keys.ts
760
- var SERVICE_KEYS = {
761
- /** Example domain service (backend) */
762
- EXAMPLE: "example",
763
- /** Example domain service (frontend) */
764
- EXAMPLE_FRONTEND: "example-frontend",
765
- /** Feature flags service */
766
- FEATURE_FLAGS: "featureFlags"
767
- };
768
- var ALL_SERVICE_KEYS = Object.values(SERVICE_KEYS);
769
-
770
9
  // src/errors/enums.ts
771
10
  var ERROR_TYPE = {
772
11
  /** A general validation error (e.g., form or input errors). */
@@ -1047,6 +286,263 @@ var ERROR_EXCEPTIONS_NAMESPACES = {
1047
286
  PAYMENT_WEBHOOKS: "payment-webhook"
1048
287
  };
1049
288
 
289
+ // src/http/constants.ts
290
+ var HTTP_STATUS = {
291
+ // 1xx Informational
292
+ /**
293
+ * 100 Continue - The initial part of a request has been received
294
+ */
295
+ CONTINUE: 100,
296
+ /**
297
+ * 101 Switching Protocols - The server is switching protocols
298
+ */
299
+ SWITCHING_PROTOCOLS: 101,
300
+ /**
301
+ * 102 Processing - The server has received and is processing the request
302
+ */
303
+ PROCESSING: 102,
304
+ /**
305
+ * 103 Early Hints - Used to return some response headers before final HTTP message
306
+ */
307
+ EARLY_HINTS: 103,
308
+ // 2xx Success
309
+ /**
310
+ * 200 OK - The request succeeded
311
+ */
312
+ OK: 200,
313
+ /**
314
+ * 201 Created - The request succeeded and a new resource was created
315
+ */
316
+ CREATED: 201,
317
+ /**
318
+ * 202 Accepted - The request has been received but not yet acted upon
319
+ */
320
+ ACCEPTED: 202,
321
+ /**
322
+ * 203 Non-Authoritative Information - The returned metadata is not from the origin server
323
+ */
324
+ NON_AUTHORITATIVE_INFORMATION: 203,
325
+ /**
326
+ * 204 No Content - There is no content to send for this request
327
+ */
328
+ NO_CONTENT: 204,
329
+ /**
330
+ * 205 Reset Content - Tells the user agent to reset the document
331
+ */
332
+ RESET_CONTENT: 205,
333
+ /**
334
+ * 206 Partial Content - The server is delivering only part of the resource
335
+ */
336
+ PARTIAL_CONTENT: 206,
337
+ /**
338
+ * 207 Multi-Status - Conveys information about multiple resources
339
+ */
340
+ MULTI_STATUS: 207,
341
+ /**
342
+ * 208 Already Reported - The members of a DAV binding have already been enumerated
343
+ */
344
+ ALREADY_REPORTED: 208,
345
+ /**
346
+ * 226 IM Used - The server has fulfilled a request for the resource
347
+ */
348
+ IM_USED: 226,
349
+ // 3xx Redirection
350
+ /**
351
+ * 300 Multiple Choices - Multiple options for the resource are available
352
+ */
353
+ MULTIPLE_CHOICES: 300,
354
+ /**
355
+ * 301 Moved Permanently - The URL of the requested resource has been changed permanently
356
+ */
357
+ MOVED_PERMANENTLY: 301,
358
+ /**
359
+ * 302 Found - The resource resides temporarily under a different URI
360
+ */
361
+ FOUND: 302,
362
+ /**
363
+ * 303 See Other - Direct the client to get the resource at another URI
364
+ */
365
+ SEE_OTHER: 303,
366
+ /**
367
+ * 304 Not Modified - The cached version is still valid
368
+ */
369
+ NOT_MODIFIED: 304,
370
+ /**
371
+ * 305 Use Proxy - Defined in a previous version of the HTTP specification
372
+ */
373
+ USE_PROXY: 305,
374
+ /**
375
+ * 307 Temporary Redirect - The request should be repeated with another URI
376
+ */
377
+ TEMPORARY_REDIRECT: 307,
378
+ /**
379
+ * 308 Permanent Redirect - The resource is permanently located at another URI
380
+ */
381
+ PERMANENT_REDIRECT: 308,
382
+ // 4xx Client Errors
383
+ /**
384
+ * 400 Bad Request - The server cannot process the request due to client error
385
+ */
386
+ BAD_REQUEST: 400,
387
+ /**
388
+ * 401 Unauthorized - Authentication is required and has failed or not been provided
389
+ */
390
+ UNAUTHORIZED: 401,
391
+ /**
392
+ * 402 Payment Required - Reserved for future use
393
+ */
394
+ PAYMENT_REQUIRED: 402,
395
+ /**
396
+ * 403 Forbidden - The server understood the request but refuses to authorize it
397
+ */
398
+ FORBIDDEN: 403,
399
+ /**
400
+ * 404 Not Found - The server cannot find the requested resource
401
+ */
402
+ NOT_FOUND: 404,
403
+ /**
404
+ * 405 Method Not Allowed - The request method is not supported for the requested resource
405
+ */
406
+ METHOD_NOT_ALLOWED: 405,
407
+ /**
408
+ * 406 Not Acceptable - The requested resource is not available in a format acceptable to the client
409
+ */
410
+ NOT_ACCEPTABLE: 406,
411
+ /**
412
+ * 407 Proxy Authentication Required - The client must authenticate itself with the proxy
413
+ */
414
+ PROXY_AUTHENTICATION_REQUIRED: 407,
415
+ /**
416
+ * 408 Request Timeout - The server timed out waiting for the request
417
+ */
418
+ REQUEST_TIMEOUT: 408,
419
+ /**
420
+ * 409 Conflict - The request conflicts with the current state of the server
421
+ */
422
+ CONFLICT: 409,
423
+ /**
424
+ * 410 Gone - The requested resource is no longer available and will not be available again
425
+ */
426
+ GONE: 410,
427
+ /**
428
+ * 411 Length Required - The request did not specify the length of its content
429
+ */
430
+ LENGTH_REQUIRED: 411,
431
+ /**
432
+ * 412 Precondition Failed - The server does not meet one of the preconditions
433
+ */
434
+ PRECONDITION_FAILED: 412,
435
+ /**
436
+ * 413 Payload Too Large - The request is larger than the server is willing to process
437
+ */
438
+ PAYLOAD_TOO_LARGE: 413,
439
+ /**
440
+ * 414 URI Too Long - The URI provided was too long for the server to process
441
+ */
442
+ URI_TOO_LONG: 414,
443
+ /**
444
+ * 415 Unsupported Media Type - The request entity has a media type not supported by the server
445
+ */
446
+ UNSUPPORTED_MEDIA_TYPE: 415,
447
+ /**
448
+ * 416 Range Not Satisfiable - The client has asked for a portion of the file that the server cannot supply
449
+ */
450
+ RANGE_NOT_SATISFIABLE: 416,
451
+ /**
452
+ * 417 Expectation Failed - The server cannot meet the requirements of the Expect request-header field
453
+ */
454
+ EXPECTATION_FAILED: 417,
455
+ /**
456
+ * 418 I'm a teapot - The server refuses to brew coffee because it is a teapot
457
+ */
458
+ IM_A_TEAPOT: 418,
459
+ /**
460
+ * 421 Misdirected Request - The request was directed at a server that is not able to produce a response
461
+ */
462
+ MISDIRECTED_REQUEST: 421,
463
+ /**
464
+ * 422 Unprocessable Entity - The request was well-formed but was unable to be followed due to semantic errors
465
+ */
466
+ UNPROCESSABLE_ENTITY: 422,
467
+ /**
468
+ * 423 Locked - The resource that is being accessed is locked
469
+ */
470
+ LOCKED: 423,
471
+ /**
472
+ * 424 Failed Dependency - The request failed due to failure of a previous request
473
+ */
474
+ FAILED_DEPENDENCY: 424,
475
+ /**
476
+ * 425 Too Early - The server is unwilling to risk processing a request that might be replayed
477
+ */
478
+ TOO_EARLY: 425,
479
+ /**
480
+ * 426 Upgrade Required - The client should switch to a different protocol
481
+ */
482
+ UPGRADE_REQUIRED: 426,
483
+ /**
484
+ * 428 Precondition Required - The origin server requires the request to be conditional
485
+ */
486
+ PRECONDITION_REQUIRED: 428,
487
+ /**
488
+ * 429 Too Many Requests - The user has sent too many requests in a given amount of time
489
+ */
490
+ TOO_MANY_REQUESTS: 429,
491
+ /**
492
+ * 431 Request Header Fields Too Large - The server is unwilling to process the request because its header fields are too large
493
+ */
494
+ REQUEST_HEADER_FIELDS_TOO_LARGE: 431,
495
+ /**
496
+ * 451 Unavailable For Legal Reasons - The user requested a resource that cannot legally be provided
497
+ */
498
+ UNAVAILABLE_FOR_LEGAL_REASONS: 451,
499
+ // 5xx Server Errors
500
+ /**
501
+ * 500 Internal Server Error - The server encountered an unexpected condition
502
+ */
503
+ INTERNAL_SERVER_ERROR: 500,
504
+ /**
505
+ * 501 Not Implemented - The server does not support the functionality required to fulfill the request
506
+ */
507
+ NOT_IMPLEMENTED: 501,
508
+ /**
509
+ * 502 Bad Gateway - The server received an invalid response from the upstream server
510
+ */
511
+ BAD_GATEWAY: 502,
512
+ /**
513
+ * 503 Service Unavailable - The server is not ready to handle the request
514
+ */
515
+ SERVICE_UNAVAILABLE: 503,
516
+ /**
517
+ * 504 Gateway Timeout - The server did not get a response in time from the upstream server
518
+ */
519
+ GATEWAY_TIMEOUT: 504,
520
+ /**
521
+ * 505 HTTP Version Not Supported - The HTTP version used in the request is not supported by the server
522
+ */
523
+ HTTP_VERSION_NOT_SUPPORTED: 505,
524
+ /**
525
+ * 506 Variant Also Negotiates - The server has an internal configuration error
526
+ */
527
+ VARIANT_ALSO_NEGOTIATES: 506,
528
+ /**
529
+ * 507 Insufficient Storage - The server is unable to store the representation needed to complete the request
530
+ */
531
+ INSUFFICIENT_STORAGE: 507,
532
+ /**
533
+ * 508 Loop Detected - The server detected an infinite loop while processing the request
534
+ */
535
+ LOOP_DETECTED: 508,
536
+ /**
537
+ * 510 Not Extended - Further extensions to the request are required for the server to fulfill it
538
+ */
539
+ NOT_EXTENDED: 510,
540
+ /**
541
+ * 511 Network Authentication Required - The client needs to authenticate to gain network access
542
+ */
543
+ NETWORK_AUTHENTICATION_REQUIRED: 511
544
+ };
545
+
1050
546
  // src/errors/codes.ts
1051
547
  var ERROR_CODES = {
1052
548
  // ===== Generic/Common Errors =====
@@ -1074,8 +570,6 @@ var ERROR_CODES = {
1074
570
  // Authentication/Authorization
1075
571
  AUTH_UNAUTHORIZED: "AUTH_UNAUTHORIZED",
1076
572
  AUTH_FORBIDDEN: "AUTH_FORBIDDEN",
1077
- AUTH_TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED",
1078
- AUTH_INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
1079
573
  // Rate Limiting
1080
574
  RATE_LIMIT_EXCEEDED: "RATE_LIMIT_EXCEEDED",
1081
575
  // Resources
@@ -1651,7 +1145,22 @@ var ERROR_CODES = {
1651
1145
  PRICING_PROVIDER_ERROR: "payment.pricing.provider.error",
1652
1146
  PRICING_ALREADY_INACTIVE: "payment.pricing.already.inactive",
1653
1147
  PRICING_SYNC_FAILED: "payment.pricing.sync.failed",
1654
- PRICING_REQUIRES_NEW_VERSION: "payment.pricing.requires.new.version"
1148
+ PRICING_REQUIRES_NEW_VERSION: "payment.pricing.requires.new.version",
1149
+ // Authentication
1150
+ INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
1151
+ TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED",
1152
+ TOKEN_INVALID: "AUTH_TOKEN_INVALID",
1153
+ TOKEN_REVOKED: "AUTH_TOKEN_REVOKED",
1154
+ SESSION_EXPIRED: "AUTH_SESSION_EXPIRED",
1155
+ MFA_REQUIRED: "AUTH_MFA_REQUIRED",
1156
+ MFA_INVALID: "AUTH_MFA_INVALID",
1157
+ INSUFFICIENT_PERMISSIONS: "AUTH_INSUFFICIENT_PERMISSIONS",
1158
+ ROLE_REQUIRED: "AUTH_ROLE_REQUIRED",
1159
+ WALLET_SIGNATURE_INVALID: "AUTH_WALLET_SIGNATURE_INVALID",
1160
+ NONCE_EXPIRED: "AUTH_NONCE_EXPIRED",
1161
+ NONCE_ALREADY_USED: "AUTH_NONCE_ALREADY_USED",
1162
+ ACCOUNT_LOCKED: "AUTH_ACCOUNT_LOCKED",
1163
+ ACCOUNT_SUSPENDED: "AUTH_ACCOUNT_SUSPENDED"
1655
1164
  };
1656
1165
  var API_ERROR_CODES = {
1657
1166
  CLIENT_INITIALIZATION_FAILED: ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
@@ -1669,8 +1178,8 @@ var API_ERROR_CODES = {
1669
1178
  RESPONSE_PARSING_FAILED: ERROR_CODES.RESPONSE_PARSING_FAILED,
1670
1179
  AUTH_UNAUTHORIZED: ERROR_CODES.AUTH_UNAUTHORIZED,
1671
1180
  AUTH_FORBIDDEN: ERROR_CODES.AUTH_FORBIDDEN,
1672
- AUTH_TOKEN_EXPIRED: ERROR_CODES.AUTH_TOKEN_EXPIRED,
1673
- AUTH_INVALID_CREDENTIALS: ERROR_CODES.AUTH_INVALID_CREDENTIALS,
1181
+ AUTH_TOKEN_EXPIRED: ERROR_CODES.TOKEN_EXPIRED,
1182
+ AUTH_INVALID_CREDENTIALS: ERROR_CODES.INVALID_CREDENTIALS,
1674
1183
  RATE_LIMIT_EXCEEDED: ERROR_CODES.RATE_LIMIT_EXCEEDED,
1675
1184
  RESOURCE_NOT_FOUND: ERROR_CODES.RESOURCE_NOT_FOUND,
1676
1185
  RESOURCE_CONFLICT: ERROR_CODES.RESOURCE_CONFLICT,
@@ -2276,22 +1785,6 @@ var ERROR_DEFINITIONS = {
2276
1785
  severity: ERROR_SEVERITY.Medium,
2277
1786
  retryable: false
2278
1787
  },
2279
- [ERROR_CODES.AUTH_TOKEN_EXPIRED]: {
2280
- code: ERROR_CODES.AUTH_TOKEN_EXPIRED,
2281
- status: HTTP_STATUS.UNAUTHORIZED,
2282
- category: ERROR_CATEGORY.Authentication,
2283
- userMessage: "errors.auth.token_expired",
2284
- severity: ERROR_SEVERITY.Medium,
2285
- retryable: false
2286
- },
2287
- [ERROR_CODES.AUTH_INVALID_CREDENTIALS]: {
2288
- code: ERROR_CODES.AUTH_INVALID_CREDENTIALS,
2289
- status: HTTP_STATUS.UNAUTHORIZED,
2290
- category: ERROR_CATEGORY.Authentication,
2291
- userMessage: "errors.auth.invalid_credentials",
2292
- severity: ERROR_SEVERITY.Medium,
2293
- retryable: false
2294
- },
2295
1788
  // Rate Limiting
2296
1789
  [ERROR_CODES.RATE_LIMIT_EXCEEDED]: {
2297
1790
  code: ERROR_CODES.RATE_LIMIT_EXCEEDED,
@@ -5897,324 +5390,948 @@ var ERROR_DEFINITIONS = {
5897
5390
  severity: ERROR_SEVERITY.High,
5898
5391
  retryable: true
5899
5392
  },
5900
- [ERROR_CODES.PAYMENT_TRANSACTION_HISTORY_FETCH_FAILED]: {
5901
- code: ERROR_CODES.PAYMENT_TRANSACTION_HISTORY_FETCH_FAILED,
5902
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
5903
- category: ERROR_CATEGORY.Processing,
5904
- userMessage: "errors.payment.transaction.history.fetch_failed",
5393
+ [ERROR_CODES.PAYMENT_TRANSACTION_HISTORY_FETCH_FAILED]: {
5394
+ code: ERROR_CODES.PAYMENT_TRANSACTION_HISTORY_FETCH_FAILED,
5395
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
5396
+ category: ERROR_CATEGORY.Processing,
5397
+ userMessage: "errors.payment.transaction.history.fetch_failed",
5398
+ severity: ERROR_SEVERITY.Medium,
5399
+ retryable: true
5400
+ },
5401
+ // ===== Unsupported Operations =====
5402
+ [ERROR_CODES.SAVE_PAYMENT_METHOD_UNSUPPORTED]: {
5403
+ code: ERROR_CODES.SAVE_PAYMENT_METHOD_UNSUPPORTED,
5404
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5405
+ category: ERROR_CATEGORY.Provider,
5406
+ userMessage: "errors.payment.method.save_unsupported",
5407
+ severity: ERROR_SEVERITY.Medium,
5408
+ retryable: false
5409
+ },
5410
+ [ERROR_CODES.DELETE_PAYMENT_METHOD_UNSUPPORTED]: {
5411
+ code: ERROR_CODES.DELETE_PAYMENT_METHOD_UNSUPPORTED,
5412
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5413
+ category: ERROR_CATEGORY.Provider,
5414
+ userMessage: "errors.payment.method.delete_unsupported",
5415
+ severity: ERROR_SEVERITY.Medium,
5416
+ retryable: false
5417
+ },
5418
+ [ERROR_CODES.GET_USER_PAYMENT_METHODS_UNSUPPORTED]: {
5419
+ code: ERROR_CODES.GET_USER_PAYMENT_METHODS_UNSUPPORTED,
5420
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5421
+ category: ERROR_CATEGORY.Provider,
5422
+ userMessage: "errors.payment.method.get_user_methods_unsupported",
5423
+ severity: ERROR_SEVERITY.Medium,
5424
+ retryable: false
5425
+ },
5426
+ [ERROR_CODES.CREATE_SUBSCRIPTION_UNSUPPORTED]: {
5427
+ code: ERROR_CODES.CREATE_SUBSCRIPTION_UNSUPPORTED,
5428
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5429
+ category: ERROR_CATEGORY.Provider,
5430
+ userMessage: "errors.payment.subscription.create_unsupported",
5431
+ severity: ERROR_SEVERITY.Medium,
5432
+ retryable: false
5433
+ },
5434
+ [ERROR_CODES.CANCEL_SUBSCRIPTION_UNSUPPORTED]: {
5435
+ code: ERROR_CODES.CANCEL_SUBSCRIPTION_UNSUPPORTED,
5436
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5437
+ category: ERROR_CATEGORY.Provider,
5438
+ userMessage: "errors.payment.subscription.cancel_unsupported",
5439
+ severity: ERROR_SEVERITY.Medium,
5440
+ retryable: false
5441
+ },
5442
+ [ERROR_CODES.PROCESS_PAYOUT_UNSUPPORTED]: {
5443
+ code: ERROR_CODES.PROCESS_PAYOUT_UNSUPPORTED,
5444
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5445
+ category: ERROR_CATEGORY.Provider,
5446
+ userMessage: "errors.payment.payout.unsupported",
5447
+ severity: ERROR_SEVERITY.Medium,
5448
+ retryable: false
5449
+ },
5450
+ [ERROR_CODES.GET_TRANSACTION_HISTORY_UNSUPPORTED]: {
5451
+ code: ERROR_CODES.GET_TRANSACTION_HISTORY_UNSUPPORTED,
5452
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5453
+ category: ERROR_CATEGORY.Provider,
5454
+ userMessage: "errors.payment.transaction.history_unsupported",
5455
+ severity: ERROR_SEVERITY.Medium,
5456
+ retryable: false
5457
+ },
5458
+ // Withdrawal Errors
5459
+ [ERROR_CODES.WITHDRAWAL_UNSUPPORTED]: {
5460
+ code: ERROR_CODES.WITHDRAWAL_UNSUPPORTED,
5461
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5462
+ category: ERROR_CATEGORY.Provider,
5463
+ userMessage: "errors.payment.withdrawal.unsupported",
5464
+ severity: ERROR_SEVERITY.Medium,
5465
+ retryable: false
5466
+ },
5467
+ [ERROR_CODES.WITHDRAWAL_CREATE_UNSUPPORTED]: {
5468
+ code: ERROR_CODES.WITHDRAWAL_CREATE_UNSUPPORTED,
5469
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5470
+ category: ERROR_CATEGORY.Provider,
5471
+ userMessage: "errors.payment.withdrawal.create_unsupported",
5472
+ severity: ERROR_SEVERITY.Medium,
5473
+ retryable: false
5474
+ },
5475
+ [ERROR_CODES.WITHDRAWAL_PROCESS_UNSUPPORTED]: {
5476
+ code: ERROR_CODES.WITHDRAWAL_PROCESS_UNSUPPORTED,
5477
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5478
+ category: ERROR_CATEGORY.Provider,
5479
+ userMessage: "errors.payment.withdrawal.process_unsupported",
5480
+ severity: ERROR_SEVERITY.Medium,
5481
+ retryable: false
5482
+ },
5483
+ [ERROR_CODES.WITHDRAWAL_STATUS_FETCH_UNSUPPORTED]: {
5484
+ code: ERROR_CODES.WITHDRAWAL_STATUS_FETCH_UNSUPPORTED,
5485
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5486
+ category: ERROR_CATEGORY.Provider,
5487
+ userMessage: "errors.payment.withdrawal.status_fetch_unsupported",
5488
+ severity: ERROR_SEVERITY.Medium,
5489
+ retryable: false
5490
+ },
5491
+ [ERROR_CODES.WITHDRAWAL_CANCEL_UNSUPPORTED]: {
5492
+ code: ERROR_CODES.WITHDRAWAL_CANCEL_UNSUPPORTED,
5493
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5494
+ category: ERROR_CATEGORY.Provider,
5495
+ userMessage: "errors.payment.withdrawal.cancel_unsupported",
5496
+ severity: ERROR_SEVERITY.Medium,
5497
+ retryable: false
5498
+ },
5499
+ [ERROR_CODES.WITHDRAWAL_INSUFFICIENT_BALANCE]: {
5500
+ code: ERROR_CODES.WITHDRAWAL_INSUFFICIENT_BALANCE,
5501
+ status: HTTP_STATUS.BAD_REQUEST,
5502
+ category: ERROR_CATEGORY.Limits,
5503
+ userMessage: "errors.payment.withdrawal.insufficient_balance",
5504
+ severity: ERROR_SEVERITY.Medium,
5505
+ retryable: false
5506
+ },
5507
+ [ERROR_CODES.WITHDRAWAL_INVALID_ACCOUNT]: {
5508
+ code: ERROR_CODES.WITHDRAWAL_INVALID_ACCOUNT,
5509
+ status: HTTP_STATUS.BAD_REQUEST,
5510
+ category: ERROR_CATEGORY.Validation,
5511
+ userMessage: "errors.payment.withdrawal.invalid_account",
5512
+ severity: ERROR_SEVERITY.Medium,
5513
+ retryable: false
5514
+ },
5515
+ [ERROR_CODES.WITHDRAWAL_KYC_REQUIRED]: {
5516
+ code: ERROR_CODES.WITHDRAWAL_KYC_REQUIRED,
5517
+ status: HTTP_STATUS.FORBIDDEN,
5518
+ category: ERROR_CATEGORY.Compliance,
5519
+ userMessage: "errors.payment.withdrawal.kyc_required",
5520
+ severity: ERROR_SEVERITY.Medium,
5521
+ retryable: false
5522
+ },
5523
+ [ERROR_CODES.WITHDRAWAL_LIMIT_EXCEEDED]: {
5524
+ code: ERROR_CODES.WITHDRAWAL_LIMIT_EXCEEDED,
5525
+ status: HTTP_STATUS.FORBIDDEN,
5526
+ category: ERROR_CATEGORY.Limits,
5527
+ userMessage: "errors.payment.withdrawal.limit_exceeded",
5528
+ severity: ERROR_SEVERITY.Medium,
5529
+ retryable: false
5530
+ },
5531
+ [ERROR_CODES.WITHDRAWAL_PROVIDER_ERROR]: {
5532
+ code: ERROR_CODES.WITHDRAWAL_PROVIDER_ERROR,
5533
+ status: HTTP_STATUS.BAD_GATEWAY,
5534
+ category: ERROR_CATEGORY.Provider,
5535
+ userMessage: "errors.payment.withdrawal.provider_error",
5536
+ severity: ERROR_SEVERITY.High,
5537
+ retryable: true
5538
+ },
5539
+ [ERROR_CODES.WITHDRAWAL_FAILED]: {
5540
+ code: ERROR_CODES.WITHDRAWAL_FAILED,
5541
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
5542
+ category: ERROR_CATEGORY.Provider,
5543
+ userMessage: "errors.payment.withdrawal.failed",
5544
+ severity: ERROR_SEVERITY.High,
5545
+ retryable: true
5546
+ },
5547
+ [ERROR_CODES.WITHDRAWAL_TIMEOUT]: {
5548
+ code: ERROR_CODES.WITHDRAWAL_TIMEOUT,
5549
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
5550
+ category: ERROR_CATEGORY.Timeout,
5551
+ userMessage: "errors.payment.withdrawal.timeout",
5552
+ severity: ERROR_SEVERITY.Medium,
5553
+ retryable: true
5554
+ },
5555
+ // Product Errors
5556
+ [ERROR_CODES.PRODUCT_CREATE_UNSUPPORTED]: {
5557
+ code: ERROR_CODES.PRODUCT_CREATE_UNSUPPORTED,
5558
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5559
+ category: ERROR_CATEGORY.Provider,
5560
+ userMessage: "errors.payment.product.create_unsupported",
5561
+ severity: ERROR_SEVERITY.Medium,
5562
+ retryable: false
5563
+ },
5564
+ [ERROR_CODES.PRODUCT_UPDATE_UNSUPPORTED]: {
5565
+ code: ERROR_CODES.PRODUCT_UPDATE_UNSUPPORTED,
5566
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5567
+ category: ERROR_CATEGORY.Provider,
5568
+ userMessage: "errors.payment.product.update_unsupported",
5569
+ severity: ERROR_SEVERITY.Medium,
5570
+ retryable: false
5571
+ },
5572
+ [ERROR_CODES.PRODUCT_FETCH_UNSUPPORTED]: {
5573
+ code: ERROR_CODES.PRODUCT_FETCH_UNSUPPORTED,
5574
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5575
+ category: ERROR_CATEGORY.Provider,
5576
+ userMessage: "errors.payment.product.fetch_unsupported",
5577
+ severity: ERROR_SEVERITY.Medium,
5578
+ retryable: false
5579
+ },
5580
+ [ERROR_CODES.PRODUCT_DEACTIVATE_UNSUPPORTED]: {
5581
+ code: ERROR_CODES.PRODUCT_DEACTIVATE_UNSUPPORTED,
5582
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
5583
+ category: ERROR_CATEGORY.Provider,
5584
+ userMessage: "errors.payment.product.deactivate_unsupported",
5585
+ severity: ERROR_SEVERITY.Medium,
5586
+ retryable: false
5587
+ },
5588
+ [ERROR_CODES.PRODUCT_NOT_FOUND]: {
5589
+ code: ERROR_CODES.PRODUCT_NOT_FOUND,
5590
+ status: HTTP_STATUS.NOT_FOUND,
5591
+ category: ERROR_CATEGORY.NotFound,
5592
+ userMessage: "errors.payment.product.not_found",
5593
+ severity: ERROR_SEVERITY.Medium,
5594
+ retryable: false
5595
+ },
5596
+ [ERROR_CODES.PRODUCT_INVALID_DATA]: {
5597
+ code: ERROR_CODES.PRODUCT_INVALID_DATA,
5598
+ status: HTTP_STATUS.BAD_REQUEST,
5599
+ category: ERROR_CATEGORY.Validation,
5600
+ userMessage: "errors.payment.product.invalid_data",
5601
+ severity: ERROR_SEVERITY.Medium,
5602
+ retryable: false
5603
+ },
5604
+ [ERROR_CODES.PRODUCT_PROVIDER_ERROR]: {
5605
+ code: ERROR_CODES.PRODUCT_PROVIDER_ERROR,
5606
+ status: HTTP_STATUS.BAD_GATEWAY,
5607
+ category: ERROR_CATEGORY.Provider,
5608
+ userMessage: "errors.payment.product.provider_error",
5609
+ severity: ERROR_SEVERITY.High,
5610
+ retryable: true
5611
+ },
5612
+ [ERROR_CODES.PRODUCT_ALREADY_INACTIVE]: {
5613
+ code: ERROR_CODES.PRODUCT_ALREADY_INACTIVE,
5614
+ status: HTTP_STATUS.CONFLICT,
5615
+ category: ERROR_CATEGORY.Conflict,
5616
+ userMessage: "errors.payment.product.already_inactive",
5905
5617
  severity: ERROR_SEVERITY.Medium,
5618
+ retryable: false
5619
+ },
5620
+ [ERROR_CODES.PRODUCT_SYNC_FAILED]: {
5621
+ code: ERROR_CODES.PRODUCT_SYNC_FAILED,
5622
+ status: HTTP_STATUS.BAD_GATEWAY,
5623
+ category: ERROR_CATEGORY.Provider,
5624
+ userMessage: "errors.payment.product.sync_failed",
5625
+ severity: ERROR_SEVERITY.High,
5906
5626
  retryable: true
5907
5627
  },
5908
- // ===== Unsupported Operations =====
5909
- [ERROR_CODES.SAVE_PAYMENT_METHOD_UNSUPPORTED]: {
5910
- code: ERROR_CODES.SAVE_PAYMENT_METHOD_UNSUPPORTED,
5628
+ // Pricing Errors
5629
+ [ERROR_CODES.PRICING_CREATE_UNSUPPORTED]: {
5630
+ code: ERROR_CODES.PRICING_CREATE_UNSUPPORTED,
5911
5631
  status: HTTP_STATUS.NOT_IMPLEMENTED,
5912
5632
  category: ERROR_CATEGORY.Provider,
5913
- userMessage: "errors.payment.method.save_unsupported",
5633
+ userMessage: "errors.payment.pricing.create_unsupported",
5914
5634
  severity: ERROR_SEVERITY.Medium,
5915
5635
  retryable: false
5916
5636
  },
5917
- [ERROR_CODES.DELETE_PAYMENT_METHOD_UNSUPPORTED]: {
5918
- code: ERROR_CODES.DELETE_PAYMENT_METHOD_UNSUPPORTED,
5637
+ [ERROR_CODES.PRICING_UPDATE_UNSUPPORTED]: {
5638
+ code: ERROR_CODES.PRICING_UPDATE_UNSUPPORTED,
5919
5639
  status: HTTP_STATUS.NOT_IMPLEMENTED,
5920
5640
  category: ERROR_CATEGORY.Provider,
5921
- userMessage: "errors.payment.method.delete_unsupported",
5641
+ userMessage: "errors.payment.pricing.update_unsupported",
5922
5642
  severity: ERROR_SEVERITY.Medium,
5923
5643
  retryable: false
5924
5644
  },
5925
- [ERROR_CODES.GET_USER_PAYMENT_METHODS_UNSUPPORTED]: {
5926
- code: ERROR_CODES.GET_USER_PAYMENT_METHODS_UNSUPPORTED,
5645
+ [ERROR_CODES.PRICING_DEACTIVATE_UNSUPPORTED]: {
5646
+ code: ERROR_CODES.PRICING_DEACTIVATE_UNSUPPORTED,
5927
5647
  status: HTTP_STATUS.NOT_IMPLEMENTED,
5928
5648
  category: ERROR_CATEGORY.Provider,
5929
- userMessage: "errors.payment.method.get_user_methods_unsupported",
5649
+ userMessage: "errors.payment.pricing.deactivate_unsupported",
5930
5650
  severity: ERROR_SEVERITY.Medium,
5931
5651
  retryable: false
5932
5652
  },
5933
- [ERROR_CODES.CREATE_SUBSCRIPTION_UNSUPPORTED]: {
5934
- code: ERROR_CODES.CREATE_SUBSCRIPTION_UNSUPPORTED,
5935
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5936
- category: ERROR_CATEGORY.Provider,
5937
- userMessage: "errors.payment.subscription.create_unsupported",
5653
+ [ERROR_CODES.PRICING_NOT_FOUND]: {
5654
+ code: ERROR_CODES.PRICING_NOT_FOUND,
5655
+ status: HTTP_STATUS.NOT_FOUND,
5656
+ category: ERROR_CATEGORY.NotFound,
5657
+ userMessage: "errors.payment.pricing.not_found",
5938
5658
  severity: ERROR_SEVERITY.Medium,
5939
5659
  retryable: false
5940
5660
  },
5941
- [ERROR_CODES.CANCEL_SUBSCRIPTION_UNSUPPORTED]: {
5942
- code: ERROR_CODES.CANCEL_SUBSCRIPTION_UNSUPPORTED,
5943
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5944
- category: ERROR_CATEGORY.Provider,
5945
- userMessage: "errors.payment.subscription.cancel_unsupported",
5661
+ [ERROR_CODES.PRICING_INVALID_AMOUNT]: {
5662
+ code: ERROR_CODES.PRICING_INVALID_AMOUNT,
5663
+ status: HTTP_STATUS.BAD_REQUEST,
5664
+ category: ERROR_CATEGORY.Validation,
5665
+ userMessage: "errors.payment.pricing.invalid_amount",
5946
5666
  severity: ERROR_SEVERITY.Medium,
5947
5667
  retryable: false
5948
5668
  },
5949
- [ERROR_CODES.PROCESS_PAYOUT_UNSUPPORTED]: {
5950
- code: ERROR_CODES.PROCESS_PAYOUT_UNSUPPORTED,
5951
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5952
- category: ERROR_CATEGORY.Provider,
5953
- userMessage: "errors.payment.payout.unsupported",
5669
+ [ERROR_CODES.PRICING_INVALID_CURRENCY]: {
5670
+ code: ERROR_CODES.PRICING_INVALID_CURRENCY,
5671
+ status: HTTP_STATUS.BAD_REQUEST,
5672
+ category: ERROR_CATEGORY.Validation,
5673
+ userMessage: "errors.payment.pricing.invalid_currency",
5954
5674
  severity: ERROR_SEVERITY.Medium,
5955
5675
  retryable: false
5956
5676
  },
5957
- [ERROR_CODES.GET_TRANSACTION_HISTORY_UNSUPPORTED]: {
5958
- code: ERROR_CODES.GET_TRANSACTION_HISTORY_UNSUPPORTED,
5959
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5677
+ [ERROR_CODES.PRICING_PROVIDER_ERROR]: {
5678
+ code: ERROR_CODES.PRICING_PROVIDER_ERROR,
5679
+ status: HTTP_STATUS.BAD_GATEWAY,
5960
5680
  category: ERROR_CATEGORY.Provider,
5961
- userMessage: "errors.payment.transaction.history_unsupported",
5681
+ userMessage: "errors.payment.pricing.provider_error",
5682
+ severity: ERROR_SEVERITY.High,
5683
+ retryable: true
5684
+ },
5685
+ [ERROR_CODES.PRICING_ALREADY_INACTIVE]: {
5686
+ code: ERROR_CODES.PRICING_ALREADY_INACTIVE,
5687
+ status: HTTP_STATUS.CONFLICT,
5688
+ category: ERROR_CATEGORY.Conflict,
5689
+ userMessage: "errors.payment.pricing.already_inactive",
5962
5690
  severity: ERROR_SEVERITY.Medium,
5963
5691
  retryable: false
5964
5692
  },
5965
- // Withdrawal Errors
5966
- [ERROR_CODES.WITHDRAWAL_UNSUPPORTED]: {
5967
- code: ERROR_CODES.WITHDRAWAL_UNSUPPORTED,
5968
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5693
+ [ERROR_CODES.PRICING_SYNC_FAILED]: {
5694
+ code: ERROR_CODES.PRICING_SYNC_FAILED,
5695
+ status: HTTP_STATUS.BAD_GATEWAY,
5969
5696
  category: ERROR_CATEGORY.Provider,
5970
- userMessage: "errors.payment.withdrawal.unsupported",
5697
+ userMessage: "errors.payment.pricing.sync_failed",
5698
+ severity: ERROR_SEVERITY.High,
5699
+ retryable: true
5700
+ },
5701
+ [ERROR_CODES.PRICING_REQUIRES_NEW_VERSION]: {
5702
+ code: ERROR_CODES.PRICING_REQUIRES_NEW_VERSION,
5703
+ status: HTTP_STATUS.CONFLICT,
5704
+ category: ERROR_CATEGORY.Conflict,
5705
+ userMessage: "errors.payment.pricing.requires_new_version",
5971
5706
  severity: ERROR_SEVERITY.Medium,
5972
5707
  retryable: false
5973
5708
  },
5974
- [ERROR_CODES.WITHDRAWAL_CREATE_UNSUPPORTED]: {
5975
- code: ERROR_CODES.WITHDRAWAL_CREATE_UNSUPPORTED,
5976
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5977
- category: ERROR_CATEGORY.Provider,
5978
- userMessage: "errors.payment.withdrawal.create_unsupported",
5709
+ [ERROR_CODES.INVALID_CREDENTIALS]: {
5710
+ code: ERROR_CODES.INVALID_CREDENTIALS,
5711
+ status: HTTP_STATUS.UNAUTHORIZED,
5712
+ category: ERROR_CATEGORY.Authentication,
5713
+ userMessage: "errors.auth.invalid_credentials",
5979
5714
  severity: ERROR_SEVERITY.Medium,
5980
5715
  retryable: false
5981
5716
  },
5982
- [ERROR_CODES.WITHDRAWAL_PROCESS_UNSUPPORTED]: {
5983
- code: ERROR_CODES.WITHDRAWAL_PROCESS_UNSUPPORTED,
5984
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5985
- category: ERROR_CATEGORY.Provider,
5986
- userMessage: "errors.payment.withdrawal.process_unsupported",
5717
+ [ERROR_CODES.TOKEN_EXPIRED]: {
5718
+ code: ERROR_CODES.TOKEN_EXPIRED,
5719
+ status: HTTP_STATUS.UNAUTHORIZED,
5720
+ category: ERROR_CATEGORY.Authentication,
5721
+ userMessage: "errors.auth.token_expired",
5987
5722
  severity: ERROR_SEVERITY.Medium,
5988
5723
  retryable: false
5989
5724
  },
5990
- [ERROR_CODES.WITHDRAWAL_STATUS_FETCH_UNSUPPORTED]: {
5991
- code: ERROR_CODES.WITHDRAWAL_STATUS_FETCH_UNSUPPORTED,
5992
- status: HTTP_STATUS.NOT_IMPLEMENTED,
5993
- category: ERROR_CATEGORY.Provider,
5994
- userMessage: "errors.payment.withdrawal.status_fetch_unsupported",
5725
+ [ERROR_CODES.TOKEN_INVALID]: {
5726
+ code: ERROR_CODES.TOKEN_INVALID,
5727
+ status: HTTP_STATUS.UNAUTHORIZED,
5728
+ category: ERROR_CATEGORY.Authentication,
5729
+ userMessage: "errors.auth.token_invalid",
5730
+ severity: ERROR_SEVERITY.High,
5731
+ retryable: false
5732
+ },
5733
+ [ERROR_CODES.TOKEN_REVOKED]: {
5734
+ code: ERROR_CODES.TOKEN_REVOKED,
5735
+ status: HTTP_STATUS.UNAUTHORIZED,
5736
+ category: ERROR_CATEGORY.Authentication,
5737
+ userMessage: "errors.auth.token_revoked",
5995
5738
  severity: ERROR_SEVERITY.Medium,
5996
5739
  retryable: false
5997
5740
  },
5998
- [ERROR_CODES.WITHDRAWAL_CANCEL_UNSUPPORTED]: {
5999
- code: ERROR_CODES.WITHDRAWAL_CANCEL_UNSUPPORTED,
6000
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6001
- category: ERROR_CATEGORY.Provider,
6002
- userMessage: "errors.payment.withdrawal.cancel_unsupported",
5741
+ [ERROR_CODES.SESSION_EXPIRED]: {
5742
+ code: ERROR_CODES.SESSION_EXPIRED,
5743
+ status: HTTP_STATUS.UNAUTHORIZED,
5744
+ category: ERROR_CATEGORY.Authentication,
5745
+ userMessage: "errors.auth.session_expired",
6003
5746
  severity: ERROR_SEVERITY.Medium,
6004
5747
  retryable: false
6005
5748
  },
6006
- [ERROR_CODES.WITHDRAWAL_INSUFFICIENT_BALANCE]: {
6007
- code: ERROR_CODES.WITHDRAWAL_INSUFFICIENT_BALANCE,
6008
- status: HTTP_STATUS.BAD_REQUEST,
6009
- category: ERROR_CATEGORY.Limits,
6010
- userMessage: "errors.payment.withdrawal.insufficient_balance",
5749
+ [ERROR_CODES.MFA_REQUIRED]: {
5750
+ code: ERROR_CODES.MFA_REQUIRED,
5751
+ status: HTTP_STATUS.FORBIDDEN,
5752
+ category: ERROR_CATEGORY.Authorization,
5753
+ userMessage: "errors.auth.mfa_required",
5754
+ severity: ERROR_SEVERITY.Low,
5755
+ retryable: false
5756
+ },
5757
+ [ERROR_CODES.MFA_INVALID]: {
5758
+ code: ERROR_CODES.MFA_INVALID,
5759
+ status: HTTP_STATUS.UNAUTHORIZED,
5760
+ category: ERROR_CATEGORY.Authentication,
5761
+ userMessage: "errors.auth.mfa_invalid",
6011
5762
  severity: ERROR_SEVERITY.Medium,
6012
5763
  retryable: false
6013
5764
  },
6014
- [ERROR_CODES.WITHDRAWAL_INVALID_ACCOUNT]: {
6015
- code: ERROR_CODES.WITHDRAWAL_INVALID_ACCOUNT,
6016
- status: HTTP_STATUS.BAD_REQUEST,
6017
- category: ERROR_CATEGORY.Validation,
6018
- userMessage: "errors.payment.withdrawal.invalid_account",
5765
+ [ERROR_CODES.INSUFFICIENT_PERMISSIONS]: {
5766
+ code: ERROR_CODES.INSUFFICIENT_PERMISSIONS,
5767
+ status: HTTP_STATUS.FORBIDDEN,
5768
+ category: ERROR_CATEGORY.Authorization,
5769
+ userMessage: "errors.auth.insufficient_permissions",
6019
5770
  severity: ERROR_SEVERITY.Medium,
6020
5771
  retryable: false
6021
5772
  },
6022
- [ERROR_CODES.WITHDRAWAL_KYC_REQUIRED]: {
6023
- code: ERROR_CODES.WITHDRAWAL_KYC_REQUIRED,
5773
+ [ERROR_CODES.ROLE_REQUIRED]: {
5774
+ code: ERROR_CODES.ROLE_REQUIRED,
6024
5775
  status: HTTP_STATUS.FORBIDDEN,
6025
- category: ERROR_CATEGORY.Compliance,
6026
- userMessage: "errors.payment.withdrawal.kyc_required",
5776
+ category: ERROR_CATEGORY.Authorization,
5777
+ userMessage: "errors.auth.role_required",
6027
5778
  severity: ERROR_SEVERITY.Medium,
6028
5779
  retryable: false
6029
5780
  },
6030
- [ERROR_CODES.WITHDRAWAL_LIMIT_EXCEEDED]: {
6031
- code: ERROR_CODES.WITHDRAWAL_LIMIT_EXCEEDED,
5781
+ [ERROR_CODES.WALLET_SIGNATURE_INVALID]: {
5782
+ code: ERROR_CODES.WALLET_SIGNATURE_INVALID,
5783
+ status: HTTP_STATUS.UNAUTHORIZED,
5784
+ category: ERROR_CATEGORY.Authentication,
5785
+ userMessage: "errors.auth.wallet_signature_invalid",
5786
+ severity: ERROR_SEVERITY.High,
5787
+ retryable: false
5788
+ },
5789
+ [ERROR_CODES.NONCE_EXPIRED]: {
5790
+ code: ERROR_CODES.NONCE_EXPIRED,
5791
+ status: HTTP_STATUS.UNAUTHORIZED,
5792
+ category: ERROR_CATEGORY.Authentication,
5793
+ userMessage: "errors.auth.nonce_expired",
5794
+ severity: ERROR_SEVERITY.Medium,
5795
+ retryable: false
5796
+ },
5797
+ [ERROR_CODES.NONCE_ALREADY_USED]: {
5798
+ code: ERROR_CODES.NONCE_ALREADY_USED,
5799
+ status: HTTP_STATUS.UNAUTHORIZED,
5800
+ category: ERROR_CATEGORY.Authentication,
5801
+ userMessage: "errors.auth.nonce_already_used",
5802
+ severity: ERROR_SEVERITY.High,
5803
+ retryable: false
5804
+ },
5805
+ [ERROR_CODES.ACCOUNT_LOCKED]: {
5806
+ code: ERROR_CODES.ACCOUNT_LOCKED,
5807
+ status: HTTP_STATUS.LOCKED,
5808
+ category: ERROR_CATEGORY.Authorization,
5809
+ userMessage: "errors.auth.account_locked",
5810
+ severity: ERROR_SEVERITY.High,
5811
+ retryable: false
5812
+ },
5813
+ [ERROR_CODES.ACCOUNT_SUSPENDED]: {
5814
+ code: ERROR_CODES.ACCOUNT_SUSPENDED,
6032
5815
  status: HTTP_STATUS.FORBIDDEN,
6033
- category: ERROR_CATEGORY.Limits,
6034
- userMessage: "errors.payment.withdrawal.limit_exceeded",
5816
+ category: ERROR_CATEGORY.Authorization,
5817
+ userMessage: "errors.auth.account_suspended",
5818
+ severity: ERROR_SEVERITY.High,
5819
+ retryable: false
5820
+ }
5821
+ };
5822
+
5823
+ // src/auth/enums.ts
5824
+ var USER_ROLE = {
5825
+ /** A user who is an athlete and participates in sports activities. */
5826
+ Athlete: "athlete",
5827
+ /** A user who scouts and discovers talent. */
5828
+ Scout: "scout",
5829
+ /** A user who acts as an agent representing athletes or clubs. */
5830
+ Agent: "agent",
5831
+ /** A user representing a sports club or organization. */
5832
+ Club: "club",
5833
+ /** A fan or supporter of athletes or clubs. */
5834
+ Fan: "fan",
5835
+ /** A system administrator with access to management tools. */
5836
+ Admin: "admin",
5837
+ /** A super admin with the highest level of access and control. */
5838
+ SuperAdmin: "super.admin"
5839
+ };
5840
+ var USER_STATUS = {
5841
+ /** Active user with full access. */
5842
+ Active: "active",
5843
+ /** Inactive user, typically not currently using the platform. */
5844
+ Inactive: "inactive",
5845
+ /** User account is awaiting approval or completion of setup. */
5846
+ Pending: "pending",
5847
+ /** User has been temporarily suspended due to policy violations or manual review. */
5848
+ Suspended: "suspended",
5849
+ /** User has been permanently banned from the platform. */
5850
+ Banned: "banned"
5851
+ };
5852
+ var AUTH_PROVIDER_TYPE = /* @__PURE__ */ ((AUTH_PROVIDER_TYPE2) => {
5853
+ AUTH_PROVIDER_TYPE2["ClerkSupabase"] = "CLERK_SUPABASE";
5854
+ AUTH_PROVIDER_TYPE2["InternalDb"] = "INTERNAL_DB";
5855
+ return AUTH_PROVIDER_TYPE2;
5856
+ })(AUTH_PROVIDER_TYPE || {});
5857
+ var AUTH_PROVIDER = /* @__PURE__ */ ((AUTH_PROVIDER2) => {
5858
+ AUTH_PROVIDER2["EMAIL"] = "EMAIL";
5859
+ AUTH_PROVIDER2["CLERK"] = "CLERK";
5860
+ AUTH_PROVIDER2["GOOGLE"] = "GOOGLE";
5861
+ AUTH_PROVIDER2["FACEBOOK"] = "FACEBOOK";
5862
+ AUTH_PROVIDER2["APPLE"] = "APPLE";
5863
+ AUTH_PROVIDER2["WEB3"] = "WEB3";
5864
+ return AUTH_PROVIDER2;
5865
+ })(AUTH_PROVIDER || {});
5866
+ var USER_ROLE_STATUS = /* @__PURE__ */ ((USER_ROLE_STATUS2) => {
5867
+ USER_ROLE_STATUS2["ACTIVE"] = "ACTIVE";
5868
+ USER_ROLE_STATUS2["INACTIVE"] = "INACTIVE";
5869
+ USER_ROLE_STATUS2["SUSPENDED"] = "SUSPENDED";
5870
+ return USER_ROLE_STATUS2;
5871
+ })(USER_ROLE_STATUS || {});
5872
+ var TOKEN_TYPE = /* @__PURE__ */ ((TOKEN_TYPE2) => {
5873
+ TOKEN_TYPE2["BEARER"] = "Bearer";
5874
+ TOKEN_TYPE2["JWT"] = "JWT";
5875
+ return TOKEN_TYPE2;
5876
+ })(TOKEN_TYPE || {});
5877
+ var AUTH_ERROR_DEFINITIONS = {
5878
+ [ERROR_CODES.INVALID_CREDENTIALS]: {
5879
+ code: ERROR_CODES.INVALID_CREDENTIALS,
5880
+ status: HTTP_STATUS.UNAUTHORIZED,
5881
+ category: ERROR_CATEGORY.Authentication,
5882
+ userMessage: "errors.auth.invalid_credentials",
5883
+ severity: ERROR_SEVERITY.Medium,
5884
+ retryable: false
5885
+ },
5886
+ [ERROR_CODES.TOKEN_EXPIRED]: {
5887
+ code: ERROR_CODES.TOKEN_EXPIRED,
5888
+ status: HTTP_STATUS.UNAUTHORIZED,
5889
+ category: ERROR_CATEGORY.Authentication,
5890
+ userMessage: "errors.auth.token_expired",
6035
5891
  severity: ERROR_SEVERITY.Medium,
6036
5892
  retryable: false
6037
5893
  },
6038
- [ERROR_CODES.WITHDRAWAL_PROVIDER_ERROR]: {
6039
- code: ERROR_CODES.WITHDRAWAL_PROVIDER_ERROR,
6040
- status: HTTP_STATUS.BAD_GATEWAY,
6041
- category: ERROR_CATEGORY.Provider,
6042
- userMessage: "errors.payment.withdrawal.provider_error",
6043
- severity: ERROR_SEVERITY.High,
6044
- retryable: true
6045
- },
6046
- [ERROR_CODES.WITHDRAWAL_FAILED]: {
6047
- code: ERROR_CODES.WITHDRAWAL_FAILED,
6048
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
6049
- category: ERROR_CATEGORY.Provider,
6050
- userMessage: "errors.payment.withdrawal.failed",
5894
+ [ERROR_CODES.TOKEN_INVALID]: {
5895
+ code: ERROR_CODES.TOKEN_INVALID,
5896
+ status: HTTP_STATUS.UNAUTHORIZED,
5897
+ category: ERROR_CATEGORY.Authentication,
5898
+ userMessage: "errors.auth.token_invalid",
6051
5899
  severity: ERROR_SEVERITY.High,
6052
- retryable: true
5900
+ retryable: false
6053
5901
  },
6054
- [ERROR_CODES.WITHDRAWAL_TIMEOUT]: {
6055
- code: ERROR_CODES.WITHDRAWAL_TIMEOUT,
6056
- status: HTTP_STATUS.GATEWAY_TIMEOUT,
6057
- category: ERROR_CATEGORY.Timeout,
6058
- userMessage: "errors.payment.withdrawal.timeout",
5902
+ [ERROR_CODES.TOKEN_REVOKED]: {
5903
+ code: ERROR_CODES.TOKEN_REVOKED,
5904
+ status: HTTP_STATUS.UNAUTHORIZED,
5905
+ category: ERROR_CATEGORY.Authentication,
5906
+ userMessage: "errors.auth.token_revoked",
6059
5907
  severity: ERROR_SEVERITY.Medium,
6060
- retryable: true
5908
+ retryable: false
6061
5909
  },
6062
- // Product Errors
6063
- [ERROR_CODES.PRODUCT_CREATE_UNSUPPORTED]: {
6064
- code: ERROR_CODES.PRODUCT_CREATE_UNSUPPORTED,
6065
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6066
- category: ERROR_CATEGORY.Provider,
6067
- userMessage: "errors.payment.product.create_unsupported",
5910
+ [ERROR_CODES.SESSION_EXPIRED]: {
5911
+ code: ERROR_CODES.SESSION_EXPIRED,
5912
+ status: HTTP_STATUS.UNAUTHORIZED,
5913
+ category: ERROR_CATEGORY.Authentication,
5914
+ userMessage: "errors.auth.session_expired",
6068
5915
  severity: ERROR_SEVERITY.Medium,
6069
5916
  retryable: false
6070
5917
  },
6071
- [ERROR_CODES.PRODUCT_UPDATE_UNSUPPORTED]: {
6072
- code: ERROR_CODES.PRODUCT_UPDATE_UNSUPPORTED,
6073
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6074
- category: ERROR_CATEGORY.Provider,
6075
- userMessage: "errors.payment.product.update_unsupported",
6076
- severity: ERROR_SEVERITY.Medium,
5918
+ [ERROR_CODES.MFA_REQUIRED]: {
5919
+ code: ERROR_CODES.MFA_REQUIRED,
5920
+ status: HTTP_STATUS.FORBIDDEN,
5921
+ category: ERROR_CATEGORY.Authorization,
5922
+ userMessage: "errors.auth.mfa_required",
5923
+ severity: ERROR_SEVERITY.Low,
6077
5924
  retryable: false
6078
5925
  },
6079
- [ERROR_CODES.PRODUCT_FETCH_UNSUPPORTED]: {
6080
- code: ERROR_CODES.PRODUCT_FETCH_UNSUPPORTED,
6081
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6082
- category: ERROR_CATEGORY.Provider,
6083
- userMessage: "errors.payment.product.fetch_unsupported",
5926
+ [ERROR_CODES.MFA_INVALID]: {
5927
+ code: ERROR_CODES.MFA_INVALID,
5928
+ status: HTTP_STATUS.UNAUTHORIZED,
5929
+ category: ERROR_CATEGORY.Authentication,
5930
+ userMessage: "errors.auth.mfa_invalid",
6084
5931
  severity: ERROR_SEVERITY.Medium,
6085
5932
  retryable: false
6086
5933
  },
6087
- [ERROR_CODES.PRODUCT_DEACTIVATE_UNSUPPORTED]: {
6088
- code: ERROR_CODES.PRODUCT_DEACTIVATE_UNSUPPORTED,
6089
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6090
- category: ERROR_CATEGORY.Provider,
6091
- userMessage: "errors.payment.product.deactivate_unsupported",
5934
+ [ERROR_CODES.INSUFFICIENT_PERMISSIONS]: {
5935
+ code: ERROR_CODES.INSUFFICIENT_PERMISSIONS,
5936
+ status: HTTP_STATUS.FORBIDDEN,
5937
+ category: ERROR_CATEGORY.Authorization,
5938
+ userMessage: "errors.auth.insufficient_permissions",
6092
5939
  severity: ERROR_SEVERITY.Medium,
6093
5940
  retryable: false
6094
5941
  },
6095
- [ERROR_CODES.PRODUCT_NOT_FOUND]: {
6096
- code: ERROR_CODES.PRODUCT_NOT_FOUND,
6097
- status: HTTP_STATUS.NOT_FOUND,
6098
- category: ERROR_CATEGORY.NotFound,
6099
- userMessage: "errors.payment.product.not_found",
5942
+ [ERROR_CODES.ROLE_REQUIRED]: {
5943
+ code: ERROR_CODES.ROLE_REQUIRED,
5944
+ status: HTTP_STATUS.FORBIDDEN,
5945
+ category: ERROR_CATEGORY.Authorization,
5946
+ userMessage: "errors.auth.role_required",
6100
5947
  severity: ERROR_SEVERITY.Medium,
6101
5948
  retryable: false
6102
5949
  },
6103
- [ERROR_CODES.PRODUCT_INVALID_DATA]: {
6104
- code: ERROR_CODES.PRODUCT_INVALID_DATA,
6105
- status: HTTP_STATUS.BAD_REQUEST,
6106
- category: ERROR_CATEGORY.Validation,
6107
- userMessage: "errors.payment.product.invalid_data",
5950
+ [ERROR_CODES.WALLET_SIGNATURE_INVALID]: {
5951
+ code: ERROR_CODES.WALLET_SIGNATURE_INVALID,
5952
+ status: HTTP_STATUS.UNAUTHORIZED,
5953
+ category: ERROR_CATEGORY.Authentication,
5954
+ userMessage: "errors.auth.wallet_signature_invalid",
5955
+ severity: ERROR_SEVERITY.High,
5956
+ retryable: false
5957
+ },
5958
+ [ERROR_CODES.NONCE_EXPIRED]: {
5959
+ code: ERROR_CODES.NONCE_EXPIRED,
5960
+ status: HTTP_STATUS.UNAUTHORIZED,
5961
+ category: ERROR_CATEGORY.Authentication,
5962
+ userMessage: "errors.auth.nonce_expired",
6108
5963
  severity: ERROR_SEVERITY.Medium,
6109
5964
  retryable: false
6110
5965
  },
6111
- [ERROR_CODES.PRODUCT_PROVIDER_ERROR]: {
6112
- code: ERROR_CODES.PRODUCT_PROVIDER_ERROR,
6113
- status: HTTP_STATUS.BAD_GATEWAY,
6114
- category: ERROR_CATEGORY.Provider,
6115
- userMessage: "errors.payment.product.provider_error",
5966
+ [ERROR_CODES.NONCE_ALREADY_USED]: {
5967
+ code: ERROR_CODES.NONCE_ALREADY_USED,
5968
+ status: HTTP_STATUS.UNAUTHORIZED,
5969
+ category: ERROR_CATEGORY.Authentication,
5970
+ userMessage: "errors.auth.nonce_already_used",
6116
5971
  severity: ERROR_SEVERITY.High,
6117
- retryable: true
5972
+ retryable: false
6118
5973
  },
6119
- [ERROR_CODES.PRODUCT_ALREADY_INACTIVE]: {
6120
- code: ERROR_CODES.PRODUCT_ALREADY_INACTIVE,
6121
- status: HTTP_STATUS.CONFLICT,
6122
- category: ERROR_CATEGORY.Conflict,
6123
- userMessage: "errors.payment.product.already_inactive",
6124
- severity: ERROR_SEVERITY.Medium,
5974
+ [ERROR_CODES.ACCOUNT_LOCKED]: {
5975
+ code: ERROR_CODES.ACCOUNT_LOCKED,
5976
+ status: HTTP_STATUS.LOCKED,
5977
+ category: ERROR_CATEGORY.Authorization,
5978
+ userMessage: "errors.auth.account_locked",
5979
+ severity: ERROR_SEVERITY.High,
6125
5980
  retryable: false
6126
5981
  },
6127
- [ERROR_CODES.PRODUCT_SYNC_FAILED]: {
6128
- code: ERROR_CODES.PRODUCT_SYNC_FAILED,
6129
- status: HTTP_STATUS.BAD_GATEWAY,
6130
- category: ERROR_CATEGORY.Provider,
6131
- userMessage: "errors.payment.product.sync_failed",
6132
- severity: ERROR_SEVERITY.High,
6133
- retryable: true
5982
+ [ERROR_CODES.ACCOUNT_SUSPENDED]: {
5983
+ code: ERROR_CODES.ACCOUNT_SUSPENDED,
5984
+ status: HTTP_STATUS.FORBIDDEN,
5985
+ category: ERROR_CATEGORY.Authorization,
5986
+ userMessage: "errors.auth.account_suspended",
5987
+ severity: ERROR_SEVERITY.High,
5988
+ retryable: false
5989
+ }
5990
+ };
5991
+ var DEFAULT_PASSWORD = 8;
5992
+ var ContactUsFormSchema = zod.z.object({
5993
+ name: zod.z.string({ error: "errors.form.missingField" }).min(1, "errors.form.nameMissing"),
5994
+ email: zod.z.email({ error: "errors.form.emailInvalid" })
5995
+ });
5996
+ var SignupFormSchema = zod.z.object({
5997
+ name: zod.z.string({ error: "errors.form.missingField" }).min(1, "errors.form.nameMissing"),
5998
+ email: zod.z.email({ error: "errors.form.emailInvalid" }),
5999
+ password: zod.z.string({ error: "errors.form.missingField" }).min(DEFAULT_PASSWORD, "errors.form.passwordTooShort")
6000
+ });
6001
+
6002
+ // src/core/modules.ts
6003
+ var BACKEND_RUNTIMES = [
6004
+ "node",
6005
+ "nestjs",
6006
+ "express",
6007
+ "deno",
6008
+ "bun"
6009
+ ];
6010
+ var FRONTEND_RUNTIMES = ["browser"];
6011
+ var UNIVERSAL_RUNTIMES = [
6012
+ "nextjs",
6013
+ "nuxt",
6014
+ "edge"
6015
+ ];
6016
+ var APP_CONTEXTS = [
6017
+ "webapp",
6018
+ "backoffice",
6019
+ "mobile",
6020
+ "microapp",
6021
+ "cli"
6022
+ ];
6023
+
6024
+ // src/core/tables/enum.ts
6025
+ var TABLES = /* @__PURE__ */ ((TABLES2) => {
6026
+ TABLES2["User"] = "users";
6027
+ return TABLES2;
6028
+ })(TABLES || {});
6029
+
6030
+ // src/core/featureFlag/enums.ts
6031
+ var SORT_DIRECTION = /* @__PURE__ */ ((SORT_DIRECTION2) => {
6032
+ SORT_DIRECTION2["Asc"] = "asc";
6033
+ SORT_DIRECTION2["Desc"] = "desc";
6034
+ return SORT_DIRECTION2;
6035
+ })(SORT_DIRECTION || {});
6036
+ var FEATURE_FLAG_TABLE = /* @__PURE__ */ ((FEATURE_FLAG_TABLE2) => {
6037
+ FEATURE_FLAG_TABLE2["FeatureFlags"] = "feature_flags";
6038
+ FEATURE_FLAG_TABLE2["FeatureFlagRules"] = "feature_flag_rules";
6039
+ FEATURE_FLAG_TABLE2["FeatureFlagEvaluations"] = "feature_flag_evaluations";
6040
+ FEATURE_FLAG_TABLE2["FeatureFlagOverrides"] = "feature_flag_overrides";
6041
+ return FEATURE_FLAG_TABLE2;
6042
+ })(FEATURE_FLAG_TABLE || {});
6043
+ var FEATURE_FLAG_FIELD = /* @__PURE__ */ ((FEATURE_FLAG_FIELD2) => {
6044
+ FEATURE_FLAG_FIELD2["Key"] = "key";
6045
+ FEATURE_FLAG_FIELD2["Name"] = "name";
6046
+ FEATURE_FLAG_FIELD2["Value"] = "value";
6047
+ FEATURE_FLAG_FIELD2["Type"] = "type";
6048
+ FEATURE_FLAG_FIELD2["IsEnabled"] = "is_enabled";
6049
+ FEATURE_FLAG_FIELD2["Environments"] = "environments";
6050
+ FEATURE_FLAG_FIELD2["Description"] = "description";
6051
+ FEATURE_FLAG_FIELD2["CreatedAt"] = "created_at";
6052
+ FEATURE_FLAG_FIELD2["UpdatedAt"] = "updated_at";
6053
+ return FEATURE_FLAG_FIELD2;
6054
+ })(FEATURE_FLAG_FIELD || {});
6055
+ var FEATURE_FLAG_RULE_FIELD = /* @__PURE__ */ ((FEATURE_FLAG_RULE_FIELD2) => {
6056
+ FEATURE_FLAG_RULE_FIELD2["Id"] = "id";
6057
+ FEATURE_FLAG_RULE_FIELD2["FlagKey"] = "flag_key";
6058
+ FEATURE_FLAG_RULE_FIELD2["Name"] = "name";
6059
+ FEATURE_FLAG_RULE_FIELD2["Conditions"] = "conditions";
6060
+ FEATURE_FLAG_RULE_FIELD2["Value"] = "value";
6061
+ FEATURE_FLAG_RULE_FIELD2["Priority"] = "priority";
6062
+ FEATURE_FLAG_RULE_FIELD2["IsEnabled"] = "is_enabled";
6063
+ return FEATURE_FLAG_RULE_FIELD2;
6064
+ })(FEATURE_FLAG_RULE_FIELD || {});
6065
+ var FEATURE_FLAG_PROVIDERS = /* @__PURE__ */ ((FEATURE_FLAG_PROVIDERS2) => {
6066
+ FEATURE_FLAG_PROVIDERS2["MEMORY"] = "memory";
6067
+ FEATURE_FLAG_PROVIDERS2["FILE"] = "file";
6068
+ FEATURE_FLAG_PROVIDERS2["REDIS"] = "redis";
6069
+ FEATURE_FLAG_PROVIDERS2["API"] = "api";
6070
+ FEATURE_FLAG_PROVIDERS2["DATABASE"] = "database";
6071
+ return FEATURE_FLAG_PROVIDERS2;
6072
+ })(FEATURE_FLAG_PROVIDERS || {});
6073
+ var NODE_ENVIRONMENTS = /* @__PURE__ */ ((NODE_ENVIRONMENTS2) => {
6074
+ NODE_ENVIRONMENTS2["DEVELOPMENT"] = "development";
6075
+ NODE_ENVIRONMENTS2["PRODUCTION"] = "production";
6076
+ NODE_ENVIRONMENTS2["STAGING"] = "staging";
6077
+ NODE_ENVIRONMENTS2["TEST"] = "test";
6078
+ return NODE_ENVIRONMENTS2;
6079
+ })(NODE_ENVIRONMENTS || {});
6080
+ var DATABASE_FIELDS = /* @__PURE__ */ ((DATABASE_FIELDS2) => {
6081
+ DATABASE_FIELDS2["Key"] = "key";
6082
+ DATABASE_FIELDS2["FlagKey"] = "flag_key";
6083
+ DATABASE_FIELDS2["UserId"] = "user_id";
6084
+ DATABASE_FIELDS2["IsEnabled"] = "is_enabled";
6085
+ DATABASE_FIELDS2["CreatedAt"] = "created_at";
6086
+ DATABASE_FIELDS2["UpdatedAt"] = "updated_at";
6087
+ DATABASE_FIELDS2["ExpiresAt"] = "expires_at";
6088
+ DATABASE_FIELDS2["EvaluatedAt"] = "evaluated_at";
6089
+ return DATABASE_FIELDS2;
6090
+ })(DATABASE_FIELDS || {});
6091
+ var SYSTEM_USERS = /* @__PURE__ */ ((SYSTEM_USERS2) => {
6092
+ SYSTEM_USERS2["SYSTEM"] = "system";
6093
+ return SYSTEM_USERS2;
6094
+ })(SYSTEM_USERS || {});
6095
+ var EVALUATION_REASONS = /* @__PURE__ */ ((EVALUATION_REASONS2) => {
6096
+ EVALUATION_REASONS2["Default"] = "default";
6097
+ EVALUATION_REASONS2["RuleMatch"] = "rule_match";
6098
+ EVALUATION_REASONS2["Rollout"] = "rollout";
6099
+ EVALUATION_REASONS2["Override"] = "override";
6100
+ EVALUATION_REASONS2["Disabled"] = "disabled";
6101
+ return EVALUATION_REASONS2;
6102
+ })(EVALUATION_REASONS || {});
6103
+ var FEATURE_FLAG_TYPES = /* @__PURE__ */ ((FEATURE_FLAG_TYPES2) => {
6104
+ FEATURE_FLAG_TYPES2["BOOLEAN"] = "boolean";
6105
+ FEATURE_FLAG_TYPES2["STRING"] = "string";
6106
+ FEATURE_FLAG_TYPES2["NUMBER"] = "number";
6107
+ FEATURE_FLAG_TYPES2["OBJECT"] = "object";
6108
+ return FEATURE_FLAG_TYPES2;
6109
+ })(FEATURE_FLAG_TYPES || {});
6110
+
6111
+ // src/core/featureFlag/constants.ts
6112
+ var FEATURE_FLAG_DEFAULTS = {
6113
+ CACHE_TTL: 300,
6114
+ REFRESH_INTERVAL: 0,
6115
+ POOL_SIZE: 10,
6116
+ TIMEOUT: 3e4,
6117
+ TABLE_NAME: "feature_flags"
6118
+ };
6119
+ var FEATURE_FLAG_METADATA = {
6120
+ FLAG_CHECK: "plyaz:feature_flag_check",
6121
+ // Single feature flag check
6122
+ RESOLVE_FLAGS: "plyaz:resolve_feature_flags"
6123
+ // Multiple flags resolved at once
6124
+ };
6125
+
6126
+ // src/core/events/enums.ts
6127
+ var CoreEventScope = {
6128
+ SYSTEM: "system",
6129
+ ENTITY: "entity",
6130
+ VALIDATION: "validation",
6131
+ SANITIZATION: "sanitization",
6132
+ API: "api",
6133
+ CACHE: "cache",
6134
+ AUTH: "auth",
6135
+ DATABASE: "database",
6136
+ FEATURE_FLAG: "featureFlag",
6137
+ STORE: "store",
6138
+ STORAGE: "storage",
6139
+ NOTIFICATION: "notification"
6140
+ };
6141
+ var SystemEventAction = {
6142
+ INITIALIZED: "initialized",
6143
+ READY: "ready",
6144
+ SHUTDOWN: "shutdown",
6145
+ ERROR: "error",
6146
+ WARNING: "warning"
6147
+ };
6148
+ var EntityEventAction = {
6149
+ // Lifecycle (before API call)
6150
+ CREATING: "creating",
6151
+ UPDATING: "updating",
6152
+ PATCHING: "patching",
6153
+ DELETING: "deleting",
6154
+ // Completed (after API call)
6155
+ CREATED: "created",
6156
+ UPDATED: "updated",
6157
+ PATCHED: "patched",
6158
+ DELETED: "deleted",
6159
+ // Error/Complete
6160
+ ERROR: "error",
6161
+ COMPLETE: "complete",
6162
+ // Bulk operations
6163
+ BULK_CREATED: "bulkCreated",
6164
+ BULK_DELETED: "bulkDeleted"
6165
+ };
6166
+ var ValidationEventAction = {
6167
+ STARTED: "started",
6168
+ SUCCESS: "success",
6169
+ FAILED: "failed"
6170
+ };
6171
+ var SanitizationEventAction = {
6172
+ STARTED: "started",
6173
+ SUCCESS: "success",
6174
+ FAILED: "failed"
6175
+ };
6176
+ var ApiEventAction = {
6177
+ REQUEST_START: "requestStart",
6178
+ REQUEST_SUCCESS: "requestSuccess",
6179
+ REQUEST_ERROR: "requestError",
6180
+ RETRY: "retry",
6181
+ TIMEOUT: "timeout"
6182
+ };
6183
+ var CacheEventAction = {
6184
+ HIT: "hit",
6185
+ MISS: "miss",
6186
+ SET: "set",
6187
+ DELETE: "delete",
6188
+ CLEAR: "clear",
6189
+ EXPIRED: "expired"
6190
+ };
6191
+ var AuthEventAction = {
6192
+ LOGIN: "login",
6193
+ LOGOUT: "logout",
6194
+ TOKEN_REFRESH: "tokenRefresh",
6195
+ SESSION_EXPIRED: "sessionExpired",
6196
+ UNAUTHORIZED: "unauthorized"
6197
+ };
6198
+ var DatabaseEventAction = {
6199
+ CONNECTED: "connected",
6200
+ DISCONNECTED: "disconnected",
6201
+ QUERY: "query",
6202
+ ERROR: "error",
6203
+ TRANSACTION_START: "transactionStart",
6204
+ TRANSACTION_COMMIT: "transactionCommit",
6205
+ TRANSACTION_ROLLBACK: "transactionRollback"
6206
+ };
6207
+ var FeatureFlagEventAction = {
6208
+ CHANGED: "changed",
6209
+ EVALUATED: "evaluated",
6210
+ REFRESHED: "refreshed"
6211
+ };
6212
+ var StoreEventAction = {
6213
+ UPDATED: "updated",
6214
+ RESET: "reset",
6215
+ HYDRATED: "hydrated"
6216
+ };
6217
+ var StorageEventAction = {
6218
+ UPLOADED: "uploaded",
6219
+ DOWNLOADED: "downloaded",
6220
+ DELETED: "deleted",
6221
+ ERROR: "error",
6222
+ HEALTH_CHECK: "healthCheck"
6223
+ };
6224
+ var NotificationEventAction = {
6225
+ SENT: "sent",
6226
+ FAILED: "failed",
6227
+ DELIVERED: "delivered",
6228
+ OPENED: "opened",
6229
+ CLICKED: "clicked",
6230
+ ERROR: "error",
6231
+ HEALTH_CHECK: "healthCheck"
6232
+ };
6233
+ var CORE_EVENTS = {
6234
+ SYSTEM: {
6235
+ INITIALIZED: `${CoreEventScope.SYSTEM}:${SystemEventAction.INITIALIZED}`,
6236
+ READY: `${CoreEventScope.SYSTEM}:${SystemEventAction.READY}`,
6237
+ SHUTDOWN: `${CoreEventScope.SYSTEM}:${SystemEventAction.SHUTDOWN}`,
6238
+ ERROR: `${CoreEventScope.SYSTEM}:${SystemEventAction.ERROR}`,
6239
+ WARNING: `${CoreEventScope.SYSTEM}:${SystemEventAction.WARNING}`
6240
+ },
6241
+ ENTITY: {
6242
+ CREATING: `${CoreEventScope.ENTITY}:${EntityEventAction.CREATING}`,
6243
+ UPDATING: `${CoreEventScope.ENTITY}:${EntityEventAction.UPDATING}`,
6244
+ PATCHING: `${CoreEventScope.ENTITY}:${EntityEventAction.PATCHING}`,
6245
+ DELETING: `${CoreEventScope.ENTITY}:${EntityEventAction.DELETING}`,
6246
+ CREATED: `${CoreEventScope.ENTITY}:${EntityEventAction.CREATED}`,
6247
+ UPDATED: `${CoreEventScope.ENTITY}:${EntityEventAction.UPDATED}`,
6248
+ PATCHED: `${CoreEventScope.ENTITY}:${EntityEventAction.PATCHED}`,
6249
+ DELETED: `${CoreEventScope.ENTITY}:${EntityEventAction.DELETED}`,
6250
+ ERROR: `${CoreEventScope.ENTITY}:${EntityEventAction.ERROR}`,
6251
+ COMPLETE: `${CoreEventScope.ENTITY}:${EntityEventAction.COMPLETE}`,
6252
+ BULK_CREATED: `${CoreEventScope.ENTITY}:${EntityEventAction.BULK_CREATED}`,
6253
+ BULK_DELETED: `${CoreEventScope.ENTITY}:${EntityEventAction.BULK_DELETED}`
6134
6254
  },
6135
- // Pricing Errors
6136
- [ERROR_CODES.PRICING_CREATE_UNSUPPORTED]: {
6137
- code: ERROR_CODES.PRICING_CREATE_UNSUPPORTED,
6138
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6139
- category: ERROR_CATEGORY.Provider,
6140
- userMessage: "errors.payment.pricing.create_unsupported",
6141
- severity: ERROR_SEVERITY.Medium,
6142
- retryable: false
6255
+ VALIDATION: {
6256
+ STARTED: `${CoreEventScope.VALIDATION}:${ValidationEventAction.STARTED}`,
6257
+ SUCCESS: `${CoreEventScope.VALIDATION}:${ValidationEventAction.SUCCESS}`,
6258
+ FAILED: `${CoreEventScope.VALIDATION}:${ValidationEventAction.FAILED}`
6143
6259
  },
6144
- [ERROR_CODES.PRICING_UPDATE_UNSUPPORTED]: {
6145
- code: ERROR_CODES.PRICING_UPDATE_UNSUPPORTED,
6146
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6147
- category: ERROR_CATEGORY.Provider,
6148
- userMessage: "errors.payment.pricing.update_unsupported",
6149
- severity: ERROR_SEVERITY.Medium,
6150
- retryable: false
6260
+ SANITIZATION: {
6261
+ STARTED: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.STARTED}`,
6262
+ SUCCESS: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.SUCCESS}`,
6263
+ FAILED: `${CoreEventScope.SANITIZATION}:${SanitizationEventAction.FAILED}`
6151
6264
  },
6152
- [ERROR_CODES.PRICING_DEACTIVATE_UNSUPPORTED]: {
6153
- code: ERROR_CODES.PRICING_DEACTIVATE_UNSUPPORTED,
6154
- status: HTTP_STATUS.NOT_IMPLEMENTED,
6155
- category: ERROR_CATEGORY.Provider,
6156
- userMessage: "errors.payment.pricing.deactivate_unsupported",
6157
- severity: ERROR_SEVERITY.Medium,
6158
- retryable: false
6265
+ API: {
6266
+ REQUEST_START: `${CoreEventScope.API}:${ApiEventAction.REQUEST_START}`,
6267
+ REQUEST_SUCCESS: `${CoreEventScope.API}:${ApiEventAction.REQUEST_SUCCESS}`,
6268
+ REQUEST_ERROR: `${CoreEventScope.API}:${ApiEventAction.REQUEST_ERROR}`,
6269
+ RETRY: `${CoreEventScope.API}:${ApiEventAction.RETRY}`,
6270
+ TIMEOUT: `${CoreEventScope.API}:${ApiEventAction.TIMEOUT}`
6159
6271
  },
6160
- [ERROR_CODES.PRICING_NOT_FOUND]: {
6161
- code: ERROR_CODES.PRICING_NOT_FOUND,
6162
- status: HTTP_STATUS.NOT_FOUND,
6163
- category: ERROR_CATEGORY.NotFound,
6164
- userMessage: "errors.payment.pricing.not_found",
6165
- severity: ERROR_SEVERITY.Medium,
6166
- retryable: false
6272
+ CACHE: {
6273
+ HIT: `${CoreEventScope.CACHE}:${CacheEventAction.HIT}`,
6274
+ MISS: `${CoreEventScope.CACHE}:${CacheEventAction.MISS}`,
6275
+ SET: `${CoreEventScope.CACHE}:${CacheEventAction.SET}`,
6276
+ DELETE: `${CoreEventScope.CACHE}:${CacheEventAction.DELETE}`,
6277
+ CLEAR: `${CoreEventScope.CACHE}:${CacheEventAction.CLEAR}`,
6278
+ EXPIRED: `${CoreEventScope.CACHE}:${CacheEventAction.EXPIRED}`
6167
6279
  },
6168
- [ERROR_CODES.PRICING_INVALID_AMOUNT]: {
6169
- code: ERROR_CODES.PRICING_INVALID_AMOUNT,
6170
- status: HTTP_STATUS.BAD_REQUEST,
6171
- category: ERROR_CATEGORY.Validation,
6172
- userMessage: "errors.payment.pricing.invalid_amount",
6173
- severity: ERROR_SEVERITY.Medium,
6174
- retryable: false
6280
+ AUTH: {
6281
+ LOGIN: `${CoreEventScope.AUTH}:${AuthEventAction.LOGIN}`,
6282
+ LOGOUT: `${CoreEventScope.AUTH}:${AuthEventAction.LOGOUT}`,
6283
+ TOKEN_REFRESH: `${CoreEventScope.AUTH}:${AuthEventAction.TOKEN_REFRESH}`,
6284
+ SESSION_EXPIRED: `${CoreEventScope.AUTH}:${AuthEventAction.SESSION_EXPIRED}`,
6285
+ UNAUTHORIZED: `${CoreEventScope.AUTH}:${AuthEventAction.UNAUTHORIZED}`
6175
6286
  },
6176
- [ERROR_CODES.PRICING_INVALID_CURRENCY]: {
6177
- code: ERROR_CODES.PRICING_INVALID_CURRENCY,
6178
- status: HTTP_STATUS.BAD_REQUEST,
6179
- category: ERROR_CATEGORY.Validation,
6180
- userMessage: "errors.payment.pricing.invalid_currency",
6181
- severity: ERROR_SEVERITY.Medium,
6182
- retryable: false
6287
+ DATABASE: {
6288
+ CONNECTED: `${CoreEventScope.DATABASE}:${DatabaseEventAction.CONNECTED}`,
6289
+ DISCONNECTED: `${CoreEventScope.DATABASE}:${DatabaseEventAction.DISCONNECTED}`,
6290
+ QUERY: `${CoreEventScope.DATABASE}:${DatabaseEventAction.QUERY}`,
6291
+ ERROR: `${CoreEventScope.DATABASE}:${DatabaseEventAction.ERROR}`,
6292
+ TRANSACTION_START: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_START}`,
6293
+ TRANSACTION_COMMIT: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_COMMIT}`,
6294
+ TRANSACTION_ROLLBACK: `${CoreEventScope.DATABASE}:${DatabaseEventAction.TRANSACTION_ROLLBACK}`
6183
6295
  },
6184
- [ERROR_CODES.PRICING_PROVIDER_ERROR]: {
6185
- code: ERROR_CODES.PRICING_PROVIDER_ERROR,
6186
- status: HTTP_STATUS.BAD_GATEWAY,
6187
- category: ERROR_CATEGORY.Provider,
6188
- userMessage: "errors.payment.pricing.provider_error",
6189
- severity: ERROR_SEVERITY.High,
6190
- retryable: true
6296
+ FEATURE_FLAG: {
6297
+ CHANGED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.CHANGED}`,
6298
+ EVALUATED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.EVALUATED}`,
6299
+ REFRESHED: `${CoreEventScope.FEATURE_FLAG}:${FeatureFlagEventAction.REFRESHED}`
6191
6300
  },
6192
- [ERROR_CODES.PRICING_ALREADY_INACTIVE]: {
6193
- code: ERROR_CODES.PRICING_ALREADY_INACTIVE,
6194
- status: HTTP_STATUS.CONFLICT,
6195
- category: ERROR_CATEGORY.Conflict,
6196
- userMessage: "errors.payment.pricing.already_inactive",
6197
- severity: ERROR_SEVERITY.Medium,
6198
- retryable: false
6301
+ STORE: {
6302
+ UPDATED: `${CoreEventScope.STORE}:${StoreEventAction.UPDATED}`,
6303
+ RESET: `${CoreEventScope.STORE}:${StoreEventAction.RESET}`,
6304
+ HYDRATED: `${CoreEventScope.STORE}:${StoreEventAction.HYDRATED}`
6199
6305
  },
6200
- [ERROR_CODES.PRICING_SYNC_FAILED]: {
6201
- code: ERROR_CODES.PRICING_SYNC_FAILED,
6202
- status: HTTP_STATUS.BAD_GATEWAY,
6203
- category: ERROR_CATEGORY.Provider,
6204
- userMessage: "errors.payment.pricing.sync_failed",
6205
- severity: ERROR_SEVERITY.High,
6206
- retryable: true
6306
+ STORAGE: {
6307
+ UPLOADED: `${CoreEventScope.STORAGE}:${StorageEventAction.UPLOADED}`,
6308
+ DOWNLOADED: `${CoreEventScope.STORAGE}:${StorageEventAction.DOWNLOADED}`,
6309
+ DELETED: `${CoreEventScope.STORAGE}:${StorageEventAction.DELETED}`,
6310
+ ERROR: `${CoreEventScope.STORAGE}:${StorageEventAction.ERROR}`,
6311
+ HEALTH_CHECK: `${CoreEventScope.STORAGE}:${StorageEventAction.HEALTH_CHECK}`
6207
6312
  },
6208
- [ERROR_CODES.PRICING_REQUIRES_NEW_VERSION]: {
6209
- code: ERROR_CODES.PRICING_REQUIRES_NEW_VERSION,
6210
- status: HTTP_STATUS.CONFLICT,
6211
- category: ERROR_CATEGORY.Conflict,
6212
- userMessage: "errors.payment.pricing.requires_new_version",
6213
- severity: ERROR_SEVERITY.Medium,
6214
- retryable: false
6313
+ NOTIFICATION: {
6314
+ SENT: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.SENT}`,
6315
+ FAILED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.FAILED}`,
6316
+ DELIVERED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.DELIVERED}`,
6317
+ OPENED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.OPENED}`,
6318
+ CLICKED: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.CLICKED}`,
6319
+ ERROR: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.ERROR}`,
6320
+ HEALTH_CHECK: `${CoreEventScope.NOTIFICATION}:${NotificationEventAction.HEALTH_CHECK}`
6215
6321
  }
6216
6322
  };
6217
6323
 
6324
+ // src/core/services/keys.ts
6325
+ var SERVICE_KEYS = {
6326
+ /** Example domain service (backend) */
6327
+ EXAMPLE: "example",
6328
+ /** Example domain service (frontend) */
6329
+ EXAMPLE_FRONTEND: "example-frontend",
6330
+ /** Feature flags service */
6331
+ FEATURE_FLAGS: "featureFlags"
6332
+ };
6333
+ var ALL_SERVICE_KEYS = Object.values(SERVICE_KEYS);
6334
+
6218
6335
  // src/events/enums.ts
6219
6336
  var EVENT_TYPE = {
6220
6337
  /** Application initialization event. */
@@ -6942,6 +7059,29 @@ var PROVIDER_PRODUCT_STATUS = /* @__PURE__ */ ((PROVIDER_PRODUCT_STATUS2) => {
6942
7059
  return PROVIDER_PRODUCT_STATUS2;
6943
7060
  })(PROVIDER_PRODUCT_STATUS || {});
6944
7061
 
7062
+ // src/payments/gateways/provider/fee/enum.ts
7063
+ var FEE_TYPE = /* @__PURE__ */ ((FEE_TYPE2) => {
7064
+ FEE_TYPE2["Platform"] = "platform";
7065
+ FEE_TYPE2["CrossBorder"] = "crossBorder";
7066
+ FEE_TYPE2["Conversion"] = "currencyConversion";
7067
+ FEE_TYPE2["Network"] = "network";
7068
+ FEE_TYPE2["Gas"] = "gas";
7069
+ FEE_TYPE2["Expedite"] = "expedite";
7070
+ FEE_TYPE2["Risk"] = "risk";
7071
+ FEE_TYPE2["Compliance"] = "compliance";
7072
+ FEE_TYPE2["Chargeback"] = "chargeback";
7073
+ FEE_TYPE2["Refund"] = "refund";
7074
+ return FEE_TYPE2;
7075
+ })(FEE_TYPE || {});
7076
+ var FEE_CONTEXT = /* @__PURE__ */ ((FEE_CONTEXT2) => {
7077
+ FEE_CONTEXT2["Payment"] = "payment";
7078
+ FEE_CONTEXT2["Subscription"] = "subscription";
7079
+ FEE_CONTEXT2["Withdrawal"] = "withdrawal";
7080
+ FEE_CONTEXT2["Refund"] = "refund";
7081
+ FEE_CONTEXT2["Dispute"] = "dispute";
7082
+ return FEE_CONTEXT2;
7083
+ })(FEE_CONTEXT || {});
7084
+
6945
7085
  // src/payments/gateways/routings/enums.ts
6946
7086
  var COST_OPTIMIZATION_STRATEGY = /* @__PURE__ */ ((COST_OPTIMIZATION_STRATEGY2) => {
6947
7087
  COST_OPTIMIZATION_STRATEGY2["Aggressive"] = "aggressive";
@@ -8970,6 +9110,8 @@ exports.FEATURE_FLAG_PROVIDERS = FEATURE_FLAG_PROVIDERS;
8970
9110
  exports.FEATURE_FLAG_RULE_FIELD = FEATURE_FLAG_RULE_FIELD;
8971
9111
  exports.FEATURE_FLAG_TABLE = FEATURE_FLAG_TABLE;
8972
9112
  exports.FEATURE_FLAG_TYPES = FEATURE_FLAG_TYPES;
9113
+ exports.FEE_CONTEXT = FEE_CONTEXT;
9114
+ exports.FEE_TYPE = FEE_TYPE;
8973
9115
  exports.FILE_ACCESS_LEVEL = FILE_ACCESS_LEVEL;
8974
9116
  exports.FILE_CATEGORY = FILE_CATEGORY;
8975
9117
  exports.FILE_EXTENSIONS = FILE_EXTENSIONS;