@contractspec/example.learning-journey-ui-coaching 3.7.5 → 3.7.7

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 (57) hide show
  1. package/.turbo/turbo-build.log +3 -3
  2. package/AGENTS.md +50 -25
  3. package/CHANGELOG.md +14 -0
  4. package/README.md +63 -20
  5. package/dist/CoachingMiniApp.js +178 -178
  6. package/dist/browser/CoachingMiniApp.js +178 -178
  7. package/dist/browser/components/EngagementMeter.js +2 -2
  8. package/dist/browser/components/TipCard.js +3 -3
  9. package/dist/browser/components/TipFeed.js +6 -6
  10. package/dist/browser/components/index.js +11 -11
  11. package/dist/browser/index.js +179 -178
  12. package/dist/browser/views/Overview.js +16 -16
  13. package/dist/browser/views/Progress.js +10 -10
  14. package/dist/browser/views/Steps.js +6 -6
  15. package/dist/browser/views/Timeline.js +9 -9
  16. package/dist/browser/views/index.js +174 -174
  17. package/dist/components/EngagementMeter.js +2 -2
  18. package/dist/components/TipCard.js +3 -3
  19. package/dist/components/TipFeed.js +6 -6
  20. package/dist/components/index.d.ts +1 -1
  21. package/dist/components/index.js +11 -11
  22. package/dist/index.d.ts +3 -3
  23. package/dist/index.js +179 -178
  24. package/dist/node/CoachingMiniApp.js +178 -178
  25. package/dist/node/components/EngagementMeter.js +2 -2
  26. package/dist/node/components/TipCard.js +3 -3
  27. package/dist/node/components/TipFeed.js +6 -6
  28. package/dist/node/components/index.js +11 -11
  29. package/dist/node/index.js +179 -178
  30. package/dist/node/views/Overview.js +16 -16
  31. package/dist/node/views/Progress.js +10 -10
  32. package/dist/node/views/Steps.js +6 -6
  33. package/dist/node/views/Timeline.js +9 -9
  34. package/dist/node/views/index.js +174 -174
  35. package/dist/views/Overview.js +16 -16
  36. package/dist/views/Progress.js +10 -10
  37. package/dist/views/Steps.js +6 -6
  38. package/dist/views/Timeline.js +9 -9
  39. package/dist/views/index.d.ts +1 -1
  40. package/dist/views/index.js +174 -174
  41. package/package.json +12 -12
  42. package/src/CoachingMiniApp.tsx +70 -70
  43. package/src/components/EngagementMeter.tsx +82 -82
  44. package/src/components/TipCard.tsx +81 -81
  45. package/src/components/TipFeed.tsx +80 -80
  46. package/src/components/index.ts +1 -1
  47. package/src/docs/learning-journey-ui-coaching.docblock.ts +10 -10
  48. package/src/example.ts +25 -25
  49. package/src/index.ts +4 -6
  50. package/src/learning-journey-ui-coaching.feature.ts +12 -12
  51. package/src/views/Overview.tsx +136 -136
  52. package/src/views/Progress.tsx +146 -146
  53. package/src/views/Steps.tsx +57 -57
  54. package/src/views/Timeline.tsx +101 -101
  55. package/src/views/index.ts +1 -1
  56. package/tsconfig.json +7 -8
  57. package/tsdown.config.js +7 -13
