@lssm/module.notifications 0.0.0-canary-20251217083314 → 0.0.0-canary-20251220002821

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 (160) hide show
  1. package/LICENSE +21 -0
  2. package/dist/channels/index.d.ts +3 -2
  3. package/dist/channels/index.d.ts.map +1 -0
  4. package/dist/channels/index.js +3 -2
  5. package/dist/channels/index.js.map +1 -0
  6. package/dist/contracts/index.d.ts +2 -1
  7. package/dist/contracts/index.d.ts.map +1 -0
  8. package/dist/contracts/index.js +59 -60
  9. package/dist/contracts/index.js.map +1 -0
  10. package/dist/entities/index.d.ts +2 -1
  11. package/dist/entities/index.d.ts.map +1 -0
  12. package/dist/entities/index.js +82 -82
  13. package/dist/entities/index.js.map +1 -0
  14. package/dist/libs/contracts/dist/capabilities/openbanking.js +2 -1
  15. package/dist/libs/contracts/dist/capabilities/openbanking.js.map +1 -0
  16. package/dist/libs/contracts/dist/contract-registry/schemas.js +2 -1
  17. package/dist/libs/contracts/dist/contract-registry/schemas.js.map +1 -0
  18. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +2 -1
  19. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +1 -0
  20. package/dist/libs/contracts/dist/docs/index.js +2 -6
  21. package/dist/libs/contracts/dist/docs/meta.docs.js +30 -0
  22. package/dist/libs/contracts/dist/docs/meta.docs.js.map +1 -0
  23. package/dist/libs/contracts/dist/docs/presentations.js +2 -1
  24. package/dist/libs/contracts/dist/docs/presentations.js.map +1 -0
  25. package/dist/libs/contracts/dist/docs/registry.js +2 -1
  26. package/dist/libs/contracts/dist/docs/registry.js.map +1 -0
  27. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +2 -1
  28. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +1 -0
  29. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +2 -1
  30. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +1 -0
  31. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +2 -1
  32. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +1 -0
  33. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +2 -1
  34. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +1 -0
  35. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +2 -1
  36. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +1 -0
  37. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +2 -1
  38. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +1 -0
  39. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +2 -1
  40. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +1 -0
  41. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +2 -1
  42. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +1 -0
  43. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +2 -1
  44. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +1 -0
  45. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +2 -1
  46. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +1 -0
  47. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +2 -1
  48. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +1 -0
  49. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +2 -1
  50. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +1 -0
  51. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +2 -1
  52. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +1 -0
  53. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +2 -1
  54. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +1 -0
  55. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +2 -1
  56. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +1 -0
  57. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +2 -1
  58. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +1 -0
  59. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +2 -1
  60. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +1 -0
  61. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +2 -1
  62. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +1 -0
  63. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +2 -1
  64. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +1 -0
  65. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +2 -1
  66. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js.map +1 -0
  67. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js +97 -0
  68. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +1 -0
  69. package/dist/libs/contracts/dist/index.js +3 -2
  70. package/dist/libs/contracts/dist/integrations/contracts.js +65 -66
  71. package/dist/libs/contracts/dist/integrations/contracts.js.map +1 -0
  72. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +31 -32
  73. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js.map +1 -0
  74. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +18 -19
  75. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js.map +1 -0
  76. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +32 -33
  77. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js.map +1 -0
  78. package/dist/libs/contracts/dist/integrations/openbanking/models.js +60 -61
  79. package/dist/libs/contracts/dist/integrations/openbanking/models.js.map +1 -0
  80. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +2 -1
  81. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js.map +1 -0
  82. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +2 -1
  83. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js.map +1 -0
  84. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +2 -1
  85. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js.map +1 -0
  86. package/dist/libs/contracts/dist/integrations/providers/gmail.js +2 -1
  87. package/dist/libs/contracts/dist/integrations/providers/gmail.js.map +1 -0
  88. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +2 -1
  89. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js.map +1 -0
  90. package/dist/libs/contracts/dist/integrations/providers/mistral.js +2 -1
  91. package/dist/libs/contracts/dist/integrations/providers/mistral.js.map +1 -0
  92. package/dist/libs/contracts/dist/integrations/providers/postmark.js +2 -1
  93. package/dist/libs/contracts/dist/integrations/providers/postmark.js.map +1 -0
  94. package/dist/libs/contracts/dist/integrations/providers/powens.js +2 -1
  95. package/dist/libs/contracts/dist/integrations/providers/powens.js.map +1 -0
  96. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +2 -1
  97. package/dist/libs/contracts/dist/integrations/providers/qdrant.js.map +1 -0
  98. package/dist/libs/contracts/dist/integrations/providers/stripe.js +2 -1
  99. package/dist/libs/contracts/dist/integrations/providers/stripe.js.map +1 -0
  100. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +2 -1
  101. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js.map +1 -0
  102. package/dist/libs/contracts/dist/knowledge/contracts.js +44 -45
  103. package/dist/libs/contracts/dist/knowledge/contracts.js.map +1 -0
  104. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +2 -1
  105. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js.map +1 -0
  106. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +2 -1
  107. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js.map +1 -0
  108. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +2 -1
  109. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js.map +1 -0
  110. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +2 -1
  111. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js.map +1 -0
  112. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +2 -1
  113. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js.map +1 -0
  114. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +2 -1
  115. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js.map +1 -0
  116. package/dist/libs/contracts/dist/llm/exporters.js +2 -1
  117. package/dist/libs/contracts/dist/llm/exporters.js.map +1 -0
  118. package/dist/libs/contracts/dist/onboarding-base.js +22 -23
  119. package/dist/libs/contracts/dist/onboarding-base.js.map +1 -0
  120. package/dist/libs/contracts/dist/ownership.js +4 -2
  121. package/dist/libs/contracts/dist/ownership.js.map +1 -0
  122. package/dist/libs/contracts/dist/presentations.v2.js +2 -1
  123. package/dist/libs/contracts/dist/presentations.v2.js.map +1 -0
  124. package/dist/libs/contracts/dist/regenerator/service.js +2 -1
  125. package/dist/libs/contracts/dist/regenerator/service.js.map +1 -0
  126. package/dist/libs/contracts/dist/schema/dist/index.js +3874 -6
  127. package/dist/libs/contracts/dist/schema/dist/index.js.map +1 -0
  128. package/dist/libs/contracts/dist/spec.js +2 -1
  129. package/dist/libs/contracts/dist/spec.js.map +1 -0
  130. package/dist/libs/schema/dist/index.js +4899 -6
  131. package/dist/libs/schema/dist/index.js.map +1 -0
  132. package/dist/notifications.feature.d.ts +2 -1
  133. package/dist/notifications.feature.d.ts.map +1 -0
  134. package/dist/notifications.feature.js +2 -1
  135. package/dist/notifications.feature.js.map +1 -0
  136. package/dist/templates/index.d.ts +2 -1
  137. package/dist/templates/index.d.ts.map +1 -0
  138. package/dist/templates/index.js +2 -1
  139. package/dist/templates/index.js.map +1 -0
  140. package/package.json +14 -7
  141. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  142. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  143. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  144. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  145. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  146. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  147. package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
  148. package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
  149. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  150. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -39
  151. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  152. package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
  153. package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
  154. package/dist/libs/schema/dist/EnumType.js +0 -56
  155. package/dist/libs/schema/dist/FieldType.js +0 -49
  156. package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -236
  157. package/dist/libs/schema/dist/SchemaModel.js +0 -3
  158. package/dist/libs/schema/dist/entity/defineEntity.js +0 -236
  159. package/dist/libs/schema/dist/entity/index.js +0 -2
  160. package/dist/libs/schema/dist/entity/types.js +0 -1
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Chaman Ventures, SASU
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -53,7 +53,7 @@ interface ChannelDeliveryResult {
53
53
  */
54
54
  declare class InAppChannel implements NotificationChannel {
55
55
  readonly channelId = "IN_APP";
56
- send(notification: ChannelNotification): Promise<ChannelDeliveryResult>;
56
+ send(_notification: ChannelNotification): Promise<ChannelDeliveryResult>;
57
57
  isAvailable(): Promise<boolean>;
58
58
  }
59
59
  /**
@@ -103,4 +103,5 @@ declare class ChannelRegistry {
103
103
  */
104
104
  declare function createChannelRegistry(): ChannelRegistry;
105
105
  //#endregion
106
- export { ChannelDeliveryResult, ChannelNotification, ChannelRegistry, ConsoleChannel, EmailChannel, InAppChannel, NotificationChannel, PushChannel, WebhookChannel, createChannelRegistry };
106
+ export { ChannelDeliveryResult, ChannelNotification, ChannelRegistry, ConsoleChannel, EmailChannel, InAppChannel, NotificationChannel, PushChannel, WebhookChannel, createChannelRegistry };
107
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/channels/index.ts"],"sourcesContent":[],"mappings":";;AAGA;;AAImD,UAJlC,mBAAA,CAIkC;EAAR;EAE1B,SAAA,SAAA,EAAA,MAAA;EAAO;EAMP,IAAA,CAAA,YAAA,EARI,mBAQe,CAAA,EARO,OAQP,CARe,qBAQf,CAAA;EAOvB;EAYF,WAAA,EAAA,EAzBM,OAyBN,CAAA,OAAA,CAAA;;;AAWX;AAWA;AAImB,UA7CF,mBAAA,CA6CE;EACN,EAAA,EAAA,MAAA;EAAR,MAAA,EAAA,MAAA;EASkB,KAAA,EAAA,MAAA;EAdc,IAAA,EAAA,MAAA;EAAmB,SAAA,CAAA,EAAA,MAAA;EAsB3C,QAAA,CAAA,EAAA,MAAe;EAIV,QAAA,CAAA,EA5DL,MA4DK,CAAA,MAAA,EAAA,OAAA,CAAA;EACL,KAAA,CAAA,EAAA;IAAR,EAAA,EAAA,MAAA;IAYkB,OAAA,EAAA,MAAA;IAjBgB,IAAA,CAAA,EAAA,MAAA;IAAmB,IAAA,CAAA,EAAA,MAAA;EAyBpC,CAAA;EAIJ,IAAA,CAAA,EAAA;IACL,KAAA,EAAA,MAAA;IAAR,KAAA,CAAA,EAAA,MAAA;IAEkB,KAAA,CAAA,EAAA,MAAA;IAPuB,IAAA,CAAA,EArEnC,MAqEmC,CAAA,MAAA,EAAA,OAAA,CAAA;EAAmB,CAAA;EAe3C,OAAA,CAAA,EAAA;IAIJ,GAAA,EAAA,MAAA;IACL,OAAA,CAAA,EArFC,MAqFD,CAAA,MAAA,EAAA,MAAA,CAAA;EAAR,CAAA;;;;AAUL;AAIkB,UA5FD,qBAAA,CA4FC;EACL,OAAA,EAAA,OAAA;EAAR,UAAA,CAAA,EAAA,MAAA;EAsCkB,YAAA,CAAA,EAAA,MAAA;EA3CgB,eAAA,CAAA,EAAA,MAAA;EAAmB,QAAA,CAAA,EAnF7C,MAmF6C,CAAA,MAAA,EAAA,OAAA,CAAA;AAmD1D;;;;AAegC,cA/InB,YAAA,YAAwB,mBA+IL,CAAA;EAAR,SAAA,SAAA,GAAA,QAAA;EAAO,IAAA,CAAA,aAAA,EA3IZ,mBA2IY,CAAA,EA1I1B,OA0I0B,CA1IlB,qBA0IkB,CAAA;EAcf,WAAA,CAAA,CAAA,EA/IO,OA+IP,CAAA,OAAqB,CAAA;;;;;cAvIxB,cAAA,YAA0B;;qBAIrB,sBACb,QAAQ;iBAYU;;;;;uBAQD,YAAA,YAAwB;;8BAI5B,sBACb,QAAQ;iBAEU;;;;;uBAQD,WAAA,YAAuB;;8BAI3B,sBACb,QAAQ;iBAEU;;;;;cAQV,cAAA,YAA0B;;qBAIrB,sBACb,QAAQ;iBAsCU;;;;;cAQV,eAAA;;oBAGO;0BAIM;YAId;kBAIY,QAAQ;;;;;iBAchB,qBAAA,CAAA,GAAyB"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  var InAppChannel = class {
6
6
  channelId = "IN_APP";
7
- async send(notification) {
7
+ async send(_notification) {
8
8
  return {
9
9
  success: true,
10
10
  responseMessage: "Stored in database"
@@ -123,4 +123,5 @@ function createChannelRegistry() {
123
123
  }
124
124
 
125
125
  //#endregion
126
- export { ChannelRegistry, ConsoleChannel, EmailChannel, InAppChannel, PushChannel, WebhookChannel, createChannelRegistry };
126
+ export { ChannelRegistry, ConsoleChannel, EmailChannel, InAppChannel, PushChannel, WebhookChannel, createChannelRegistry };
127
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["available: NotificationChannel[]"],"sources":["../../src/channels/index.ts"],"sourcesContent":["/**\n * Notification channel interface.\n */\nexport interface NotificationChannel {\n /** Channel identifier */\n readonly channelId: string;\n /** Deliver a notification */\n send(notification: ChannelNotification): Promise<ChannelDeliveryResult>;\n /** Check if channel is available */\n isAvailable(): Promise<boolean>;\n}\n\n/**\n * Notification to deliver via a channel.\n */\nexport interface ChannelNotification {\n id: string;\n userId: string;\n title: string;\n body: string;\n actionUrl?: string;\n imageUrl?: string;\n metadata?: Record<string, unknown>;\n // Channel-specific data\n email?: {\n to: string;\n subject: string;\n html?: string;\n text?: string;\n };\n push?: {\n token: string;\n badge?: number;\n sound?: string;\n data?: Record<string, unknown>;\n };\n webhook?: {\n url: string;\n headers?: Record<string, string>;\n };\n}\n\n/**\n * Result of channel delivery attempt.\n */\nexport interface ChannelDeliveryResult {\n success: boolean;\n externalId?: string;\n responseCode?: string;\n responseMessage?: string;\n metadata?: Record<string, unknown>;\n}\n\n/**\n * In-app notification channel (stores in database).\n */\nexport class InAppChannel implements NotificationChannel {\n readonly channelId = 'IN_APP';\n\n async send(\n _notification: ChannelNotification\n ): Promise<ChannelDeliveryResult> {\n // In-app notifications are stored directly in the database\n // The actual delivery is handled by the notification service\n return {\n success: true,\n responseMessage: 'Stored in database',\n };\n }\n\n async isAvailable(): Promise<boolean> {\n return true;\n }\n}\n\n/**\n * Console channel for development/testing.\n */\nexport class ConsoleChannel implements NotificationChannel {\n readonly channelId = 'CONSOLE';\n\n async send(\n notification: ChannelNotification\n ): Promise<ChannelDeliveryResult> {\n console.log(`📬 [${notification.id}] ${notification.title}`);\n console.log(` ${notification.body}`);\n if (notification.actionUrl) {\n console.log(` Action: ${notification.actionUrl}`);\n }\n return {\n success: true,\n responseMessage: 'Logged to console',\n };\n }\n\n async isAvailable(): Promise<boolean> {\n return true;\n }\n}\n\n/**\n * Email channel interface (to be implemented with provider).\n */\nexport abstract class EmailChannel implements NotificationChannel {\n readonly channelId = 'EMAIL';\n\n abstract send(\n notification: ChannelNotification\n ): Promise<ChannelDeliveryResult>;\n\n async isAvailable(): Promise<boolean> {\n return true;\n }\n}\n\n/**\n * Push notification channel interface (to be implemented with provider).\n */\nexport abstract class PushChannel implements NotificationChannel {\n readonly channelId = 'PUSH';\n\n abstract send(\n notification: ChannelNotification\n ): Promise<ChannelDeliveryResult>;\n\n async isAvailable(): Promise<boolean> {\n return true;\n }\n}\n\n/**\n * Webhook channel for external integrations.\n */\nexport class WebhookChannel implements NotificationChannel {\n readonly channelId = 'WEBHOOK';\n\n async send(\n notification: ChannelNotification\n ): Promise<ChannelDeliveryResult> {\n if (!notification.webhook?.url) {\n return {\n success: false,\n responseMessage: 'No webhook URL configured',\n };\n }\n\n try {\n const response = await fetch(notification.webhook.url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...notification.webhook.headers,\n },\n body: JSON.stringify({\n id: notification.id,\n title: notification.title,\n body: notification.body,\n actionUrl: notification.actionUrl,\n metadata: notification.metadata,\n }),\n });\n\n return {\n success: response.ok,\n responseCode: String(response.status),\n responseMessage: response.statusText,\n };\n } catch (error) {\n return {\n success: false,\n responseMessage:\n error instanceof Error ? error.message : 'Unknown error',\n };\n }\n }\n\n async isAvailable(): Promise<boolean> {\n return true;\n }\n}\n\n/**\n * Channel registry for managing available channels.\n */\nexport class ChannelRegistry {\n private channels = new Map<string, NotificationChannel>();\n\n register(channel: NotificationChannel): void {\n this.channels.set(channel.channelId, channel);\n }\n\n get(channelId: string): NotificationChannel | undefined {\n return this.channels.get(channelId);\n }\n\n getAll(): NotificationChannel[] {\n return Array.from(this.channels.values());\n }\n\n async getAvailable(): Promise<NotificationChannel[]> {\n const available: NotificationChannel[] = [];\n for (const channel of this.channels.values()) {\n if (await channel.isAvailable()) {\n available.push(channel);\n }\n }\n return available;\n }\n}\n\n/**\n * Create a default channel registry with standard channels.\n */\nexport function createChannelRegistry(): ChannelRegistry {\n const registry = new ChannelRegistry();\n registry.register(new InAppChannel());\n registry.register(new ConsoleChannel());\n registry.register(new WebhookChannel());\n return registry;\n}\n"],"mappings":";;;;AAwDA,IAAa,eAAb,MAAyD;CACvD,AAAS,YAAY;CAErB,MAAM,KACJ,eACgC;AAGhC,SAAO;GACL,SAAS;GACT,iBAAiB;GAClB;;CAGH,MAAM,cAAgC;AACpC,SAAO;;;;;;AAOX,IAAa,iBAAb,MAA2D;CACzD,AAAS,YAAY;CAErB,MAAM,KACJ,cACgC;AAChC,UAAQ,IAAI,OAAO,aAAa,GAAG,IAAI,aAAa,QAAQ;AAC5D,UAAQ,IAAI,MAAM,aAAa,OAAO;AACtC,MAAI,aAAa,UACf,SAAQ,IAAI,cAAc,aAAa,YAAY;AAErD,SAAO;GACL,SAAS;GACT,iBAAiB;GAClB;;CAGH,MAAM,cAAgC;AACpC,SAAO;;;;;;AAOX,IAAsB,eAAtB,MAAkE;CAChE,AAAS,YAAY;CAMrB,MAAM,cAAgC;AACpC,SAAO;;;;;;AAOX,IAAsB,cAAtB,MAAiE;CAC/D,AAAS,YAAY;CAMrB,MAAM,cAAgC;AACpC,SAAO;;;;;;AAOX,IAAa,iBAAb,MAA2D;CACzD,AAAS,YAAY;CAErB,MAAM,KACJ,cACgC;AAChC,MAAI,CAAC,aAAa,SAAS,IACzB,QAAO;GACL,SAAS;GACT,iBAAiB;GAClB;AAGH,MAAI;GACF,MAAM,WAAW,MAAM,MAAM,aAAa,QAAQ,KAAK;IACrD,QAAQ;IACR,SAAS;KACP,gBAAgB;KAChB,GAAG,aAAa,QAAQ;KACzB;IACD,MAAM,KAAK,UAAU;KACnB,IAAI,aAAa;KACjB,OAAO,aAAa;KACpB,MAAM,aAAa;KACnB,WAAW,aAAa;KACxB,UAAU,aAAa;KACxB,CAAC;IACH,CAAC;AAEF,UAAO;IACL,SAAS,SAAS;IAClB,cAAc,OAAO,SAAS,OAAO;IACrC,iBAAiB,SAAS;IAC3B;WACM,OAAO;AACd,UAAO;IACL,SAAS;IACT,iBACE,iBAAiB,QAAQ,MAAM,UAAU;IAC5C;;;CAIL,MAAM,cAAgC;AACpC,SAAO;;;;;;AAOX,IAAa,kBAAb,MAA6B;CAC3B,AAAQ,2BAAW,IAAI,KAAkC;CAEzD,SAAS,SAAoC;AAC3C,OAAK,SAAS,IAAI,QAAQ,WAAW,QAAQ;;CAG/C,IAAI,WAAoD;AACtD,SAAO,KAAK,SAAS,IAAI,UAAU;;CAGrC,SAAgC;AAC9B,SAAO,MAAM,KAAK,KAAK,SAAS,QAAQ,CAAC;;CAG3C,MAAM,eAA+C;EACnD,MAAMA,YAAmC,EAAE;AAC3C,OAAK,MAAM,WAAW,KAAK,SAAS,QAAQ,CAC1C,KAAI,MAAM,QAAQ,aAAa,CAC7B,WAAU,KAAK,QAAQ;AAG3B,SAAO;;;;;;AAOX,SAAgB,wBAAyC;CACvD,MAAM,WAAW,IAAI,iBAAiB;AACtC,UAAS,SAAS,IAAI,cAAc,CAAC;AACrC,UAAS,SAAS,IAAI,gBAAgB,CAAC;AACvC,UAAS,SAAS,IAAI,gBAAgB,CAAC;AACvC,QAAO"}
@@ -634,4 +634,5 @@ declare const DeleteNotificationContract: _lssm_lib_contracts0.ContractSpec<_lss
634
634
  };
635
635
  }>, undefined>;
636
636
  //#endregion
637
- export { DeleteNotificationContract, GetNotificationPreferencesContract, ListNotificationsContract, ListNotificationsInputModel, ListNotificationsOutputModel, MarkAllNotificationsReadContract, MarkNotificationReadContract, NotificationFilterEnum, NotificationModel, NotificationPreferenceModel, SendNotificationContract, SendNotificationInputModel, UpdateNotificationPreferencesContract, UpdatePreferencesInputModel };
637
+ export { DeleteNotificationContract, GetNotificationPreferencesContract, ListNotificationsContract, ListNotificationsInputModel, ListNotificationsOutputModel, MarkAllNotificationsReadContract, MarkNotificationReadContract, NotificationFilterEnum, NotificationModel, NotificationPreferenceModel, SendNotificationContract, SendNotificationInputModel, UpdateNotificationPreferencesContract, UpdatePreferencesInputModel };
638
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/contracts/index.ts"],"sourcesContent":[],"mappings":"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"}
@@ -1,13 +1,11 @@
1
- import { defineEnum } from "../libs/schema/dist/EnumType.js";
2
- import { ScalarTypeEnum } from "../libs/schema/dist/ScalarTypeEnum.js";
3
- import "../libs/schema/dist/index.js";
4
- import { defineSchemaModel } from "../libs/contracts/dist/schema/dist/SchemaModel.js";
1
+ import { E5, N5 } from "../libs/schema/dist/index.js";
2
+ import { K5 } from "../libs/contracts/dist/schema/dist/index.js";
5
3
  import { defineCommand, defineQuery } from "../libs/contracts/dist/spec.js";
6
4
  import "../libs/contracts/dist/index.js";
7
5
 
8
6
  //#region src/contracts/index.ts
9
7
  const OWNERS = ["platform.notifications"];
10
- const NotificationStatusSchemaEnum = defineEnum("NotificationStatus", [
8
+ const NotificationStatusSchemaEnum = N5("NotificationStatus", [
11
9
  "PENDING",
12
10
  "SENT",
13
11
  "DELIVERED",
@@ -15,39 +13,39 @@ const NotificationStatusSchemaEnum = defineEnum("NotificationStatus", [
15
13
  "FAILED",
16
14
  "CANCELLED"
17
15
  ]);
18
- const NotificationChannelSchemaEnum = defineEnum("NotificationChannel", [
16
+ const NotificationChannelSchemaEnum = N5("NotificationChannel", [
19
17
  "EMAIL",
20
18
  "IN_APP",
21
19
  "PUSH",
22
20
  "WEBHOOK"
23
21
  ]);
24
- const NotificationFilterEnum = defineEnum("NotificationFilter", [
22
+ const NotificationFilterEnum = N5("NotificationFilter", [
25
23
  "unread",
26
24
  "read",
27
25
  "all"
28
26
  ]);
29
- const NotificationModel = defineSchemaModel({
27
+ const NotificationModel = K5({
30
28
  name: "Notification",
31
29
  description: "A notification sent to a user",
32
30
  fields: {
33
31
  id: {
34
- type: ScalarTypeEnum.String_unsecure(),
32
+ type: E5.String_unsecure(),
35
33
  isOptional: false
36
34
  },
37
35
  userId: {
38
- type: ScalarTypeEnum.String_unsecure(),
36
+ type: E5.String_unsecure(),
39
37
  isOptional: false
40
38
  },
41
39
  title: {
42
- type: ScalarTypeEnum.String_unsecure(),
40
+ type: E5.String_unsecure(),
43
41
  isOptional: false
44
42
  },
45
43
  body: {
46
- type: ScalarTypeEnum.String_unsecure(),
44
+ type: E5.String_unsecure(),
47
45
  isOptional: false
48
46
  },
49
47
  type: {
50
- type: ScalarTypeEnum.String_unsecure(),
48
+ type: E5.String_unsecure(),
51
49
  isOptional: false
52
50
  },
53
51
  status: {
@@ -60,83 +58,83 @@ const NotificationModel = defineSchemaModel({
60
58
  isOptional: false
61
59
  },
62
60
  actionUrl: {
63
- type: ScalarTypeEnum.URL(),
61
+ type: E5.URL(),
64
62
  isOptional: true
65
63
  },
66
64
  readAt: {
67
- type: ScalarTypeEnum.DateTime(),
65
+ type: E5.DateTime(),
68
66
  isOptional: true
69
67
  },
70
68
  createdAt: {
71
- type: ScalarTypeEnum.DateTime(),
69
+ type: E5.DateTime(),
72
70
  isOptional: false
73
71
  }
74
72
  }
75
73
  });
76
- const NotificationPreferenceModel = defineSchemaModel({
74
+ const NotificationPreferenceModel = K5({
77
75
  name: "NotificationPreference",
78
76
  description: "User notification preferences",
79
77
  fields: {
80
78
  userId: {
81
- type: ScalarTypeEnum.String_unsecure(),
79
+ type: E5.String_unsecure(),
82
80
  isOptional: false
83
81
  },
84
82
  globalEnabled: {
85
- type: ScalarTypeEnum.Boolean(),
83
+ type: E5.Boolean(),
86
84
  isOptional: false
87
85
  },
88
86
  channelPreferences: {
89
- type: ScalarTypeEnum.JSONObject(),
87
+ type: E5.JSONObject(),
90
88
  isOptional: false
91
89
  },
92
90
  typePreferences: {
93
- type: ScalarTypeEnum.JSONObject(),
91
+ type: E5.JSONObject(),
94
92
  isOptional: false
95
93
  },
96
94
  quietHoursStart: {
97
- type: ScalarTypeEnum.String_unsecure(),
95
+ type: E5.String_unsecure(),
98
96
  isOptional: true
99
97
  },
100
98
  quietHoursEnd: {
101
- type: ScalarTypeEnum.String_unsecure(),
99
+ type: E5.String_unsecure(),
102
100
  isOptional: true
103
101
  },
104
102
  timezone: {
105
- type: ScalarTypeEnum.String_unsecure(),
103
+ type: E5.String_unsecure(),
106
104
  isOptional: false
107
105
  },
108
106
  digestEnabled: {
109
- type: ScalarTypeEnum.Boolean(),
107
+ type: E5.Boolean(),
110
108
  isOptional: false
111
109
  },
112
110
  digestFrequency: {
113
- type: ScalarTypeEnum.String_unsecure(),
111
+ type: E5.String_unsecure(),
114
112
  isOptional: true
115
113
  }
116
114
  }
117
115
  });
118
- const SendNotificationInputModel = defineSchemaModel({
116
+ const SendNotificationInputModel = K5({
119
117
  name: "SendNotificationInput",
120
118
  description: "Input for sending a notification",
121
119
  fields: {
122
120
  userId: {
123
- type: ScalarTypeEnum.String_unsecure(),
121
+ type: E5.String_unsecure(),
124
122
  isOptional: false
125
123
  },
126
124
  templateId: {
127
- type: ScalarTypeEnum.String_unsecure(),
125
+ type: E5.String_unsecure(),
128
126
  isOptional: true
129
127
  },
130
128
  title: {
131
- type: ScalarTypeEnum.String_unsecure(),
129
+ type: E5.String_unsecure(),
132
130
  isOptional: true
133
131
  },
134
132
  body: {
135
- type: ScalarTypeEnum.String_unsecure(),
133
+ type: E5.String_unsecure(),
136
134
  isOptional: true
137
135
  },
138
136
  type: {
139
- type: ScalarTypeEnum.String_unsecure(),
137
+ type: E5.String_unsecure(),
140
138
  isOptional: false
141
139
  },
142
140
  channels: {
@@ -145,20 +143,20 @@ const SendNotificationInputModel = defineSchemaModel({
145
143
  isOptional: true
146
144
  },
147
145
  actionUrl: {
148
- type: ScalarTypeEnum.URL(),
146
+ type: E5.URL(),
149
147
  isOptional: true
150
148
  },
151
149
  variables: {
152
- type: ScalarTypeEnum.JSONObject(),
150
+ type: E5.JSONObject(),
153
151
  isOptional: true
154
152
  },
155
153
  metadata: {
156
- type: ScalarTypeEnum.JSONObject(),
154
+ type: E5.JSONObject(),
157
155
  isOptional: true
158
156
  }
159
157
  }
160
158
  });
161
- const ListNotificationsInputModel = defineSchemaModel({
159
+ const ListNotificationsInputModel = K5({
162
160
  name: "ListNotificationsInput",
163
161
  description: "Input for listing notifications",
164
162
  fields: {
@@ -167,22 +165,22 @@ const ListNotificationsInputModel = defineSchemaModel({
167
165
  isOptional: true
168
166
  },
169
167
  type: {
170
- type: ScalarTypeEnum.String_unsecure(),
168
+ type: E5.String_unsecure(),
171
169
  isOptional: true
172
170
  },
173
171
  limit: {
174
- type: ScalarTypeEnum.Int_unsecure(),
172
+ type: E5.Int_unsecure(),
175
173
  isOptional: true,
176
174
  defaultValue: 20
177
175
  },
178
176
  offset: {
179
- type: ScalarTypeEnum.Int_unsecure(),
177
+ type: E5.Int_unsecure(),
180
178
  isOptional: true,
181
179
  defaultValue: 0
182
180
  }
183
181
  }
184
182
  });
185
- const ListNotificationsOutputModel = defineSchemaModel({
183
+ const ListNotificationsOutputModel = K5({
186
184
  name: "ListNotificationsOutput",
187
185
  description: "Output for listing notifications",
188
186
  fields: {
@@ -192,49 +190,49 @@ const ListNotificationsOutputModel = defineSchemaModel({
192
190
  isOptional: false
193
191
  },
194
192
  total: {
195
- type: ScalarTypeEnum.Int_unsecure(),
193
+ type: E5.Int_unsecure(),
196
194
  isOptional: false
197
195
  },
198
196
  unreadCount: {
199
- type: ScalarTypeEnum.Int_unsecure(),
197
+ type: E5.Int_unsecure(),
200
198
  isOptional: false
201
199
  }
202
200
  }
203
201
  });
204
- const UpdatePreferencesInputModel = defineSchemaModel({
202
+ const UpdatePreferencesInputModel = K5({
205
203
  name: "UpdateNotificationPreferencesInput",
206
204
  description: "Input for updating notification preferences",
207
205
  fields: {
208
206
  globalEnabled: {
209
- type: ScalarTypeEnum.Boolean(),
207
+ type: E5.Boolean(),
210
208
  isOptional: true
211
209
  },
212
210
  channelPreferences: {
213
- type: ScalarTypeEnum.JSONObject(),
211
+ type: E5.JSONObject(),
214
212
  isOptional: true
215
213
  },
216
214
  typePreferences: {
217
- type: ScalarTypeEnum.JSONObject(),
215
+ type: E5.JSONObject(),
218
216
  isOptional: true
219
217
  },
220
218
  quietHoursStart: {
221
- type: ScalarTypeEnum.String_unsecure(),
219
+ type: E5.String_unsecure(),
222
220
  isOptional: true
223
221
  },
224
222
  quietHoursEnd: {
225
- type: ScalarTypeEnum.String_unsecure(),
223
+ type: E5.String_unsecure(),
226
224
  isOptional: true
227
225
  },
228
226
  timezone: {
229
- type: ScalarTypeEnum.String_unsecure(),
227
+ type: E5.String_unsecure(),
230
228
  isOptional: true
231
229
  },
232
230
  digestEnabled: {
233
- type: ScalarTypeEnum.Boolean(),
231
+ type: E5.Boolean(),
234
232
  isOptional: true
235
233
  },
236
234
  digestFrequency: {
237
- type: ScalarTypeEnum.String_unsecure(),
235
+ type: E5.String_unsecure(),
238
236
  isOptional: true
239
237
  }
240
238
  }
@@ -314,10 +312,10 @@ const MarkNotificationReadContract = defineCommand({
314
312
  context: "User clicks on a notification."
315
313
  },
316
314
  io: {
317
- input: defineSchemaModel({
315
+ input: K5({
318
316
  name: "MarkNotificationReadInput",
319
317
  fields: { notificationId: {
320
- type: ScalarTypeEnum.String_unsecure(),
318
+ type: E5.String_unsecure(),
321
319
  isOptional: false
322
320
  } }
323
321
  }),
@@ -341,10 +339,10 @@ const MarkAllNotificationsReadContract = defineCommand({
341
339
  },
342
340
  io: {
343
341
  input: null,
344
- output: defineSchemaModel({
342
+ output: K5({
345
343
  name: "MarkAllNotificationsReadOutput",
346
344
  fields: { markedCount: {
347
- type: ScalarTypeEnum.Int_unsecure(),
345
+ type: E5.Int_unsecure(),
348
346
  isOptional: false
349
347
  } }
350
348
  })
@@ -414,17 +412,17 @@ const DeleteNotificationContract = defineCommand({
414
412
  context: "User dismisses a notification."
415
413
  },
416
414
  io: {
417
- input: defineSchemaModel({
415
+ input: K5({
418
416
  name: "DeleteNotificationInput",
419
417
  fields: { notificationId: {
420
- type: ScalarTypeEnum.String_unsecure(),
418
+ type: E5.String_unsecure(),
421
419
  isOptional: false
422
420
  } }
423
421
  }),
424
- output: defineSchemaModel({
422
+ output: K5({
425
423
  name: "DeleteNotificationOutput",
426
424
  fields: { success: {
427
- type: ScalarTypeEnum.Boolean(),
425
+ type: E5.Boolean(),
428
426
  isOptional: false
429
427
  } }
430
428
  })
@@ -433,4 +431,5 @@ const DeleteNotificationContract = defineCommand({
433
431
  });
434
432
 
435
433
  //#endregion
436
- export { DeleteNotificationContract, GetNotificationPreferencesContract, ListNotificationsContract, ListNotificationsInputModel, ListNotificationsOutputModel, MarkAllNotificationsReadContract, MarkNotificationReadContract, NotificationFilterEnum, NotificationModel, NotificationPreferenceModel, SendNotificationContract, SendNotificationInputModel, UpdateNotificationPreferencesContract, UpdatePreferencesInputModel };
434
+ export { DeleteNotificationContract, GetNotificationPreferencesContract, ListNotificationsContract, ListNotificationsInputModel, ListNotificationsOutputModel, MarkAllNotificationsReadContract, MarkNotificationReadContract, NotificationFilterEnum, NotificationModel, NotificationPreferenceModel, SendNotificationContract, SendNotificationInputModel, UpdateNotificationPreferencesContract, UpdatePreferencesInputModel };
435
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["defineEnum","defineSchemaModel","ScalarTypeEnum"],"sources":["../../src/contracts/index.ts"],"sourcesContent":["import {\n defineCommand,\n defineQuery,\n defineSchemaModel,\n} from '@lssm/lib.contracts';\nimport { ScalarTypeEnum, defineEnum } from '@lssm/lib.schema';\n\nconst OWNERS = ['platform.notifications'] as const;\n\n// ============ Enums (for contract schemas) ============\n// Note: These are EnumType for use in SchemaModel fields.\n// Entity enums for Prisma are defined separately in ./entities\n\nconst NotificationStatusSchemaEnum = defineEnum('NotificationStatus', [\n 'PENDING',\n 'SENT',\n 'DELIVERED',\n 'READ',\n 'FAILED',\n 'CANCELLED',\n]);\n\nconst NotificationChannelSchemaEnum = defineEnum('NotificationChannel', [\n 'EMAIL',\n 'IN_APP',\n 'PUSH',\n 'WEBHOOK',\n]);\n\nexport const NotificationFilterEnum = defineEnum('NotificationFilter', [\n 'unread',\n 'read',\n 'all',\n]);\n\n// ============ Schemas ============\n\nexport const NotificationModel = defineSchemaModel({\n name: 'Notification',\n description: 'A notification sent to a user',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n userId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n title: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n body: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n type: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n status: { type: NotificationStatusSchemaEnum, isOptional: false },\n channels: {\n type: NotificationChannelSchemaEnum,\n isArray: true,\n isOptional: false,\n },\n actionUrl: { type: ScalarTypeEnum.URL(), isOptional: true },\n readAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nexport const NotificationPreferenceModel = defineSchemaModel({\n name: 'NotificationPreference',\n description: 'User notification preferences',\n fields: {\n userId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n globalEnabled: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n channelPreferences: {\n type: ScalarTypeEnum.JSONObject(),\n isOptional: false,\n },\n typePreferences: { type: ScalarTypeEnum.JSONObject(), isOptional: false },\n quietHoursStart: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n quietHoursEnd: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n timezone: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n digestEnabled: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n digestFrequency: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n },\n});\n\nexport const SendNotificationInputModel = defineSchemaModel({\n name: 'SendNotificationInput',\n description: 'Input for sending a notification',\n fields: {\n userId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n templateId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n title: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n body: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n type: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n channels: {\n type: NotificationChannelSchemaEnum,\n isArray: true,\n isOptional: true,\n },\n actionUrl: { type: ScalarTypeEnum.URL(), isOptional: true },\n variables: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n metadata: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n },\n});\n\nexport const ListNotificationsInputModel = defineSchemaModel({\n name: 'ListNotificationsInput',\n description: 'Input for listing notifications',\n fields: {\n status: { type: NotificationFilterEnum, isOptional: true },\n type: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n limit: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n defaultValue: 20,\n },\n offset: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n defaultValue: 0,\n },\n },\n});\n\nexport const ListNotificationsOutputModel = defineSchemaModel({\n name: 'ListNotificationsOutput',\n description: 'Output for listing notifications',\n fields: {\n notifications: {\n type: NotificationModel,\n isArray: true,\n isOptional: false,\n },\n total: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n unreadCount: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n },\n});\n\nexport const UpdatePreferencesInputModel = defineSchemaModel({\n name: 'UpdateNotificationPreferencesInput',\n description: 'Input for updating notification preferences',\n fields: {\n globalEnabled: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n channelPreferences: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n typePreferences: { type: ScalarTypeEnum.JSONObject(), isOptional: true },\n quietHoursStart: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n quietHoursEnd: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n timezone: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n digestEnabled: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n digestFrequency: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n },\n});\n\n// ============ Contracts ============\n\n/**\n * Send a notification.\n */\nexport const SendNotificationContract = defineCommand({\n meta: {\n name: 'notifications.send',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'send'],\n description: 'Send a notification to a user.',\n goal: 'Deliver notifications across multiple channels.',\n context: 'Called by services when events require user notification.',\n },\n io: {\n input: SendNotificationInputModel,\n output: NotificationModel,\n errors: {\n USER_NOT_FOUND: {\n description: 'Target user does not exist',\n http: 404,\n gqlCode: 'USER_NOT_FOUND',\n when: 'User ID is invalid',\n },\n TEMPLATE_NOT_FOUND: {\n description: 'Notification template does not exist',\n http: 404,\n gqlCode: 'TEMPLATE_NOT_FOUND',\n when: 'Template ID is invalid',\n },\n },\n },\n policy: {\n auth: 'user',\n },\n sideEffects: {\n emits: [\n {\n name: 'notification.sent',\n version: 1,\n when: 'Notification is sent',\n payload: NotificationModel,\n },\n ],\n },\n});\n\n/**\n * List notifications for current user.\n */\nexport const ListNotificationsContract = defineQuery({\n meta: {\n name: 'notifications.list',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'list'],\n description: 'List notifications for the current user.',\n goal: 'Show user their notifications.',\n context: 'Notification center UI.',\n },\n io: {\n input: ListNotificationsInputModel,\n output: ListNotificationsOutputModel,\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * Mark notification as read.\n */\nexport const MarkNotificationReadContract = defineCommand({\n meta: {\n name: 'notifications.markRead',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'read'],\n description: 'Mark a notification as read.',\n goal: 'Track which notifications user has seen.',\n context: 'User clicks on a notification.',\n },\n io: {\n input: defineSchemaModel({\n name: 'MarkNotificationReadInput',\n fields: {\n notificationId: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n },\n }),\n output: NotificationModel,\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * Mark all notifications as read.\n */\nexport const MarkAllNotificationsReadContract = defineCommand({\n meta: {\n name: 'notifications.markAllRead',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'read'],\n description: 'Mark all notifications as read.',\n goal: 'Clear notification badge.',\n context: 'User clicks \"mark all as read\".',\n },\n io: {\n input: null,\n output: defineSchemaModel({\n name: 'MarkAllNotificationsReadOutput',\n fields: {\n markedCount: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n },\n }),\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * Get notification preferences.\n */\nexport const GetNotificationPreferencesContract = defineQuery({\n meta: {\n name: 'notifications.preferences.get',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'preferences', 'get'],\n description: 'Get notification preferences for current user.',\n goal: 'Show user their notification settings.',\n context: 'Notification settings page.',\n },\n io: {\n input: null,\n output: NotificationPreferenceModel,\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * Update notification preferences.\n */\nexport const UpdateNotificationPreferencesContract = defineCommand({\n meta: {\n name: 'notifications.preferences.update',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'preferences', 'update'],\n description: 'Update notification preferences.',\n goal: 'Allow user to control notification delivery.',\n context: 'Notification settings page.',\n },\n io: {\n input: UpdatePreferencesInputModel,\n output: NotificationPreferenceModel,\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * Delete a notification.\n */\nexport const DeleteNotificationContract = defineCommand({\n meta: {\n name: 'notifications.delete',\n version: 1,\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['notifications', 'delete'],\n description: 'Delete a notification.',\n goal: 'Allow user to remove unwanted notifications.',\n context: 'User dismisses a notification.',\n },\n io: {\n input: defineSchemaModel({\n name: 'DeleteNotificationInput',\n fields: {\n notificationId: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n },\n }),\n output: defineSchemaModel({\n name: 'DeleteNotificationOutput',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n },\n }),\n },\n policy: {\n auth: 'user',\n },\n});\n"],"mappings":"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"}
@@ -179,4 +179,5 @@ declare const notificationEntities: (_lssm_lib_schema160.EntitySpec<{
179
179
  */
180
180
  declare const notificationsSchemaContribution: ModuleSchemaContribution;
181
181
  //#endregion
182
- export { DeliveryLogEntity, NotificationChannelEnum, NotificationEntity, NotificationPreferenceEntity, NotificationPriorityEnum, NotificationStatusEnum, NotificationTemplateEntity, notificationEntities, notificationsSchemaContribution };
182
+ export { DeliveryLogEntity, NotificationChannelEnum, NotificationEntity, NotificationPreferenceEntity, NotificationPriorityEnum, NotificationStatusEnum, NotificationTemplateEntity, notificationEntities, notificationsSchemaContribution };
183
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/entities/index.ts"],"sourcesContent":[],"mappings":";;;;;;;AAMa,cAAA,sBAYX,EAAA,mBAAA,CAZiC,aAYjC;AAKF;AAUA;;cAVa,yBAKX,mBAAA,CALkC;;;;cAUvB,wCAAkB;MAyF7B,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;iDAzF6B;EAAA,UAAA,uCAAA;EA8FlB,SAAA,uCAKX;EAKW,SAAA,uCAyCX;EAAA,SAAA,uCAAA;;;;;;cAnDW,0BAKX,mBAAA,CALmC;;;;cAUxB,gDAA0B;MAyCrC,mBAAA,CAAA;;;;;;mDAzCqC;EAAA,SAAA,uCAAA;EA8C1B,SAAA,uCA6CX;EAAA,QAAA,uCAAA;;;;;;;;;;;;cA7CW,kDAA4B;MA6CvC,mBAAA,CAAA,iBA7CuC;EAAA,MAAA,uCAAA;EAkD5B,aAAA,uCAoCX;EAAA,eAAA,uCAAA;;;;;;;;;;;;;AAKF;AAKC,cA9CY,iBA8CZ,sBA9C6B,UA8C7B,CAAA;MAVC,mBAAA,CAAA;;;;;;;;;;;;;;;cAKW,2CAAoB;MAKhC,mBAAA,CAAA;;;;;;;;6CALgC;EAAA,QAAA,uCAAA;;;;;;;;;;;;;;;;;MAAA,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUpB,UAAA,uCAAiC;;;;;;;;;;;;;;;;;;;cAAjC,iCAAiC"}