@lyxa.ai/core 1.0.13 → 1.0.15-debug

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/index.js +0 -3
  2. package/dist/index.js.map +1 -1
  3. package/dist/libraries/mongo/index.js +89 -40
  4. package/dist/libraries/mongo/index.js.map +1 -1
  5. package/dist/libraries/mongo/models/admin.model.d.ts +5 -3
  6. package/dist/libraries/mongo/models/admin.model.js +23 -6
  7. package/dist/libraries/mongo/models/admin.model.js.map +1 -1
  8. package/dist/libraries/mongo/models/base/base-review.model.d.ts +2 -2
  9. package/dist/libraries/mongo/models/base/base-review.model.js +2 -2
  10. package/dist/libraries/mongo/models/base/base-review.model.js.map +1 -1
  11. package/dist/libraries/mongo/models/core-auth-identity.model.d.ts +8 -0
  12. package/dist/libraries/mongo/models/{auth-identity.model.js → core-auth-identity.model.js} +13 -12
  13. package/dist/libraries/mongo/models/core-auth-identity.model.js.map +1 -0
  14. package/dist/libraries/mongo/models/{user.model.d.ts → core-user.model.d.ts} +2 -2
  15. package/dist/libraries/mongo/models/{user.model.js → core-user.model.js} +18 -17
  16. package/dist/libraries/mongo/models/core-user.model.js.map +1 -0
  17. package/dist/libraries/mongo/models/favourite.model.d.ts +2 -2
  18. package/dist/libraries/mongo/models/favourite.model.js +2 -2
  19. package/dist/libraries/mongo/models/favourite.model.js.map +1 -1
  20. package/dist/libraries/mongo/models/index.d.ts +66 -0
  21. package/dist/libraries/mongo/models/index.js +83 -0
  22. package/dist/libraries/mongo/models/index.js.map +1 -0
  23. package/dist/libraries/mongo/models/notification.model.d.ts +2 -2
  24. package/dist/libraries/mongo/models/notification.model.js +2 -2
  25. package/dist/libraries/mongo/models/notification.model.js.map +1 -1
  26. package/dist/libraries/mongo/models/parent.model.d.ts +3 -3
  27. package/dist/libraries/mongo/models/parent.model.js.map +1 -1
  28. package/dist/libraries/mongo/models/providers/core-apple-auth-identity.model.d.ts +6 -0
  29. package/dist/libraries/mongo/models/providers/{apple-auth-identity.model.js → core-apple-auth-identity.model.js} +8 -7
  30. package/dist/libraries/mongo/models/providers/core-apple-auth-identity.model.js.map +1 -0
  31. package/dist/libraries/mongo/models/providers/core-email-auth-identity.model.d.ts +9 -0
  32. package/dist/libraries/mongo/models/providers/{email-auth-identity.model.js → core-email-auth-identity.model.js} +10 -9
  33. package/dist/libraries/mongo/models/providers/core-email-auth-identity.model.js.map +1 -0
  34. package/dist/libraries/mongo/models/providers/core-google-auth-identity.model.d.ts +6 -0
  35. package/dist/libraries/mongo/models/providers/{google-auth-identity.model.js → core-google-auth-identity.model.js} +8 -7
  36. package/dist/libraries/mongo/models/providers/core-google-auth-identity.model.js.map +1 -0
  37. package/dist/libraries/mongo/models/providers/core-phone-auth-identity.model.d.ts +8 -0
  38. package/dist/libraries/mongo/models/providers/{phone-auth-identity.model.js → core-phone-auth-identity.model.js} +9 -8
  39. package/dist/libraries/mongo/models/providers/core-phone-auth-identity.model.js.map +1 -0
  40. package/dist/libraries/mongo/models/providers/custom-coupon.model.d.ts +2 -2
  41. package/dist/libraries/mongo/models/providers/custom-coupon.model.js +2 -2
  42. package/dist/libraries/mongo/models/providers/custom-coupon.model.js.map +1 -1
  43. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.d.ts +2 -2
  44. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.js +2 -2
  45. package/dist/libraries/mongo/models/providers/individual-user-coupon.model.js.map +1 -1
  46. package/dist/libraries/mongo/models/providers/{referral-code-coupon.mode.d.ts → referral-code-coupon.model.d.ts} +2 -2
  47. package/dist/libraries/mongo/models/providers/{referral-code-coupon.mode.js → referral-code-coupon.model.js} +3 -3
  48. package/dist/libraries/mongo/models/providers/referral-code-coupon.model.js.map +1 -0
  49. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.d.ts +3 -3
  50. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.js +3 -3
  51. package/dist/libraries/mongo/models/providers/referral-reward-coupon.model.js.map +1 -1
  52. package/dist/libraries/mongo/models/punch-marketing-history.model.d.ts +2 -2
  53. package/dist/libraries/mongo/models/punch-marketing-history.model.js +2 -2
  54. package/dist/libraries/mongo/models/punch-marketing-history.model.js.map +1 -1
  55. package/dist/libraries/mongo/models/request-area.model.d.ts +2 -2
  56. package/dist/libraries/mongo/models/request-area.model.js +2 -2
  57. package/dist/libraries/mongo/models/request-area.model.js.map +1 -1
  58. package/dist/libraries/mongo/models/{role.model.ts.js → role.model.js} +3 -2
  59. package/dist/libraries/mongo/models/role.model.js.map +1 -0
  60. package/dist/libraries/mongo/models/{shop-review.js → shop-review.model.js} +1 -1
  61. package/dist/libraries/mongo/models/shop-review.model.js.map +1 -0
  62. package/dist/libraries/mongo/models/shop.model.d.ts +8 -8
  63. package/dist/libraries/mongo/models/shop.model.js +10 -10
  64. package/dist/libraries/mongo/models/shop.model.js.map +1 -1
  65. package/dist/libraries/mongo/models/subscription.model.d.ts +2 -2
  66. package/dist/libraries/mongo/models/subscription.model.js +2 -2
  67. package/dist/libraries/mongo/models/subscription.model.js.map +1 -1
  68. package/dist/libraries/mongo/models/{zone.js → zone.model.js} +1 -1
  69. package/dist/libraries/mongo/models/zone.model.js.map +1 -0
  70. package/dist/libraries/mongo/plugins/soft-delete-plugin.d.ts +10 -9
  71. package/dist/libraries/mongo/plugins/soft-delete-plugin.js +17 -17
  72. package/dist/libraries/mongo/plugins/soft-delete-plugin.js.map +1 -1
  73. package/dist/libraries/trpc/middlewares/cors.d.ts +12 -0
  74. package/dist/libraries/trpc/middlewares/cors.js +46 -0
  75. package/dist/libraries/trpc/middlewares/cors.js.map +1 -0
  76. package/dist/utilities/enum.d.ts +1 -1
  77. package/dist/utilities/enum.js +8 -8
  78. package/dist/utilities/enum.js.map +1 -1
  79. package/dist/utilities/error-middleware.d.ts +11 -0
  80. package/dist/utilities/error-middleware.js +177 -0
  81. package/dist/utilities/error-middleware.js.map +1 -0
  82. package/dist/utilities/validation/common-validation.d.ts +22 -2
  83. package/dist/utilities/validation/common-validation.js +41 -41
  84. package/dist/utilities/validation/common-validation.js.map +1 -1
  85. package/dist/utilities/validation/global-validation.d.ts +29 -6
  86. package/dist/utilities/validation/global-validation.js +64 -52
  87. package/dist/utilities/validation/global-validation.js.map +1 -1
  88. package/package.json +2 -2
  89. package/dist/libraries/mongo/models/auth-identity.model.d.ts +0 -8
  90. package/dist/libraries/mongo/models/auth-identity.model.js.map +0 -1
  91. package/dist/libraries/mongo/models/providers/apple-auth-identity.model.d.ts +0 -6
  92. package/dist/libraries/mongo/models/providers/apple-auth-identity.model.js.map +0 -1
  93. package/dist/libraries/mongo/models/providers/email-auth-identity.model.d.ts +0 -9
  94. package/dist/libraries/mongo/models/providers/email-auth-identity.model.js.map +0 -1
  95. package/dist/libraries/mongo/models/providers/google-auth-identity.model.d.ts +0 -6
  96. package/dist/libraries/mongo/models/providers/google-auth-identity.model.js.map +0 -1
  97. package/dist/libraries/mongo/models/providers/phone-auth-identity.model.d.ts +0 -8
  98. package/dist/libraries/mongo/models/providers/phone-auth-identity.model.js.map +0 -1
  99. package/dist/libraries/mongo/models/providers/referral-code-coupon.mode.js.map +0 -1
  100. package/dist/libraries/mongo/models/request-area.model copy.d.ts +0 -9
  101. package/dist/libraries/mongo/models/request-area.model copy.js +0 -34
  102. package/dist/libraries/mongo/models/request-area.model copy.js.map +0 -1
  103. package/dist/libraries/mongo/models/rider-review.d.ts +0 -7
  104. package/dist/libraries/mongo/models/rider-review.js +0 -28
  105. package/dist/libraries/mongo/models/rider-review.js.map +0 -1
  106. package/dist/libraries/mongo/models/role.model.ts.js.map +0 -1
  107. package/dist/libraries/mongo/models/shop-review.js.map +0 -1
  108. package/dist/libraries/mongo/models/user.model.js.map +0 -1
  109. package/dist/libraries/mongo/models/zone.js.map +0 -1
  110. package/dist/libraries/mongo/models/zone.model..d.ts +0 -15
  111. package/dist/libraries/mongo/models/zone.model..js +0 -64
  112. package/dist/libraries/mongo/models/zone.model..js.map +0 -1
  113. package/dist/utilities/validation.d.ts +0 -25
  114. package/dist/utilities/validation.js +0 -44
  115. package/dist/utilities/validation.js.map +0 -1
  116. /package/dist/libraries/mongo/models/{role.model.ts.d.ts → role.model.d.ts} +0 -0
  117. /package/dist/libraries/mongo/models/{shop-review.d.ts → shop-review.model.d.ts} +0 -0
  118. /package/dist/libraries/mongo/models/{zone.d.ts → zone.model.d.ts} +0 -0
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.corsMiddleware = corsMiddleware;
4
+ function corsMiddleware(options = {}) {
5
+ const config = {
6
+ origin: options.origin || '*',
7
+ methods: options.methods || ['GET, POST, OPTIONS'],
8
+ allowedHeaders: options.allowedHeaders || ['Content-Type', 'Authorization', 'X-Requested-With'],
9
+ exposedHeaders: options.exposedHeaders || ['Content-Range', 'X-Content-Range'],
10
+ credentials: options.credentials || false,
11
+ maxAge: options.maxAge || 86400,
12
+ preflightContinue: options.preflightContinue || false
13
+ };
14
+ const methodsString = Array.isArray(config.methods) ? config.methods.join(', ') : config.methods;
15
+ const allowedHeadersString = Array.isArray(config.allowedHeaders) ? config.allowedHeaders.join(', ') : config.allowedHeaders;
16
+ const exposedHeadersString = Array.isArray(config.exposedHeaders) ? config.exposedHeaders.join(', ') : config.exposedHeaders;
17
+ return (req, res, next) => {
18
+ try {
19
+ res.setHeader('Access-Control-Allow-Origin', config.origin);
20
+ if (config.origin !== 'none') {
21
+ res.setHeader('Access-Control-Allow-Methods', methodsString);
22
+ res.setHeader('Access-Control-Allow-Headers', allowedHeadersString);
23
+ if (exposedHeadersString) {
24
+ res.setHeader('Access-Control-Expose-Headers', exposedHeadersString);
25
+ }
26
+ if (config.credentials) {
27
+ res.setHeader('Access-Control-Allow-Credentials', 'true');
28
+ }
29
+ if (config.maxAge) {
30
+ res.setHeader('Access-Control-Max-Age', config.maxAge.toString());
31
+ }
32
+ }
33
+ if (req.method === 'OPTIONS') {
34
+ res.writeHead(204);
35
+ res.end();
36
+ return;
37
+ }
38
+ next();
39
+ }
40
+ catch (error) {
41
+ console.error('CORS middleware error:', error);
42
+ next();
43
+ }
44
+ };
45
+ }
46
+ //# sourceMappingURL=cors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cors.js","sourceRoot":"/","sources":["libraries/trpc/middlewares/cors.ts"],"names":[],"mappings":";;AAqBA,wCAyDC;AAzDD,SAAgB,cAAc,CAAC,UAAuB,EAAE;IAEtD,MAAM,MAAM,GAA0B;QACpC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,GAAG;QAC7B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC;QAClD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,kBAAkB,CAAC;QAC/F,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,CAAC,eAAe,EAAE,iBAAiB,CAAC;QAC9E,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;QACzC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK;QAC/B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,KAAK;KACtD,CAAC;IAGF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACjG,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;IAC7H,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;IAG7H,OAAO,CAAC,GAAoB,EAAE,GAAmB,EAAE,IAAgB,EAAE,EAAE;QACrE,IAAI,CAAC;YAEH,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAG5D,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,aAAa,CAAC,CAAC;gBAC7D,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,oBAAoB,CAAC,CAAC;gBAEpE,IAAI,oBAAoB,EAAE,CAAC;oBACzB,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,oBAAoB,CAAC,CAAC;gBACvE,CAAC;gBAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,GAAG,CAAC,SAAS,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;gBAC5D,CAAC;gBAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,GAAG,CAAC,SAAS,CAAC,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAGD,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAGD,IAAI,EAAE,CAAC;QACT,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAE/C,IAAI,EAAE,CAAC;QACT,CAAC;IACH,CAAC,CAAC;AACJ,CAAC","sourcesContent":["import type { IncomingMessage, ServerResponse } from 'http';\r\n\r\n/**\r\n * Interface for CORS middleware options\r\n */\r\ninterface CorsOptions {\r\n origin?: string | string[];\r\n methods?: string[];\r\n allowedHeaders?: string[];\r\n exposedHeaders?: string[];\r\n credentials?: boolean;\r\n maxAge?: number;\r\n preflightContinue?: boolean;\r\n}\r\n\r\n/**\r\n * Creates a configurable CORS middleware for tRPC applications\r\n * \r\n * @param options Configuration options for CORS\r\n * @returns A middleware function for handling CORS\r\n */\r\nexport function corsMiddleware(options: CorsOptions = {}) {\r\n // Default configuration with sensible values\r\n const config: Required<CorsOptions> = {\r\n origin: options.origin || '*',\r\n methods: options.methods || ['GET, POST, OPTIONS'],\r\n allowedHeaders: options.allowedHeaders || ['Content-Type', 'Authorization', 'X-Requested-With'],\r\n exposedHeaders: options.exposedHeaders || ['Content-Range', 'X-Content-Range'],\r\n credentials: options.credentials || false,\r\n maxAge: options.maxAge || 86400, // 24 hours\r\n preflightContinue: options.preflightContinue || false\r\n };\r\n\r\n // Convert arrays to comma-separated strings for header values\r\n const methodsString = Array.isArray(config.methods) ? config.methods.join(', ') : config.methods;\r\n const allowedHeadersString = Array.isArray(config.allowedHeaders) ? config.allowedHeaders.join(', ') : config.allowedHeaders;\r\n const exposedHeadersString = Array.isArray(config.exposedHeaders) ? config.exposedHeaders.join(', ') : config.exposedHeaders;\r\n\r\n // Return the middleware function\r\n return (req: IncomingMessage, res: ServerResponse, next: () => void) => {\r\n try {\r\n // Always set the CORS headers\r\n res.setHeader('Access-Control-Allow-Origin', config.origin);\r\n \r\n // Only set other headers if origin is not blocking the request\r\n if (config.origin !== 'none') {\r\n res.setHeader('Access-Control-Allow-Methods', methodsString);\r\n res.setHeader('Access-Control-Allow-Headers', allowedHeadersString);\r\n \r\n if (exposedHeadersString) {\r\n res.setHeader('Access-Control-Expose-Headers', exposedHeadersString);\r\n }\r\n \r\n if (config.credentials) {\r\n res.setHeader('Access-Control-Allow-Credentials', 'true');\r\n }\r\n \r\n if (config.maxAge) {\r\n res.setHeader('Access-Control-Max-Age', config.maxAge.toString());\r\n }\r\n }\r\n\r\n // Handle OPTIONS preflight requests\r\n if (req.method === 'OPTIONS') {\r\n res.writeHead(204); // 204 No Content is more appropriate for preflight\r\n res.end();\r\n return;\r\n }\r\n\r\n // Move to the next middleware\r\n next();\r\n } catch (error) {\r\n // Handle any errors that might occur\r\n console.error('CORS middleware error:', error);\r\n // Call next without the error as it expects no arguments\r\n next();\r\n }\r\n };\r\n}"]}
@@ -103,7 +103,7 @@ export declare enum SectionType {
103
103
  AUTHENTIC_BEIRUT = "authentic_beirut",
104
104
  NEAR_ME = "near_me"
105
105
  }
