@lssm/module.learning-journey 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 (215) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -0
  3. package/dist/contracts/models.d.ts +120 -119
  4. package/dist/contracts/models.d.ts.map +1 -0
  5. package/dist/contracts/models.js +87 -88
  6. package/dist/contracts/models.js.map +1 -0
  7. package/dist/contracts/onboarding.d.ts +169 -168
  8. package/dist/contracts/onboarding.d.ts.map +1 -0
  9. package/dist/contracts/onboarding.js +71 -72
  10. package/dist/contracts/onboarding.js.map +1 -0
  11. package/dist/contracts/operations.d.ts +72 -71
  12. package/dist/contracts/operations.d.ts.map +1 -0
  13. package/dist/contracts/operations.js +2 -1
  14. package/dist/contracts/operations.js.map +1 -0
  15. package/dist/contracts/shared.d.ts +2 -1
  16. package/dist/contracts/shared.d.ts.map +1 -0
  17. package/dist/contracts/shared.js +2 -1
  18. package/dist/contracts/shared.js.map +1 -0
  19. package/dist/docs/learning-journey.docblock.js +2 -1
  20. package/dist/docs/learning-journey.docblock.js.map +1 -0
  21. package/dist/engines/srs.d.ts +14 -13
  22. package/dist/engines/srs.d.ts.map +1 -0
  23. package/dist/engines/srs.js +30 -30
  24. package/dist/engines/srs.js.map +1 -0
  25. package/dist/engines/streak.d.ts +2 -1
  26. package/dist/engines/streak.d.ts.map +1 -0
  27. package/dist/engines/streak.js +2 -1
  28. package/dist/engines/streak.js.map +1 -0
  29. package/dist/engines/xp.d.ts +2 -1
  30. package/dist/engines/xp.d.ts.map +1 -0
  31. package/dist/engines/xp.js +2 -1
  32. package/dist/engines/xp.js.map +1 -0
  33. package/dist/entities/ai.d.ts +202 -201
  34. package/dist/entities/ai.d.ts.map +1 -0
  35. package/dist/entities/ai.js +114 -114
  36. package/dist/entities/ai.js.map +1 -0
  37. package/dist/entities/course.d.ts +152 -151
  38. package/dist/entities/course.d.ts.map +1 -0
  39. package/dist/entities/course.js +86 -86
  40. package/dist/entities/course.js.map +1 -0
  41. package/dist/entities/flashcard.d.ts +147 -146
  42. package/dist/entities/flashcard.d.ts.map +1 -0
  43. package/dist/entities/flashcard.js +85 -85
  44. package/dist/entities/flashcard.js.map +1 -0
  45. package/dist/entities/gamification.d.ts +200 -199
  46. package/dist/entities/gamification.d.ts.map +1 -0
  47. package/dist/entities/gamification.js +120 -120
  48. package/dist/entities/gamification.js.map +1 -0
  49. package/dist/entities/index.d.ts +607 -606
  50. package/dist/entities/index.d.ts.map +1 -0
  51. package/dist/entities/index.js +2 -1
  52. package/dist/entities/index.js.map +1 -0
  53. package/dist/entities/learner.d.ts +194 -193
  54. package/dist/entities/learner.d.ts.map +1 -0
  55. package/dist/entities/learner.js +113 -113
  56. package/dist/entities/learner.js.map +1 -0
  57. package/dist/entities/onboarding.d.ts +167 -166
  58. package/dist/entities/onboarding.d.ts.map +1 -0
  59. package/dist/entities/onboarding.js +93 -93
  60. package/dist/entities/onboarding.js.map +1 -0
  61. package/dist/entities/quiz.d.ts +187 -186
  62. package/dist/entities/quiz.d.ts.map +1 -0
  63. package/dist/entities/quiz.js +109 -109
  64. package/dist/entities/quiz.js.map +1 -0
  65. package/dist/events.d.ts +215 -214
  66. package/dist/events.d.ts.map +1 -0
  67. package/dist/events.js +109 -110
  68. package/dist/events.js.map +1 -0
  69. package/dist/learning-journey.feature.d.ts +2 -1
  70. package/dist/learning-journey.feature.d.ts.map +1 -0
  71. package/dist/learning-journey.feature.js +2 -1
  72. package/dist/learning-journey.feature.js.map +1 -0
  73. package/dist/libs/contracts/dist/capabilities/openbanking.js +2 -1
  74. package/dist/libs/contracts/dist/capabilities/openbanking.js.map +1 -0
  75. package/dist/libs/contracts/dist/contract-registry/schemas.js +2 -1
  76. package/dist/libs/contracts/dist/contract-registry/schemas.js.map +1 -0
  77. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +2 -1
  78. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +1 -0
  79. package/dist/libs/contracts/dist/docs/index.js +2 -6
  80. package/dist/libs/contracts/dist/docs/meta.docs.js +30 -0
  81. package/dist/libs/contracts/dist/docs/meta.docs.js.map +1 -0
  82. package/dist/libs/contracts/dist/docs/presentations.js +2 -1
  83. package/dist/libs/contracts/dist/docs/presentations.js.map +1 -0
  84. package/dist/libs/contracts/dist/docs/registry.js +2 -1
  85. package/dist/libs/contracts/dist/docs/registry.js.map +1 -0
  86. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +2 -1
  87. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +1 -0
  88. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +2 -1
  89. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +1 -0
  90. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +2 -1
  91. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +1 -0
  92. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +2 -1
  93. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +1 -0
  94. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +2 -1
  95. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +1 -0
  96. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +2 -1
  97. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +1 -0
  98. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +2 -1
  99. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +1 -0
  100. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +2 -1
  101. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +1 -0
  102. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +2 -1
  103. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +1 -0
  104. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +2 -1
  105. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +1 -0
  106. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +2 -1
  107. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +1 -0
  108. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +2 -1
  109. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +1 -0
  110. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +2 -1
  111. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +1 -0
  112. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +2 -1
  113. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +1 -0
  114. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +2 -1
  115. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +1 -0
  116. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +2 -1
  117. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +1 -0
  118. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +2 -1
  119. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +1 -0
  120. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +2 -1
  121. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +1 -0
  122. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +2 -1
  123. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +1 -0
  124. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +2 -1
  125. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js.map +1 -0
  126. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js +97 -0
  127. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +1 -0
  128. package/dist/libs/contracts/dist/events.js +2 -1
  129. package/dist/libs/contracts/dist/events.js.map +1 -0
  130. package/dist/libs/contracts/dist/index.js +2 -1
  131. package/dist/libs/contracts/dist/integrations/contracts.js +65 -66
  132. package/dist/libs/contracts/dist/integrations/contracts.js.map +1 -0
  133. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +31 -32
  134. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js.map +1 -0
  135. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +18 -19
  136. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js.map +1 -0
  137. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +32 -33
  138. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js.map +1 -0
  139. package/dist/libs/contracts/dist/integrations/openbanking/models.js +60 -61
  140. package/dist/libs/contracts/dist/integrations/openbanking/models.js.map +1 -0
  141. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +2 -1
  142. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js.map +1 -0
  143. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +2 -1
  144. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js.map +1 -0
  145. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +2 -1
  146. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js.map +1 -0
  147. package/dist/libs/contracts/dist/integrations/providers/gmail.js +2 -1
  148. package/dist/libs/contracts/dist/integrations/providers/gmail.js.map +1 -0
  149. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +2 -1
  150. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js.map +1 -0
  151. package/dist/libs/contracts/dist/integrations/providers/mistral.js +2 -1
  152. package/dist/libs/contracts/dist/integrations/providers/mistral.js.map +1 -0
  153. package/dist/libs/contracts/dist/integrations/providers/postmark.js +2 -1
  154. package/dist/libs/contracts/dist/integrations/providers/postmark.js.map +1 -0
  155. package/dist/libs/contracts/dist/integrations/providers/powens.js +2 -1
  156. package/dist/libs/contracts/dist/integrations/providers/powens.js.map +1 -0
  157. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +2 -1
  158. package/dist/libs/contracts/dist/integrations/providers/qdrant.js.map +1 -0
  159. package/dist/libs/contracts/dist/integrations/providers/stripe.js +2 -1
  160. package/dist/libs/contracts/dist/integrations/providers/stripe.js.map +1 -0
  161. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +2 -1
  162. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js.map +1 -0
  163. package/dist/libs/contracts/dist/knowledge/contracts.js +44 -45
  164. package/dist/libs/contracts/dist/knowledge/contracts.js.map +1 -0
  165. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +2 -1
  166. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js.map +1 -0
  167. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +2 -1
  168. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js.map +1 -0
  169. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +2 -1
  170. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js.map +1 -0
  171. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +2 -1
  172. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js.map +1 -0
  173. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +2 -1
  174. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js.map +1 -0
  175. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +2 -1
  176. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js.map +1 -0
  177. package/dist/libs/contracts/dist/llm/exporters.js +2 -1
  178. package/dist/libs/contracts/dist/llm/exporters.js.map +1 -0
  179. package/dist/libs/contracts/dist/onboarding-base.js +22 -23
  180. package/dist/libs/contracts/dist/onboarding-base.js.map +1 -0
  181. package/dist/libs/contracts/dist/ownership.js +4 -2
  182. package/dist/libs/contracts/dist/ownership.js.map +1 -0
  183. package/dist/libs/contracts/dist/presentations.v2.js +2 -1
  184. package/dist/libs/contracts/dist/presentations.v2.js.map +1 -0
  185. package/dist/libs/contracts/dist/regenerator/service.js +2 -1
  186. package/dist/libs/contracts/dist/regenerator/service.js.map +1 -0
  187. package/dist/libs/contracts/dist/schema/dist/index.js +3873 -6
  188. package/dist/libs/contracts/dist/schema/dist/index.js.map +1 -0
  189. package/dist/libs/contracts/dist/spec.js +2 -1
  190. package/dist/libs/contracts/dist/spec.js.map +1 -0
  191. package/dist/libs/schema/dist/index.js +4889 -6
  192. package/dist/libs/schema/dist/index.js.map +1 -0
  193. package/dist/track-spec.d.ts +2 -1
  194. package/dist/track-spec.d.ts.map +1 -0
  195. package/package.json +13 -6
  196. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  197. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  198. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  199. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  200. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  201. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  202. package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
  203. package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
  204. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  205. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -34
  206. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  207. package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
  208. package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
  209. package/dist/libs/schema/dist/EnumType.js +0 -2
  210. package/dist/libs/schema/dist/FieldType.js +0 -49
  211. package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -236
  212. package/dist/libs/schema/dist/SchemaModel.js +0 -39
  213. package/dist/libs/schema/dist/entity/defineEntity.js +0 -236
  214. package/dist/libs/schema/dist/entity/index.js +0 -2
  215. package/dist/libs/schema/dist/entity/types.js +0 -1
