@lssm/example.learning-journey-ui-coaching 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 (212) hide show
  1. package/.turbo/turbo-build$colon$bundle.log +483 -22
  2. package/.turbo/turbo-build.log +484 -24
  3. package/CHANGELOG.md +9 -9
  4. package/LICENSE +21 -0
  5. package/dist/CoachingMiniApp.d.ts +17 -0
  6. package/dist/CoachingMiniApp.d.ts.map +1 -0
  7. package/dist/CoachingMiniApp.js +65 -0
  8. package/dist/CoachingMiniApp.js.map +1 -0
  9. package/dist/components/EngagementMeter.d.ts +18 -0
  10. package/dist/components/EngagementMeter.d.ts.map +1 -0
  11. package/dist/components/EngagementMeter.js +108 -0
  12. package/dist/components/EngagementMeter.js.map +1 -0
  13. package/dist/components/TipCard.d.ts +21 -0
  14. package/dist/components/TipCard.d.ts.map +1 -0
  15. package/dist/components/TipCard.js +76 -0
  16. package/dist/components/TipCard.js.map +1 -0
  17. package/dist/components/TipFeed.d.ts +18 -0
  18. package/dist/components/TipFeed.d.ts.map +1 -0
  19. package/dist/components/TipFeed.js +66 -0
  20. package/dist/components/TipFeed.js.map +1 -0
  21. package/dist/components/index.d.ts +4 -0
  22. package/dist/components/index.js +5 -0
  23. package/dist/docs/index.d.ts +1 -0
  24. package/dist/docs/index.js +1 -0
  25. package/dist/docs/learning-journey-ui-coaching.docblock.d.ts +1 -0
  26. package/dist/docs/learning-journey-ui-coaching.docblock.js +21 -0
  27. package/dist/docs/learning-journey-ui-coaching.docblock.js.map +1 -0
  28. package/dist/{index.d.mts → example.d.ts} +2 -18
  29. package/dist/example.d.ts.map +1 -0
  30. package/dist/example.js +35 -0
  31. package/dist/example.js.map +1 -0
  32. package/dist/examples/learning-journey-ui-shared/dist/components/BadgeDisplay.js +45 -0
  33. package/dist/examples/learning-journey-ui-shared/dist/components/BadgeDisplay.js.map +1 -0
  34. package/dist/examples/learning-journey-ui-shared/dist/components/StreakCounter.js +46 -0
  35. package/dist/examples/learning-journey-ui-shared/dist/components/StreakCounter.js.map +1 -0
  36. package/dist/examples/learning-journey-ui-shared/dist/components/ViewTabs.js +49 -0
  37. package/dist/examples/learning-journey-ui-shared/dist/components/ViewTabs.js.map +1 -0
  38. package/dist/examples/learning-journey-ui-shared/dist/components/XpBar.js +47 -0
  39. package/dist/examples/learning-journey-ui-shared/dist/components/XpBar.js.map +1 -0
  40. package/dist/examples/learning-journey-ui-shared/dist/components/index.js +4 -0
  41. package/dist/examples/learning-journey-ui-shared/dist/docs/index.js +1 -0
  42. package/dist/examples/learning-journey-ui-shared/dist/docs/learning-journey-ui-shared.docblock.js +21 -0
  43. package/dist/examples/learning-journey-ui-shared/dist/docs/learning-journey-ui-shared.docblock.js.map +1 -0
  44. package/dist/examples/learning-journey-ui-shared/dist/hooks/index.js +1 -0
  45. package/dist/examples/learning-journey-ui-shared/dist/hooks/useLearningProgress.js +74 -0
  46. package/dist/examples/learning-journey-ui-shared/dist/hooks/useLearningProgress.js.map +1 -0
  47. package/dist/examples/learning-journey-ui-shared/dist/index.js +8 -0
  48. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +16 -0
  49. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +1 -0
  50. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/index.js +24 -0
  51. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/meta.docs.js +29 -0
  52. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/meta.docs.js.map +1 -0
  53. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/presentations.js +72 -0
  54. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/presentations.js.map +1 -0
  55. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/registry.js +45 -0
  56. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/registry.js.map +1 -0
  57. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +80 -0
  58. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +1 -0
  59. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +57 -0
  60. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +1 -0
  61. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +16 -0
  62. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +1 -0
  63. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +357 -0
  64. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +1 -0
  65. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +37 -0
  66. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +1 -0
  67. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +16 -0
  68. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +1 -0
  69. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +20 -0
  70. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +1 -0
  71. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +48 -0
  72. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +1 -0
  73. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +79 -0
  74. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +1 -0
  75. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +84 -0
  76. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +1 -0
  77. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +45 -0
  78. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +1 -0
  79. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +67 -0
  80. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +1 -0
  81. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +40 -0
  82. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +1 -0
  83. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +69 -0
  84. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +1 -0
  85. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +47 -0
  86. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +1 -0
  87. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +62 -0
  88. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +1 -0
  89. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +155 -0
  90. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +1 -0
  91. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +20 -0
  92. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +1 -0
  93. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +101 -0
  94. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +1 -0
  95. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +20 -0
  96. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js.map +1 -0
  97. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech-contracts.docs.js +96 -0
  98. package/dist/examples/learning-journey-ui-shared/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +1 -0
  99. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/_virtual/rolldown_runtime.js +6 -0
  100. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/_virtual/rolldown_runtime.js.map +1 -0
  101. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/components/atoms/Button.js +34 -0
  102. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/components/atoms/Button.js.map +1 -0
  103. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/ui-kit-web/dist/ui/button.js +56 -0
  104. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/ui-kit-web/dist/ui/button.js.map +1 -0
  105. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/ui-kit-web/dist/ui-kit-core/dist/utils.js +14 -0
  106. package/dist/examples/learning-journey-ui-shared/dist/libs/design-system/dist/ui-kit-web/dist/ui-kit-core/dist/utils.js.map +1 -0
  107. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui/progress.js +24 -0
  108. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui/progress.js.map +1 -0
  109. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui/utils.js +11 -0
  110. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui/utils.js.map +1 -0
  111. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui-kit-core/dist/utils.js +11 -0
  112. package/dist/examples/learning-journey-ui-shared/dist/libs/ui-kit-web/dist/ui-kit-core/dist/utils.js.map +1 -0
  113. package/dist/index.d.ts +12 -0
  114. package/dist/index.js +14 -0
  115. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +17 -0
  116. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js.map +1 -0
  117. package/dist/libs/contracts/dist/docs/index.js +25 -0
  118. package/dist/libs/contracts/dist/docs/meta.docs.js +30 -0
  119. package/dist/libs/contracts/dist/docs/meta.docs.js.map +1 -0
  120. package/dist/libs/contracts/dist/docs/presentations.js +72 -0
  121. package/dist/libs/contracts/dist/docs/presentations.js.map +1 -0
  122. package/dist/libs/contracts/dist/docs/registry.js +45 -0
  123. package/dist/libs/contracts/dist/docs/registry.js.map +1 -0
  124. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +81 -0
  125. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js.map +1 -0
  126. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +58 -0
  127. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js.map +1 -0
  128. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +17 -0
  129. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js.map +1 -0
  130. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +358 -0
  131. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js.map +1 -0
  132. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +38 -0
  133. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js.map +1 -0
  134. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +17 -0
  135. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js.map +1 -0
  136. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +21 -0
  137. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js.map +1 -0
  138. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +49 -0
  139. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js.map +1 -0
  140. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +80 -0
  141. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js.map +1 -0
  142. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +85 -0
  143. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js.map +1 -0
  144. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +46 -0
  145. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js.map +1 -0
  146. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +68 -0
  147. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js.map +1 -0
  148. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +41 -0
  149. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js.map +1 -0
  150. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +70 -0
  151. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js.map +1 -0
  152. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +48 -0
  153. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js.map +1 -0
  154. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +63 -0
  155. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js.map +1 -0
  156. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +156 -0
  157. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js.map +1 -0
  158. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +21 -0
  159. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js.map +1 -0
  160. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +102 -0
  161. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js.map +1 -0
  162. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +21 -0
  163. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js.map +1 -0
  164. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js +97 -0
  165. package/dist/libs/contracts/dist/docs/tech-contracts.docs.js.map +1 -0
  166. package/dist/libs/design-system/dist/_virtual/rolldown_runtime.js +6 -0
  167. package/dist/libs/design-system/dist/_virtual/rolldown_runtime.js.map +1 -0
  168. package/dist/libs/design-system/dist/components/atoms/Button.js +34 -0
  169. package/dist/libs/design-system/dist/components/atoms/Button.js.map +1 -0
  170. package/dist/libs/design-system/dist/ui-kit-web/dist/ui/button.js +56 -0
  171. package/dist/libs/design-system/dist/ui-kit-web/dist/ui/button.js.map +1 -0
  172. package/dist/libs/design-system/dist/ui-kit-web/dist/ui-kit-core/dist/utils.js +14 -0
  173. package/dist/libs/design-system/dist/ui-kit-web/dist/ui-kit-core/dist/utils.js.map +1 -0
  174. package/dist/libs/ui-kit-web/dist/ui/card.js +37 -0
  175. package/dist/libs/ui-kit-web/dist/ui/card.js.map +1 -0
  176. package/dist/libs/ui-kit-web/dist/ui/utils.js +11 -0
  177. package/dist/libs/ui-kit-web/dist/ui/utils.js.map +1 -0
  178. package/dist/libs/ui-kit-web/dist/ui-kit-core/dist/utils.js +11 -0
  179. package/dist/libs/ui-kit-web/dist/ui-kit-core/dist/utils.js.map +1 -0
  180. package/dist/views/Overview.d.ts +16 -0
  181. package/dist/views/Overview.d.ts.map +1 -0
  182. package/dist/views/Overview.js +153 -0
  183. package/dist/views/Overview.js.map +1 -0
  184. package/dist/views/Progress.d.ts +11 -0
  185. package/dist/views/Progress.d.ts.map +1 -0
  186. package/dist/views/Progress.js +118 -0
  187. package/dist/views/Progress.js.map +1 -0
  188. package/dist/views/Steps.d.ts +12 -0
  189. package/dist/views/Steps.d.ts.map +1 -0
  190. package/dist/views/Steps.js +69 -0
  191. package/dist/views/Steps.js.map +1 -0
  192. package/dist/views/Timeline.d.ts +11 -0
  193. package/dist/views/Timeline.d.ts.map +1 -0
  194. package/dist/views/Timeline.js +113 -0
  195. package/dist/views/Timeline.js.map +1 -0
  196. package/dist/views/index.d.ts +5 -0
  197. package/dist/views/index.js +6 -0
  198. package/package.json +28 -18
  199. package/src/components/EngagementMeter.tsx +0 -2
  200. package/src/components/TipFeed.tsx +1 -1
  201. package/tsconfig.tsbuildinfo +1 -1
  202. package/tsdown.config.js +14 -10
  203. package/dist/TipFeed-_1oKR35X.mjs +0 -234
  204. package/dist/components/index.d.mts +0 -2
  205. package/dist/components/index.mjs +0 -4
  206. package/dist/components-kh0CpIG2.mjs +0 -1
  207. package/dist/index-BH0UbqIy.d.mts +0 -47
  208. package/dist/index-BjhNDTSh.d.mts +0 -34
  209. package/dist/index.mjs +0 -110
  210. package/dist/views/index.d.mts +0 -2
  211. package/dist/views/index.mjs +0 -4
  212. package/dist/views-BTGcWRSz.mjs +0 -421