106
- export declare enum AuthIdentityType {
106
+ export declare enum CoreAuthIdentityType {
107
107
  EMAIL = "email",
108
108
  PHONE = "phone",
109
109
  GOOGLE = "google",
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdminRole = exports.MarketingStatus = exports.MarketingType = exports.FavouriteType = exports.CouponExpirationReason = exports.CouponType = exports.BobType = exports.BobModel = exports.BobSettlementStatus = exports.BobSettlementType = exports.BobAccountType = exports.ZoneStatus = exports.FaqAccountType = exports.CounterType = exports.BannerUserType = exports.BannerLinkType = exports.BannerClickType = exports.ShopRole = exports.ShopOnlineStatus = exports.ChargeType = exports.ClickType = exports.NotificationAccountType = exports.DishCategory = exports.ProductDietaryType = exports.AttributeItemSelectionType = exports.PriceType = exports.FoodGroup = exports.AuthIdentityType = exports.SectionType = exports.UpdatedField = exports.GeoLocationType = exports.RatingAccountType = exports.SubscriptionStatus = exports.SubscriptionPackage = exports.PaidCurrency = exports.PaymentStatus = exports.PaymentMethod = exports.ValueType = exports.HolidayWorkStatus = exports.WorkStatus = exports.WeekDay = exports.ItemType = exports.Status = void 0;
3
+ exports.AdminRole = exports.MarketingStatus = exports.MarketingType = exports.FavouriteType = exports.CouponExpirationReason = exports.CouponType = exports.BobType = exports.BobModel = exports.BobSettlementStatus = exports.BobSettlementType = exports.BobAccountType = exports.ZoneStatus = exports.FaqAccountType = exports.CounterType = exports.BannerUserType = exports.BannerLinkType = exports.BannerClickType = exports.ShopRole = exports.ShopOnlineStatus = exports.ChargeType = exports.ClickType = exports.NotificationAccountType = exports.DishCategory = exports.ProductDietaryType = exports.AttributeItemSelectionType = exports.PriceType = exports.FoodGroup = exports.CoreAuthIdentityType = exports.SectionType = exports.UpdatedField = exports.GeoLocationType = exports.RatingAccountType = exports.SubscriptionStatus = exports.SubscriptionPackage = exports.PaidCurrency = exports.PaymentStatus = exports.PaymentMethod = exports.ValueType = exports.HolidayWorkStatus = exports.WorkStatus = exports.WeekDay = exports.ItemType = exports.Status = void 0;
4
4
  var Status;
5
5
  (function (Status) {
6
6
  Status["ACTIVE"] = "active";
@@ -121,13 +121,13 @@ var SectionType;
121
121
  SectionType["AUTHENTIC_BEIRUT"] = "authentic_beirut";
122
122
  SectionType["NEAR_ME"] = "near_me";
123
123
  })(SectionType || (exports.SectionType = SectionType = {}));
124
- var AuthIdentityType;
125
- (function (AuthIdentityType) {
126
- AuthIdentityType["EMAIL"] = "email";
127
- AuthIdentityType["PHONE"] = "phone";
128
- AuthIdentityType["GOOGLE"] = "google";
129
- AuthIdentityType["APPLE"] = "apple";
130
- })(AuthIdentityType || (exports.AuthIdentityType = AuthIdentityType = {}));
124
+ var CoreAuthIdentityType;
125
+ (function (CoreAuthIdentityType) {
126
+ CoreAuthIdentityType["EMAIL"] = "email";
127
+ CoreAuthIdentityType["PHONE"] = "phone";
128
+ CoreAuthIdentityType["GOOGLE"] = "google";
129
+ CoreAuthIdentityType["APPLE"] = "apple";
130
+ })(CoreAuthIdentityType || (exports.CoreAuthIdentityType = CoreAuthIdentityType = {}));
131
131
  var FoodGroup;
132
132
  (function (FoodGroup) {
133
133
  FoodGroup["MEAT"] = "meat";
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"/","sources":["utilities/enum.ts"],"names":[],"mappings":"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","sourcesContent":["export enum Status {\r\n\tACTIVE = 'active',\r\n\tINACTIVE = 'inactive',\r\n}\r\n\r\nexport enum ItemType {\r\n\tFOOD = 'food',\r\n\tGROCERY = 'grocery',\r\n\tPHARMACY = 'pharmacy',\r\n\tCOFFEE = 'coffee',\r\n\tFLOWER = 'flower',\r\n\tPET = 'pet',\r\n\tHEALTHY_CORNER = 'healthy_corner',\r\n}\r\n\r\nexport enum WeekDay {\r\n\tSunday = 0,\r\n\tMonday = 1,\r\n\tTuesday = 2,\r\n\tWednesday = 3,\r\n\tThursday = 4,\r\n\tFriday = 5,\r\n\tSaturday = 6,\r\n}\r\n\r\nexport enum WorkStatus {\r\n\tOPEN = 'open',\r\n\tCLOSED = 'closed',\r\n\tFULL_DAY = 'full_day',\r\n}\r\n\r\nexport enum HolidayWorkStatus {\r\n\tCLOSED = WorkStatus.CLOSED,\r\n\tFULL_DAY = WorkStatus.FULL_DAY,\r\n}\r\n\r\nexport enum ValueType {\r\n\tPERCENTAGE = 'percentage',\r\n\tFIXED = 'fixed',\r\n}\r\n\r\nexport enum PaymentMethod {\r\n\tCASH = 'cash',\r\n\tCARD = 'card',\r\n}\r\n\r\nexport enum PaymentStatus {\r\n\tPAID = 'paid',\r\n\tPENDING = 'pending',\r\n\tFAILED = 'failed',\r\n}\r\n\r\nexport enum PaidCurrency {\r\n\tBASE = 'base',\r\n\tSECONDARY = 'secondary',\r\n\tMIXED = 'mixed',\r\n}\r\n\r\nexport enum SubscriptionPackage {\r\n\tMONTHLY = 'monthly',\r\n\tYEARLY = 'yearly',\r\n}\r\n\r\nexport enum SubscriptionStatus {\r\n\tONGOING = 'ongoing',\r\n\tEXPIRED = 'expired',\r\n}\r\n\r\nexport enum RatingAccountType {\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n}\r\n\r\nexport enum GeoLocationType {\r\n\tPOINT = 'point',\r\n\tPOLYGON = 'polygon',\r\n}\r\n\r\nexport enum UpdatedField {\r\n\tMAX_TOTAL_EST_ITEMS_PRICE = 'max_total_est_items_price',\r\n\tMAX_DISTANCE = 'max_distance',\r\n\tDAILY_WORKING_HOURS = 'daily_working_hours',\r\n\tBOB_CASH_SETTLEMENT_LIMIT = 'bob_cash_settlement_limit',\r\n\tTIPS = 'tips',\r\n\tEQUIPMENTS = 'equipments',\r\n\tMONTHLY_SHOP_TARGET = 'monthly_shop_target',\r\n\tMONTHLY_REWARD_PRIZE = 'monthly_reward_prize',\r\n\tBASE_CURRENCY = 'base_currency',\r\n\tSECONDARY_CURRENCY = 'secondary_currency',\r\n\tIS_DUAL_CURRENCY_ENABLED = 'is_dual_currency_enabled',\r\n\tEXCHANGE_RATE = 'exchange_rate',\r\n\tISSUANCE_DAY = 'issuance_day',\r\n\tOVER_DUE_PERIODS = 'over_due_periods',\r\n\tPAY_LIMIT_FOR_USER = 'pay_limit_for_user',\r\n\tVAT_PERCENTAGE = 'vat_percentage',\r\n\tRIDER_SEARCH_RANGES = 'rider_search_ranges',\r\n\tNEAR_BY_SHOP_DISTANCE = 'near_by_shop_distance',\r\n\tNEAR_BY_SHOP_DISTANCE_IN_HOME_SCREEN = 'near_by_shop_distance_in_home_screen',\r\n\tUNITS = 'units',\r\n\tCURRENCY_SETTING = 'currency_setting',\r\n\tPAYMENT_METHODS = 'payment_methods',\r\n\tIS_GROUND_ORDER_ENABLED = 'is_ground_order_enabled',\r\n\tCUSTOMER_SUPPORT_PHONE_NUMBER = 'customer_support_phone_number',\r\n}\r\n\r\nexport enum SectionType {\r\n\tSTORE_PUNCHES = 'store_punches',\r\n\tNEARBY_RESTAURANT = 'nearby_restaurant',\r\n\tNEARBY_GROCERY = 'nearby_grocery',\r\n\tNEARBY_PHARMACY = 'nearby_pharmacy',\r\n\tDISCOUNT = 'discount',\r\n\tFREE_DELIVERY = 'free_delivery',\r\n\tCRAZY_OFFER_SHOPS = 'crazy_offer_shops',\r\n\tORDER_AGAIN = 'order_again',\r\n\tFEATURED = 'featured',\r\n\tLOVE = 'love',\r\n\tAUTHENTIC_BEIRUT = 'authentic_beirut',\r\n\tNEAR_ME = 'near_me',\r\n}\r\n\r\nexport enum AuthIdentityType {\r\n\tEMAIL = 'email',\r\n\tPHONE = 'phone',\r\n\tGOOGLE = 'google',\r\n\tAPPLE = 'apple',\r\n}\r\n\r\nexport enum FoodGroup {\r\n\tMEAT = 'meat',\r\n\tCHICKEN = 'chicken',\r\n\tFISH = 'fish',\r\n\tVEGETARIAN = 'vegetarian',\r\n\tOTHER = 'other',\r\n}\r\n\r\nexport enum PriceType {\r\n\tPRICE = 'price',\r\n\tUNIT = 'unit',\r\n\tPORTION = 'portion',\r\n}\r\n\r\nexport enum AttributeItemSelectionType {\r\n\tSINGLE = 'single',\r\n\tMULTIPLE = 'multiple',\r\n}\r\n\r\nexport enum ProductDietaryType {\r\n\tGLUTEN_FREE = 'gluten_free',\r\n\tLOW_CAL = 'low_cal',\r\n\tVEGETARIAN = 'vegetarian',\r\n\tVEGAN = 'vegan',\r\n\tGLUE_FREE = 'glue_free',\r\n\tKETO = 'keto',\r\n\tLACTOSE_FREE = 'lactose_free',\r\n\tHIGH_PROTEIN = 'high_protein',\r\n}\r\n\r\nexport enum DishCategory {\r\n\tBREAKFAST = 'breakfast',\r\n\tLUNCH = 'lunch',\r\n\tDINNER = 'dinner',\r\n\tSNACKS = 'snacks',\r\n}\r\n\r\nexport enum NotificationAccountType {\r\n\tUSER = 'user',\r\n\tPARENT = 'parent',\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n\tADMIN = 'admin',\r\n\tCUSTOMER_SERVICE = 'customer_service',\r\n}\r\n\r\nexport enum ClickType {\r\n\tCLICKABLE_URL = 'clickable_url',\r\n\tCLICKABLE_ORDER = 'clickable_order',\r\n\tCLICKABLE_SHOP = 'clickable_shop',\r\n\tCLICKABLE_PRODUCT = 'clickable_product',\r\n\tCLICKABLE_LIST_CONTAINER = 'clickable_list_container',\r\n\tCLICKABLE_PAYOUT = 'clickable_payout',\r\n\tCLICKABLE_BOB_FINANCE = 'clickable_bob_finance',\r\n\tCLICKABLE_REQUEST_AREA = 'clickable_request_area',\r\n}\r\n\r\nexport enum ChargeType {\r\n\tGLOBAL = 'global',\r\n\tCUSTOM = 'custom',\r\n}\r\n\r\nexport enum ShopOnlineStatus {\r\n\tONLINE = 'online',\r\n\tOFFLINE = 'offline',\r\n\tBUSY = 'busy',\r\n}\r\n\r\nexport enum ShopRole {\r\n\tPARENT = 'parent',\r\n\tPARENT_ORDER_MANAGER = 'parent_order_manager',\r\n\tSHOP = 'shop',\r\n\tSHOP_ORDER_MANAGER = 'shop_order_manager',\r\n}\r\n\r\nexport enum BannerClickType {\r\n\tLINK = 'link',\r\n\tSHOP = 'shop',\r\n\tPRODUCT = 'product',\r\n\tLIST_CONTAINER = 'list_container',\r\n\tPLUS = 'plus',\r\n}\r\n\r\nexport enum BannerLinkType {\r\n\tURL = 'url',\r\n\tAPP_ROUTE = 'app-route',\r\n}\r\n\r\nexport enum BannerUserType {\r\n\tALL = 'all',\r\n\tPLUS = 'plus',\r\n\tNORMAL = 'normal',\r\n}\r\n\r\nexport enum CounterType {\r\n\tORDER = 'order',\r\n\tCRM_NUMBER = 'crm_number',\r\n\tshop = 'shop',\r\n}\r\n\r\nexport enum FaqAccountType {\r\n\tUSER = 'user',\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n}\r\n\r\nexport enum ZoneStatus {\r\n\tACTIVE = 'active',\r\n\tINACTIVE = 'inactive',\r\n\tBUSY = 'busy',\r\n}\r\n\r\nexport enum BobAccountType {\r\n\tRIDER = 'rider',\r\n\tSHOP = 'shop',\r\n}\r\n\r\nexport enum BobSettlementType {\r\n\tSETTLE_CASH = 'settle_cash',\r\n\tSETTLE_PAYOUT = 'settle_Payout',\r\n}\r\n\r\nexport enum BobSettlementStatus {\r\n\tNOT_PAID = 'not_paid',\r\n\tPAID = 'paid',\r\n\tREVOKED = 'revoked',\r\n}\r\n\r\nexport enum BobModel {\r\n\tC2B = 'C2B',\r\n\tB2C = 'B2C',\r\n}\r\n\r\nexport enum BobType {\r\n\tINWARD = 'inward',\r\n\tOUTWARD = 'outward',\r\n}\r\n\r\nexport enum CouponType {\r\n\tGLOBAL = 'global',\r\n\tINDIVIDUAL_STORE = 'individual_store',\r\n\tINDIVIDUAL_USER = 'individual_user',\r\n\tCUSTOM_COUPON = 'custom_coupon',\r\n\tREFERRAL_CODE = 'referral_code',\r\n\tREFERRAL_REWARD = 'referral_reward',\r\n}\r\n\r\nexport enum CouponExpirationReason {\r\n\tDURATION = 'duration',\r\n\tSPEND_LIMIT = 'spendLimit',\r\n\tTOTAL_ORDER_LIMIT = 'totalOrderLimit',\r\n}\r\n\r\nexport enum FavouriteType {\r\n\tPRODUCT = 'product',\r\n\tSHOP = 'shop',\r\n}\r\n\r\nexport enum MarketingType {\r\n\tDISCOUNT = 'discount',\r\n\tBUY1GET1 = 'buy1get1',\r\n\tFREE_DELIVERY = 'free_delivery',\r\n\tFEATURED = 'featured',\r\n\tLOYALTY_POINT = 'loyalty_point',\r\n\tPUNCH_MARKETING = 'punch_marketing',\r\n}\r\n\r\nexport enum MarketingStatus {\r\n\tACTIVE = 'active',\r\n\tPAUSED = 'paused',\r\n\tEXPIRED = 'expired',\r\n\tDELETED = 'deleted',\r\n}\r\n\r\nexport enum AdminRole {\r\n\tSUPER_ADMIN = 'super_admin',\r\n\tGENERAL_MANAGER = 'general_manager',\r\n\tORDER_MANAGEMENT_MANAGER = 'order_management_lead',\r\n\tORDER_MANAGEMENT_AGENT = 'order_management_agent',\r\n\tACCOUNT_MANAGER = 'account_manager',\r\n\tBUSINESS_DEVELOPMENT_EXECUTIVE = 'business_development_executive',\r\n\tACCOUNTING = 'accounting',\r\n\tMARKETING_MANAGER = 'marketing_manager',\r\n}\r\n"]}
1
+ {"version":3,"file":"enum.js","sourceRoot":"/","sources":["utilities/enum.ts"],"names":[],"mappings":"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","sourcesContent":["export enum Status {\r\n\tACTIVE = 'active',\r\n\tINACTIVE = 'inactive',\r\n}\r\n\r\nexport enum ItemType {\r\n\tFOOD = 'food',\r\n\tGROCERY = 'grocery',\r\n\tPHARMACY = 'pharmacy',\r\n\tCOFFEE = 'coffee',\r\n\tFLOWER = 'flower',\r\n\tPET = 'pet',\r\n\tHEALTHY_CORNER = 'healthy_corner',\r\n}\r\n\r\nexport enum WeekDay {\r\n\tSunday = 0,\r\n\tMonday = 1,\r\n\tTuesday = 2,\r\n\tWednesday = 3,\r\n\tThursday = 4,\r\n\tFriday = 5,\r\n\tSaturday = 6,\r\n}\r\n\r\nexport enum WorkStatus {\r\n\tOPEN = 'open',\r\n\tCLOSED = 'closed',\r\n\tFULL_DAY = 'full_day',\r\n}\r\n\r\nexport enum HolidayWorkStatus {\r\n\tCLOSED = WorkStatus.CLOSED,\r\n\tFULL_DAY = WorkStatus.FULL_DAY,\r\n}\r\n\r\nexport enum ValueType {\r\n\tPERCENTAGE = 'percentage',\r\n\tFIXED = 'fixed',\r\n}\r\n\r\nexport enum PaymentMethod {\r\n\tCASH = 'cash',\r\n\tCARD = 'card',\r\n}\r\n\r\nexport enum PaymentStatus {\r\n\tPAID = 'paid',\r\n\tPENDING = 'pending',\r\n\tFAILED = 'failed',\r\n}\r\n\r\nexport enum PaidCurrency {\r\n\tBASE = 'base',\r\n\tSECONDARY = 'secondary',\r\n\tMIXED = 'mixed',\r\n}\r\n\r\nexport enum SubscriptionPackage {\r\n\tMONTHLY = 'monthly',\r\n\tYEARLY = 'yearly',\r\n}\r\n\r\nexport enum SubscriptionStatus {\r\n\tONGOING = 'ongoing',\r\n\tEXPIRED = 'expired',\r\n}\r\n\r\nexport enum RatingAccountType {\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n}\r\n\r\nexport enum GeoLocationType {\r\n\tPOINT = 'point',\r\n\tPOLYGON = 'polygon',\r\n}\r\n\r\nexport enum UpdatedField {\r\n\tMAX_TOTAL_EST_ITEMS_PRICE = 'max_total_est_items_price',\r\n\tMAX_DISTANCE = 'max_distance',\r\n\tDAILY_WORKING_HOURS = 'daily_working_hours',\r\n\tBOB_CASH_SETTLEMENT_LIMIT = 'bob_cash_settlement_limit',\r\n\tTIPS = 'tips',\r\n\tEQUIPMENTS = 'equipments',\r\n\tMONTHLY_SHOP_TARGET = 'monthly_shop_target',\r\n\tMONTHLY_REWARD_PRIZE = 'monthly_reward_prize',\r\n\tBASE_CURRENCY = 'base_currency',\r\n\tSECONDARY_CURRENCY = 'secondary_currency',\r\n\tIS_DUAL_CURRENCY_ENABLED = 'is_dual_currency_enabled',\r\n\tEXCHANGE_RATE = 'exchange_rate',\r\n\tISSUANCE_DAY = 'issuance_day',\r\n\tOVER_DUE_PERIODS = 'over_due_periods',\r\n\tPAY_LIMIT_FOR_USER = 'pay_limit_for_user',\r\n\tVAT_PERCENTAGE = 'vat_percentage',\r\n\tRIDER_SEARCH_RANGES = 'rider_search_ranges',\r\n\tNEAR_BY_SHOP_DISTANCE = 'near_by_shop_distance',\r\n\tNEAR_BY_SHOP_DISTANCE_IN_HOME_SCREEN = 'near_by_shop_distance_in_home_screen',\r\n\tUNITS = 'units',\r\n\tCURRENCY_SETTING = 'currency_setting',\r\n\tPAYMENT_METHODS = 'payment_methods',\r\n\tIS_GROUND_ORDER_ENABLED = 'is_ground_order_enabled',\r\n\tCUSTOMER_SUPPORT_PHONE_NUMBER = 'customer_support_phone_number',\r\n}\r\n\r\nexport enum SectionType {\r\n\tSTORE_PUNCHES = 'store_punches',\r\n\tNEARBY_RESTAURANT = 'nearby_restaurant',\r\n\tNEARBY_GROCERY = 'nearby_grocery',\r\n\tNEARBY_PHARMACY = 'nearby_pharmacy',\r\n\tDISCOUNT = 'discount',\r\n\tFREE_DELIVERY = 'free_delivery',\r\n\tCRAZY_OFFER_SHOPS = 'crazy_offer_shops',\r\n\tORDER_AGAIN = 'order_again',\r\n\tFEATURED = 'featured',\r\n\tLOVE = 'love',\r\n\tAUTHENTIC_BEIRUT = 'authentic_beirut',\r\n\tNEAR_ME = 'near_me',\r\n}\r\n\r\nexport enum CoreAuthIdentityType {\r\n\tEMAIL = 'email',\r\n\tPHONE = 'phone',\r\n\tGOOGLE = 'google',\r\n\tAPPLE = 'apple',\r\n}\r\n\r\nexport enum FoodGroup {\r\n\tMEAT = 'meat',\r\n\tCHICKEN = 'chicken',\r\n\tFISH = 'fish',\r\n\tVEGETARIAN = 'vegetarian',\r\n\tOTHER = 'other',\r\n}\r\n\r\nexport enum PriceType {\r\n\tPRICE = 'price',\r\n\tUNIT = 'unit',\r\n\tPORTION = 'portion',\r\n}\r\n\r\nexport enum AttributeItemSelectionType {\r\n\tSINGLE = 'single',\r\n\tMULTIPLE = 'multiple',\r\n}\r\n\r\nexport enum ProductDietaryType {\r\n\tGLUTEN_FREE = 'gluten_free',\r\n\tLOW_CAL = 'low_cal',\r\n\tVEGETARIAN = 'vegetarian',\r\n\tVEGAN = 'vegan',\r\n\tGLUE_FREE = 'glue_free',\r\n\tKETO = 'keto',\r\n\tLACTOSE_FREE = 'lactose_free',\r\n\tHIGH_PROTEIN = 'high_protein',\r\n}\r\n\r\nexport enum DishCategory {\r\n\tBREAKFAST = 'breakfast',\r\n\tLUNCH = 'lunch',\r\n\tDINNER = 'dinner',\r\n\tSNACKS = 'snacks',\r\n}\r\n\r\nexport enum NotificationAccountType {\r\n\tUSER = 'user',\r\n\tPARENT = 'parent',\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n\tADMIN = 'admin',\r\n\tCUSTOMER_SERVICE = 'customer_service',\r\n}\r\n\r\nexport enum ClickType {\r\n\tCLICKABLE_URL = 'clickable_url',\r\n\tCLICKABLE_ORDER = 'clickable_order',\r\n\tCLICKABLE_SHOP = 'clickable_shop',\r\n\tCLICKABLE_PRODUCT = 'clickable_product',\r\n\tCLICKABLE_LIST_CONTAINER = 'clickable_list_container',\r\n\tCLICKABLE_PAYOUT = 'clickable_payout',\r\n\tCLICKABLE_BOB_FINANCE = 'clickable_bob_finance',\r\n\tCLICKABLE_REQUEST_AREA = 'clickable_request_area',\r\n}\r\n\r\nexport enum ChargeType {\r\n\tGLOBAL = 'global',\r\n\tCUSTOM = 'custom',\r\n}\r\n\r\nexport enum ShopOnlineStatus {\r\n\tONLINE = 'online',\r\n\tOFFLINE = 'offline',\r\n\tBUSY = 'busy',\r\n}\r\n\r\nexport enum ShopRole {\r\n\tPARENT = 'parent',\r\n\tPARENT_ORDER_MANAGER = 'parent_order_manager',\r\n\tSHOP = 'shop',\r\n\tSHOP_ORDER_MANAGER = 'shop_order_manager',\r\n}\r\n\r\nexport enum BannerClickType {\r\n\tLINK = 'link',\r\n\tSHOP = 'shop',\r\n\tPRODUCT = 'product',\r\n\tLIST_CONTAINER = 'list_container',\r\n\tPLUS = 'plus',\r\n}\r\n\r\nexport enum BannerLinkType {\r\n\tURL = 'url',\r\n\tAPP_ROUTE = 'app-route',\r\n}\r\n\r\nexport enum BannerUserType {\r\n\tALL = 'all',\r\n\tPLUS = 'plus',\r\n\tNORMAL = 'normal',\r\n}\r\n\r\nexport enum CounterType {\r\n\tORDER = 'order',\r\n\tCRM_NUMBER = 'crm_number',\r\n\tshop = 'shop',\r\n}\r\n\r\nexport enum FaqAccountType {\r\n\tUSER = 'user',\r\n\tSHOP = 'shop',\r\n\tRIDER = 'rider',\r\n}\r\n\r\nexport enum ZoneStatus {\r\n\tACTIVE = 'active',\r\n\tINACTIVE = 'inactive',\r\n\tBUSY = 'busy',\r\n}\r\n\r\nexport enum BobAccountType {\r\n\tRIDER = 'rider',\r\n\tSHOP = 'shop',\r\n}\r\n\r\nexport enum BobSettlementType {\r\n\tSETTLE_CASH = 'settle_cash',\r\n\tSETTLE_PAYOUT = 'settle_Payout',\r\n}\r\n\r\nexport enum BobSettlementStatus {\r\n\tNOT_PAID = 'not_paid',\r\n\tPAID = 'paid',\r\n\tREVOKED = 'revoked',\r\n}\r\n\r\nexport enum BobModel {\r\n\tC2B = 'C2B',\r\n\tB2C = 'B2C',\r\n}\r\n\r\nexport enum BobType {\r\n\tINWARD = 'inward',\r\n\tOUTWARD = 'outward',\r\n}\r\n\r\nexport enum CouponType {\r\n\tGLOBAL = 'global',\r\n\tINDIVIDUAL_STORE = 'individual_store',\r\n\tINDIVIDUAL_USER = 'individual_user',\r\n\tCUSTOM_COUPON = 'custom_coupon',\r\n\tREFERRAL_CODE = 'referral_code',\r\n\tREFERRAL_REWARD = 'referral_reward',\r\n}\r\n\r\nexport enum CouponExpirationReason {\r\n\tDURATION = 'duration',\r\n\tSPEND_LIMIT = 'spendLimit',\r\n\tTOTAL_ORDER_LIMIT = 'totalOrderLimit',\r\n}\r\n\r\nexport enum FavouriteType {\r\n\tPRODUCT = 'product',\r\n\tSHOP = 'shop',\r\n}\r\n\r\nexport enum MarketingType {\r\n\tDISCOUNT = 'discount',\r\n\tBUY1GET1 = 'buy1get1',\r\n\tFREE_DELIVERY = 'free_delivery',\r\n\tFEATURED = 'featured',\r\n\tLOYALTY_POINT = 'loyalty_point',\r\n\tPUNCH_MARKETING = 'punch_marketing',\r\n}\r\n\r\nexport enum MarketingStatus {\r\n\tACTIVE = 'active',\r\n\tPAUSED = 'paused',\r\n\tEXPIRED = 'expired',\r\n\tDELETED = 'deleted',\r\n}\r\n\r\nexport enum AdminRole {\r\n\tSUPER_ADMIN = 'super_admin',\r\n\tGENERAL_MANAGER = 'general_manager',\r\n\tORDER_MANAGEMENT_MANAGER = 'order_management_lead',\r\n\tORDER_MANAGEMENT_AGENT = 'order_management_agent',\r\n\tACCOUNT_MANAGER = 'account_manager',\r\n\tBUSINESS_DEVELOPMENT_EXECUTIVE = 'business_development_executive',\r\n\tACCOUNTING = 'accounting',\r\n\tMARKETING_MANAGER = 'marketing_manager',\r\n}\r\n"]}
@@ -0,0 +1,11 @@
1
+ import { TRPCError } from '@trpc/server';
2
+ interface ErrorHandlerParams {
3
+ error: TRPCError | Error | unknown;
4
+ type: 'query' | 'mutation' | 'subscription' | 'unknown';
5
+ path: string | undefined;
6
+ ctx: Record<string, any> | undefined;
7
+ req: any;
8
+ input: unknown;
9
+ }
10
+ export declare function handleTRPCError({ error, type, path, ctx }: ErrorHandlerParams): void;
11
+ export {};
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.handleTRPCError = handleTRPCError;
37
+ const server_1 = require("@trpc/server");
38
+ const error_handler_1 = require("./error-handler");
39
+ const util = __importStar(require("util"));
40
+ function handleTRPCError({ error, type, path, ctx }) {
41
+ const errorContext = {
42
+ procedurePath: path ?? 'unknown',
43
+ procedureType: type,
44
+ requestId: ctx?.requestId ?? 'unknown',
45
+ timestamp: new Date().toISOString(),
46
+ };
47
+ console.error(error);
48
+ console.error('\n\n');
49
+ console.error('╔═══════════════════════════════════════════════════════════════════╗');
50
+ console.error('║ 🔥 TRPC ERROR 🔥 ║');
51
+ console.error('╚═══════════════════════════════════════════════════════════════════╝');
52
+ console.error('\n📋 Error Context:');
53
+ console.error('┌─────────────────────────────────────────────────────────────────┐');
54
+ console.error(`│ Path: ${errorContext.procedurePath.padEnd(52)} │`);
55
+ console.error(`│ Type: ${errorContext.procedureType.padEnd(52)} │`);
56
+ console.error(`│ Request ID: ${errorContext.requestId.padEnd(51)} │`);
57
+ console.error(`│ Timestamp: ${errorContext.timestamp.padEnd(51)} │`);
58
+ console.error('└─────────────────────────────────────────────────────────────────┘');
59
+ if (error instanceof server_1.TRPCError) {
60
+ console.error('\n🚨 Error Details:');
61
+ console.error('┌─────────────────────────────────────────────────────────────────┐');
62
+ console.error(`│ Code: ${error.code.padEnd(54)} │`);
63
+ console.error('└─────────────────────────────────────────────────────────────────┘');
64
+ if (error.code === 'BAD_REQUEST') {
65
+ try {
66
+ if (error.message.trim().startsWith('[') && error.message.includes('"code"')) {
67
+ const validationErrors = JSON.parse(error.message);
68
+ console.error('\n📋 Validation Errors:');
69
+ validationErrors.forEach((err, index) => {
70
+ const fieldPath = err.path.join('.');
71
+ console.error(`│ ${(index + 1).toString().padStart(2)}. Field: ${fieldPath.padEnd(52)} │`);
72
+ console.error(`│ Error: ${err.message.padEnd(53)} │`);
73
+ console.error(`│ Expected: ${err.expected?.padEnd(50) || 'N/A'.padEnd(50)} │`);
74
+ console.error(`│ Received: ${err.received?.padEnd(50) || 'N/A'.padEnd(50)} │`);
75
+ if (index < validationErrors.length - 1) {
76
+ console.error('│ │');
77
+ }
78
+ });
79
+ const fieldErrors = validationErrors.map(err => `(${err.path.join('.')}: ${err.message})`);
80
+ error.message = `Validation failed: ${fieldErrors.join(', ')}`;
81
+ console.error('\n📤 Client Response Message:');
82
+ const message = error.message;
83
+ const chunkSize = 65;
84
+ for (let i = 0; i < message.length; i += chunkSize) {
85
+ const chunk = message.substring(i, i + chunkSize);
86
+ console.error(`│ ${chunk.padEnd(65)}`);
87
+ }
88
+ return;
89
+ }
90
+ }
91
+ catch (parseError) {
92
+ console.error('\n⚠️ Error Parsing Validation Error:');
93
+ console.error(`│ ${parseError instanceof Error ? parseError.message.padEnd(65) : String(parseError).padEnd(65)}`);
94
+ }
95
+ }
96
+ console.error('\n📝 Error Message:');
97
+ const message = error.message;
98
+ const chunkSize = 65;
99
+ for (let i = 0; i < message.length; i += chunkSize) {
100
+ const chunk = message.substring(i, i + chunkSize);
101
+ console.error(`│ ${chunk.padEnd(65)}`);
102
+ }
103
+ if (error.cause) {
104
+ console.error('\n🔍 Error Cause:');
105
+ const causeString = util.inspect(error.cause, { depth: 4, colors: true });
106
+ const causeLines = causeString.split('\n');
107
+ causeLines.forEach(line => {
108
+ const plainLine = line.replace(/\x1b\[\d+m/g, '');
109
+ console.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);
110
+ });
111
+ }
112
+ if (error.stack) {
113
+ console.error('\n📚 Stack Trace:');
114
+ const stackLines = error.stack.split('\n');
115
+ stackLines.forEach(line => {
116
+ if (line.length > 65) {
117
+ for (let i = 0; i < line.length; i += 65) {
118
+ const chunk = line.substring(i, i + 65);
119
+ console.error(`│ ${chunk.padEnd(65)}`);
120
+ }
121
+ }
122
+ else {
123
+ console.error(`│ ${line.padEnd(65)}`);
124
+ }
125
+ });
126
+ }
127
+ }
128
+ else if (error instanceof Error) {
129
+ console.error('\n🚨 Standard Error:');
130
+ console.error('┌─────────────────────────────────────────────────────────────────┐');
131
+ console.error(`│ Name: ${error.name.padEnd(54)} │`);
132
+ console.error(`│ Message: ${error.message.padEnd(54)} │`);
133
+ console.error('└─────────────────────────────────────────────────────────────────┘');
134
+ if (error.stack) {
135
+ console.error('\n📚 Stack Trace:');
136
+ const stackLines = error.stack.split('\n');
137
+ stackLines.forEach(line => {
138
+ if (line.length > 65) {
139
+ for (let i = 0; i < line.length; i += 65) {
140
+ const chunk = line.substring(i, i + 65);
141
+ console.error(`│ ${chunk.padEnd(65)} │`);
142
+ }
143
+ }
144
+ else {
145
+ console.error(`│ ${line.padEnd(65)} │`);
146
+ }
147
+ });
148
+ }
149
+ }
150
+ else {
151
+ console.error('\n❓ Unknown Error:');
152
+ const errorString = util.inspect(error, { depth: 4, colors: true });
153
+ const errorLines = errorString.split('\n');
154
+ errorLines.forEach(line => {
155
+ const plainLine = line.replace(/\x1b\[\d+m/g, '');
156
+ console.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);
157
+ });
158
+ }
159
+ try {
160
+ const errorMeta = error_handler_1.ErrorHandler.extractErrorMetadata(error);
161
+ if (errorMeta && Object.keys(errorMeta).length > 0) {
162
+ console.error('\n🔬 Additional Error Metadata:');
163
+ const metaString = util.inspect(errorMeta, { depth: 4, colors: true });
164
+ const metaLines = metaString.split('\n');
165
+ metaLines.forEach(line => {
166
+ const plainLine = line.replace(/\x1b\[\d+m/g, '');
167
+ console.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);
168
+ });
169
+ }
170
+ }
171
+ catch (handlingError) {
172
+ console.error('\n⚠️ Error While Extracting Metadata:');
173
+ console.error(`│ ${handlingError instanceof Error ? handlingError.message.padEnd(65) : String(handlingError).padEnd(65)}`);
174
+ }
175
+ console.error('\n\n');
176
+ }
177
+ //# sourceMappingURL=error-middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-middleware.js","sourceRoot":"/","sources":["utilities/error-middleware.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRPCError } from '@trpc/server';\r\nimport { ErrorHandler } from './error-handler';\r\nimport * as util from 'util';\r\n\r\n/**\r\n * Parameters for the tRPC error handler\r\n * @typedef {Object} ErrorHandlerParams\r\n * @property {TRPCError|Error|unknown} error - The error object to handle\r\n * @property {'query'|'mutation'|'subscription'|'unknown'} type - The type of tRPC procedure\r\n * @property {string|undefined} path - The path of the tRPC procedure\r\n * @property {Record<string,any>|undefined} ctx - The context of the request\r\n * @property {any} req - The request object\r\n * @property {unknown} input - The input parameters for the procedure\r\n */\r\ninterface ErrorHandlerParams {\r\n\terror: TRPCError | Error | unknown;\r\n\ttype: 'query' | 'mutation' | 'subscription' | 'unknown';\r\n\tpath: string | undefined;\r\n\tctx: Record<string, any> | undefined;\r\n\treq: any;\r\n\tinput: unknown;\r\n}\r\n\r\n/**\r\n * Structure of validation errors from zod validation\r\n * @typedef {Object} ValidationError\r\n * @property {string} code - The error code (e.g., 'invalid_type')\r\n * @property {string} expected - The expected type or value\r\n * @property {string} received - The received type or value\r\n * @property {(string|number)[]} path - The path to the field with the error\r\n * @property {string} message - The error message\r\n */\r\ninterface ValidationError {\r\n\tcode: string;\r\n\texpected: string;\r\n\treceived: string;\r\n\tpath: (string | number)[];\r\n\tmessage: string;\r\n}\r\n\r\n/**\r\n * Central error handler for tRPC HTTP server.\r\n * \r\n * This handler provides comprehensive error logging with structured, formatted output in the console.\r\n * It specializes in handling validation errors from zod schemas, presenting them in a readable format\r\n * both for console debugging and client response.\r\n * \r\n * Key features:\r\n * - Beautiful console formatting with box-styled outputs\r\n * - Special handling for validation errors with field-by-field breakdown\r\n * - Proper handling of nested error objects and stack traces\r\n * - Integration with ErrorHandler utility for extracting additional metadata\r\n * - Client-friendly error message formatting for validation errors\r\n * \r\n * @param {ErrorHandlerParams} params - The error handler parameters\r\n * @param {TRPCError|Error|unknown} params.error - The error that occurred\r\n * @param {'query'|'mutation'|'subscription'|'unknown'} params.type - Type of tRPC procedure\r\n * @param {string|undefined} params.path - Path of the tRPC procedure\r\n * @param {Record<string,any>|undefined} params.ctx - Request context\r\n * @param {any} params.req - The request object\r\n * @param {unknown} params.input - The input parameters\r\n * \r\n * @returns {void}\r\n */\r\nexport function handleTRPCError({ error, type, path, ctx }: ErrorHandlerParams): void {\r\n\tconst errorContext = {\r\n\t\tprocedurePath: path ?? 'unknown',\r\n\t\tprocedureType: type,\r\n\t\trequestId: ctx?.requestId ?? 'unknown',\r\n\t\ttimestamp: new Date().toISOString(),\r\n\t};\r\n\r\n\tconsole.error(error);\r\n\r\n\t// Print a clear error header with context\r\n\tconsole.error('\\n\\n');\r\n\tconsole.error('╔═══════════════════════════════════════════════════════════════════╗');\r\n\tconsole.error('║ 🔥 TRPC ERROR 🔥 ║');\r\n\tconsole.error('╚═══════════════════════════════════════════════════════════════════╝');\r\n\r\n\t// Print context information in a structured format\r\n\tconsole.error('\\n📋 Error Context:');\r\n\tconsole.error('┌─────────────────────────────────────────────────────────────────┐');\r\n\tconsole.error(`│ Path: ${errorContext.procedurePath.padEnd(52)} │`);\r\n\tconsole.error(`│ Type: ${errorContext.procedureType.padEnd(52)} │`);\r\n\tconsole.error(`│ Request ID: ${errorContext.requestId.padEnd(51)} │`);\r\n\tconsole.error(`│ Timestamp: ${errorContext.timestamp.padEnd(51)} │`);\r\n\tconsole.error('└─────────────────────────────────────────────────────────────────┘');\r\n\r\n\tif (error instanceof TRPCError) {\r\n\t\t// Print basic error info\r\n\t\tconsole.error('\\n🚨 Error Details:');\r\n\t\tconsole.error('┌─────────────────────────────────────────────────────────────────┐');\r\n\t\tconsole.error(`│ Code: ${error.code.padEnd(54)} │`);\r\n\t\tconsole.error('└─────────────────────────────────────────────────────────────────┘');\r\n\r\n\t\t// Handle validation errors specially\r\n\t\tif (error.code === 'BAD_REQUEST') {\r\n\t\t\ttry {\r\n\t\t\t\tif (error.message.trim().startsWith('[') && error.message.includes('\"code\"')) {\r\n\t\t\t\t\tconst validationErrors = JSON.parse(error.message) as ValidationError[];\r\n\r\n\t\t\t\t\tconsole.error('\\n📋 Validation Errors:');\r\n\r\n\t\t\t\t\tvalidationErrors.forEach((err, index) => {\r\n\t\t\t\t\t\tconst fieldPath = err.path.join('.');\r\n\t\t\t\t\t\tconsole.error(`│ ${(index + 1).toString().padStart(2)}. Field: ${fieldPath.padEnd(52)} │`);\r\n\t\t\t\t\t\tconsole.error(`│ Error: ${err.message.padEnd(53)} │`);\r\n\t\t\t\t\t\tconsole.error(`│ Expected: ${err.expected?.padEnd(50) || 'N/A'.padEnd(50)} │`);\r\n\t\t\t\t\t\tconsole.error(`│ Received: ${err.received?.padEnd(50) || 'N/A'.padEnd(50)} │`);\r\n\r\n\t\t\t\t\t\t// Add a separator between errors, except for the last one\r\n\t\t\t\t\t\tif (index < validationErrors.length - 1) {\r\n\t\t\t\t\t\t\tconsole.error('│ │');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t// Format field errors for the client response\r\n\t\t\t\t\tconst fieldErrors = validationErrors.map(err => `(${err.path.join('.')}: ${err.message})`);\r\n\r\n\t\t\t\t\terror.message = `Validation failed: ${fieldErrors.join(', ')}`;\r\n\r\n\t\t\t\t\t// Print the formatted client message\r\n\t\t\t\t\tconsole.error('\\n📤 Client Response Message:');\r\n\r\n\t\t\t\t\t// Split the message into multiple lines if it's too long\r\n\t\t\t\t\tconst message = error.message;\r\n\t\t\t\t\tconst chunkSize = 65;\r\n\r\n\t\t\t\t\tfor (let i = 0; i < message.length; i += chunkSize) {\r\n\t\t\t\t\t\tconst chunk = message.substring(i, i + chunkSize);\r\n\t\t\t\t\t\tconsole.error(`│ ${chunk.padEnd(65)}`);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t} catch (parseError) {\r\n\t\t\t\tconsole.error('\\n⚠️ Error Parsing Validation Error:');\r\n\t\t\t\tconsole.error(\r\n\t\t\t\t\t`│ ${parseError instanceof Error ? parseError.message.padEnd(65) : String(parseError).padEnd(65)}`\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Print the error message\r\n\t\tconsole.error('\\n📝 Error Message:');\r\n\r\n\t\t// Split the message into multiple lines if it's too long\r\n\t\tconst message = error.message;\r\n\t\tconst chunkSize = 65;\r\n\r\n\t\tfor (let i = 0; i < message.length; i += chunkSize) {\r\n\t\t\tconst chunk = message.substring(i, i + chunkSize);\r\n\t\t\tconsole.error(`│ ${chunk.padEnd(65)}`);\r\n\t\t}\r\n\r\n\t\t// Print the error cause if available\r\n\t\tif (error.cause) {\r\n\t\t\tconsole.error('\\n🔍 Error Cause:');\r\n\r\n\t\t\t// Use util.inspect to format the cause object nicely\r\n\t\t\tconst causeString = util.inspect(error.cause, { depth: 4, colors: true });\r\n\t\t\tconst causeLines = causeString.split('\\n');\r\n\r\n\t\t\tcauseLines.forEach(line => {\r\n\t\t\t\t// Remove ANSI color codes for padding calculation\r\n\t\t\t\tconst plainLine = line.replace(/\\x1b\\[\\d+m/g, '');\r\n\t\t\t\tconsole.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// Print stack trace if available\r\n\t\tif (error.stack) {\r\n\t\t\tconsole.error('\\n📚 Stack Trace:');\r\n\r\n\t\t\tconst stackLines = error.stack.split('\\n');\r\n\t\t\tstackLines.forEach(line => {\r\n\t\t\t\t// Truncate or split long lines\r\n\t\t\t\tif (line.length > 65) {\r\n\t\t\t\t\tfor (let i = 0; i < line.length; i += 65) {\r\n\t\t\t\t\t\tconst chunk = line.substring(i, i + 65);\r\n\t\t\t\t\t\tconsole.error(`│ ${chunk.padEnd(65)}`);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(`│ ${line.padEnd(65)}`);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t} else if (error instanceof Error) {\r\n\t\t// Handle standard errors\r\n\t\tconsole.error('\\n🚨 Standard Error:');\r\n\t\tconsole.error('┌─────────────────────────────────────────────────────────────────┐');\r\n\t\tconsole.error(`│ Name: ${error.name.padEnd(54)} │`);\r\n\t\tconsole.error(`│ Message: ${error.message.padEnd(54)} │`);\r\n\t\tconsole.error('└─────────────────────────────────────────────────────────────────┘');\r\n\r\n\t\t// Print stack trace if available\r\n\t\tif (error.stack) {\r\n\t\t\tconsole.error('\\n📚 Stack Trace:');\r\n\r\n\t\t\tconst stackLines = error.stack.split('\\n');\r\n\t\t\tstackLines.forEach(line => {\r\n\t\t\t\t// Truncate or split long lines\r\n\t\t\t\tif (line.length > 65) {\r\n\t\t\t\t\tfor (let i = 0; i < line.length; i += 65) {\r\n\t\t\t\t\t\tconst chunk = line.substring(i, i + 65);\r\n\t\t\t\t\t\tconsole.error(`│ ${chunk.padEnd(65)} │`);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(`│ ${line.padEnd(65)} │`);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t} else {\r\n\t\t// Handle unknown errors\r\n\t\tconsole.error('\\n❓ Unknown Error:');\r\n\r\n\t\tconst errorString = util.inspect(error, { depth: 4, colors: true });\r\n\t\tconst errorLines = errorString.split('\\n');\r\n\r\n\t\terrorLines.forEach(line => {\r\n\t\t\t// Remove ANSI color codes for padding calculation\r\n\t\t\tconst plainLine = line.replace(/\\x1b\\[\\d+m/g, '');\r\n\t\t\tconsole.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);\r\n\t\t});\r\n\t}\r\n\r\n\t// Use ErrorHandler's methods for additional metadata\r\n\ttry {\r\n\t\tconst errorMeta = ErrorHandler.extractErrorMetadata(error);\r\n\r\n\t\tif (errorMeta && Object.keys(errorMeta).length > 0) {\r\n\t\t\tconsole.error('\\n🔬 Additional Error Metadata:');\r\n\r\n\t\t\tconst metaString = util.inspect(errorMeta, { depth: 4, colors: true });\r\n\t\t\tconst metaLines = metaString.split('\\n');\r\n\r\n\t\t\tmetaLines.forEach(line => {\r\n\t\t\t\t// Remove ANSI color codes for padding calculation\r\n\t\t\t\tconst plainLine = line.replace(/\\x1b\\[\\d+m/g, '');\r\n\t\t\t\tconsole.error(`│ ${line.padEnd(65 - (line.length - plainLine.length))}`);\r\n\t\t\t});\r\n\t\t}\r\n\t} catch (handlingError) {\r\n\t\tconsole.error('\\n⚠️ Error While Extracting Metadata:');\r\n\t\tconsole.error(\r\n\t\t\t`│ ${\r\n\t\t\t\thandlingError instanceof Error ? handlingError.message.padEnd(65) : String(handlingError).padEnd(65)\r\n\t\t\t}`\r\n\t\t);\r\n\t}\r\n\r\n\tconsole.error('\\n\\n');\r\n}"]}
@@ -1,5 +1,5 @@
1
- import { z } from "zod";
2
- import { GeoLocationType, HolidayWorkStatus, WeekDay, WorkStatus } from "../enum";
1
+ import { z } from 'zod';
2
+ import { GeoLocationType, HolidayWorkStatus, WeekDay, WorkStatus } from '../enum';
3
3
  export declare const FilterSchema: z.ZodOptional<z.ZodObject<{
4
4
  limit: z.ZodDefault<z.ZodNumber>;
5
5
  skip: z.ZodDefault<z.ZodNumber>;
@@ -260,3 +260,23 @@ export declare const WorkHourSettingSchema: z.ZodObject<{
260
260
  };
261
261
  }[] | undefined;
262
262
  }>;
263
+ export declare const LoginSchema: z.ZodObject<{
264
+ email: z.ZodString;
265
+ password: z.ZodString;
266
+ }, "strip", z.ZodTypeAny, {
267
+ email: string;
268
+ password: string;
269
+ }, {
270
+ email: string;
271
+ password: string;
272
+ }>;
273
+ export declare const TokenSchema: z.ZodObject<{
274
+ accessToken: z.ZodString;
275
+ refreshToken: z.ZodString;
276
+ }, "strip", z.ZodTypeAny, {
277
+ refreshToken: string;
278
+ accessToken: string;
279
+ }, {
280
+ refreshToken: string;
281
+ accessToken: string;
282
+ }>;
@@ -1,15 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WorkHourSettingSchema = exports.HolidayHourSchema = exports.NormalHourSchema = exports.DurationSchema = exports.UserAddressSchema = exports.AddressSchema = exports.StringSchema = exports.FilterSchema = void 0;
3
+ exports.TokenSchema = exports.LoginSchema = exports.WorkHourSettingSchema = exports.HolidayHourSchema = exports.NormalHourSchema = exports.DurationSchema = exports.UserAddressSchema = exports.AddressSchema = exports.StringSchema = exports.FilterSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const global_validation_1 = require("./global-validation");
6
6
  const enum_1 = require("../enum");
7
- const SortOrderSchema = zod_1.z.union([
8
- zod_1.z.literal(1),
9
- zod_1.z.literal(-1),
10
- zod_1.z.literal("asc"),
11
- zod_1.z.literal("desc")
12
- ]);
7
+ const SortOrderSchema = zod_1.z.union([zod_1.z.literal(1), zod_1.z.literal(-1), zod_1.z.literal('asc'), zod_1.z.literal('desc')]);
13
8
  const MongoQuerySchema = zod_1.z.lazy(() => zod_1.z.record(zod_1.z.union([zod_1.z.any(), MongoOperatorsSchema])));
14
9
  const MongoOperatorsSchema = zod_1.z.object({
15
10
  $eq: zod_1.z.any().optional(),
@@ -25,64 +20,69 @@ const MongoOperatorsSchema = zod_1.z.object({
25
20
  $and: zod_1.z.array(MongoQuerySchema).optional(),
26
21
  $or: zod_1.z.array(MongoQuerySchema).optional(),
27
22
  $not: MongoQuerySchema.optional(),
28
- $nor: zod_1.z.array(MongoQuerySchema).optional()
23
+ $nor: zod_1.z.array(MongoQuerySchema).optional(),
29
24
  });
30
25
  exports.FilterSchema = zod_1.z
31
26
  .object({
32
27
  limit: zod_1.z
33
28
  .number()
34
- .min(1, { message: "Limit must be greater than 0." })
35
- .max(100, { message: "Limit cannot exceed 100." })
29
+ .min(1, { message: 'Limit must be greater than 0.' })
30
+ .max(100, { message: 'Limit cannot exceed 100.' })
36
31
  .default(10),
37
- skip: zod_1.z.number().min(0, { message: "Skip cannot be negative." }).default(0),
32
+ skip: zod_1.z.number().min(0, { message: 'Skip cannot be negative.' }).default(0),
38
33
  sort: zod_1.z.record(zod_1.z.string(), SortOrderSchema).optional(),
39
34
  query: MongoQuerySchema.optional(),
40
35
  select: zod_1.z.array(zod_1.z.string()).optional(),
41
- populate: zod_1.z.array(zod_1.z.string()).optional()
36
+ populate: zod_1.z.array(zod_1.z.string()).optional(),
42
37
  })
43
38
  .optional();
44
- exports.StringSchema = zod_1.z
45
- .string()
46
- .min(1, "String cannot be empty")
47
- .max(255, "String is too long");
39
+ exports.StringSchema = zod_1.z.string().min(1, 'String cannot be empty').max(255, 'String is too long');
48
40
  exports.AddressSchema = zod_1.z.object({
49
- address: global_validation_1.ZodValidation.string("Address"),
50
- description: global_validation_1.ZodValidation.string("Description").optional(),
51
- city: global_validation_1.ZodValidation.string("City"),
52
- state: global_validation_1.ZodValidation.string("State"),
53
- country: global_validation_1.ZodValidation.string("Country"),
54
- geoLocationType: global_validation_1.ZodValidation.enumType(enum_1.GeoLocationType, "GeoLocationType").default(enum_1.GeoLocationType.POINT),
55
- coordinates: global_validation_1.ZodValidation.array(global_validation_1.ZodValidation.number("Coordinate"), "Coordinates", 2, 2),
56
- latitude: global_validation_1.ZodValidation.number("Latitude"),
57
- longitude: global_validation_1.ZodValidation.number("Longitude")
41
+ address: global_validation_1.ZodValidation.string('Address'),
42
+ description: global_validation_1.ZodValidation.string('Description').optional(),
43
+ city: global_validation_1.ZodValidation.string('City'),
44
+ state: global_validation_1.ZodValidation.string('State'),
45
+ country: global_validation_1.ZodValidation.string('Country'),
46
+ geoLocationType: global_validation_1.ZodValidation.enumType(enum_1.GeoLocationType, 'GeoLocationType').default(enum_1.GeoLocationType.POINT),
47
+ coordinates: global_validation_1.ZodValidation.array(global_validation_1.ZodValidation.number('Coordinate'), 'Coordinates', 2, 2),
48
+ latitude: global_validation_1.ZodValidation.number('Latitude'),
49
+ longitude: global_validation_1.ZodValidation.number('Longitude'),
58
50
  });
59
51
  exports.UserAddressSchema = exports.AddressSchema.extend({
60
- addressLabel: global_validation_1.ZodValidation.string("Address Label"),
61
- apartment: global_validation_1.ZodValidation.string("Apartment"),
62
- buildingName: global_validation_1.ZodValidation.string("Building Name"),
63
- deliveryOption: global_validation_1.ZodValidation.string("Delivery Option").optional(),
64
- instructions: global_validation_1.ZodValidation.string("Instructions").optional()
52
+ addressLabel: global_validation_1.ZodValidation.string('Address Label'),
53
+ apartment: global_validation_1.ZodValidation.string('Apartment'),
54
+ buildingName: global_validation_1.ZodValidation.string('Building Name'),
55
+ deliveryOption: global_validation_1.ZodValidation.string('Delivery Option').optional(),
56
+ instructions: global_validation_1.ZodValidation.string('Instructions').optional(),
65
57
  });
66
58
  exports.DurationSchema = zod_1.z.object({
67
- start: global_validation_1.ZodValidation.date("Start"),
68
- end: global_validation_1.ZodValidation.date("End").optional()
59
+ start: global_validation_1.ZodValidation.date('Start'),
60
+ end: global_validation_1.ZodValidation.date('End').optional(),
69
61
  });
70
62
  const StartEndTimeSchema = zod_1.z.object({
71
- start: global_validation_1.ZodValidation.string("Start"),
72
- end: global_validation_1.ZodValidation.string("End")
63
+ start: global_validation_1.ZodValidation.string('Start'),
64
+ end: global_validation_1.ZodValidation.string('End'),
73
65
  });
74
66
  exports.NormalHourSchema = zod_1.z.object({
75
- day: global_validation_1.ZodValidation.enumType(enum_1.WeekDay, "Day"),
76
- status: global_validation_1.ZodValidation.enumType(enum_1.WorkStatus, "Status"),
77
- openingHours: global_validation_1.ZodValidation.array(StartEndTimeSchema).default([])
67
+ day: global_validation_1.ZodValidation.enumType(enum_1.WeekDay, 'Day'),
68
+ status: global_validation_1.ZodValidation.enumType(enum_1.WorkStatus, 'Status'),
69
+ openingHours: global_validation_1.ZodValidation.array(StartEndTimeSchema).default([]),
78
70
  });
79
71
  exports.HolidayHourSchema = zod_1.z.object({
80
- date: global_validation_1.ZodValidation.date("Date"),
81
- status: global_validation_1.ZodValidation.enumType(enum_1.HolidayWorkStatus, "Status"),
82
- closingHour: StartEndTimeSchema
72
+ date: global_validation_1.ZodValidation.date('Date'),
73
+ status: global_validation_1.ZodValidation.enumType(enum_1.HolidayWorkStatus, 'Status'),
74
+ closingHour: StartEndTimeSchema,
83
75
  });
84
76
  exports.WorkHourSettingSchema = zod_1.z.object({
85
77
  normalHours: global_validation_1.ZodValidation.array(exports.NormalHourSchema).default([]),
86
- holidayHours: global_validation_1.ZodValidation.array(exports.HolidayHourSchema).default([])
78
+ holidayHours: global_validation_1.ZodValidation.array(exports.HolidayHourSchema).default([]),
79
+ });
80
+ exports.LoginSchema = zod_1.z.object({
81
+ email: global_validation_1.ZodValidation.email('Email'),
82
+ password: global_validation_1.ZodValidation.string('Password'),
83
+ });
84
+ exports.TokenSchema = zod_1.z.object({
85
+ accessToken: global_validation_1.ZodValidation.string('AccessToken'),
86
+ refreshToken: global_validation_1.ZodValidation.string('RefreshToken'),
87
87
  });
88
88
  //# sourceMappingURL=common-validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-validation.js","sourceRoot":"/","sources":["utilities/validation/common-validation.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\r\nimport { ZodValidation } from \"./global-validation\";\r\nimport {\r\n GeoLocationType,\r\n HolidayWorkStatus,\r\n WeekDay,\r\n WorkStatus\r\n} from \"../enum\";\r\n\r\n/**\r\n * Define allowed MongoDB sort orders\r\n */\r\nconst SortOrderSchema = z.union([\r\n z.literal(1),\r\n z.literal(-1),\r\n z.literal(\"asc\"),\r\n z.literal(\"desc\")\r\n]);\r\n\r\n/**\r\n * Define MongoDB query schema (fields + operators) using lazy evaluation to avoid circular dependency\r\n */\r\nconst MongoQuerySchema: z.ZodType<Record<string, any>> = z.lazy(() =>\r\n z.record(z.union([z.any(), MongoOperatorsSchema]))\r\n);\r\n\r\n/**\r\n * Define allowed MongoDB query operators\r\n */\r\nconst MongoOperatorsSchema = z.object({\r\n $eq: z.any().optional(),\r\n $ne: z.any().optional(),\r\n $gt: z.any().optional(),\r\n $gte: z.any().optional(),\r\n $lt: z.any().optional(),\r\n $lte: z.any().optional(),\r\n $in: z.array(z.any()).optional(),\r\n $nin: z.array(z.any()).optional(),\r\n $exists: z.boolean().optional(),\r\n $regex: z.string().optional(),\r\n $and: z.array(MongoQuerySchema).optional(),\r\n $or: z.array(MongoQuerySchema).optional(),\r\n $not: MongoQuerySchema.optional(),\r\n $nor: z.array(MongoQuerySchema).optional()\r\n});\r\n\r\n/**\r\n * Define the filter schema using MongoQuerySchema\r\n */\r\nexport const FilterSchema = z\r\n .object({\r\n limit: z\r\n .number()\r\n .min(1, { message: \"Limit must be greater than 0.\" })\r\n .max(100, { message: \"Limit cannot exceed 100.\" })\r\n .default(10),\r\n skip: z.number().min(0, { message: \"Skip cannot be negative.\" }).default(0),\r\n sort: z.record(z.string(), SortOrderSchema).optional(),\r\n query: MongoQuerySchema.optional(),\r\n select: z.array(z.string()).optional(),\r\n populate: z.array(z.string()).optional()\r\n })\r\n .optional();\r\n\r\n/**\r\n * Infer TypeScript type from Zod schema\r\n */\r\nexport type FilterDTO = z.infer<typeof FilterSchema>;\r\n\r\n/**\r\n * Define String schema\r\n */\r\nexport const StringSchema = z\r\n .string()\r\n .min(1, \"String cannot be empty\")\r\n .max(255, \"String is too long\");\r\n\r\n/**\r\n * Common address validation schema that can be reused across models.\r\n * Provides validation for address-related fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const userSchema = z.object({\r\n * name: z.string(),\r\n * address: AddressSchema\r\n * });\r\n * ```\r\n */\r\nexport const AddressSchema = z.object({\r\n address: ZodValidation.string(\"Address\"),\r\n description: ZodValidation.string(\"Description\").optional(),\r\n city: ZodValidation.string(\"City\"),\r\n state: ZodValidation.string(\"State\"),\r\n country: ZodValidation.string(\"Country\"),\r\n geoLocationType: ZodValidation.enumType(\r\n GeoLocationType,\r\n \"GeoLocationType\"\r\n ).default(GeoLocationType.POINT),\r\n coordinates: ZodValidation.array(\r\n ZodValidation.number(\"Coordinate\"),\r\n \"Coordinates\",\r\n 2,\r\n 2\r\n ),\r\n latitude: ZodValidation.number(\"Latitude\"),\r\n longitude: ZodValidation.number(\"Longitude\")\r\n});\r\n\r\n/**\r\n * Common user address validation schema that can be reused across models.\r\n * Provides validation for address-related fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const userSchema = z.object({\r\n * name: z.string(),\r\n * address: UserAddressSchema\r\n * });\r\n * ```\r\n */\r\nexport const UserAddressSchema = AddressSchema.extend({\r\n addressLabel: ZodValidation.string(\"Address Label\"),\r\n apartment: ZodValidation.string(\"Apartment\"),\r\n buildingName: ZodValidation.string(\"Building Name\"),\r\n deliveryOption: ZodValidation.string(\"Delivery Option\").optional(),\r\n instructions: ZodValidation.string(\"Instructions\").optional()\r\n});\r\n\r\n/**\r\n * Common duration validation schema that can be reused across models.\r\n * Provides validation for duration fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const subscriptionSchema = z.object({\r\n * fee: z.number(),\r\n * duration: DurationSchema\r\n * });\r\n * ```\r\n */\r\nexport const DurationSchema = z.object({\r\n start: ZodValidation.date(\"Start\"),\r\n end: ZodValidation.date(\"End\").optional()\r\n});\r\n\r\n/**\r\n * Common Work Hour validation schema that can be reused across models.\r\n * Provides validation for workHourSetting fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const settingSchema = z.object({\r\n * vat: z.number(),\r\n * workHourSetting: WorkHourSettingSchema\r\n * });\r\n * ```\r\n */\r\nconst StartEndTimeSchema = z.object({\r\n start: ZodValidation.string(\"Start\"),\r\n end: ZodValidation.string(\"End\")\r\n});\r\n\r\nexport const NormalHourSchema = z.object({\r\n day: ZodValidation.enumType(WeekDay, \"Day\"),\r\n status: ZodValidation.enumType(WorkStatus, \"Status\"),\r\n openingHours: ZodValidation.array(StartEndTimeSchema).default([])\r\n});\r\n\r\nexport const HolidayHourSchema = z.object({\r\n date: ZodValidation.date(\"Date\"),\r\n status: ZodValidation.enumType(HolidayWorkStatus, \"Status\"),\r\n closingHour: StartEndTimeSchema\r\n});\r\n\r\nexport const WorkHourSettingSchema = z.object({\r\n normalHours: ZodValidation.array(NormalHourSchema).default([]),\r\n holidayHours: ZodValidation.array(HolidayHourSchema).default([])\r\n});\r\n"]}
1
+ {"version":3,"file":"common-validation.js","sourceRoot":"/","sources":["utilities/validation/common-validation.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\r\nimport { ZodValidation } from './global-validation';\r\nimport { GeoLocationType, HolidayWorkStatus, WeekDay, WorkStatus } from '../enum';\r\n\r\n/**\r\n * Define allowed MongoDB sort orders\r\n */\r\nconst SortOrderSchema = z.union([z.literal(1), z.literal(-1), z.literal('asc'), z.literal('desc')]);\r\n\r\n/**\r\n * Define MongoDB query schema (fields + operators) using lazy evaluation to avoid circular dependency\r\n */\r\nconst MongoQuerySchema: z.ZodType<Record<string, any>> = z.lazy(() =>\r\n\tz.record(z.union([z.any(), MongoOperatorsSchema]))\r\n);\r\n\r\n/**\r\n * Define allowed MongoDB query operators\r\n */\r\nconst MongoOperatorsSchema = z.object({\r\n\t$eq: z.any().optional(),\r\n\t$ne: z.any().optional(),\r\n\t$gt: z.any().optional(),\r\n\t$gte: z.any().optional(),\r\n\t$lt: z.any().optional(),\r\n\t$lte: z.any().optional(),\r\n\t$in: z.array(z.any()).optional(),\r\n\t$nin: z.array(z.any()).optional(),\r\n\t$exists: z.boolean().optional(),\r\n\t$regex: z.string().optional(),\r\n\t$and: z.array(MongoQuerySchema).optional(),\r\n\t$or: z.array(MongoQuerySchema).optional(),\r\n\t$not: MongoQuerySchema.optional(),\r\n\t$nor: z.array(MongoQuerySchema).optional(),\r\n});\r\n\r\n/**\r\n * Define the filter schema using MongoQuerySchema\r\n */\r\nexport const FilterSchema = z\r\n\t.object({\r\n\t\tlimit: z\r\n\t\t\t.number()\r\n\t\t\t.min(1, { message: 'Limit must be greater than 0.' })\r\n\t\t\t.max(100, { message: 'Limit cannot exceed 100.' })\r\n\t\t\t.default(10),\r\n\t\tskip: z.number().min(0, { message: 'Skip cannot be negative.' }).default(0),\r\n\t\tsort: z.record(z.string(), SortOrderSchema).optional(),\r\n\t\tquery: MongoQuerySchema.optional(),\r\n\t\tselect: z.array(z.string()).optional(),\r\n\t\tpopulate: z.array(z.string()).optional(),\r\n\t})\r\n\t.optional();\r\n\r\n/**\r\n * Infer TypeScript type from Zod schema\r\n */\r\nexport type FilterDTO = z.infer<typeof FilterSchema>;\r\n\r\n/**\r\n * Define String schema\r\n */\r\nexport const StringSchema = z.string().min(1, 'String cannot be empty').max(255, 'String is too long');\r\n\r\n/**\r\n * Common address validation schema that can be reused across models.\r\n * Provides validation for address-related fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const userSchema = z.object({\r\n * name: z.string(),\r\n * address: AddressSchema\r\n * });\r\n * ```\r\n */\r\nexport const AddressSchema = z.object({\r\n\taddress: ZodValidation.string('Address'),\r\n\tdescription: ZodValidation.string('Description').optional(),\r\n\tcity: ZodValidation.string('City'),\r\n\tstate: ZodValidation.string('State'),\r\n\tcountry: ZodValidation.string('Country'),\r\n\tgeoLocationType: ZodValidation.enumType(GeoLocationType, 'GeoLocationType').default(GeoLocationType.POINT),\r\n\tcoordinates: ZodValidation.array(ZodValidation.number('Coordinate'), 'Coordinates', 2, 2),\r\n\tlatitude: ZodValidation.number('Latitude'),\r\n\tlongitude: ZodValidation.number('Longitude'),\r\n});\r\n\r\n/**\r\n * Common user address validation schema that can be reused across models.\r\n * Provides validation for address-related fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const userSchema = z.object({\r\n * name: z.string(),\r\n * address: UserAddressSchema\r\n * });\r\n * ```\r\n */\r\nexport const UserAddressSchema = AddressSchema.extend({\r\n\taddressLabel: ZodValidation.string('Address Label'),\r\n\tapartment: ZodValidation.string('Apartment'),\r\n\tbuildingName: ZodValidation.string('Building Name'),\r\n\tdeliveryOption: ZodValidation.string('Delivery Option').optional(),\r\n\tinstructions: ZodValidation.string('Instructions').optional(),\r\n});\r\n\r\n/**\r\n * Common duration validation schema that can be reused across models.\r\n * Provides validation for duration fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const subscriptionSchema = z.object({\r\n * fee: z.number(),\r\n * duration: DurationSchema\r\n * });\r\n * ```\r\n */\r\nexport const DurationSchema = z.object({\r\n\tstart: ZodValidation.date('Start'),\r\n\tend: ZodValidation.date('End').optional(),\r\n});\r\n\r\n/**\r\n * Common Work Hour validation schema that can be reused across models.\r\n * Provides validation for workHourSetting fields.\r\n *\r\n * @example\r\n * ```typescript\r\n * const settingSchema = z.object({\r\n * vat: z.number(),\r\n * workHourSetting: WorkHourSettingSchema\r\n * });\r\n * ```\r\n */\r\nconst StartEndTimeSchema = z.object({\r\n\tstart: ZodValidation.string('Start'),\r\n\tend: ZodValidation.string('End'),\r\n});\r\n\r\nexport const NormalHourSchema = z.object({\r\n\tday: ZodValidation.enumType(WeekDay, 'Day'),\r\n\tstatus: ZodValidation.enumType(WorkStatus, 'Status'),\r\n\topeningHours: ZodValidation.array(StartEndTimeSchema).default([]),\r\n});\r\n\r\nexport const HolidayHourSchema = z.object({\r\n\tdate: ZodValidation.date('Date'),\r\n\tstatus: ZodValidation.enumType(HolidayWorkStatus, 'Status'),\r\n\tclosingHour: StartEndTimeSchema,\r\n});\r\n\r\nexport const WorkHourSettingSchema = z.object({\r\n\tnormalHours: ZodValidation.array(NormalHourSchema).default([]),\r\n\tholidayHours: ZodValidation.array(HolidayHourSchema).default([]),\r\n});\r\n\r\n/**\r\n * Schema for validating user login credentials.\r\n * This schema ensures that the provided email and password meet the required validation rules.\r\n *\r\n * @example\r\n * ```typescript\r\n * const credentials = {\r\n * email: 'user@example.com',\r\n * password: 'securePassword123',\r\n * };\r\n * ```\r\n */\r\nexport const LoginSchema = z.object({\r\n\temail: ZodValidation.email('Email'),\r\n\tpassword: ZodValidation.string('Password'),\r\n});\r\n\r\n/**\r\n * Schema for validating token data, typically used for authentication.\r\n * This schema ensures that the provided access token and refresh token are valid strings.\r\n *\r\n * @example\r\n * ```typescript\r\n * const tokens = {\r\n * accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...',\r\n * refreshToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...',\r\n * };\r\n * ```\r\n */\r\nexport const TokenSchema = z.object({\r\n\taccessToken: ZodValidation.string('AccessToken'),\r\n\trefreshToken: ZodValidation.string('RefreshToken'),\r\n});\r\n"]}