@@ -1,169 +1,170 @@
1
- import * as _lssm_lib_schema1486 from "@lssm/lib.schema";
1
+ import * as _lssm_lib_schema860 from "@lssm/lib.schema";
2
2
 
3
3
  //#region src/entities/flashcard.d.ts
4
4
  /**
5
5
  * Card rating enum for SRS.
6
6
  */
7
- declare const CardRatingEnum: _lssm_lib_schema1486.EntityEnumDef;
7
+ declare const CardRatingEnum: _lssm_lib_schema860.EntityEnumDef;
8
8
  /**
9
9
  * Deck entity - collection of flashcards.
10
10
  */
11
- declare const DeckEntity: _lssm_lib_schema1486.EntitySpec<{
12
- id: _lssm_lib_schema1486.EntityScalarField;
13
- ownerId: _lssm_lib_schema1486.EntityScalarField;
14
- title: _lssm_lib_schema1486.EntityScalarField;
15
- description: _lssm_lib_schema1486.EntityScalarField;
16
- category: _lssm_lib_schema1486.EntityScalarField;
17
- tags: _lssm_lib_schema1486.EntityScalarField;
18
- isPublic: _lssm_lib_schema1486.EntityScalarField;
19
- cardCount: _lssm_lib_schema1486.EntityScalarField;
20
- coverImageUrl: _lssm_lib_schema1486.EntityScalarField;
21
- orgId: _lssm_lib_schema1486.EntityScalarField;
22
- newCardsPerDay: _lssm_lib_schema1486.EntityScalarField;
23
- reviewsPerDay: _lssm_lib_schema1486.EntityScalarField;
24
- metadata: _lssm_lib_schema1486.EntityScalarField;
25
- createdAt: _lssm_lib_schema1486.EntityScalarField;
26
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
27
- owner: _lssm_lib_schema1486.EntityRelationField;
28
- cards: _lssm_lib_schema1486.EntityRelationField;
11
+ declare const DeckEntity: _lssm_lib_schema860.EntitySpec<{
12
+ id: _lssm_lib_schema860.EntityScalarField;
13
+ ownerId: _lssm_lib_schema860.EntityScalarField;
14
+ title: _lssm_lib_schema860.EntityScalarField;
15
+ description: _lssm_lib_schema860.EntityScalarField;
16
+ category: _lssm_lib_schema860.EntityScalarField;
17
+ tags: _lssm_lib_schema860.EntityScalarField;
18
+ isPublic: _lssm_lib_schema860.EntityScalarField;
19
+ cardCount: _lssm_lib_schema860.EntityScalarField;
20
+ coverImageUrl: _lssm_lib_schema860.EntityScalarField;
21
+ orgId: _lssm_lib_schema860.EntityScalarField;
22
+ newCardsPerDay: _lssm_lib_schema860.EntityScalarField;
23
+ reviewsPerDay: _lssm_lib_schema860.EntityScalarField;
24
+ metadata: _lssm_lib_schema860.EntityScalarField;
25
+ createdAt: _lssm_lib_schema860.EntityScalarField;
26
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
27
+ owner: _lssm_lib_schema860.EntityRelationField;
28
+ cards: _lssm_lib_schema860.EntityRelationField;
29
29
  }>;
30
30
  /**
31
31
  * Card entity - individual flashcard.
32
32
  */
33
- declare const CardEntity: _lssm_lib_schema1486.EntitySpec<{
34
- id: _lssm_lib_schema1486.EntityScalarField;
35
- deckId: _lssm_lib_schema1486.EntityScalarField;
36
- front: _lssm_lib_schema1486.EntityScalarField;
37
- back: _lssm_lib_schema1486.EntityScalarField;
38
- hints: _lssm_lib_schema1486.EntityScalarField;
39
- explanation: _lssm_lib_schema1486.EntityScalarField;
40
- frontMediaUrl: _lssm_lib_schema1486.EntityScalarField;
41
- backMediaUrl: _lssm_lib_schema1486.EntityScalarField;
42
- audioUrl: _lssm_lib_schema1486.EntityScalarField;
43
- tags: _lssm_lib_schema1486.EntityScalarField;
44
- difficulty: _lssm_lib_schema1486.EntityScalarField;
45
- order: _lssm_lib_schema1486.EntityScalarField;
46
- isSuspended: _lssm_lib_schema1486.EntityScalarField;
47
- metadata: _lssm_lib_schema1486.EntityScalarField;
48
- createdAt: _lssm_lib_schema1486.EntityScalarField;
49
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
50
- deck: _lssm_lib_schema1486.EntityRelationField;
51
- reviews: _lssm_lib_schema1486.EntityRelationField;
52
- schedules: _lssm_lib_schema1486.EntityRelationField;
33
+ declare const CardEntity: _lssm_lib_schema860.EntitySpec<{
34
+ id: _lssm_lib_schema860.EntityScalarField;
35
+ deckId: _lssm_lib_schema860.EntityScalarField;
36
+ front: _lssm_lib_schema860.EntityScalarField;
37
+ back: _lssm_lib_schema860.EntityScalarField;
38
+ hints: _lssm_lib_schema860.EntityScalarField;
39
+ explanation: _lssm_lib_schema860.EntityScalarField;
40
+ frontMediaUrl: _lssm_lib_schema860.EntityScalarField;
41
+ backMediaUrl: _lssm_lib_schema860.EntityScalarField;
42
+ audioUrl: _lssm_lib_schema860.EntityScalarField;
43
+ tags: _lssm_lib_schema860.EntityScalarField;
44
+ difficulty: _lssm_lib_schema860.EntityScalarField;
45
+ order: _lssm_lib_schema860.EntityScalarField;
46
+ isSuspended: _lssm_lib_schema860.EntityScalarField;
47
+ metadata: _lssm_lib_schema860.EntityScalarField;
48
+ createdAt: _lssm_lib_schema860.EntityScalarField;
49
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
50
+ deck: _lssm_lib_schema860.EntityRelationField;
51
+ reviews: _lssm_lib_schema860.EntityRelationField;
52
+ schedules: _lssm_lib_schema860.EntityRelationField;
53
53
  }>;
54
54
  /**
55
55
  * CardReview entity - records individual reviews.
56
56
  */
57
- declare const CardReviewEntity: _lssm_lib_schema1486.EntitySpec<{
58
- id: _lssm_lib_schema1486.EntityScalarField;
59
- learnerId: _lssm_lib_schema1486.EntityScalarField;
60
- cardId: _lssm_lib_schema1486.EntityScalarField;
61
- rating: _lssm_lib_schema1486.EntityEnumField;
62
- responseTimeMs: _lssm_lib_schema1486.EntityScalarField;
63
- intervalBefore: _lssm_lib_schema1486.EntityScalarField;
64
- easeFactorBefore: _lssm_lib_schema1486.EntityScalarField;
65
- intervalAfter: _lssm_lib_schema1486.EntityScalarField;
66
- easeFactorAfter: _lssm_lib_schema1486.EntityScalarField;
67
- reviewType: _lssm_lib_schema1486.EntityScalarField;
68
- reviewedAt: _lssm_lib_schema1486.EntityScalarField;
69
- createdAt: _lssm_lib_schema1486.EntityScalarField;
70
- learner: _lssm_lib_schema1486.EntityRelationField;
71
- card: _lssm_lib_schema1486.EntityRelationField;
57
+ declare const CardReviewEntity: _lssm_lib_schema860.EntitySpec<{
58
+ id: _lssm_lib_schema860.EntityScalarField;
59
+ learnerId: _lssm_lib_schema860.EntityScalarField;
60
+ cardId: _lssm_lib_schema860.EntityScalarField;
61
+ rating: _lssm_lib_schema860.EntityEnumField;
62
+ responseTimeMs: _lssm_lib_schema860.EntityScalarField;
63
+ intervalBefore: _lssm_lib_schema860.EntityScalarField;
64
+ easeFactorBefore: _lssm_lib_schema860.EntityScalarField;
65
+ intervalAfter: _lssm_lib_schema860.EntityScalarField;
66
+ easeFactorAfter: _lssm_lib_schema860.EntityScalarField;
67
+ reviewType: _lssm_lib_schema860.EntityScalarField;
68
+ reviewedAt: _lssm_lib_schema860.EntityScalarField;
69
+ createdAt: _lssm_lib_schema860.EntityScalarField;
70
+ learner: _lssm_lib_schema860.EntityRelationField;
71
+ card: _lssm_lib_schema860.EntityRelationField;
72
72
  }>;
73
73
  /**
74
74
  * CardSchedule entity - SRS scheduling per learner/card.
75
75
  */
76
- declare const CardScheduleEntity: _lssm_lib_schema1486.EntitySpec<{
77
- id: _lssm_lib_schema1486.EntityScalarField;
78
- learnerId: _lssm_lib_schema1486.EntityScalarField;
79
- cardId: _lssm_lib_schema1486.EntityScalarField;
80
- interval: _lssm_lib_schema1486.EntityScalarField;
81
- easeFactor: _lssm_lib_schema1486.EntityScalarField;
82
- repetitions: _lssm_lib_schema1486.EntityScalarField;
83
- nextReviewAt: _lssm_lib_schema1486.EntityScalarField;
84
- lastReviewAt: _lssm_lib_schema1486.EntityScalarField;
85
- learningStep: _lssm_lib_schema1486.EntityScalarField;
86
- isGraduated: _lssm_lib_schema1486.EntityScalarField;
87
- isRelearning: _lssm_lib_schema1486.EntityScalarField;
88
- lapses: _lssm_lib_schema1486.EntityScalarField;
89
- reviewCount: _lssm_lib_schema1486.EntityScalarField;
90
- createdAt: _lssm_lib_schema1486.EntityScalarField;
91
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
92
- learner: _lssm_lib_schema1486.EntityRelationField;
93
- card: _lssm_lib_schema1486.EntityRelationField;
76
+ declare const CardScheduleEntity: _lssm_lib_schema860.EntitySpec<{
77
+ id: _lssm_lib_schema860.EntityScalarField;
78
+ learnerId: _lssm_lib_schema860.EntityScalarField;
79
+ cardId: _lssm_lib_schema860.EntityScalarField;
80
+ interval: _lssm_lib_schema860.EntityScalarField;
81
+ easeFactor: _lssm_lib_schema860.EntityScalarField;
82
+ repetitions: _lssm_lib_schema860.EntityScalarField;
83
+ nextReviewAt: _lssm_lib_schema860.EntityScalarField;
84
+ lastReviewAt: _lssm_lib_schema860.EntityScalarField;
85
+ learningStep: _lssm_lib_schema860.EntityScalarField;
86
+ isGraduated: _lssm_lib_schema860.EntityScalarField;
87
+ isRelearning: _lssm_lib_schema860.EntityScalarField;
88
+ lapses: _lssm_lib_schema860.EntityScalarField;
89
+ reviewCount: _lssm_lib_schema860.EntityScalarField;
90
+ createdAt: _lssm_lib_schema860.EntityScalarField;
91
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
92
+ learner: _lssm_lib_schema860.EntityRelationField;
93
+ card: _lssm_lib_schema860.EntityRelationField;
94
94
  }>;
95
- declare const flashcardEntities: (_lssm_lib_schema1486.EntitySpec<{
96
- id: _lssm_lib_schema1486.EntityScalarField;
97
- ownerId: _lssm_lib_schema1486.EntityScalarField;
98
- title: _lssm_lib_schema1486.EntityScalarField;
99
- description: _lssm_lib_schema1486.EntityScalarField;
100
- category: _lssm_lib_schema1486.EntityScalarField;
101
- tags: _lssm_lib_schema1486.EntityScalarField;
102
- isPublic: _lssm_lib_schema1486.EntityScalarField;
103
- cardCount: _lssm_lib_schema1486.EntityScalarField;
104
- coverImageUrl: _lssm_lib_schema1486.EntityScalarField;
105
- orgId: _lssm_lib_schema1486.EntityScalarField;
106
- newCardsPerDay: _lssm_lib_schema1486.EntityScalarField;
107
- reviewsPerDay: _lssm_lib_schema1486.EntityScalarField;
108
- metadata: _lssm_lib_schema1486.EntityScalarField;
109
- createdAt: _lssm_lib_schema1486.EntityScalarField;
110
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
111
- owner: _lssm_lib_schema1486.EntityRelationField;
112
- cards: _lssm_lib_schema1486.EntityRelationField;
113
- }> | _lssm_lib_schema1486.EntitySpec<{
114
- id: _lssm_lib_schema1486.EntityScalarField;
115
- deckId: _lssm_lib_schema1486.EntityScalarField;
116
- front: _lssm_lib_schema1486.EntityScalarField;
117
- back: _lssm_lib_schema1486.EntityScalarField;
118
- hints: _lssm_lib_schema1486.EntityScalarField;
119
- explanation: _lssm_lib_schema1486.EntityScalarField;
120
- frontMediaUrl: _lssm_lib_schema1486.EntityScalarField;
121
- backMediaUrl: _lssm_lib_schema1486.EntityScalarField;
122
- audioUrl: _lssm_lib_schema1486.EntityScalarField;
123
- tags: _lssm_lib_schema1486.EntityScalarField;
124
- difficulty: _lssm_lib_schema1486.EntityScalarField;
125
- order: _lssm_lib_schema1486.EntityScalarField;
126
- isSuspended: _lssm_lib_schema1486.EntityScalarField;
127
- metadata: _lssm_lib_schema1486.EntityScalarField;
128
- createdAt: _lssm_lib_schema1486.EntityScalarField;
129
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
130
- deck: _lssm_lib_schema1486.EntityRelationField;
131
- reviews: _lssm_lib_schema1486.EntityRelationField;
132
- schedules: _lssm_lib_schema1486.EntityRelationField;
133
- }> | _lssm_lib_schema1486.EntitySpec<{
134
- id: _lssm_lib_schema1486.EntityScalarField;
135
- learnerId: _lssm_lib_schema1486.EntityScalarField;
136
- cardId: _lssm_lib_schema1486.EntityScalarField;
137
- rating: _lssm_lib_schema1486.EntityEnumField;
138
- responseTimeMs: _lssm_lib_schema1486.EntityScalarField;
139
- intervalBefore: _lssm_lib_schema1486.EntityScalarField;
140
- easeFactorBefore: _lssm_lib_schema1486.EntityScalarField;
141
- intervalAfter: _lssm_lib_schema1486.EntityScalarField;
142
- easeFactorAfter: _lssm_lib_schema1486.EntityScalarField;
143
- reviewType: _lssm_lib_schema1486.EntityScalarField;
144
- reviewedAt: _lssm_lib_schema1486.EntityScalarField;
145
- createdAt: _lssm_lib_schema1486.EntityScalarField;
146
- learner: _lssm_lib_schema1486.EntityRelationField;
147
- card: _lssm_lib_schema1486.EntityRelationField;
148
- }> | _lssm_lib_schema1486.EntitySpec<{
149
- id: _lssm_lib_schema1486.EntityScalarField;
150
- learnerId: _lssm_lib_schema1486.EntityScalarField;
151
- cardId: _lssm_lib_schema1486.EntityScalarField;
152
- interval: _lssm_lib_schema1486.EntityScalarField;
153
- easeFactor: _lssm_lib_schema1486.EntityScalarField;
154
- repetitions: _lssm_lib_schema1486.EntityScalarField;
155
- nextReviewAt: _lssm_lib_schema1486.EntityScalarField;
156
- lastReviewAt: _lssm_lib_schema1486.EntityScalarField;
157
- learningStep: _lssm_lib_schema1486.EntityScalarField;
158
- isGraduated: _lssm_lib_schema1486.EntityScalarField;
159
- isRelearning: _lssm_lib_schema1486.EntityScalarField;
160
- lapses: _lssm_lib_schema1486.EntityScalarField;
161
- reviewCount: _lssm_lib_schema1486.EntityScalarField;
162
- createdAt: _lssm_lib_schema1486.EntityScalarField;
163
- updatedAt: _lssm_lib_schema1486.EntityScalarField;
164
- learner: _lssm_lib_schema1486.EntityRelationField;
165
- card: _lssm_lib_schema1486.EntityRelationField;
95
+ declare const flashcardEntities: (_lssm_lib_schema860.EntitySpec<{
96
+ id: _lssm_lib_schema860.EntityScalarField;
97
+ ownerId: _lssm_lib_schema860.EntityScalarField;
98
+ title: _lssm_lib_schema860.EntityScalarField;
99
+ description: _lssm_lib_schema860.EntityScalarField;
100
+ category: _lssm_lib_schema860.EntityScalarField;
101
+ tags: _lssm_lib_schema860.EntityScalarField;
102
+ isPublic: _lssm_lib_schema860.EntityScalarField;
103
+ cardCount: _lssm_lib_schema860.EntityScalarField;
104
+ coverImageUrl: _lssm_lib_schema860.EntityScalarField;
105
+ orgId: _lssm_lib_schema860.EntityScalarField;
106
+ newCardsPerDay: _lssm_lib_schema860.EntityScalarField;
107
+ reviewsPerDay: _lssm_lib_schema860.EntityScalarField;
108
+ metadata: _lssm_lib_schema860.EntityScalarField;
109
+ createdAt: _lssm_lib_schema860.EntityScalarField;
110
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
111
+ owner: _lssm_lib_schema860.EntityRelationField;
112
+ cards: _lssm_lib_schema860.EntityRelationField;
113
+ }> | _lssm_lib_schema860.EntitySpec<{
114
+ id: _lssm_lib_schema860.EntityScalarField;
115
+ deckId: _lssm_lib_schema860.EntityScalarField;
116
+ front: _lssm_lib_schema860.EntityScalarField;
117
+ back: _lssm_lib_schema860.EntityScalarField;
118
+ hints: _lssm_lib_schema860.EntityScalarField;
119
+ explanation: _lssm_lib_schema860.EntityScalarField;
120
+ frontMediaUrl: _lssm_lib_schema860.EntityScalarField;
121
+ backMediaUrl: _lssm_lib_schema860.EntityScalarField;
122
+ audioUrl: _lssm_lib_schema860.EntityScalarField;
123
+ tags: _lssm_lib_schema860.EntityScalarField;
124
+ difficulty: _lssm_lib_schema860.EntityScalarField;
125
+ order: _lssm_lib_schema860.EntityScalarField;
126
+ isSuspended: _lssm_lib_schema860.EntityScalarField;
127
+ metadata: _lssm_lib_schema860.EntityScalarField;
128
+ createdAt: _lssm_lib_schema860.EntityScalarField;
129
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
130
+ deck: _lssm_lib_schema860.EntityRelationField;
131
+ reviews: _lssm_lib_schema860.EntityRelationField;
132
+ schedules: _lssm_lib_schema860.EntityRelationField;
133
+ }> | _lssm_lib_schema860.EntitySpec<{
134
+ id: _lssm_lib_schema860.EntityScalarField;
135
+ learnerId: _lssm_lib_schema860.EntityScalarField;
136
+ cardId: _lssm_lib_schema860.EntityScalarField;
137
+ rating: _lssm_lib_schema860.EntityEnumField;
138
+ responseTimeMs: _lssm_lib_schema860.EntityScalarField;
139
+ intervalBefore: _lssm_lib_schema860.EntityScalarField;
140
+ easeFactorBefore: _lssm_lib_schema860.EntityScalarField;
141
+ intervalAfter: _lssm_lib_schema860.EntityScalarField;
142
+ easeFactorAfter: _lssm_lib_schema860.EntityScalarField;
143
+ reviewType: _lssm_lib_schema860.EntityScalarField;
144
+ reviewedAt: _lssm_lib_schema860.EntityScalarField;
145
+ createdAt: _lssm_lib_schema860.EntityScalarField;
146
+ learner: _lssm_lib_schema860.EntityRelationField;
147
+ card: _lssm_lib_schema860.EntityRelationField;
148
+ }> | _lssm_lib_schema860.EntitySpec<{
149
+ id: _lssm_lib_schema860.EntityScalarField;
150
+ learnerId: _lssm_lib_schema860.EntityScalarField;
151
+ cardId: _lssm_lib_schema860.EntityScalarField;
152
+ interval: _lssm_lib_schema860.EntityScalarField;
153
+ easeFactor: _lssm_lib_schema860.EntityScalarField;
154
+ repetitions: _lssm_lib_schema860.EntityScalarField;
155
+ nextReviewAt: _lssm_lib_schema860.EntityScalarField;
156
+ lastReviewAt: _lssm_lib_schema860.EntityScalarField;
157
+ learningStep: _lssm_lib_schema860.EntityScalarField;
158
+ isGraduated: _lssm_lib_schema860.EntityScalarField;
159
+ isRelearning: _lssm_lib_schema860.EntityScalarField;
160
+ lapses: _lssm_lib_schema860.EntityScalarField;
161
+ reviewCount: _lssm_lib_schema860.EntityScalarField;
162
+ createdAt: _lssm_lib_schema860.EntityScalarField;
163
+ updatedAt: _lssm_lib_schema860.EntityScalarField;
164
+ learner: _lssm_lib_schema860.EntityRelationField;
165
+ card: _lssm_lib_schema860.EntityRelationField;
166
166
  }>)[];
167
- declare const flashcardEnums: _lssm_lib_schema1486.EntityEnumDef[];
167
+ declare const flashcardEnums: _lssm_lib_schema860.EntityEnumDef[];
168
168
  //#endregion
169
- export { CardEntity, CardRatingEnum, CardReviewEntity, CardScheduleEntity, DeckEntity, flashcardEntities, flashcardEnums };
169
+ export { CardEntity, CardRatingEnum, CardReviewEntity, CardScheduleEntity, DeckEntity, flashcardEntities, flashcardEnums };
170
+ //# sourceMappingURL=flashcard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flashcard.d.ts","names":[],"sources":["../../src/entities/flashcard.ts"],"sourcesContent":[],"mappings":";;;;;;AAKa,cAAA,cAKX,EAAA,mBAAA,CALyB,aAKzB;AAKF;;;cAAa,gCAAU;MAwErB,mBAAA,CAAA;;;;;;;;;;;;;;kDAxEqB;EAAA,KAAA,yCAAA;EA6EV,KAAA,yCA+DX;CAAA,CAAA;;;;cA/DW,gCAAU;MA+DrB,mBAAA,CAAA;;;;;;;;;;;;;;kDA/DqB;EAAA,SAAA,uCAAA;EAoEV,IAAA,yCAmDX;EAAA,OAAA,yCAAA;;;;;;cAnDW,sCAAgB;MAmD3B,mBAAA,CAAA;;;;;;;sDAnD2B;EAAA,eAAA,uCAAA;EAwDhB,UAAA,uCAmEX;EAAA,UAAA,uCAAA;;;;;;;;cAnEW,wCAAkB;MAmE7B,mBAAA,CAAA;;;;;;;;qDAnE6B;EAAA,WAAA,uCAAA;EAqElB,YAAA,uCAKZ;EAAA,MAAA,uCAAA;;;;;;;cALY,wCAAiB;MAK7B,mBAAA,CAAA;;;;;;;;;8CAL6B;EAAA,cAAA,uCAAA;;;;;;;;MAAA,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOjB,MAAA,uCAAc;;;;;;;cAAd,gBAAiC,mBAAA,CAAnB,aAAA"}
@@ -1,11 +1,10 @@
1
- import { defineEntity, defineEntityEnum, field, index } from "../libs/schema/dist/entity/defineEntity.js";
2
- import "../libs/schema/dist/index.js";
1
+ import { L5, Z5, _5, b5 } from "../libs/schema/dist/index.js";
3
2
 
4
3
  //#region src/entities/flashcard.ts
5
4
  /**
6
5
  * Card rating enum for SRS.
7
6
  */
8
- const CardRatingEnum = defineEntityEnum({
7
+ const CardRatingEnum = Z5({
9
8
  name: "CardRating",
10
9
  values: [
11
10
  "AGAIN",
@@ -19,222 +18,222 @@ const CardRatingEnum = defineEntityEnum({
19
18
  /**
20
19
  * Deck entity - collection of flashcards.
21
20
  */
22
- const DeckEntity = defineEntity({
21
+ const DeckEntity = L5({
23
22
  name: "Deck",
24
23
  description: "A collection of flashcards.",
25
24
  schema: "lssm_learning",
26
25
  map: "deck",
27
26
  fields: {
28
- id: field.id({ description: "Unique deck identifier" }),
29
- ownerId: field.foreignKey({ description: "Deck owner (learner)" }),
30
- title: field.string({ description: "Deck title" }),
31
- description: field.string({
27
+ id: _5.id({ description: "Unique deck identifier" }),
28
+ ownerId: _5.foreignKey({ description: "Deck owner (learner)" }),
29
+ title: _5.string({ description: "Deck title" }),
30
+ description: _5.string({
32
31
  isOptional: true,
33
32
  description: "Deck description"
34
33
  }),
35
- category: field.string({
34
+ category: _5.string({
36
35
  isOptional: true,
37
36
  description: "Deck category"
38
37
  }),
39
- tags: field.json({
38
+ tags: _5.json({
40
39
  isOptional: true,
41
40
  description: "Tags for discovery"
42
41
  }),
43
- isPublic: field.boolean({
42
+ isPublic: _5.boolean({
44
43
  default: false,
45
44
  description: "Whether deck is publicly visible"
46
45
  }),
47
- cardCount: field.int({
46
+ cardCount: _5.int({
48
47
  default: 0,
49
48
  description: "Number of cards"
50
49
  }),
51
- coverImageUrl: field.string({
50
+ coverImageUrl: _5.string({
52
51
  isOptional: true,
53
52
  description: "Cover image URL"
54
53
  }),
55
- orgId: field.string({
54
+ orgId: _5.string({
56
55
  isOptional: true,
57
56
  description: "Organization scope"
58
57
  }),
59
- newCardsPerDay: field.int({
58
+ newCardsPerDay: _5.int({
60
59
  default: 20,
61
60
  description: "New cards to introduce per day"
62
61
  }),
63
- reviewsPerDay: field.int({
62
+ reviewsPerDay: _5.int({
64
63
  default: 100,
65
64
  description: "Maximum reviews per day"
66
65
  }),
67
- metadata: field.json({
66
+ metadata: _5.json({
68
67
  isOptional: true,
69
68
  description: "Additional metadata"
70
69
  }),
71
- createdAt: field.createdAt(),
72
- updatedAt: field.updatedAt(),
73
- owner: field.belongsTo("Learner", ["ownerId"], ["id"], { onDelete: "Cascade" }),
74
- cards: field.hasMany("Card")
70
+ createdAt: _5.createdAt(),
71
+ updatedAt: _5.updatedAt(),
72
+ owner: _5.belongsTo("Learner", ["ownerId"], ["id"], { onDelete: "Cascade" }),
73
+ cards: _5.hasMany("Card")
75
74
  },
76
75
  indexes: [
77
- index.on(["ownerId"]),
78
- index.on(["isPublic", "category"]),
79
- index.on(["orgId"])
76
+ b5.on(["ownerId"]),
77
+ b5.on(["isPublic", "category"]),
78
+ b5.on(["orgId"])
80
79
  ]
81
80
  });
82
81
  /**
83
82
  * Card entity - individual flashcard.
84
83
  */
85
- const CardEntity = defineEntity({
84
+ const CardEntity = L5({
86
85
  name: "Card",
87
86
  description: "An individual flashcard.",
88
87
  schema: "lssm_learning",
89
88
  map: "card",
90
89
  fields: {
91
- id: field.id({ description: "Unique card identifier" }),
92
- deckId: field.foreignKey({ description: "Parent deck" }),
93
- front: field.string({ description: "Front of card (question)" }),
94
- back: field.string({ description: "Back of card (answer)" }),
95
- hints: field.json({
90
+ id: _5.id({ description: "Unique card identifier" }),
91
+ deckId: _5.foreignKey({ description: "Parent deck" }),
92
+ front: _5.string({ description: "Front of card (question)" }),
93
+ back: _5.string({ description: "Back of card (answer)" }),
94
+ hints: _5.json({
96
95
  isOptional: true,
97
96
  description: "Hints for the card"
98
97
  }),
99
- explanation: field.string({
98
+ explanation: _5.string({
100
99
  isOptional: true,
101
100
  description: "Detailed explanation"
102
101
  }),
103
- frontMediaUrl: field.string({
102
+ frontMediaUrl: _5.string({
104
103
  isOptional: true,
105
104
  description: "Media for front"
106
105
  }),
107
- backMediaUrl: field.string({
106
+ backMediaUrl: _5.string({
108
107
  isOptional: true,
109
108
  description: "Media for back"
110
109
  }),
111
- audioUrl: field.string({
110
+ audioUrl: _5.string({
112
111
  isOptional: true,
113
112
  description: "Audio pronunciation"
114
113
  }),
115
- tags: field.json({
114
+ tags: _5.json({
116
115
  isOptional: true,
117
116
  description: "Card tags"
118
117
  }),
119
- difficulty: field.int({
118
+ difficulty: _5.int({
120
119
  default: 0,
121
120
  description: "Card difficulty (0-5)"
122
121
  }),
123
- order: field.int({
122
+ order: _5.int({
124
123
  default: 0,
125
124
  description: "Card order in deck"
126
125
  }),
127
- isSuspended: field.boolean({
126
+ isSuspended: _5.boolean({
128
127
  default: false,
129
128
  description: "Whether card is suspended"
130
129
  }),
131
- metadata: field.json({
130
+ metadata: _5.json({
132
131
  isOptional: true,
133
132
  description: "Additional metadata"
134
133
  }),
135
- createdAt: field.createdAt(),
136
- updatedAt: field.updatedAt(),
137
- deck: field.belongsTo("Deck", ["deckId"], ["id"], { onDelete: "Cascade" }),
138
- reviews: field.hasMany("CardReview"),
139
- schedules: field.hasMany("CardSchedule")
134
+ createdAt: _5.createdAt(),
135
+ updatedAt: _5.updatedAt(),
136
+ deck: _5.belongsTo("Deck", ["deckId"], ["id"], { onDelete: "Cascade" }),
137
+ reviews: _5.hasMany("CardReview"),
138
+ schedules: _5.hasMany("CardSchedule")
140
139
  },
141
- indexes: [index.on(["deckId", "order"]), index.on(["isSuspended"])]
140
+ indexes: [b5.on(["deckId", "order"]), b5.on(["isSuspended"])]
142
141
  });
143
142
  /**
144
143
  * CardReview entity - records individual reviews.
145
144
  */
146
- const CardReviewEntity = defineEntity({
145
+ const CardReviewEntity = L5({
147
146
  name: "CardReview",
148
147
  description: "A single review of a flashcard.",
149
148
  schema: "lssm_learning",
150
149
  map: "card_review",
151
150
  fields: {
152
- id: field.id({ description: "Unique review identifier" }),
153
- learnerId: field.foreignKey({ description: "Reviewer" }),
154
- cardId: field.foreignKey({ description: "Reviewed card" }),
155
- rating: field.enum("CardRating", { description: "Review rating" }),
156
- responseTimeMs: field.int({
151
+ id: _5.id({ description: "Unique review identifier" }),
152
+ learnerId: _5.foreignKey({ description: "Reviewer" }),
153
+ cardId: _5.foreignKey({ description: "Reviewed card" }),
154
+ rating: _5.enum("CardRating", { description: "Review rating" }),
155
+ responseTimeMs: _5.int({
157
156
  isOptional: true,
158
157
  description: "Time to respond in ms"
159
158
  }),
160
- intervalBefore: field.int({ description: "Interval before review (days)" }),
161
- easeFactorBefore: field.decimal({ description: "Ease factor before review" }),
162
- intervalAfter: field.int({ description: "Interval after review (days)" }),
163
- easeFactorAfter: field.decimal({ description: "Ease factor after review" }),
164
- reviewType: field.string({
159
+ intervalBefore: _5.int({ description: "Interval before review (days)" }),
160
+ easeFactorBefore: _5.decimal({ description: "Ease factor before review" }),
161
+ intervalAfter: _5.int({ description: "Interval after review (days)" }),
162
+ easeFactorAfter: _5.decimal({ description: "Ease factor after review" }),
163
+ reviewType: _5.string({
165
164
  default: "\"review\"",
166
165
  description: "Type: new, learning, review, relearning"
167
166
  }),
168
- reviewedAt: field.dateTime({ description: "When reviewed" }),
169
- createdAt: field.createdAt(),
170
- learner: field.belongsTo("Learner", ["learnerId"], ["id"], { onDelete: "Cascade" }),
171
- card: field.belongsTo("Card", ["cardId"], ["id"], { onDelete: "Cascade" })
167
+ reviewedAt: _5.dateTime({ description: "When reviewed" }),
168
+ createdAt: _5.createdAt(),
169
+ learner: _5.belongsTo("Learner", ["learnerId"], ["id"], { onDelete: "Cascade" }),
170
+ card: _5.belongsTo("Card", ["cardId"], ["id"], { onDelete: "Cascade" })
172
171
  },
173
172
  indexes: [
174
- index.on(["learnerId", "reviewedAt"]),
175
- index.on(["cardId", "reviewedAt"]),
176
- index.on(["rating"])
173
+ b5.on(["learnerId", "reviewedAt"]),
174
+ b5.on(["cardId", "reviewedAt"]),
175
+ b5.on(["rating"])
177
176
  ],
178
177
  enums: [CardRatingEnum]
179
178
  });
180
179
  /**
181
180
  * CardSchedule entity - SRS scheduling per learner/card.
182
181
  */
183
- const CardScheduleEntity = defineEntity({
182
+ const CardScheduleEntity = L5({
184
183
  name: "CardSchedule",
185
184
  description: "SRS schedule for a learner/card pair.",
186
185
  schema: "lssm_learning",
187
186
  map: "card_schedule",
188
187
  fields: {
189
- id: field.id({ description: "Unique schedule identifier" }),
190
- learnerId: field.foreignKey({ description: "Learner" }),
191
- cardId: field.foreignKey({ description: "Card" }),
192
- interval: field.int({
188
+ id: _5.id({ description: "Unique schedule identifier" }),
189
+ learnerId: _5.foreignKey({ description: "Learner" }),
190
+ cardId: _5.foreignKey({ description: "Card" }),
191
+ interval: _5.int({
193
192
  default: 0,
194
193
  description: "Current interval in days"
195
194
  }),
196
- easeFactor: field.decimal({
195
+ easeFactor: _5.decimal({
197
196
  default: 2.5,
198
197
  description: "Ease factor (SM-2)"
199
198
  }),
200
- repetitions: field.int({
199
+ repetitions: _5.int({
201
200
  default: 0,
202
201
  description: "Number of successful repetitions"
203
202
  }),
204
- nextReviewAt: field.dateTime({ description: "When next review is due" }),
205
- lastReviewAt: field.dateTime({
203
+ nextReviewAt: _5.dateTime({ description: "When next review is due" }),
204
+ lastReviewAt: _5.dateTime({
206
205
  isOptional: true,
207
206
  description: "When last reviewed"
208
207
  }),
209
- learningStep: field.int({
208
+ learningStep: _5.int({
210
209
  default: 0,
211
210
  description: "Current learning step"
212
211
  }),
213
- isGraduated: field.boolean({
212
+ isGraduated: _5.boolean({
214
213
  default: false,
215
214
  description: "Whether card has graduated"
216
215
  }),
217
- isRelearning: field.boolean({
216
+ isRelearning: _5.boolean({
218
217
  default: false,
219
218
  description: "Whether card is being relearned"
220
219
  }),
221
- lapses: field.int({
220
+ lapses: _5.int({
222
221
  default: 0,
223
222
  description: "Number of times card was forgotten"
224
223
  }),
225
- reviewCount: field.int({
224
+ reviewCount: _5.int({
226
225
  default: 0,
227
226
  description: "Total review count"
228
227
  }),
229
- createdAt: field.createdAt(),
230
- updatedAt: field.updatedAt(),
231
- learner: field.belongsTo("Learner", ["learnerId"], ["id"], { onDelete: "Cascade" }),
232
- card: field.belongsTo("Card", ["cardId"], ["id"], { onDelete: "Cascade" })
228
+ createdAt: _5.createdAt(),
229
+ updatedAt: _5.updatedAt(),
230
+ learner: _5.belongsTo("Learner", ["learnerId"], ["id"], { onDelete: "Cascade" }),
231
+ card: _5.belongsTo("Card", ["cardId"], ["id"], { onDelete: "Cascade" })
233
232
  },
234
233
  indexes: [
235
- index.unique(["learnerId", "cardId"], { name: "card_schedule_unique" }),
236
- index.on(["learnerId", "nextReviewAt"]),
237
- index.on(["nextReviewAt"])
234
+ b5.unique(["learnerId", "cardId"], { name: "card_schedule_unique" }),
235
+ b5.on(["learnerId", "nextReviewAt"]),
236
+ b5.on(["nextReviewAt"])
238
237
  ]
239
238
  });
240
239
  const flashcardEntities = [
@@ -246,4 +245,5 @@ const flashcardEntities = [
246
245
  const flashcardEnums = [CardRatingEnum];
247
246
 
248
247
  //#endregion
249
- export { CardEntity, CardRatingEnum, CardReviewEntity, CardScheduleEntity, DeckEntity, flashcardEntities, flashcardEnums };
248
+ export { CardEntity, CardRatingEnum, CardReviewEntity, CardScheduleEntity, DeckEntity, flashcardEntities, flashcardEnums };
249
+ //# sourceMappingURL=flashcard.js.map