@explorins/pers-shared 2.1.145 → 2.1.147

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 (143) hide show
  1. package/dist/cjs/shared-lib/dto/auth/index.d.ts +1 -0
  2. package/dist/cjs/shared-lib/dto/auth/index.d.ts.map +1 -1
  3. package/dist/cjs/shared-lib/dto/auth/index.js +1 -0
  4. package/dist/cjs/shared-lib/dto/auth/index.js.map +1 -1
  5. package/dist/cjs/shared-lib/dto/auth/magic-link.dto.d.ts +31 -0
  6. package/dist/cjs/shared-lib/dto/auth/magic-link.dto.d.ts.map +1 -0
  7. package/dist/cjs/shared-lib/dto/auth/magic-link.dto.js +112 -0
  8. package/dist/cjs/shared-lib/dto/auth/magic-link.dto.js.map +1 -0
  9. package/dist/cjs/shared-lib/dto/business/business-filter-query.dto.d.ts +5 -0
  10. package/dist/cjs/shared-lib/dto/business/business-filter-query.dto.d.ts.map +1 -1
  11. package/dist/cjs/shared-lib/dto/business/business-filter-query.dto.js +53 -0
  12. package/dist/cjs/shared-lib/dto/business/business-filter-query.dto.js.map +1 -1
  13. package/dist/cjs/shared-lib/dto/business/business-update.request.dto.d.ts +4 -0
  14. package/dist/cjs/shared-lib/dto/business/business-update.request.dto.d.ts.map +1 -1
  15. package/dist/cjs/shared-lib/dto/business/business-update.request.dto.js +39 -2
  16. package/dist/cjs/shared-lib/dto/business/business-update.request.dto.js.map +1 -1
  17. package/dist/cjs/shared-lib/dto/business/business.dto.d.ts +4 -0
  18. package/dist/cjs/shared-lib/dto/business/business.dto.d.ts.map +1 -1
  19. package/dist/cjs/shared-lib/dto/business/business.dto.js +33 -0
  20. package/dist/cjs/shared-lib/dto/business/business.dto.js.map +1 -1
  21. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.d.ts +7 -0
  22. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.d.ts.map +1 -1
  23. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.js +94 -1
  24. package/dist/cjs/shared-lib/dto/campaign/trigger-source.dto.js.map +1 -1
  25. package/dist/cjs/shared-lib/dto/tenant/email-config.dto.d.ts +36 -0
  26. package/dist/cjs/shared-lib/dto/tenant/email-config.dto.d.ts.map +1 -0
  27. package/dist/cjs/shared-lib/dto/tenant/email-config.dto.js +144 -0
  28. package/dist/cjs/shared-lib/dto/tenant/email-config.dto.js.map +1 -0
  29. package/dist/cjs/shared-lib/dto/tenant/index.d.ts +1 -0
  30. package/dist/cjs/shared-lib/dto/tenant/index.d.ts.map +1 -1
  31. package/dist/cjs/shared-lib/dto/tenant/index.js +1 -0
  32. package/dist/cjs/shared-lib/dto/tenant/index.js.map +1 -1
  33. package/dist/cjs/shared-lib/dto/tenant/tenant.dto.d.ts +9 -0
  34. package/dist/cjs/shared-lib/dto/tenant/tenant.dto.d.ts.map +1 -1
  35. package/dist/cjs/shared-lib/dto/tenant/tenant.dto.js +23 -0
  36. package/dist/cjs/shared-lib/dto/tenant/tenant.dto.js.map +1 -1
  37. package/dist/cjs/shared-lib/dto/tenant/tenantUpdate.request.dto.d.ts +2 -0
  38. package/dist/cjs/shared-lib/dto/tenant/tenantUpdate.request.dto.d.ts.map +1 -1
  39. package/dist/cjs/shared-lib/dto/tenant/tenantUpdate.request.dto.js +12 -0
  40. package/dist/cjs/shared-lib/dto/tenant/tenantUpdate.request.dto.js.map +1 -1
  41. package/dist/cjs/shared-lib/enum/api-key-type.enum.d.ts +3 -1
  42. package/dist/cjs/shared-lib/enum/api-key-type.enum.d.ts.map +1 -1
  43. package/dist/cjs/shared-lib/enum/api-key-type.enum.js +2 -0
  44. package/dist/cjs/shared-lib/enum/api-key-type.enum.js.map +1 -1
  45. package/dist/cjs/shared-lib/enum/index.d.ts +1 -0
  46. package/dist/cjs/shared-lib/enum/index.d.ts.map +1 -1
  47. package/dist/cjs/shared-lib/enum/index.js +2 -0
  48. package/dist/cjs/shared-lib/enum/index.js.map +1 -1
  49. package/dist/cjs/shared-lib/enum/ott-auth-method.enum.d.ts +16 -0
  50. package/dist/cjs/shared-lib/enum/ott-auth-method.enum.d.ts.map +1 -0
  51. package/dist/cjs/shared-lib/enum/ott-auth-method.enum.js +18 -0
  52. package/dist/cjs/shared-lib/enum/ott-auth-method.enum.js.map +1 -0
  53. package/dist/cjs/shared-lib/errors/error-codes.d.ts +4 -0
  54. package/dist/cjs/shared-lib/errors/error-codes.d.ts.map +1 -1
  55. package/dist/cjs/shared-lib/errors/error-codes.js +6 -0
  56. package/dist/cjs/shared-lib/errors/error-codes.js.map +1 -1
  57. package/dist/cjs/shared-lib/interfaces/email-config.interface.d.ts +94 -0
  58. package/dist/cjs/shared-lib/interfaces/email-config.interface.d.ts.map +1 -0
  59. package/dist/cjs/shared-lib/interfaces/email-config.interface.js +14 -0
  60. package/dist/cjs/shared-lib/interfaces/email-config.interface.js.map +1 -0
  61. package/dist/cjs/shared-lib/interfaces/index.d.ts +1 -0
  62. package/dist/cjs/shared-lib/interfaces/index.d.ts.map +1 -1
  63. package/dist/cjs/shared-lib/interfaces/index.js +1 -0
  64. package/dist/cjs/shared-lib/interfaces/index.js.map +1 -1
  65. package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.d.ts +11 -1
  66. package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.d.ts.map +1 -1
  67. package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.js +5 -0
  68. package/dist/cjs/shared-lib/interfaces/jwt.payload.interface.js.map +1 -1
  69. package/dist/cjs/shared-lib/types/filter-options.type.d.ts +37 -2
  70. package/dist/cjs/shared-lib/types/filter-options.type.d.ts.map +1 -1
  71. package/dist/cjs/shared-lib/types/filter-options.type.js.map +1 -1
  72. package/dist/esm/shared-lib/dto/auth/index.d.ts +1 -0
  73. package/dist/esm/shared-lib/dto/auth/index.d.ts.map +1 -1
  74. package/dist/esm/shared-lib/dto/auth/index.js +1 -0
  75. package/dist/esm/shared-lib/dto/auth/index.js.map +1 -1
  76. package/dist/esm/shared-lib/dto/auth/magic-link.dto.d.ts +31 -0
  77. package/dist/esm/shared-lib/dto/auth/magic-link.dto.d.ts.map +1 -0
  78. package/dist/esm/shared-lib/dto/auth/magic-link.dto.js +97 -0
  79. package/dist/esm/shared-lib/dto/auth/magic-link.dto.js.map +1 -0
  80. package/dist/esm/shared-lib/dto/business/business-filter-query.dto.d.ts +5 -0
  81. package/dist/esm/shared-lib/dto/business/business-filter-query.dto.d.ts.map +1 -1
  82. package/dist/esm/shared-lib/dto/business/business-filter-query.dto.js +48 -0
  83. package/dist/esm/shared-lib/dto/business/business-filter-query.dto.js.map +1 -1
  84. package/dist/esm/shared-lib/dto/business/business-update.request.dto.d.ts +4 -0
  85. package/dist/esm/shared-lib/dto/business/business-update.request.dto.d.ts.map +1 -1
  86. package/dist/esm/shared-lib/dto/business/business-update.request.dto.js +35 -2
  87. package/dist/esm/shared-lib/dto/business/business-update.request.dto.js.map +1 -1
  88. package/dist/esm/shared-lib/dto/business/business.dto.d.ts +4 -0
  89. package/dist/esm/shared-lib/dto/business/business.dto.d.ts.map +1 -1
  90. package/dist/esm/shared-lib/dto/business/business.dto.js +29 -0
  91. package/dist/esm/shared-lib/dto/business/business.dto.js.map +1 -1
  92. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.d.ts +7 -0
  93. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.d.ts.map +1 -1
  94. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.js +87 -1
  95. package/dist/esm/shared-lib/dto/campaign/trigger-source.dto.js.map +1 -1
  96. package/dist/esm/shared-lib/dto/tenant/email-config.dto.d.ts +36 -0
  97. package/dist/esm/shared-lib/dto/tenant/email-config.dto.d.ts.map +1 -0
  98. package/dist/esm/shared-lib/dto/tenant/email-config.dto.js +121 -0
  99. package/dist/esm/shared-lib/dto/tenant/email-config.dto.js.map +1 -0
  100. package/dist/esm/shared-lib/dto/tenant/index.d.ts +1 -0
  101. package/dist/esm/shared-lib/dto/tenant/index.d.ts.map +1 -1
  102. package/dist/esm/shared-lib/dto/tenant/index.js +1 -0
  103. package/dist/esm/shared-lib/dto/tenant/index.js.map +1 -1
  104. package/dist/esm/shared-lib/dto/tenant/tenant.dto.d.ts +9 -0
  105. package/dist/esm/shared-lib/dto/tenant/tenant.dto.d.ts.map +1 -1
  106. package/dist/esm/shared-lib/dto/tenant/tenant.dto.js +15 -0
  107. package/dist/esm/shared-lib/dto/tenant/tenant.dto.js.map +1 -1
  108. package/dist/esm/shared-lib/dto/tenant/tenantUpdate.request.dto.d.ts +2 -0
  109. package/dist/esm/shared-lib/dto/tenant/tenantUpdate.request.dto.d.ts.map +1 -1
  110. package/dist/esm/shared-lib/dto/tenant/tenantUpdate.request.dto.js +11 -0
  111. package/dist/esm/shared-lib/dto/tenant/tenantUpdate.request.dto.js.map +1 -1
  112. package/dist/esm/shared-lib/enum/api-key-type.enum.d.ts +3 -1
  113. package/dist/esm/shared-lib/enum/api-key-type.enum.d.ts.map +1 -1
  114. package/dist/esm/shared-lib/enum/api-key-type.enum.js +2 -0
  115. package/dist/esm/shared-lib/enum/api-key-type.enum.js.map +1 -1
  116. package/dist/esm/shared-lib/enum/index.d.ts +1 -0
  117. package/dist/esm/shared-lib/enum/index.d.ts.map +1 -1
  118. package/dist/esm/shared-lib/enum/index.js +2 -0
  119. package/dist/esm/shared-lib/enum/index.js.map +1 -1
  120. package/dist/esm/shared-lib/enum/ott-auth-method.enum.d.ts +16 -0
  121. package/dist/esm/shared-lib/enum/ott-auth-method.enum.d.ts.map +1 -0
  122. package/dist/esm/shared-lib/enum/ott-auth-method.enum.js +15 -0
  123. package/dist/esm/shared-lib/enum/ott-auth-method.enum.js.map +1 -0
  124. package/dist/esm/shared-lib/errors/error-codes.d.ts +4 -0
  125. package/dist/esm/shared-lib/errors/error-codes.d.ts.map +1 -1
  126. package/dist/esm/shared-lib/errors/error-codes.js +6 -0
  127. package/dist/esm/shared-lib/errors/error-codes.js.map +1 -1
  128. package/dist/esm/shared-lib/interfaces/email-config.interface.d.ts +94 -0
  129. package/dist/esm/shared-lib/interfaces/email-config.interface.d.ts.map +1 -0
  130. package/dist/esm/shared-lib/interfaces/email-config.interface.js +11 -0
  131. package/dist/esm/shared-lib/interfaces/email-config.interface.js.map +1 -0
  132. package/dist/esm/shared-lib/interfaces/index.d.ts +1 -0
  133. package/dist/esm/shared-lib/interfaces/index.d.ts.map +1 -1
  134. package/dist/esm/shared-lib/interfaces/index.js +1 -0
  135. package/dist/esm/shared-lib/interfaces/index.js.map +1 -1
  136. package/dist/esm/shared-lib/interfaces/jwt.payload.interface.d.ts +11 -1
  137. package/dist/esm/shared-lib/interfaces/jwt.payload.interface.d.ts.map +1 -1
  138. package/dist/esm/shared-lib/interfaces/jwt.payload.interface.js +4 -0
  139. package/dist/esm/shared-lib/interfaces/jwt.payload.interface.js.map +1 -1
  140. package/dist/esm/shared-lib/types/filter-options.type.d.ts +37 -2
  141. package/dist/esm/shared-lib/types/filter-options.type.d.ts.map +1 -1
  142. package/dist/esm/shared-lib/types/filter-options.type.js.map +1 -1
  143. package/package.json +1 -1
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Email Configuration Interface
3
+ *
4
+ * Unified email configuration for tenants.
5
+ * Groups all email-related settings into a single structure.
6
+ */
7
+ /**
8
+ * Supported email provider types
9
+ *
10
+ * - sendgrid: SendGrid API (recommended for high volume)
11
+ * - mailjet: Mailjet API (EU-based, GDPR compliant)
12
+ *
13
+ * To add a new provider:
14
+ * 1. Add to this type
15
+ * 2. Implement EmailProviderInterface in email/providers/
16
+ * 3. Register in EmailProviderFactory
17
+ */
18
+ export type EmailProviderType = 'sendgrid' | 'mailjet';
19
+ /**
20
+ * Email provider type values as const array (for validation)
21
+ */
22
+ export declare const EMAIL_PROVIDER_TYPES: EmailProviderType[];
23
+ /**
24
+ * Email template configuration for a specific email type
25
+ */
26
+ export interface EmailTemplateConfig {
27
+ /** Provider-specific template ID (e.g., SendGrid dynamic template ID) */
28
+ templateId: string;
29
+ /** Optional subject - if not provided, template's default subject is used */
30
+ subject?: string;
31
+ /**
32
+ * Maps internal variable names to provider template variable names.
33
+ * Example: { 'magicLinkUrl': 'link_url', 'userName': 'first_name' }
34
+ */
35
+ variableMapping?: Record<string, string>;
36
+ }
37
+ /**
38
+ * Email templates configuration - keyed by email type
39
+ */
40
+ export interface EmailTemplatesConfig {
41
+ /** Magic link / passwordless login emails */
42
+ magicLink?: EmailTemplateConfig;
43
+ /** Welcome emails for new users */
44
+ welcome?: EmailTemplateConfig;
45
+ /** Password reset emails */
46
+ /** Email verification emails */
47
+ /** Transaction confirmation emails */
48
+ transactionConfirmation?: EmailTemplateConfig;
49
+ /** Allow custom email types */
50
+ [key: string]: EmailTemplateConfig | undefined;
51
+ }
52
+ /**
53
+ * Unified email configuration for a tenant
54
+ *
55
+ * Contains all email-related settings:
56
+ * - Provider selection (sendgrid, mailjet)
57
+ * - API credentials (encrypted reference)
58
+ * - Sender information
59
+ * - Template configurations per email type
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * const emailConfig: EmailConfig = {
64
+ * provider: 'sendgrid',
65
+ * apiKeyRef: 'encrypted-ref-123',
66
+ * fromEmail: 'noreply@tenant.com',
67
+ * fromName: 'Tenant Name',
68
+ * templates: {
69
+ * magicLink: {
70
+ * templateId: 'd-abc123',
71
+ * subject: 'Your login link',
72
+ * variableMapping: { magicLinkUrl: 'link_url' }
73
+ * }
74
+ * }
75
+ * };
76
+ * ```
77
+ */
78
+ export interface EmailConfig {
79
+ /** Email provider - see EmailProviderType for supported providers */
80
+ provider?: EmailProviderType;
81
+ /** Encrypted reference ID for API key - stores ID from encrypted_data table */
82
+ apiKeyRef?: string;
83
+ /** Sender email address (must be verified with provider) */
84
+ fromEmail?: string;
85
+ /** Sender display name */
86
+ fromName?: string;
87
+ /** Template configurations keyed by email type */
88
+ templates?: EmailTemplatesConfig;
89
+ }
90
+ /**
91
+ * Email type identifiers for template lookup
92
+ */
93
+ export type EmailType = 'magicLink' | 'welcome' | 'passwordReset' | 'emailVerification' | 'transactionConfirmation' | string;
94
+ //# sourceMappingURL=email-config.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/email-config.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAA4B,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,6CAA6C;IAC7C,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,mCAAmC;IACnC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,4BAA4B;IAE5B,gCAAgC;IAEhC,sCAAsC;IACtC,uBAAuB,CAAC,EAAE,mBAAmB,CAAC;IAC9C,+BAA+B;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAAC;CAClD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,WAAW;IACxB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,SAAS,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,eAAe,GAAG,mBAAmB,GAAG,yBAAyB,GAAG,MAAM,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ /**
3
+ * Email Configuration Interface
4
+ *
5
+ * Unified email configuration for tenants.
6
+ * Groups all email-related settings into a single structure.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.EMAIL_PROVIDER_TYPES = void 0;
10
+ /**
11
+ * Email provider type values as const array (for validation)
12
+ */
13
+ exports.EMAIL_PROVIDER_TYPES = ['sendgrid', 'mailjet'];
14
+ //# sourceMappingURL=email-config.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-config.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/email-config.interface.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAeH;;GAEG;AACU,QAAA,oBAAoB,GAAwB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC"}
@@ -23,4 +23,5 @@ export * from './dynamic-context.interface';
23
23
  export * from './trigger-source-metadata.interface';