@@ -57,7 +57,7 @@ function EngagementMeter({
57
57
  className: "absolute inset-0 flex flex-col items-center justify-center",
58
58
  children: [
59
59
  /* @__PURE__ */ jsxDEV("span", {
60
- className: "text-2xl font-bold",
60
+ className: "font-bold text-2xl",
61
61
  children: total
62
62
  }, undefined, false, undefined, this),
63
63
  /* @__PURE__ */ jsxDEV("span", {
@@ -106,7 +106,7 @@ function EngagementMeter({
106
106
  className: "flex items-center gap-1.5",
107
107
  children: [
108
108
  /* @__PURE__ */ jsxDEV("div", {
109
- className: "bg-muted h-3 w-3 rounded-full"
109
+ className: "h-3 w-3 rounded-full bg-muted"
110
110
  }, undefined, false, undefined, this),
111
111
  /* @__PURE__ */ jsxDEV("span", {
112
112
  children: [
@@ -44,7 +44,7 @@ function TipCard({
44
44
  children: step.title
45
45
  }, undefined, false, undefined, this),
46
46
  step.xpReward && /* @__PURE__ */ jsxDEV("span", {
47
- 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"),
47
+ className: cn("shrink-0 rounded-full px-2 py-0.5 font-semibold text-xs", isCompleted ? "bg-green-500/10 text-green-500" : "bg-amber-500/10 text-amber-500"),
48
48
  children: [
49
49
  "+",
50
50
  step.xpReward,
@@ -54,7 +54,7 @@ function TipCard({
54
54
  ]
55
55
  }, undefined, true, undefined, this),
56
56
  /* @__PURE__ */ jsxDEV("p", {
57
- className: "text-muted-foreground mt-1 text-sm",
57
+ className: "mt-1 text-muted-foreground text-sm",
58
58
  children: step.description
59
59
  }, undefined, false, undefined, this),
60
60
  !isCompleted && /* @__PURE__ */ jsxDEV("div", {
@@ -74,7 +74,7 @@ function TipCard({
74
74
  ]
75
75
  }, undefined, true, undefined, this),
76
76
  isCompleted && /* @__PURE__ */ jsxDEV("p", {
77
- className: "mt-2 text-sm text-green-500",
77
+ className: "mt-2 text-green-500 text-sm",
78
78
  children: "✓ Tip acknowledged"
79
79
  }, undefined, false, undefined, this)
80
80
  ]
@@ -14,7 +14,7 @@ var TIP_ICONS = {
14
14
  function TipFeed({ items }) {
15
15
  if (items.length === 0) {
16
16
  return /* @__PURE__ */ jsxDEV("div", {
17
- className: "text-muted-foreground py-8 text-center",
17
+ className: "py-8 text-center text-muted-foreground",
18
18
  children: "No tips yet. Start engaging with coaching tips!"
19
19
  }, undefined, false, undefined, this);
20
20
  }
@@ -22,7 +22,7 @@ function TipFeed({ items }) {
22
22
  className: "relative",
23
23
  children: [
24
24
  /* @__PURE__ */ jsxDEV("div", {
25
- className: "bg-border absolute top-0 left-4 h-full w-0.5"
25
+ className: "absolute top-0 left-4 h-full w-0.5 bg-border"
26
26
  }, undefined, false, undefined, this),
27
27
  /* @__PURE__ */ jsxDEV("div", {
28
28
  className: "space-y-4",
@@ -37,7 +37,7 @@ function TipFeed({ items }) {
37
37
  children: item.isCompleted ? "✓" : icon
38
38
  }, undefined, false, undefined, this),
39
39
  /* @__PURE__ */ jsxDEV("div", {
40
- className: "bg-card flex-1 rounded-lg border p-3",
40
+ className: "flex-1 rounded-lg border bg-card p-3",
41
41
  children: [
42
42
  /* @__PURE__ */ jsxDEV("div", {
43
43
  className: "flex items-start justify-between gap-2",
@@ -49,13 +49,13 @@ function TipFeed({ items }) {
49
49
  children: item.step.title
50
50
  }, undefined, false, undefined, this),
51
51
  /* @__PURE__ */ jsxDEV("p", {
52
- className: "text-muted-foreground mt-0.5 text-sm",
52
+ className: "mt-0.5 text-muted-foreground text-sm",
53
53
  children: item.step.description
54
54
  }, undefined, false, undefined, this)
55
55
  ]
56
56
  }, undefined, true, undefined, this),
57
57
  item.step.xpReward && /* @__PURE__ */ jsxDEV("span", {
58
- className: cn("shrink-0 text-xs font-medium", item.isCompleted ? "text-green-500" : "text-muted-foreground"),
58
+ className: cn("shrink-0 font-medium text-xs", item.isCompleted ? "text-green-500" : "text-muted-foreground"),
59
59
  children: [
60
60
  "+",
61
61
  item.step.xpReward,
@@ -65,7 +65,7 @@ function TipFeed({ items }) {
65
65
  ]
66
66
  }, undefined, true, undefined, this),
67
67
  /* @__PURE__ */ jsxDEV("div", {
68
- className: "text-muted-foreground mt-2 flex items-center gap-2 text-xs",
68
+ className: "mt-2 flex items-center gap-2 text-muted-foreground text-xs",
69
69
  children: item.isCompleted ? /* @__PURE__ */ jsxDEV("span", {
70
70
  className: "text-green-500",
71
71
  children: [
@@ -44,7 +44,7 @@ function TipCard({
44
44
  children: step.title
45
45
  }, undefined, false, undefined, this),
46
46
  step.xpReward && /* @__PURE__ */ jsxDEV("span", {
47
- 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"),
47
+ className: cn("shrink-0 rounded-full px-2 py-0.5 font-semibold text-xs", isCompleted ? "bg-green-500/10 text-green-500" : "bg-amber-500/10 text-amber-500"),
48
48
  children: [
49
49
  "+",
50
50
  step.xpReward,
@@ -54,7 +54,7 @@ function TipCard({
54
54
  ]
55
55
  }, undefined, true, undefined, this),
56
56
  /* @__PURE__ */ jsxDEV("p", {
57
- className: "text-muted-foreground mt-1 text-sm",
57
+ className: "mt-1 text-muted-foreground text-sm",
58
58
  children: step.description
59
59
  }, undefined, false, undefined, this),
60
60
  !isCompleted && /* @__PURE__ */ jsxDEV("div", {
@@ -74,7 +74,7 @@ function TipCard({
74
74
  ]
75
75
  }, undefined, true, undefined, this),
76
76
  isCompleted && /* @__PURE__ */ jsxDEV("p", {
77
- className: "mt-2 text-sm text-green-500",
77
+ className: "mt-2 text-green-500 text-sm",
78
78
  children: "✓ Tip acknowledged"
79
79
  }, undefined, false, undefined, this)
80
80
  ]
@@ -144,7 +144,7 @@ function EngagementMeter({
144
144
  className: "absolute inset-0 flex flex-col items-center justify-center",
145
145
  children: [
146
146
  /* @__PURE__ */ jsxDEV2("span", {
147
- className: "text-2xl font-bold",
147
+ className: "font-bold text-2xl",
148
148
  children: total
149
149
  }, undefined, false, undefined, this),
150
150
  /* @__PURE__ */ jsxDEV2("span", {
@@ -193,7 +193,7 @@ function EngagementMeter({
193
193
  className: "flex items-center gap-1.5",
194
194
  children: [
195
195
  /* @__PURE__ */ jsxDEV2("div", {
196
- className: "bg-muted h-3 w-3 rounded-full"
196
+ className: "h-3 w-3 rounded-full bg-muted"
197
197
  }, undefined, false, undefined, this),
198
198
  /* @__PURE__ */ jsxDEV2("span", {
199
199
  children: [
@@ -242,7 +242,7 @@ var TIP_ICONS2 = {
242
242
  function TipFeed({ items }) {
243
243
  if (items.length === 0) {
244
244
  return /* @__PURE__ */ jsxDEV3("div", {
245
- className: "text-muted-foreground py-8 text-center",
245
+ className: "py-8 text-center text-muted-foreground",
246
246
  children: "No tips yet. Start engaging with coaching tips!"
247
247
  }, undefined, false, undefined, this);
248
248
  }
@@ -250,7 +250,7 @@ function TipFeed({ items }) {
250
250
  className: "relative",
251
251
  children: [
252
252
  /* @__PURE__ */ jsxDEV3("div", {
253
- className: "bg-border absolute top-0 left-4 h-full w-0.5"
253
+ className: "absolute top-0 left-4 h-full w-0.5 bg-border"
254
254
  }, undefined, false, undefined, this),
255
255
  /* @__PURE__ */ jsxDEV3("div", {
256
256
  className: "space-y-4",
@@ -265,7 +265,7 @@ function TipFeed({ items }) {
265
265
  children: item.isCompleted ? "✓" : icon
266
266
  }, undefined, false, undefined, this),
267
267
  /* @__PURE__ */ jsxDEV3("div", {
268
- className: "bg-card flex-1 rounded-lg border p-3",
268
+ className: "flex-1 rounded-lg border bg-card p-3",
269
269
  children: [
270
270
  /* @__PURE__ */ jsxDEV3("div", {
271
271
  className: "flex items-start justify-between gap-2",
@@ -277,13 +277,13 @@ function TipFeed({ items }) {
277
277
  children: item.step.title
278
278
  }, undefined, false, undefined, this),
279
279
  /* @__PURE__ */ jsxDEV3("p", {
280
- className: "text-muted-foreground mt-0.5 text-sm",
280
+ className: "mt-0.5 text-muted-foreground text-sm",
281
281
  children: item.step.description
282
282
  }, undefined, false, undefined, this)
283
283
  ]
284
284
  }, undefined, true, undefined, this),
285
285
  item.step.xpReward && /* @__PURE__ */ jsxDEV3("span", {
286
- className: cn2("shrink-0 text-xs font-medium", item.isCompleted ? "text-green-500" : "text-muted-foreground"),
286
+ className: cn2("shrink-0 font-medium text-xs", item.isCompleted ? "text-green-500" : "text-muted-foreground"),
287
287
  children: [
288
288
  "+",
289
289
  item.step.xpReward,
@@ -293,7 +293,7 @@ function TipFeed({ items }) {
293
293
  ]
294
294
  }, undefined, true, undefined, this),
295
295
  /* @__PURE__ */ jsxDEV3("div", {
296
- className: "text-muted-foreground mt-2 flex items-center gap-2 text-xs",
296
+ className: "mt-2 flex items-center gap-2 text-muted-foreground text-xs",
297
297
  children: item.isCompleted ? /* @__PURE__ */ jsxDEV3("span", {
298
298
  className: "text-green-500",
299
299
  children: [