package/tsdown.config.js CHANGED
@@ -1,13 +1,17 @@
1
1
  import { defineConfig } from 'tsdown';
2
+ import { moduleLibrary, withDevExports } from '@lssm/tool.tsdown';
3
+
4
+ export default defineConfig(() => ({
5
+ ...moduleLibrary,
6
+ ...withDevExports,
7
+ }));
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
2
16
 
3
- export default defineConfig({
4
- entry: [
5
- 'src/index.ts',
6
- 'src/views/index.ts',
7
- 'src/components/index.ts',
8
- ],
9
- format: 'esm',
10
- target: 'esnext',
11
- dts: true,
12
- });
13
17
 
@@ -1,234 +0,0 @@
1
- import { Card, CardContent } from "@lssm/lib.ui-kit-web/ui/card";
2
- import { Button } from "@lssm/lib.design-system";
3
- import { cn } from "@lssm/lib.ui-kit-web/ui/utils";
4
- import { jsx, jsxs } from "react/jsx-runtime";
5
-
6
- //#region src/components/TipCard.tsx
7
- const TIP_ICONS$1 = {
8
- cash_buffer_too_high: "💰",
9
- no_savings_goal: "🎯",
10
- irregular_savings: "📅",
11
- noise_late_evening: "🔇",
12
- guest_frequency_high: "👥",
13
- shared_space_conflicts: "🏠",
14
- default: "💡"
15
- };
16
- function TipCard({ step, isCompleted, isCurrent, onComplete, onDismiss }) {
17
- const icon = TIP_ICONS$1[step.metadata?.tipId ?? "default"] ?? TIP_ICONS$1.default;
18
- return /* @__PURE__ */ jsx(Card, {
19
- className: cn("transition-all", isCompleted && "opacity-60", isCurrent && "ring-2 ring-amber-500"),
20
- children: /* @__PURE__ */ jsx(CardContent, {
21
- className: "p-4",
22
- children: /* @__PURE__ */ jsxs("div", {
23
- className: "flex gap-4",
24
- children: [/* @__PURE__ */ jsx("div", {
25
- className: cn("flex h-12 w-12 shrink-0 items-center justify-center rounded-xl text-2xl", isCompleted ? "bg-green-500/10" : isCurrent ? "bg-amber-500/10" : "bg-muted"),
26
- children: isCompleted ? "✓" : icon
27
- }), /* @__PURE__ */ jsxs("div", {
28
- className: "min-w-0 flex-1",
29
- children: [
30
- /* @__PURE__ */ jsxs("div", {
31
- className: "flex items-start justify-between gap-2",
32
- children: [/* @__PURE__ */ jsx("h4", {
33
- className: "font-semibold",
34
- children: step.title
35
- }), step.xpReward && /* @__PURE__ */ jsxs("span", {
36
- className: cn("shrink-0 rounded-full px-2 py-0.5 text-xs font-semibold", isCompleted ? "bg-green-500/10 text-green-500" : "bg-amber-500/10 text-amber-500"),
37
- children: [
38
- "+",
39
- step.xpReward,
40
- " XP"
41
- ]
42
- })]
43
- }),
44
- /* @__PURE__ */ jsx("p", {
45
- className: "text-muted-foreground mt-1 text-sm",
46
- children: step.description
47
- }),
48
- !isCompleted && /* @__PURE__ */ jsxs("div", {
49
- className: "mt-3 flex flex-wrap gap-2",
50
- children: [/* @__PURE__ */ jsx(Button, {
51
- size: "sm",
52
- onClick: onComplete,
53
- children: "Take Action"
54
- }), /* @__PURE__ */ jsx(Button, {
55
- variant: "outline",
56
- size: "sm",
57
- onClick: onDismiss,
58
- children: "Dismiss"
59
- })]
60
- }),
61
- isCompleted && /* @__PURE__ */ jsx("p", {
62
- className: "mt-2 text-sm text-green-500",
63
- children: "✓ Tip acknowledged"
64
- })
65
- ]
66
- })]
67
- })
68
- })
69
- });
70
- }
71
-
72
- //#endregion
73
- //#region src/components/EngagementMeter.tsx
74
- function EngagementMeter({ acknowledged, actioned, pending, streak = 0 }) {
75
- const total = acknowledged + actioned + pending;
76
- const actionedPercent = total > 0 ? actioned / total * 100 : 0;
77
- const acknowledgedPercent = total > 0 ? acknowledged / total * 100 : 0;
78
- return /* @__PURE__ */ jsxs("div", {
79
- className: "space-y-4",
80
- children: [
81
- /* @__PURE__ */ jsx("div", {
82
- className: "flex items-center justify-center",
83
- children: /* @__PURE__ */ jsxs("div", {
84
- className: "relative h-32 w-32",
85
- children: [/* @__PURE__ */ jsxs("svg", {
86
- className: "h-full w-full -rotate-90",
87
- viewBox: "0 0 100 100",
88
- children: [
89
- /* @__PURE__ */ jsx("circle", {
90
- cx: "50",
91
- cy: "50",
92
- r: "40",
93
- fill: "none",
94
- strokeWidth: "12",
95
- className: "stroke-muted"
96
- }),
97
- /* @__PURE__ */ jsx("circle", {
98
- cx: "50",
99
- cy: "50",
100
- r: "40",
101
- fill: "none",
102
- strokeWidth: "12",
103
- strokeLinecap: "round",
104
- strokeDasharray: `${actionedPercent * 2.51} 251`,
105
- className: "stroke-green-500 transition-all duration-500"
106
- }),
107
- /* @__PURE__ */ jsx("circle", {
108
- cx: "50",
109
- cy: "50",
110
- r: "40",
111
- fill: "none",
112
- strokeWidth: "12",
113
- strokeLinecap: "round",
114
- strokeDasharray: `${acknowledgedPercent * 2.51} 251`,
115
- strokeDashoffset: `${-actionedPercent * 2.51}`,
116
- className: "stroke-amber-500 transition-all duration-500"
117
- })
118
- ]
119
- }), /* @__PURE__ */ jsxs("div", {
120
- className: "absolute inset-0 flex flex-col items-center justify-center",
121
- children: [/* @__PURE__ */ jsx("span", {
122
- className: "text-2xl font-bold",
123
- children: total
124
- }), /* @__PURE__ */ jsx("span", {
125
- className: "text-muted-foreground text-xs",
126
- children: "tips"
127
- })]
128
- })]
129
- })
130
- }),
131
- /* @__PURE__ */ jsxs("div", {
132
- className: "flex justify-center gap-4 text-sm",
133
- children: [
134
- /* @__PURE__ */ jsxs("div", {
135
- className: "flex items-center gap-1.5",
136
- children: [/* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full bg-green-500" }), /* @__PURE__ */ jsxs("span", { children: [
137
- "Actioned (",
138
- actioned,
139
- ")"
140
- ] })]
141
- }),
142
- /* @__PURE__ */ jsxs("div", {
143
- className: "flex items-center gap-1.5",
144
- children: [/* @__PURE__ */ jsx("div", { className: "h-3 w-3 rounded-full bg-amber-500" }), /* @__PURE__ */ jsxs("span", { children: [
145
- "Acknowledged (",
146
- acknowledged,
147
- ")"
148
- ] })]
149
- }),
150
- /* @__PURE__ */ jsxs("div", {
151
- className: "flex items-center gap-1.5",
152
- children: [/* @__PURE__ */ jsx("div", { className: "bg-muted h-3 w-3 rounded-full" }), /* @__PURE__ */ jsxs("span", { children: [
153
- "Pending (",
154
- pending,
155
- ")"
156
- ] })]
157
- })
158
- ]
159
- }),
160
- streak > 0 && /* @__PURE__ */ jsxs("div", {
161
- className: "flex items-center justify-center gap-2 rounded-lg bg-orange-500/10 px-4 py-2",
162
- children: [/* @__PURE__ */ jsx("span", {
163
- className: "text-xl",
164
- children: "🔥"
165
- }), /* @__PURE__ */ jsxs("span", {
166
- className: "font-semibold text-orange-500",
167
- children: [streak, " day engagement streak!"]
168
- })]
169
- })
170
- ]
171
- });
172
- }
173
-
174
- //#endregion
175
- //#region src/components/TipFeed.tsx
176
- const TIP_ICONS = {
177
- cash_buffer_too_high: "💰",
178
- no_savings_goal: "🎯",
179
- irregular_savings: "📅",
180
- noise_late_evening: "🔇",
181
- guest_frequency_high: "👥",
182
- shared_space_conflicts: "🏠",
183
- default: "💡"
184
- };
185
- function TipFeed({ items }) {
186
- if (items.length === 0) return /* @__PURE__ */ jsx("div", {
187
- className: "text-muted-foreground py-8 text-center",
188
- children: "No tips yet. Start engaging with coaching tips!"
189
- });
190
- return /* @__PURE__ */ jsxs("div", {
191
- className: "relative",
192
- children: [/* @__PURE__ */ jsx("div", { className: "bg-border absolute top-0 left-4 h-full w-0.5" }), /* @__PURE__ */ jsx("div", {
193
- className: "space-y-4",
194
- children: items.map((item, index) => {
195
- const icon = TIP_ICONS[item.step.metadata?.tipId ?? "default"] ?? TIP_ICONS.default;
196
- return /* @__PURE__ */ jsxs("div", {
197
- className: "relative flex gap-4 pl-2",
198
- children: [/* @__PURE__ */ jsx("div", {
199
- className: cn("relative z-10 flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-sm", item.isCompleted ? "bg-green-500 text-white" : "bg-muted text-muted-foreground"),
200
- children: item.isCompleted ? "✓" : icon
201
- }), /* @__PURE__ */ jsxs("div", {
202
- className: "bg-card flex-1 rounded-lg border p-3",
203
- children: [/* @__PURE__ */ jsxs("div", {
204
- className: "flex items-start justify-between gap-2",
205
- children: [/* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
206
- className: "font-medium",
207
- children: item.step.title
208
- }), /* @__PURE__ */ jsx("p", {
209
- className: "text-muted-foreground mt-0.5 text-sm",
210
- children: item.step.description
211
- })] }), item.step.xpReward && /* @__PURE__ */ jsxs("span", {
212
- className: cn("shrink-0 text-xs font-medium", item.isCompleted ? "text-green-500" : "text-muted-foreground"),
213
- children: [
214
- "+",
215
- item.step.xpReward,
216
- " XP"
217
- ]
218
- })]
219
- }), /* @__PURE__ */ jsx("div", {
220
- className: "text-muted-foreground mt-2 flex items-center gap-2 text-xs",
221
- children: item.isCompleted ? /* @__PURE__ */ jsxs("span", {
222
- className: "text-green-500",
223
- children: ["✓ Completed", item.completedAt && ` • ${item.completedAt}`]
224
- }) : /* @__PURE__ */ jsx("span", { children: "Pending action" })
225
- })]
226
- })]
227
- }, item.step.id);
228
- })
229
- })]
230
- });
231
- }
232
-
233
- //#endregion
234
- export { EngagementMeter as n, TipCard as r, TipFeed as t };
@@ -1,2 +0,0 @@
1
- import { n as EngagementMeter, r as TipCard, t as TipFeed } from "../index-BH0UbqIy.mjs";
2
- export { EngagementMeter, TipCard, TipFeed };
@@ -1,4 +0,0 @@
1
- import { n as EngagementMeter, r as TipCard, t as TipFeed } from "../TipFeed-_1oKR35X.mjs";
2
- import "../components-kh0CpIG2.mjs";
3
-
4
- export { EngagementMeter, TipCard, TipFeed };
@@ -1 +0,0 @@
1
- export { };
@@ -1,47 +0,0 @@
1
- import * as react_jsx_runtime0 from "react/jsx-runtime";
2
- import { LearningJourneyStepSpec } from "@lssm/module.learning-journey/track-spec";
3
-
4
- //#region src/components/TipCard.d.ts
5
- interface TipCardProps {
6
- step: LearningJourneyStepSpec;
7
- isCompleted: boolean;
8
- isCurrent: boolean;
9
- onComplete?: () => void;
10
- onDismiss?: () => void;
11
- }
12
- declare function TipCard({
13
- step,
14
- isCompleted,
15
- isCurrent,
16
- onComplete,
17
- onDismiss
18
- }: TipCardProps): react_jsx_runtime0.JSX.Element;
19
- //#endregion
20
- //#region src/components/EngagementMeter.d.ts
21
- interface EngagementMeterProps {
22
- acknowledged: number;
23
- actioned: number;
24
- pending: number;
25
- streak?: number;
26
- }
27
- declare function EngagementMeter({
28
- acknowledged,
29
- actioned,
30
- pending,
31
- streak
32
- }: EngagementMeterProps): react_jsx_runtime0.JSX.Element;
33
- //#endregion
34
- //#region src/components/TipFeed.d.ts
35
- interface TipFeedItem {
36
- step: LearningJourneyStepSpec;
37
- isCompleted: boolean;
38
- completedAt?: string;
39
- }
40
- interface TipFeedProps {
41
- items: TipFeedItem[];
42
- }
43
- declare function TipFeed({
44
- items
45
- }: TipFeedProps): react_jsx_runtime0.JSX.Element;
46
- //#endregion
47
- export { EngagementMeter as n, TipCard as r, TipFeed as t };
@@ -1,34 +0,0 @@
1
- import { LearningViewProps } from "@lssm/example.learning-journey-ui-shared";
2
- import * as react_jsx_runtime4 from "react/jsx-runtime";
3
-
4
- //#region src/views/Overview.d.ts
5
- interface CoachingOverviewProps extends LearningViewProps {
6
- onStart?: () => void;
7
- }
8
- declare function Overview({
9
- track,
10
- progress,
11
- onStepComplete,
12
- onStart
13
- }: CoachingOverviewProps): react_jsx_runtime4.JSX.Element;
14
- //#endregion
15
- //#region src/views/Steps.d.ts
16
- declare function Steps({
17
- track,
18
- progress,
19
- onStepComplete
20
- }: LearningViewProps): react_jsx_runtime4.JSX.Element;
21
- //#endregion
22
- //#region src/views/Progress.d.ts
23
- declare function ProgressView({
24
- track,
25
- progress
26
- }: LearningViewProps): react_jsx_runtime4.JSX.Element;
27
- //#endregion
28
- //#region src/views/Timeline.d.ts
29
- declare function Timeline({
30
- track,
31
- progress
32
- }: LearningViewProps): react_jsx_runtime4.JSX.Element;
33
- //#endregion
34
- export { Overview as i, ProgressView as n, Steps as r, Timeline as t };
package/dist/index.mjs DELETED
@@ -1,110 +0,0 @@
1
- import { n as EngagementMeter, r as TipCard, t as TipFeed } from "./TipFeed-_1oKR35X.mjs";
2
- import { i as Overview, n as ProgressView, r as Steps, t as Timeline } from "./views-BTGcWRSz.mjs";
3
- import "./components-kh0CpIG2.mjs";
4
- import { useCallback, useState } from "react";
5
- import { Card, CardContent } from "@lssm/lib.ui-kit-web/ui/card";
6
- import { ViewTabs, useLearningProgress } from "@lssm/example.learning-journey-ui-shared";
7
- import { jsx, jsxs } from "react/jsx-runtime";
8
- import { registerDocBlocks } from "@lssm/lib.contracts/docs";
9
-
10
- //#region src/CoachingMiniApp.tsx
11
- function CoachingMiniApp({ track, progress: externalProgress, onStepComplete: externalOnStepComplete, onViewChange, initialView = "overview" }) {
12
- const [currentView, setCurrentView] = useState(initialView);
13
- const { progress: internalProgress, completeStep: internalCompleteStep } = useLearningProgress(track);
14
- const progress = externalProgress ?? internalProgress;
15
- const handleViewChange = useCallback((view) => {
16
- setCurrentView(view);
17
- onViewChange?.(view);
18
- }, [onViewChange]);
19
- const handleStepComplete = useCallback((stepId) => {
20
- if (externalOnStepComplete) externalOnStepComplete(stepId);
21
- else internalCompleteStep(stepId);
22
- }, [externalOnStepComplete, internalCompleteStep]);
23
- const handleStartFromOverview = useCallback(() => {
24
- setCurrentView("steps");
25
- onViewChange?.("steps");
26
- }, [onViewChange]);
27
- const renderView = () => {
28
- const viewProps = {
29
- track,
30
- progress,
31
- onStepComplete: handleStepComplete
32
- };
33
- switch (currentView) {
34
- case "overview": return /* @__PURE__ */ jsx(Overview, {
35
- ...viewProps,
36
- onStart: handleStartFromOverview
37
- });
38
- case "steps": return /* @__PURE__ */ jsx(Steps, { ...viewProps });
39
- case "progress": return /* @__PURE__ */ jsx(ProgressView, { ...viewProps });
40
- case "timeline": return /* @__PURE__ */ jsx(Timeline, { ...viewProps });
41
- default: return /* @__PURE__ */ jsx(Overview, {
42
- ...viewProps,
43
- onStart: handleStartFromOverview
44
- });
45
- }
46
- };
47
- return /* @__PURE__ */ jsxs("div", {
48
- className: "space-y-6",
49
- children: [/* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsx(CardContent, {
50
- className: "p-4",
51
- children: /* @__PURE__ */ jsx(ViewTabs, {
52
- currentView,
53
- onViewChange: handleViewChange
54
- })
55
- }) }), renderView()]
56
- });
57
- }
58
-
59
- //#endregion
60
- //#region src/example.ts
61
- const example = {
62
- id: "learning-journey-ui-coaching",
63
- title: "Learning Journey UI — Coaching",
64
- summary: "UI mini-app for coaching patterns: tips, engagement meter, progress.",
65
- tags: [
66
- "learning",
67
- "ui",
68
- "coaching"
69
- ],
70
- kind: "ui",
71
- visibility: "public",
72
- docs: { rootDocId: "docs.examples.learning-journey-ui-coaching" },
73
- entrypoints: {
74
- packageName: "@lssm/example.learning-journey-ui-coaching",
75
- docs: "./docs"
76
- },
77
- surfaces: {
78
- templates: true,
79
- sandbox: {
80
- enabled: true,
81
- modes: ["playground", "markdown"]
82
- },
83
- studio: {
84
- enabled: true,
85
- installable: true
86
- },
87
- mcp: { enabled: true }
88
- }
89
- };
90
- var example_default = example;
91
-
92
- //#endregion
93
- //#region src/docs/learning-journey-ui-coaching.docblock.ts
94
- registerDocBlocks([{
95
- id: "docs.examples.learning-journey-ui-coaching",
96
- title: "Learning Journey UI — Coaching",
97
- summary: "UI mini-app components for coaching: tips, engagement, progress.",
98
- kind: "reference",
99
- visibility: "public",
100
- route: "/docs/examples/learning-journey-ui-coaching",
101
- tags: [
102
- "learning",
103
- "ui",
104
- "coaching"
105
- ],
106
- body: `## Includes\n- Coaching mini-app shell\n- Views: overview, steps, progress, timeline\n- Components: tip card, engagement meter, tip feed\n\n## Notes\n- Compose using design system components.\n- Keep accessibility and mobile-friendly tap targets.`
107
- }]);
108
-
109
- //#endregion
110
- export { CoachingMiniApp, EngagementMeter, Overview, ProgressView as Progress, Steps, Timeline, TipCard, TipFeed, example_default as example };
@@ -1,2 +0,0 @@
1
- import { i as Overview, n as ProgressView, r as Steps, t as Timeline } from "../index-BjhNDTSh.mjs";
2
- export { Overview, ProgressView as Progress, Steps, Timeline };
@@ -1,4 +0,0 @@
1
- import "../TipFeed-_1oKR35X.mjs";
2
- import { i as Overview, n as ProgressView, r as Steps, t as Timeline } from "../views-BTGcWRSz.mjs";
3
-
4
- export { Overview, ProgressView as Progress, Steps, Timeline };