24
24
  export * from './ws-relay.types';
25
25
  export * from './external-token-issuer.interface';
26
+ export * from './email-config.interface';
26
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/index.ts"],"names":[],"mappings":"AACA,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kCAAkC,CAAC;AAEjD,cAAc,yBAAyB,CAAC;AAExC,cAAc,4CAA4C,CAAC;AAE3D,cAAc,YAAY,CAAC;AAE3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AAEpD,cAAc,kBAAkB,CAAC;AAEjC,cAAc,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/index.ts"],"names":[],"mappings":"AACA,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0CAA0C,CAAC;AACzD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kCAAkC,CAAC;AAEjD,cAAc,yBAAyB,CAAC;AAExC,cAAc,4CAA4C,CAAC;AAE3D,cAAc,YAAY,CAAC;AAE3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qCAAqC,CAAC;AAEpD,cAAc,kBAAkB,CAAC;AAEjC,cAAc,mCAAmC,CAAC;AAElD,cAAc,0BAA0B,CAAC"}
@@ -40,4 +40,5 @@ __exportStar(require("./dynamic-context.interface"), exports);
40
40
  __exportStar(require("./trigger-source-metadata.interface"), exports);
41
41
  __exportStar(require("./ws-relay.types"), exports);
42
42
  __exportStar(require("./external-token-issuer.interface"), exports);
