@lssm/module.notifications 0.0.0-canary-20251217080011 → 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.
Files changed (160) hide show
  1. package/LICENSE +21 -0
  2. package/dist/channels/index.d.ts +2 -1
  3. package/dist/channels/index.d.ts.map +1 -0
  4. package/dist/channels/index.js +2 -1
  5. package/dist/channels/index.js.map +1 -0
  6. package/dist/contracts/index.d.ts +162 -161
  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 +146 -145
  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 +8 -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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/contracts/index.ts"],"sourcesContent":[],"mappings":";;;;cA6Ba,wBAIX,iBAAA,CAJiC;cAQtB,qCAAiB;;UAmB5B,iBAAA,CAAA;IA3BW,UAAA,EAAA,KAAA;EAQA,CAAA;EAmBX,MAAA,EAAA;;;;;;;;;;;;;IAnB4B,IAAA,6BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAqBjB,UAAA,EAAA,KAAA;EAuBX,CAAA;;;;;;;;;;;;;;EAvBsC,MAAA,EAAA;IAyB3B,IAAA,6BAkBX,KAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,IAAA;;;;;;;cA3CW,+CAA2B;;UAuBtC,iBAAA,CAAA;;;;qCAEqC,CAAA,OAAA,EAAA,OAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAoB1B,CAAA;EAiBX,kBAAA,EAAA;;;;iBAjBsC,EAAA;IAAA,IAAA,6BAAA,OAAA,CAAA,MAAA,EAAA,OAAA,CAAA,QAAA,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA;IAmB3B,UAAA,EAAA,KAAA;EAYX,CAAA;;;;;;;;;;;;;;;gBAZuC,KAAA;EAAA,CAAA;EAc5B,eAAA,EAAA;IAmBX,IAAA,6BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;cAxEW,8CAA0B;;UAkBrC,iBAAA,CAAA;;;;;;;EAmCsC,KAAA,EAAA;IA0B3B,IAAA,6BA0CX,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,IAAA;;;;;;;;;;;;;gBA1CmC,IAAA;EAAA,CAAA;;;;;;;;;;;;;;cA3DxB,+CAA2B;;UAiBtC,iBAAA,CAAA;;;;;;;;;;kBA0CmC,MAAA;EAAA,CAAA;EA+CxB,MAAA,EAAA;IAkBX,IAAA,6BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;AAlBoC,cAvFzB,4BAuFyB,oBAvFG,WAuFH,CAAA;;;;cA3EpC,iBAAA,CAAA;;;;;;;;;;;;yCA2EoC,CAAA,MAAA,EAAA,MAAA,CAAA;QAAA,UAAA,EAAA,KAAA;MAuBzB,CAAA;MA0BX,IAAA,EAAA;YA1BuC,6BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;QAAA,UAAA,EAAA,KAAA;;;;;;;;;;;;;kBAAA,EAAA,IAAA;MAAA,CAAA;MA+B5B,MAAA,EAAA;QAuBX,IAvB2C,6BAAA,KAAA,EAAA,MAAA,CAAA;QAAA,UAAA,EAAA,IAAA;;MAAA,SAAA,EAAA;QAAA,IAAA,6BAAA,KAAA,EAAA,MAAA,CAAA;QA4BhC,UAAA,EAAA,KAAA;MAkBX,CAAA;IAlB6C,CAAA,CAAA;;;;;;;;;;;;;cA3JlC,2BA2JkC,oBA3JP,WA2JO,CAAA;EAAA,aAAA,EAAA;IAAA,IAAA,EAxI7C,iBAAA,CAAA,SAwI6C,CAAA,OAAA,EAAA,OAAA,CAAA;IAuBlC,UAAA,EAAA,IAAA;EAkBX,CAAA;;;;;;;;;;;;;EAlBgD,aAAA,EAAA;;;;;;;;;;;;;;oBAAA;EAAA,CAAA;AAuBlD,CAAA,CAAA;;;;cA/Ka,+CAAwB,+BAAA;;IA+KE,IAAA,EArIrC,iBAAA,CAAA,SAqIqC,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA/KF,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA+CxB,gDAAyB,+BAAA;;UAkBpC,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;cAlBoC,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuBzB,mDAA4B,+BAAA;;UA0BvC,iBAAA,CAAA;;;;;UA1BuC,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA+B5B,kCAAgC,oBAAA,CAAA,aAuB3C,iBAAA,CAvB2C,cAAA,oBAAA;;UAAA,iBAAA,CAAA;;;;;;;cA4BhC,oCAAkC,oBAAA,CAAA,aAkB7C,iBAAA,CAlB6C,cAAA,oBAAA;;UAAA,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuBlC,4DAAqC,+BAAA;;UAkBhD,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAlBgD,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAuBrC,iDAA0B,+BAAA;;UA+BrC,iBAAA,CAAA;;;;;UA/BqC,iBAAA,CAAA"}
@@ -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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"}