@lssm/module.notifications 0.0.0-canary-20251217083314 → 0.0.0-canary-20251219202229
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/channels/index.d.ts +2 -1
- package/dist/channels/index.d.ts.map +1 -0
- package/dist/channels/index.js +2 -1
- package/dist/channels/index.js.map +1 -0
- package/dist/contracts/index.d.ts +2 -1
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +59 -60
- package/dist/contracts/index.js.map +1 -0
- package/dist/entities/index.d.ts +2 -1
- package/dist/entities/index.d.ts.map +1 -0
- package/dist/entities/index.js +82 -82
- package/dist/entities/index.js.map +1 -0
- package/dist/libs/contracts/dist/capabilities/openbanking.js +2 -1
- package/dist/libs/contracts/dist/capabilities/openbanking.js.map +1 -0
- package/dist/libs/contracts/dist/contract-registry/schemas.js +2 -1
- package/dist/libs/contracts/dist/contract-registry/schemas.js.map +1 -0
- package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/index.js +2 -6
- package/dist/libs/contracts/dist/docs/meta.docs.js +30 -0
- package/dist/libs/contracts/dist/docs/meta.docs.js.map +1 -0
- package/dist/libs/contracts/dist/docs/presentations.js +2 -1
- package/dist/libs/contracts/dist/docs/presentations.js.map +1 -0
- package/dist/libs/contracts/dist/docs/registry.js +2 -1
- package/dist/libs/contracts/dist/docs/registry.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +2 -1
- package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js.map +1 -0
- package/dist/libs/contracts/dist/docs/tech-contracts.docs.js +97 -0
- package/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +1 -0
- package/dist/libs/contracts/dist/index.js +3 -2
- package/dist/libs/contracts/dist/integrations/contracts.js +65 -66
- package/dist/libs/contracts/dist/integrations/contracts.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +31 -32
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +18 -19
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +32 -33
- package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/openbanking/models.js +60 -61
- package/dist/libs/contracts/dist/integrations/openbanking/models.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +2 -1
- package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/gmail.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/gmail.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/google-calendar.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/mistral.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/mistral.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/postmark.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/postmark.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/powens.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/powens.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/qdrant.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/qdrant.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/stripe.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/stripe.js.map +1 -0
- package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +2 -1
- package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/contracts.js +44 -45
- package/dist/libs/contracts/dist/knowledge/contracts.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js.map +1 -0
- package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +2 -1
- package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js.map +1 -0
- package/dist/libs/contracts/dist/llm/exporters.js +2 -1
- package/dist/libs/contracts/dist/llm/exporters.js.map +1 -0
- package/dist/libs/contracts/dist/onboarding-base.js +22 -23
- package/dist/libs/contracts/dist/onboarding-base.js.map +1 -0
- package/dist/libs/contracts/dist/ownership.js +4 -2
- package/dist/libs/contracts/dist/ownership.js.map +1 -0
- package/dist/libs/contracts/dist/presentations.v2.js +2 -1
- package/dist/libs/contracts/dist/presentations.v2.js.map +1 -0
- package/dist/libs/contracts/dist/regenerator/service.js +2 -1
- package/dist/libs/contracts/dist/regenerator/service.js.map +1 -0
- package/dist/libs/contracts/dist/schema/dist/index.js +3874 -6
- package/dist/libs/contracts/dist/schema/dist/index.js.map +1 -0
- package/dist/libs/contracts/dist/spec.js +2 -1
- package/dist/libs/contracts/dist/spec.js.map +1 -0
- package/dist/libs/schema/dist/index.js +4899 -6
- package/dist/libs/schema/dist/index.js.map +1 -0
- package/dist/notifications.feature.d.ts +2 -1
- package/dist/notifications.feature.d.ts.map +1 -0
- package/dist/notifications.feature.js +2 -1
- package/dist/notifications.feature.js.map +1 -0
- package/dist/templates/index.d.ts +2 -1
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +2 -1
- package/dist/templates/index.js.map +1 -0
- package/package.json +8 -7
- package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
- package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
- package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
- package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
- package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
- package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
- package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
- package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
- package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
- package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -39
- package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
- package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
- package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
- package/dist/libs/schema/dist/EnumType.js +0 -56
- package/dist/libs/schema/dist/FieldType.js +0 -49
- package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -236
- package/dist/libs/schema/dist/SchemaModel.js +0 -3
- package/dist/libs/schema/dist/entity/defineEntity.js +0 -236
- package/dist/libs/schema/dist/entity/index.js +0 -2
- 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.
|
package/dist/channels/index.d.ts
CHANGED
|
@@ -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;AAIkB,UA7CD,mBAAA,CA6CC;EACL,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,YAAA,EA3Ib,mBA2Ia,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"}
|
package/dist/channels/index.js
CHANGED
|
@@ -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,cACgC;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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"}
|
package/dist/contracts/index.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
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 =
|
|
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 =
|
|
16
|
+
const NotificationChannelSchemaEnum = N5("NotificationChannel", [
|
|
19
17
|
"EMAIL",
|
|
20
18
|
"IN_APP",
|
|
21
19
|
"PUSH",
|
|
22
20
|
"WEBHOOK"
|
|
23
21
|
]);
|
|
24
|
-
const NotificationFilterEnum =
|
|
22
|
+
const NotificationFilterEnum = N5("NotificationFilter", [
|
|
25
23
|
"unread",
|
|
26
24
|
"read",
|
|
27
25
|
"all"
|
|
28
26
|
]);
|
|
29
|
-
const NotificationModel =
|
|
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:
|
|
32
|
+
type: E5.String_unsecure(),
|
|
35
33
|
isOptional: false
|
|
36
34
|
},
|
|
37
35
|
userId: {
|
|
38
|
-
type:
|
|
36
|
+
type: E5.String_unsecure(),
|
|
39
37
|
isOptional: false
|
|
40
38
|
},
|
|
41
39
|
title: {
|
|
42
|
-
type:
|
|
40
|
+
type: E5.String_unsecure(),
|
|
43
41
|
isOptional: false
|
|
44
42
|
},
|
|
45
43
|
body: {
|
|
46
|
-
type:
|
|
44
|
+
type: E5.String_unsecure(),
|
|
47
45
|
isOptional: false
|
|
48
46
|
},
|
|
49
47
|
type: {
|
|
50
|
-
type:
|
|
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:
|
|
61
|
+
type: E5.URL(),
|
|
64
62
|
isOptional: true
|
|
65
63
|
},
|
|
66
64
|
readAt: {
|
|
67
|
-
type:
|
|
65
|
+
type: E5.DateTime(),
|
|
68
66
|
isOptional: true
|
|
69
67
|
},
|
|
70
68
|
createdAt: {
|
|
71
|
-
type:
|
|
69
|
+
type: E5.DateTime(),
|
|
72
70
|
isOptional: false
|
|
73
71
|
}
|
|
74
72
|
}
|
|
75
73
|
});
|
|
76
|
-
const NotificationPreferenceModel =
|
|
74
|
+
const NotificationPreferenceModel = K5({
|
|
77
75
|
name: "NotificationPreference",
|
|
78
76
|
description: "User notification preferences",
|
|
79
77
|
fields: {
|
|
80
78
|
userId: {
|
|
81
|
-
type:
|
|
79
|
+
type: E5.String_unsecure(),
|
|
82
80
|
isOptional: false
|
|
83
81
|
},
|
|
84
82
|
globalEnabled: {
|
|
85
|
-
type:
|
|
83
|
+
type: E5.Boolean(),
|
|
86
84
|
isOptional: false
|
|
87
85
|
},
|
|
88
86
|
channelPreferences: {
|
|
89
|
-
type:
|
|
87
|
+
type: E5.JSONObject(),
|
|
90
88
|
isOptional: false
|
|
91
89
|
},
|
|
92
90
|
typePreferences: {
|
|
93
|
-
type:
|
|
91
|
+
type: E5.JSONObject(),
|
|
94
92
|
isOptional: false
|
|
95
93
|
},
|
|
96
94
|
quietHoursStart: {
|
|
97
|
-
type:
|
|
95
|
+
type: E5.String_unsecure(),
|
|
98
96
|
isOptional: true
|
|
99
97
|
},
|
|
100
98
|
quietHoursEnd: {
|
|
101
|
-
type:
|
|
99
|
+
type: E5.String_unsecure(),
|
|
102
100
|
isOptional: true
|
|
103
101
|
},
|
|
104
102
|
timezone: {
|
|
105
|
-
type:
|
|
103
|
+
type: E5.String_unsecure(),
|
|
106
104
|
isOptional: false
|
|
107
105
|
},
|
|
108
106
|
digestEnabled: {
|
|
109
|
-
type:
|
|
107
|
+
type: E5.Boolean(),
|
|
110
108
|
isOptional: false
|
|
111
109
|
},
|
|
112
110
|
digestFrequency: {
|
|
113
|
-
type:
|
|
111
|
+
type: E5.String_unsecure(),
|
|
114
112
|
isOptional: true
|
|
115
113
|
}
|
|
116
114
|
}
|
|
117
115
|
});
|
|
118
|
-
const SendNotificationInputModel =
|
|
116
|
+
const SendNotificationInputModel = K5({
|
|
119
117
|
name: "SendNotificationInput",
|
|
120
118
|
description: "Input for sending a notification",
|
|
121
119
|
fields: {
|
|
122
120
|
userId: {
|
|
123
|
-
type:
|
|
121
|
+
type: E5.String_unsecure(),
|
|
124
122
|
isOptional: false
|
|
125
123
|
},
|
|
126
124
|
templateId: {
|
|
127
|
-
type:
|
|
125
|
+
type: E5.String_unsecure(),
|
|
128
126
|
isOptional: true
|
|
129
127
|
},
|
|
130
128
|
title: {
|
|
131
|
-
type:
|
|
129
|
+
type: E5.String_unsecure(),
|
|
132
130
|
isOptional: true
|
|
133
131
|
},
|
|
134
132
|
body: {
|
|
135
|
-
type:
|
|
133
|
+
type: E5.String_unsecure(),
|
|
136
134
|
isOptional: true
|
|
137
135
|
},
|
|
138
136
|
type: {
|
|
139
|
-
type:
|
|
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:
|
|
146
|
+
type: E5.URL(),
|
|
149
147
|
isOptional: true
|
|
150
148
|
},
|
|
151
149
|
variables: {
|
|
152
|
-
type:
|
|
150
|
+
type: E5.JSONObject(),
|
|
153
151
|
isOptional: true
|
|
154
152
|
},
|
|
155
153
|
metadata: {
|
|
156
|
-
type:
|
|
154
|
+
type: E5.JSONObject(),
|
|
157
155
|
isOptional: true
|
|
158
156
|
}
|
|
159
157
|
}
|
|
160
158
|
});
|
|
161
|
-
const ListNotificationsInputModel =
|
|
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:
|
|
168
|
+
type: E5.String_unsecure(),
|
|
171
169
|
isOptional: true
|
|
172
170
|
},
|
|
173
171
|
limit: {
|
|
174
|
-
type:
|
|
172
|
+
type: E5.Int_unsecure(),
|
|
175
173
|
isOptional: true,
|
|
176
174
|
defaultValue: 20
|
|
177
175
|
},
|
|
178
176
|
offset: {
|
|
179
|
-
type:
|
|
177
|
+
type: E5.Int_unsecure(),
|
|
180
178
|
isOptional: true,
|
|
181
179
|
defaultValue: 0
|
|
182
180
|
}
|
|
183
181
|
}
|
|
184
182
|
});
|
|
185
|
-
const ListNotificationsOutputModel =
|
|
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:
|
|
193
|
+
type: E5.Int_unsecure(),
|
|
196
194
|
isOptional: false
|
|
197
195
|
},
|
|
198
196
|
unreadCount: {
|
|
199
|
-
type:
|
|
197
|
+
type: E5.Int_unsecure(),
|
|
200
198
|
isOptional: false
|
|
201
199
|
}
|
|
202
200
|
}
|
|
203
201
|
});
|
|
204
|
-
const UpdatePreferencesInputModel =
|
|
202
|
+
const UpdatePreferencesInputModel = K5({
|
|
205
203
|
name: "UpdateNotificationPreferencesInput",
|
|
206
204
|
description: "Input for updating notification preferences",
|
|
207
205
|
fields: {
|
|
208
206
|
globalEnabled: {
|
|
209
|
-
type:
|
|
207
|
+
type: E5.Boolean(),
|
|
210
208
|
isOptional: true
|
|
211
209
|
},
|
|
212
210
|
channelPreferences: {
|
|
213
|
-
type:
|
|
211
|
+
type: E5.JSONObject(),
|
|
214
212
|
isOptional: true
|
|
215
213
|
},
|
|
216
214
|
typePreferences: {
|
|
217
|
-
type:
|
|
215
|
+
type: E5.JSONObject(),
|
|
218
216
|
isOptional: true
|
|
219
217
|
},
|
|
220
218
|
quietHoursStart: {
|
|
221
|
-
type:
|
|
219
|
+
type: E5.String_unsecure(),
|
|
222
220
|
isOptional: true
|
|
223
221
|
},
|
|
224
222
|
quietHoursEnd: {
|
|
225
|
-
type:
|
|
223
|
+
type: E5.String_unsecure(),
|
|
226
224
|
isOptional: true
|
|
227
225
|
},
|
|
228
226
|
timezone: {
|
|
229
|
-
type:
|
|
227
|
+
type: E5.String_unsecure(),
|
|
230
228
|
isOptional: true
|
|
231
229
|
},
|
|
232
230
|
digestEnabled: {
|
|
233
|
-
type:
|
|
231
|
+
type: E5.Boolean(),
|
|
234
232
|
isOptional: true
|
|
235
233
|
},
|
|
236
234
|
digestFrequency: {
|
|
237
|
-
type:
|
|
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:
|
|
315
|
+
input: K5({
|
|
318
316
|
name: "MarkNotificationReadInput",
|
|
319
317
|
fields: { notificationId: {
|
|
320
|
-
type:
|
|
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:
|
|
342
|
+
output: K5({
|
|
345
343
|
name: "MarkAllNotificationsReadOutput",
|
|
346
344
|
fields: { markedCount: {
|
|
347
|
-
type:
|
|
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:
|
|
415
|
+
input: K5({
|
|
418
416
|
name: "DeleteNotificationInput",
|
|
419
417
|
fields: { notificationId: {
|
|
420
|
-
type:
|
|
418
|
+
type: E5.String_unsecure(),
|
|
421
419
|
isOptional: false
|
|
422
420
|
} }
|
|
423
421
|
}),
|
|
424
|
-
output:
|
|
422
|
+
output: K5({
|
|
425
423
|
name: "DeleteNotificationOutput",
|
|
426
424
|
fields: { success: {
|
|
427
|
-
type:
|
|
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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"}
|
package/dist/entities/index.d.ts
CHANGED
|
@@ -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"}
|