43
+ __exportStar(require("./email-config.interface"), exports);
43
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAkD;AAClD,mEAAiD;AACjD,uEAAqD;AACrD,iEAA+C;AAC/C,iEAA+C;AAC/C,0DAAwC;AACxC,+DAA6C;AAC7C,2EAAyD;AACzD,iEAA+C;AAC/C,qDAAmC;AACnC,gEAA8C;AAC9C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,kEAAgD;AAChD,4EAA0D;AAC1D,mEAAiD;AAEjD,0DAAwC;AAExC,6EAA2D;AAE3D,6CAA2B;AAE3B,+DAA6C;AAC7C,qEAAmD;AACnD,8DAA4C;AAC5C,sEAAoD;AAEpD,mDAAiC;AAEjC,oEAAkD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAkD;AAClD,mEAAiD;AACjD,uEAAqD;AACrD,iEAA+C;AAC/C,iEAA+C;AAC/C,0DAAwC;AACxC,+DAA6C;AAC7C,2EAAyD;AACzD,iEAA+C;AAC/C,qDAAmC;AACnC,gEAA8C;AAC9C,kEAAgD;AAChD,sEAAoD;AACpD,8DAA4C;AAC5C,kEAAgD;AAChD,4EAA0D;AAC1D,mEAAiD;AAEjD,0DAAwC;AAExC,6EAA2D;AAE3D,6CAA2B;AAE3B,+DAA6C;AAC7C,qEAAmD;AACnD,8DAA4C;AAC5C,sEAAoD;AAEpD,mDAAiC;AAEjC,oEAAkD;AAElD,2DAAyC"}
@@ -1,6 +1,7 @@
1
1
  import { AccountOwnerType } from "../enum/owner-type.enum";
2
2
  import { IntegrationApiKeyType, ApiKeyType, AuthApiKeyType, BlockchainApiKeyType } from "../enum/api-key-type.enum";
3
3
  import { MembershipRole } from "../enum/membership-role.enum";
4
+ import { OttAuthMethod } from "../enum/ott-auth-method.enum";
4
5
  import { MinimalWallet } from "./wallet.interface";
5
6
  import type { DecodedIdToken } from 'firebase-admin/auth';
6
7
  /**
@@ -94,11 +95,20 @@ export interface WebhookJWTPayload extends BasePersJWTPayload {
94
95
  executionId: string;
95
96
  callbackUrl: string;
96
97
  }
97
- export type PersJWTPayload = AuthJWTPayload | ActionableJWTPayload | BlockchainJWTPayload | WebhookJWTPayload;
98
+ export interface OttJWTPayload extends BasePersJWTPayload {
99
+ sub: string;
100
+ type: ApiKeyType.ONE_TIME_TOKEN;
101
+ tenantId: string;
102
+ method: OttAuthMethod;
103
+ jti: string;
104
+ accountType?: AccountOwnerType;
105
+ }
106
+ export type PersJWTPayload = AuthJWTPayload | ActionableJWTPayload | BlockchainJWTPayload | WebhookJWTPayload | OttJWTPayload;
98
107
  export declare function isAuthPayload(payload: PersJWTPayload): payload is AuthJWTPayload;
99
108
  export declare function isActionablePayload(payload: PersJWTPayload): payload is ActionableJWTPayload;
100
109
  export declare function isBlockchainPayload(payload: PersJWTPayload): payload is BlockchainJWTPayload;
101
110
  export declare function isWebhookPayload(payload: PersJWTPayload): payload is WebhookJWTPayload;
111
+ export declare function isOttPayload(payload: PersJWTPayload): payload is OttJWTPayload;
102
112
  export declare function isPersJWTPayload(payload: any): payload is PersJWTPayload;
103
113
  export {};
104
114
  //# sourceMappingURL=jwt.payload.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.payload.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwt.payload.interface.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,9 @@ exports.isAuthPayload = isAuthPayload;
4
4
  exports.isActionablePayload = isActionablePayload;
5
5
  exports.isBlockchainPayload = isBlockchainPayload;
6
6
  exports.isWebhookPayload = isWebhookPayload;
7
+ exports.isOttPayload = isOttPayload;
7
8
  exports.isPersJWTPayload = isPersJWTPayload;
9
+ const api_key_type_enum_1 = require("../enum/api-key-type.enum");
8
10
  // ===========================================
9
11
  // TYPE GUARDS & UTILITIES
10
12
  // ===========================================
@@ -21,6 +23,9 @@ function isBlockchainPayload(payload) {
21
23
  function isWebhookPayload(payload) {
22
24
  return 'webhookId' in payload && 'targetUrl' in payload;
23
25
  }
26
+ function isOttPayload(payload) {
27
+ return 'type' in payload && payload.type === api_key_type_enum_1.ApiKeyType.ONE_TIME_TOKEN;
28
+ }
24
29
  // Helper to identify PERS JWT payloads
25
30
  function isPersJWTPayload(payload) {
26
31
  return 'type' in payload && typeof payload.type === 'string';
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.payload.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":";;AAoJA,sCAEC;AAED,kDAEC;AAED,kDAEC;AAED,4CAEC;AAGD,4CAEC;AAxBD,8CAA8C;AAC9C,0BAA0B;AAC1B,8CAA8C;AAE9C,uBAAuB;AACvB,SAAgB,aAAa,CAAC,OAAuB;IACjD,OAAO,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC;AACrG,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,eAAe,IAAI,OAAO,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC;AACrE,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,aAAa,IAAI,OAAO,CAAC;AACpC,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAuB;IACpD,OAAO,WAAW,IAAI,OAAO,IAAI,WAAW,IAAI,OAAO,CAAC;AAC5D,CAAC;AAED,uCAAuC;AACvC,SAAgB,gBAAgB,CAAC,OAAY;IACzC,OAAO,MAAM,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"jwt.payload.interface.js","sourceRoot":"","sources":["../../../../src/shared-lib/interfaces/jwt.payload.interface.ts"],"names":[],"mappings":";;AAqKA,sCAEC;AAED,kDAEC;AAED,kDAEC;AAED,4CAEC;AAED,oCAEC;AAGD,4CAEC;AA3LD,iEAAoH;AA+JpH,8CAA8C;AAC9C,0BAA0B;AAC1B,8CAA8C;AAE9C,uBAAuB;AACvB,SAAgB,aAAa,CAAC,OAAuB;IACjD,OAAO,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC;AACrG,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,eAAe,IAAI,OAAO,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC;AACrE,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,aAAa,IAAI,OAAO,CAAC;AACpC,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAuB;IACpD,OAAO,WAAW,IAAI,OAAO,IAAI,WAAW,IAAI,OAAO,CAAC;AAC5D,CAAC;AAED,SAAgB,YAAY,CAAC,OAAuB;IAChD,OAAO,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,8BAAU,CAAC,cAAc,CAAC;AAC3E,CAAC;AAED,uCAAuC;AACvC,SAAgB,gBAAgB,CAAC,OAAY;IACzC,OAAO,MAAM,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC;AACjE,CAAC"}
@@ -73,13 +73,32 @@ export interface RedemptionFilterOptions extends DateRangeFilterOptions {
73
73
  */
74
74
  includeOwnInactive?: string;
75
75
  }
76
+ /**
77
+ * Location filter options - reusable across entities with geocoding data.
78
+ * All filters are case-insensitive except countryCode (uppercase).
79
+ *
80
+ * @example
81
+ * { city: 'Doha', countryCode: 'QA' }
82
+ */
83
+ export interface LocationFilterOptions {
84
+ /** Filter by city (case-insensitive) */
85
+ city?: string;
86
+ /** Filter by country code (ISO 3166-1 alpha-2, e.g., 'QA', 'US') - uppercase */
87
+ countryCode?: string;
88
+ /** Filter by country name (case-insensitive) */
89
+ country?: string;
90
+ /** Filter by neighborhood (case-insensitive) */
91
+ neighborhood?: string;
92
+ /** Filter by district (case-insensitive) */
93
+ district?: string;
94
+ }
76
95
  /**
77
96
  * Business filter options for API and SDK.
78
97
  *
79
98
  * @example
80
- * { active: true, tags: ['restaurant', 'cafe'], search: 'coffee' }
99
+ * { active: true, tags: ['restaurant', 'cafe'], search: 'coffee', city: 'Doha' }
81
100
  */
82
- export interface BusinessFilterOptions extends BaseFilterOptions {
101
+ export interface BusinessFilterOptions extends BaseFilterOptions, LocationFilterOptions {
83
102
  /** Sanitize user models (admin only) */
84
103
  sanitize?: 'soft' | 'hard';
85
104
  /** Override sortBy with business-specific fields. 'name' maps to displayName internally. */
@@ -87,6 +106,22 @@ export interface BusinessFilterOptions extends BaseFilterOptions {
87
106
  /** Filter by business type ID */
88
107
  businessTypeId?: number;
89
108
  }
109
+ /**
110
+ * Trigger source filter options for API and SDK.
111
+ *
112
+ * @example
113
+ * { active: true, type: 'QR_CODE', city: 'Dubai', countryCode: 'AE' }
114
+ */
115
+ export interface TriggerSourceFilterOptions extends BaseFilterOptions, LocationFilterOptions {
116
+ /** Filter by trigger source type */
117
+ type?: string;
118
+ /** Filter by associated business ID */
119
+ businessId?: string;
120
+ /** Override sortBy with trigger-source-specific fields */
121
+ sortBy?: 'name' | 'createdAt' | 'type';
122
+ /** Include soft-deleted records */
123
+ includeDeleted?: boolean;
124
+ }
90
125
  /**
91
126
  * Token metadata filter options for API and SDK.
92
127
  * Used for paginated token metadata (rewards/stamps) listings.
@@ -1 +1 @@
1
- {"version":3,"file":"filter-options.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/filter-options.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D;;;;;;GAMG;AACH,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,8BAA8B;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,kDAAkD;IAClD,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC1B,iDAAiD;IACjD,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACxB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;IAC5C,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;CAC3C;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAsB,SAAQ,sBAAsB;IACnE,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;IACrE,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,4FAA4F;IAC5F,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,mBAAmB,CAAC;IACpD,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,0BAA2B,SAAQ,iBAAiB;IACnE,0DAA0D;IAC1D,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oDAAoD;IACpD,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,4BAA4B,CAAC;CAC9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAS7B"}
1
+ {"version":3,"file":"filter-options.type.d.ts","sourceRoot":"","sources":["../../../../src/shared-lib/types/filter-options.type.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter-options.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/filter-options.type.ts"],"names":[],"mappings":";;AAgIA,4CAgBC;AAzBD;;;;;;;;GAQG;AACH,SAAgB,gBAAgB,CAO7B,OAAW;IACZ,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI;QACtC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK;KACzC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"filter-options.type.js","sourceRoot":"","sources":["../../../../src/shared-lib/types/filter-options.type.ts"],"names":[],"mappings":";;AAqKA,4CAgBC;AAzBD;;;;;;;;GAQG;AACH,SAAgB,gBAAgB,CAO7B,OAAW;IACZ,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI;QACtC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK;KACzC,CAAC;AACT,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './auth-token-verification.dto';
2
2
  export * from './auth.dto';
3
+ export * from './magic-link.dto';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/index.ts"],"names":[],"mappings":"AAEA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './auth-token-verification.dto.js';
2
2
  export * from './auth.dto.js';
3
+ export * from './magic-link.dto.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/index.ts"],"names":[],"mappings":"AAEA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { CommonErrorCode } from '../../errors/error-codes';
2
+ /**
3
+ * Magic link specific error codes for API documentation
4
+ */
5
+ export declare const MagicLinkErrorCodes: readonly ["MAGIC_LINK_EMAIL_SEND_FAILED", "MAGIC_LINK_EMAIL_MISMATCH", "MAGIC_LINK_VERIFICATION_FAILED", "INVALID_TOKEN", "TOKEN_EXPIRED", "INTERNAL_ERROR"];
6
+ /**
7
+ * Request DTO for sending a magic link
8
+ *
9
+ * Endpoint: POST /auth/magic-link/send
10
+ */
11
+ export declare class SendMagicLinkRequestDTO {
12
+ email: string;
13
+ redirectUrl?: string;
14
+ language?: string;
15
+ params?: Record<string, string>;
16
+ }
17
+ /**
18
+ * Response DTO for sending a magic link
19
+ */
20
+ export declare class SendMagicLinkResponseDTO {
21
+ success: boolean;
22
+ message?: string;
23
+ errorCode?: CommonErrorCode;
24
+ }
25
+ /**
26
+ * Response DTO for verifying a magic link (via /auth/token with OTT)
27
+ *
28
+ * Uses SessionAuthContextResponseDTO - throws exceptions on failure
29
+ * @see SessionAuthContextResponseDTO
30
+ */
31
+ //# sourceMappingURL=magic-link.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magic-link.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/magic-link.dto.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAGhE;;GAEG;AACH,eAAO,MAAM,mBAAmB,8JAOtB,CAAC;AAEX;;;;GAIG;AACH,qBAAa,uBAAuB;IAMhC,KAAK,EAAG,MAAM,CAAC;IAQf,WAAW,CAAC,EAAE,MAAM,CAAC;IAUrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAOlB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,wBAAwB;IAKjC,OAAO,EAAG,OAAO,CAAC;IAMlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAMjB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED;;;;;GAKG"}
@@ -0,0 +1,97 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
8
+ import { IsEmail, IsString, MaxLength } from 'class-validator';
9
+ import { CommonErrorCodes } from '../../errors/error-codes.js';
10
+ import { OptionalStrip } from '../../decorators/index.js';
11
+ /**
12
+ * Magic link specific error codes for API documentation
13
+ */
14
+ export const MagicLinkErrorCodes = [
15
+ CommonErrorCodes.MAGIC_LINK_EMAIL_SEND_FAILED,
16
+ CommonErrorCodes.MAGIC_LINK_EMAIL_MISMATCH,
17
+ CommonErrorCodes.MAGIC_LINK_VERIFICATION_FAILED,
18
+ CommonErrorCodes.INVALID_TOKEN,
19
+ CommonErrorCodes.TOKEN_EXPIRED,
20
+ CommonErrorCodes.INTERNAL_ERROR,
21
+ ];
22
+ /**
23
+ * Request DTO for sending a magic link
24
+ *
25
+ * Endpoint: POST /auth/magic-link/send
26
+ */
27
+ export class SendMagicLinkRequestDTO {
28
+ email;
29
+ redirectUrl;
30
+ language;
31
+ params;
32
+ }
33
+ __decorate([
34
+ ApiProperty({
35
+ description: 'User email address to send the magic link to',
36
+ example: 'user@example.com',
37
+ }),
38
+ IsEmail()
39
+ ], SendMagicLinkRequestDTO.prototype, "email", void 0);
40
+ __decorate([
41
+ ApiPropertyOptional({
42
+ description: 'URL to redirect to after successful authentication',
43
+ example: 'https://app.example.com/dashboard',
44
+ }),
45
+ OptionalStrip(),
46
+ IsString()
47
+ ], SendMagicLinkRequestDTO.prototype, "redirectUrl", void 0);
48
+ __decorate([
49
+ ApiPropertyOptional({
50
+ description: 'Language code for the email template',
51
+ example: 'en',
52
+ default: 'en',
53
+ }),
54
+ OptionalStrip(),
55
+ IsString(),
56
+ MaxLength(5)
57
+ ], SendMagicLinkRequestDTO.prototype, "language", void 0);
58
+ __decorate([
59
+ ApiPropertyOptional({
60
+ description: 'Additional query parameters to include in the magic link URL',
61
+ example: { returnPath: '/dashboard', campaign: 'signup' },
62
+ }),
63
+ OptionalStrip()
64
+ ], SendMagicLinkRequestDTO.prototype, "params", void 0);
65
+ /**
66
+ * Response DTO for sending a magic link
67
+ */
68
+ export class SendMagicLinkResponseDTO {
69
+ success;
70
+ message;
71
+ errorCode;
72
+ }
73
+ __decorate([
74
+ ApiProperty({
75
+ description: 'Whether the magic link was sent successfully',
76
+ example: true,
77
+ })
78
+ ], SendMagicLinkResponseDTO.prototype, "success", void 0);
79
+ __decorate([
80
+ ApiPropertyOptional({
81
+ description: 'Message describing the result',
82
+ example: 'Magic link sent successfully',
83
+ })
84
+ ], SendMagicLinkResponseDTO.prototype, "message", void 0);
85
+ __decorate([
86
+ ApiPropertyOptional({
87
+ description: 'Error code if the request failed',
88
+ enum: MagicLinkErrorCodes,
89
+ })
90
+ ], SendMagicLinkResponseDTO.prototype, "errorCode", void 0);
91
+ /**
92
+ * Response DTO for verifying a magic link (via /auth/token with OTT)
93
+ *
94
+ * Uses SessionAuthContextResponseDTO - throws exceptions on failure
95
+ * @see SessionAuthContextResponseDTO
96
+ */
97
+ //# sourceMappingURL=magic-link.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"magic-link.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/auth/magic-link.dto.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAC/B,gBAAgB,CAAC,4BAA4B;IAC7C,gBAAgB,CAAC,yBAAyB;IAC1C,gBAAgB,CAAC,8BAA8B;IAC/C,gBAAgB,CAAC,aAAa;IAC9B,gBAAgB,CAAC,aAAa;IAC9B,gBAAgB,CAAC,cAAc;CACzB,CAAC;AAEX;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAMhC,KAAK,CAAU;IAQf,WAAW,CAAU;IAUrB,QAAQ,CAAU;IAOlB,MAAM,CAA0B;CACnC;AA1BG;IALC,WAAW,CAAC;QACT,WAAW,EAAE,8CAA8C;QAC3D,OAAO,EAAE,kBAAkB;KAC9B,CAAC;IACD,OAAO,EAAE;sDACK;AAQf;IANC,mBAAmB,CAAC;QACjB,WAAW,EAAE,oDAAoD;QACjE,OAAO,EAAE,mCAAmC;KAC/C,CAAC;IACD,aAAa,EAAE;IACf,QAAQ,EAAE;4DACU;AAUrB;IARC,mBAAmB,CAAC;QACjB,WAAW,EAAE,sCAAsC;QACnD,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;KAChB,CAAC;IACD,aAAa,EAAE;IACf,QAAQ,EAAE;IACV,SAAS,CAAC,CAAC,CAAC;yDACK;AAOlB;IALC,mBAAmB,CAAC;QACjB,WAAW,EAAE,8DAA8D;QAC3E,OAAO,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE;KAC5D,CAAC;IACD,aAAa,EAAE;uDACgB;AAGpC;;GAEG;AACH,MAAM,OAAO,wBAAwB;IAKjC,OAAO,CAAW;IAMlB,OAAO,CAAU;IAMjB,SAAS,CAAmB;CAC/B;AAbG;IAJC,WAAW,CAAC;QACT,WAAW,EAAE,8CAA8C;QAC3D,OAAO,EAAE,IAAI;KAChB,CAAC;yDACgB;AAMlB;IAJC,mBAAmB,CAAC;QACjB,WAAW,EAAE,+BAA+B;QAC5C,OAAO,EAAE,8BAA8B;KAC1C,CAAC;yDACe;AAMjB;IAJC,mBAAmB,CAAC;QACjB,WAAW,EAAE,kCAAkC;QAC/C,IAAI,EAAE,mBAAmB;KAC5B,CAAC;2DAC0B;AAGhC;;;;;GAKG"}
@@ -17,5 +17,10 @@ export declare class BusinessFilterQueryDTO implements Omit<BusinessFilterOption
17
17
  readonly limit?: number;
18
18
  readonly sortBy?: 'name' | 'createdAt' | 'businessLegalName';
19
19
  readonly sortOrder?: SortOrder;
20
+ readonly city?: string;
21
+ readonly countryCode?: string;
22
+ readonly country?: string;
23
+ readonly neighborhood?: string;
24
+ readonly district?: string;
20
25
  }
21
26
  //# sourceMappingURL=business-filter-query.dto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"business-filter-query.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-filter-query.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE;;;;;;;GAOG;AACH,qBAAa,sBAAuB,YAAW,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;IASvG,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAU1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAQzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IASzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAUpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAWvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IASxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,mBAAmB,CAAC;IAS7D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;CAChC"}
1
+ {"version":3,"file":"business-filter-query.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-filter-query.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE;;;;;;;GAOG;AACH,qBAAa,sBAAuB,YAAW,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;IASvG,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAU1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAQzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IASzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAUpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAWvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IASxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,mBAAmB,CAAC;IAS7D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAY/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAQvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAQ9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAQ1B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAQ/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -25,6 +25,14 @@ export class BusinessFilterQueryDTO {
25
25
  limit;
26
26
  sortBy;
27
27
  sortOrder;
28
+ // ============================================
29
+ // Location Filters
30
+ // ============================================
31
+ city;
32
+ countryCode;
33
+ country;
34
+ neighborhood;
35
+ district;
28
36
  }
29
37
  __decorate([
30
38
  ApiPropertyOptional({
@@ -102,4 +110,44 @@ __decorate([
102
110
  IsOptional(),
103
111
  IsEnum(SortOrder)
104
112
  ], BusinessFilterQueryDTO.prototype, "sortOrder", void 0);
113
+ __decorate([
114
+ ApiPropertyOptional({
115
+ description: 'Filter by city (case-insensitive)',
116
+ example: 'Doha'
117
+ }),
118
+ IsOptional(),
119
+ IsString()
120
+ ], BusinessFilterQueryDTO.prototype, "city", void 0);
121
+ __decorate([
122
+ ApiPropertyOptional({
123
+ description: 'Filter by country code (ISO 3166-1 alpha-2)',
124
+ example: 'QA'
125
+ }),
126
+ IsOptional(),
127
+ IsString()
128
+ ], BusinessFilterQueryDTO.prototype, "countryCode", void 0);
129
+ __decorate([
130
+ ApiPropertyOptional({
131
+ description: 'Filter by country name (case-insensitive)',
132
+ example: 'Qatar'
133
+ }),
134
+ IsOptional(),
135
+ IsString()
136
+ ], BusinessFilterQueryDTO.prototype, "country", void 0);
137
+ __decorate([
138
+ ApiPropertyOptional({
139
+ description: 'Filter by neighborhood (case-insensitive)',
140
+ example: 'West Bay'
141
+ }),
142
+ IsOptional(),
143
+ IsString()
144
+ ], BusinessFilterQueryDTO.prototype, "neighborhood", void 0);
145
+ __decorate([
146
+ ApiPropertyOptional({
147
+ description: 'Filter by district (case-insensitive)',
148
+ example: 'Doha Municipality'
149
+ }),
150
+ IsOptional(),
151
+ IsString()
152
+ ], BusinessFilterQueryDTO.prototype, "district", void 0);
105
153
  //# sourceMappingURL=business-filter-query.dto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"business-filter-query.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-filter-query.dto.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD;;;;;;;GAOG;AACH,MAAM,OAAO,sBAAsB;IASxB,MAAM,CAAW;IAUjB,IAAI,CAAY;IAQhB,MAAM,CAAU;IAShB,QAAQ,CAAmB;IAU3B,IAAI,CAAU;IAWd,KAAK,CAAU;IASf,MAAM,CAA8C;IASpD,SAAS,CAAa;CAChC;AAnEU;IARR,mBAAmB,CAAC;QACnB,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KACd,CAAC;IACD,UAAU,EAAE;IACZ,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,SAAS,EAAE;sDACc;AAUjB;IARR,mBAAmB,CAAC;QACnB,WAAW,EAAE,uEAAuE;QACpF,IAAI,EAAE,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC;KAChC,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;oDACA;AAQhB;IANR,mBAAmB,CAAC;QACnB,WAAW,EAAE,mDAAmD;QAChE,OAAO,EAAE,aAAa;KACvB,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;sDACc;AAShB;IAPR,mBAAmB,CAAC;QACnB,WAAW,EAAE,+DAA+D;QAC5E,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM;KAChB,CAAC;IACD,UAAU,EAAE;IACZ,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wDACW;AAU3B;IARR,mBAAmB,CAAC;QACnB,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;KACX,CAAC;IACD,UAAU,EAAE;IACZ,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;oDACI;AAWd;IATR,mBAAmB,CAAC;QACnB,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE;KACZ,CAAC;IACD,UAAU,EAAE;IACZ,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;qDACK;AASf;IAPR,mBAAmB,CAAC;QACnB,WAAW,EAAE,YAAY;QACzB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,mBAAmB,CAAC;QAChD,OAAO,EAAE,WAAW;KACrB,CAAC;IACD,UAAU,EAAE;IACZ,QAAQ,EAAE;sDACkD;AASpD;IAPR,mBAAmB,CAAC;QACnB,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS,CAAC,IAAI;KACxB,CAAC;IACD,UAAU,EAAE;IACZ,MAAM,CAAC,SAAS,CAAC;yDACa"}
1
+ {"version":3,"file":"business-filter-query.dto.js","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-filter-query.dto.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,12 @@ export declare class BusinessUpdateRequestDTO {
9
9
  imageUrl?: string | null;
10
10
  logoUrl?: string | null;
11
11
  streetAddress?: string | null;
12
+ neighborhood?: string | null;
13
+ district?: string | null;
12
14
  city?: string | null;
13
15
  postalCode?: string | null;
16
+ country?: string | null;
17
+ countryCode?: string | null;
14
18
  coordsLatitude?: number | null;
15
19
  coordsLongitude?: number | null;
16
20
  businessTypeId?: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"business-update.request.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-update.request.dto.ts"],"names":[],"mappings":"AAIA,qBAAa,wBAAwB;IAOjC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOlC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOzB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOxB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO9B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOhC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAU/B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB"}
1
+ {"version":3,"file":"business-update.request.dto.d.ts","sourceRoot":"","sources":["../../../../../src/shared-lib/dto/business/business-update.request.dto.ts"],"names":[],"mappings":"AAIA,qBAAa,wBAAwB;IAOjC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOlC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOnC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOzB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOxB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO9B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO7B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOrB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAQxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAO/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAOhC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAU/B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB"}