learngraph 0.4.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/routes/analytics.js +288 -0
- package/dist/cjs/api/routes/analytics.js.map +1 -0
- package/dist/cjs/api/routes/assessments.js +269 -0
- package/dist/cjs/api/routes/assessments.js.map +1 -0
- package/dist/cjs/api/routes/curriculum.js +345 -0
- package/dist/cjs/api/routes/curriculum.js.map +1 -0
- package/dist/cjs/api/routes/edges.js +162 -0
- package/dist/cjs/api/routes/edges.js.map +1 -0
- package/dist/cjs/api/routes/explore.js +224 -0
- package/dist/cjs/api/routes/explore.js.map +1 -0
- package/dist/cjs/api/routes/learners.js +324 -0
- package/dist/cjs/api/routes/learners.js.map +1 -0
- package/dist/cjs/api/routes/me.js +404 -0
- package/dist/cjs/api/routes/me.js.map +1 -0
- package/dist/cjs/api/routes/skills.js +319 -0
- package/dist/cjs/api/routes/skills.js.map +1 -0
- package/dist/cjs/api/server.js +185 -0
- package/dist/cjs/api/server.js.map +1 -0
- package/dist/cjs/api/types.js +10 -0
- package/dist/cjs/api/types.js.map +1 -0
- package/dist/cjs/assessment/adaptive.js +390 -0
- package/dist/cjs/assessment/adaptive.js.map +1 -0
- package/dist/cjs/assessment/bkt.js +362 -0
- package/dist/cjs/assessment/bkt.js.map +1 -0
- package/dist/cjs/assessment/index.js +54 -0
- package/dist/cjs/assessment/index.js.map +1 -0
- package/dist/cjs/assessment/irt.js +420 -0
- package/dist/cjs/assessment/irt.js.map +1 -0
- package/dist/cjs/assessment/mastery-engine.js +411 -0
- package/dist/cjs/assessment/mastery-engine.js.map +1 -0
- package/dist/cjs/components/LearningPathView.js +320 -0
- package/dist/cjs/components/LearningPathView.js.map +1 -0
- package/dist/cjs/components/ProgressDashboard.js +308 -0
- package/dist/cjs/components/ProgressDashboard.js.map +1 -0
- package/dist/cjs/components/SkillCard.js +264 -0
- package/dist/cjs/components/SkillCard.js.map +1 -0
- package/dist/cjs/components/SkillExplorer.js +401 -0
- package/dist/cjs/components/SkillExplorer.js.map +1 -0
- package/dist/cjs/components/SkillGraph.js +435 -0
- package/dist/cjs/components/SkillGraph.js.map +1 -0
- package/dist/cjs/components/hooks.js +510 -0
- package/dist/cjs/components/hooks.js.map +1 -0
- package/dist/cjs/components/index.js +77 -0
- package/dist/cjs/components/index.js.map +1 -0
- package/dist/cjs/components/types.js +34 -0
- package/dist/cjs/components/types.js.map +1 -0
- package/dist/cjs/index.js +36 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/llm/adapters/anthropic.js +91 -3
- package/dist/cjs/llm/adapters/anthropic.js.map +1 -1
- package/dist/cjs/llm/adapters/gemini.js +101 -8
- package/dist/cjs/llm/adapters/gemini.js.map +1 -1
- package/dist/cjs/llm/adapters/index.js +42 -1
- package/dist/cjs/llm/adapters/index.js.map +1 -1
- package/dist/cjs/llm/adapters/ollama.js +120 -3
- package/dist/cjs/llm/adapters/ollama.js.map +1 -1
- package/dist/cjs/llm/adapters/openai.js +108 -2
- package/dist/cjs/llm/adapters/openai.js.map +1 -1
- package/dist/cjs/mcp/cli.js +302 -0
- package/dist/cjs/mcp/cli.js.map +1 -0
- package/dist/cjs/mcp/index.js +79 -0
- package/dist/cjs/mcp/index.js.map +1 -0
- package/dist/cjs/mcp/prompts.js +425 -0
- package/dist/cjs/mcp/prompts.js.map +1 -0
- package/dist/cjs/mcp/resources.js +371 -0
- package/dist/cjs/mcp/resources.js.map +1 -0
- package/dist/cjs/mcp/server.js +410 -0
- package/dist/cjs/mcp/server.js.map +1 -0
- package/dist/cjs/mcp/tools.js +612 -0
- package/dist/cjs/mcp/tools.js.map +1 -0
- package/dist/cjs/mcp/types.js +10 -0
- package/dist/cjs/mcp/types.js.map +1 -0
- package/dist/cjs/query/index.js +23 -4
- package/dist/cjs/query/index.js.map +1 -1
- package/dist/cjs/query/path.js +313 -0
- package/dist/cjs/query/path.js.map +1 -0
- package/dist/cjs/query/spaced-repetition.js +298 -0
- package/dist/cjs/query/spaced-repetition.js.map +1 -0
- package/dist/cjs/query/zpd.js +216 -0
- package/dist/cjs/query/zpd.js.map +1 -0
- package/dist/cjs/types/assessment.js +46 -0
- package/dist/cjs/types/assessment.js.map +1 -0
- package/dist/cjs/types/bloom.js +12 -1
- package/dist/cjs/types/bloom.js.map +1 -1
- package/dist/cjs/types/index.js +7 -1
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/esm/api/routes/analytics.js +285 -0
- package/dist/esm/api/routes/analytics.js.map +1 -0
- package/dist/esm/api/routes/assessments.js +266 -0
- package/dist/esm/api/routes/assessments.js.map +1 -0
- package/dist/esm/api/routes/curriculum.js +342 -0
- package/dist/esm/api/routes/curriculum.js.map +1 -0
- package/dist/esm/api/routes/edges.js +159 -0
- package/dist/esm/api/routes/edges.js.map +1 -0
- package/dist/esm/api/routes/explore.js +221 -0
- package/dist/esm/api/routes/explore.js.map +1 -0
- package/dist/esm/api/routes/learners.js +321 -0
- package/dist/esm/api/routes/learners.js.map +1 -0
- package/dist/esm/api/routes/me.js +401 -0
- package/dist/esm/api/routes/me.js.map +1 -0
- package/dist/esm/api/routes/skills.js +316 -0
- package/dist/esm/api/routes/skills.js.map +1 -0
- package/dist/esm/api/server.js +179 -0
- package/dist/esm/api/server.js.map +1 -0
- package/dist/esm/api/types.js +9 -0
- package/dist/esm/api/types.js.map +1 -0
- package/dist/esm/assessment/adaptive.js +384 -0
- package/dist/esm/assessment/adaptive.js.map +1 -0
- package/dist/esm/assessment/bkt.js +354 -0
- package/dist/esm/assessment/bkt.js.map +1 -0
- package/dist/esm/assessment/index.js +21 -0
- package/dist/esm/assessment/index.js.map +1 -0
- package/dist/esm/assessment/irt.js +406 -0
- package/dist/esm/assessment/irt.js.map +1 -0
- package/dist/esm/assessment/mastery-engine.js +406 -0
- package/dist/esm/assessment/mastery-engine.js.map +1 -0
- package/dist/esm/components/LearningPathView.js +316 -0
- package/dist/esm/components/LearningPathView.js.map +1 -0
- package/dist/esm/components/ProgressDashboard.js +304 -0
- package/dist/esm/components/ProgressDashboard.js.map +1 -0
- package/dist/esm/components/SkillCard.js +260 -0
- package/dist/esm/components/SkillCard.js.map +1 -0
- package/dist/esm/components/SkillExplorer.js +397 -0
- package/dist/esm/components/SkillExplorer.js.map +1 -0
- package/dist/esm/components/SkillGraph.js +398 -0
- package/dist/esm/components/SkillGraph.js.map +1 -0
- package/dist/esm/components/hooks.js +502 -0
- package/dist/esm/components/hooks.js.map +1 -0
- package/dist/esm/components/index.js +61 -0
- package/dist/esm/components/index.js.map +1 -0
- package/dist/esm/components/types.js +31 -0
- package/dist/esm/components/types.js.map +1 -0
- package/dist/esm/index.js +13 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/llm/adapters/anthropic.js +88 -2
- package/dist/esm/llm/adapters/anthropic.js.map +1 -1
- package/dist/esm/llm/adapters/gemini.js +98 -7
- package/dist/esm/llm/adapters/gemini.js.map +1 -1
- package/dist/esm/llm/adapters/index.js +15 -4
- package/dist/esm/llm/adapters/index.js.map +1 -1
- package/dist/esm/llm/adapters/ollama.js +117 -2
- package/dist/esm/llm/adapters/ollama.js.map +1 -1
- package/dist/esm/llm/adapters/openai.js +105 -1
- package/dist/esm/llm/adapters/openai.js.map +1 -1
- package/dist/esm/mcp/cli.js +267 -0
- package/dist/esm/mcp/cli.js.map +1 -0
- package/dist/esm/mcp/index.js +39 -0
- package/dist/esm/mcp/index.js.map +1 -0
- package/dist/esm/mcp/prompts.js +419 -0
- package/dist/esm/mcp/prompts.js.map +1 -0
- package/dist/esm/mcp/resources.js +359 -0
- package/dist/esm/mcp/resources.js.map +1 -0
- package/dist/esm/mcp/server.js +372 -0
- package/dist/esm/mcp/server.js.map +1 -0
- package/dist/esm/mcp/tools.js +598 -0
- package/dist/esm/mcp/tools.js.map +1 -0
- package/dist/esm/mcp/types.js +9 -0
- package/dist/esm/mcp/types.js.map +1 -0
- package/dist/esm/query/index.js +11 -5
- package/dist/esm/query/index.js.map +1 -1
- package/dist/esm/query/path.js +308 -0
- package/dist/esm/query/path.js.map +1 -0
- package/dist/esm/query/spaced-repetition.js +292 -0
- package/dist/esm/query/spaced-repetition.js.map +1 -0
- package/dist/esm/query/zpd.js +211 -0
- package/dist/esm/query/zpd.js.map +1 -0
- package/dist/esm/types/assessment.js +40 -0
- package/dist/esm/types/assessment.js.map +1 -0
- package/dist/esm/types/bloom.js +11 -0
- package/dist/esm/types/bloom.js.map +1 -1
- package/dist/esm/types/index.js +2 -1
- package/dist/esm/types/index.js.map +1 -1
- package/dist/types/api/routes/analytics.d.ts +14 -0
- package/dist/types/api/routes/analytics.d.ts.map +1 -0
- package/dist/types/api/routes/assessments.d.ts +14 -0
- package/dist/types/api/routes/assessments.d.ts.map +1 -0
- package/dist/types/api/routes/curriculum.d.ts +14 -0
- package/dist/types/api/routes/curriculum.d.ts.map +1 -0
- package/dist/types/api/routes/edges.d.ts +14 -0
- package/dist/types/api/routes/edges.d.ts.map +1 -0
- package/dist/types/api/routes/explore.d.ts +14 -0
- package/dist/types/api/routes/explore.d.ts.map +1 -0
- package/dist/types/api/routes/learners.d.ts +14 -0
- package/dist/types/api/routes/learners.d.ts.map +1 -0
- package/dist/types/api/routes/me.d.ts +14 -0
- package/dist/types/api/routes/me.d.ts.map +1 -0
- package/dist/types/api/routes/skills.d.ts +14 -0
- package/dist/types/api/routes/skills.d.ts.map +1 -0
- package/dist/types/api/server.d.ts +147 -0
- package/dist/types/api/server.d.ts.map +1 -0
- package/dist/types/api/types.d.ts +443 -0
- package/dist/types/api/types.d.ts.map +1 -0
- package/dist/types/assessment/adaptive.d.ts +155 -0
- package/dist/types/assessment/adaptive.d.ts.map +1 -0
- package/dist/types/assessment/bkt.d.ts +185 -0
- package/dist/types/assessment/bkt.d.ts.map +1 -0
- package/dist/types/assessment/index.d.ts +18 -0
- package/dist/types/assessment/index.d.ts.map +1 -0
- package/dist/types/assessment/irt.d.ts +159 -0
- package/dist/types/assessment/irt.d.ts.map +1 -0
- package/dist/types/assessment/mastery-engine.d.ts +178 -0
- package/dist/types/assessment/mastery-engine.d.ts.map +1 -0
- package/dist/types/components/LearningPathView.d.ts +40 -0
- package/dist/types/components/LearningPathView.d.ts.map +1 -0
- package/dist/types/components/ProgressDashboard.d.ts +49 -0
- package/dist/types/components/ProgressDashboard.d.ts.map +1 -0
- package/dist/types/components/SkillCard.d.ts +34 -0
- package/dist/types/components/SkillCard.d.ts.map +1 -0
- package/dist/types/components/SkillExplorer.d.ts +39 -0
- package/dist/types/components/SkillExplorer.d.ts.map +1 -0
- package/dist/types/components/SkillGraph.d.ts +38 -0
- package/dist/types/components/SkillGraph.d.ts.map +1 -0
- package/dist/types/components/hooks.d.ts +187 -0
- package/dist/types/components/hooks.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +59 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/components/types.d.ts +410 -0
- package/dist/types/components/types.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/llm/adapters/anthropic.d.ts +84 -1
- package/dist/types/llm/adapters/anthropic.d.ts.map +1 -1
- package/dist/types/llm/adapters/gemini.d.ts +93 -6
- package/dist/types/llm/adapters/gemini.d.ts.map +1 -1
- package/dist/types/llm/adapters/index.d.ts +13 -4
- package/dist/types/llm/adapters/index.d.ts.map +1 -1
- package/dist/types/llm/adapters/ollama.d.ts +126 -1
- package/dist/types/llm/adapters/ollama.d.ts.map +1 -1
- package/dist/types/llm/adapters/openai.d.ts +104 -1
- package/dist/types/llm/adapters/openai.d.ts.map +1 -1
- package/dist/types/mcp/cli.d.ts +15 -0
- package/dist/types/mcp/cli.d.ts.map +1 -0
- package/dist/types/mcp/index.d.ts +32 -0
- package/dist/types/mcp/index.d.ts.map +1 -0
- package/dist/types/mcp/prompts.d.ts +27 -0
- package/dist/types/mcp/prompts.d.ts.map +1 -0
- package/dist/types/mcp/resources.d.ts +59 -0
- package/dist/types/mcp/resources.d.ts.map +1 -0
- package/dist/types/mcp/server.d.ts +136 -0
- package/dist/types/mcp/server.d.ts.map +1 -0
- package/dist/types/mcp/tools.d.ts +344 -0
- package/dist/types/mcp/tools.d.ts.map +1 -0
- package/dist/types/mcp/types.d.ts +137 -0
- package/dist/types/mcp/types.d.ts.map +1 -0
- package/dist/types/query/index.d.ts +8 -0
- package/dist/types/query/index.d.ts.map +1 -1
- package/dist/types/query/path.d.ts +102 -0
- package/dist/types/query/path.d.ts.map +1 -0
- package/dist/types/query/spaced-repetition.d.ts +135 -0
- package/dist/types/query/spaced-repetition.d.ts.map +1 -0
- package/dist/types/query/zpd.d.ts +97 -0
- package/dist/types/query/zpd.d.ts.map +1 -0
- package/dist/types/types/assessment.d.ts +512 -0
- package/dist/types/types/assessment.d.ts.map +1 -0
- package/dist/types/types/bloom.d.ts +4 -0
- package/dist/types/types/bloom.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +3 -1
- package/dist/types/types/index.d.ts.map +1 -1
- package/package.json +48 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressDashboard.js","sourceRoot":"","sources":["../../../src/components/ProgressDashboard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* SkillCard Component
|
|
4
|
+
*
|
|
5
|
+
* Card component displaying skill details with mastery status.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
import { useMemo } from 'react';
|
|
10
|
+
import { DEFAULT_BLOOM_COLORS, STATUS_COLORS } from './types.js';
|
|
11
|
+
const BloomBadge = ({ level }) => {
|
|
12
|
+
const style = {
|
|
13
|
+
display: 'inline-flex',
|
|
14
|
+
alignItems: 'center',
|
|
15
|
+
padding: '4px 10px',
|
|
16
|
+
borderRadius: '9999px',
|
|
17
|
+
fontSize: '12px',
|
|
18
|
+
fontWeight: 500,
|
|
19
|
+
textTransform: 'capitalize',
|
|
20
|
+
backgroundColor: DEFAULT_BLOOM_COLORS[level],
|
|
21
|
+
color: '#ffffff',
|
|
22
|
+
};
|
|
23
|
+
return _jsx("span", { style: style, children: level });
|
|
24
|
+
};
|
|
25
|
+
const MasteryProgress = ({ mastery }) => {
|
|
26
|
+
const percentage = Math.round(mastery.probability * 100);
|
|
27
|
+
const containerStyle = {
|
|
28
|
+
marginTop: '12px',
|
|
29
|
+
};
|
|
30
|
+
const labelStyle = {
|
|
31
|
+
display: 'flex',
|
|
32
|
+
justifyContent: 'space-between',
|
|
33
|
+
fontSize: '12px',
|
|
34
|
+
marginBottom: '4px',
|
|
35
|
+
color: '#6b7280',
|
|
36
|
+
};
|
|
37
|
+
const barContainerStyle = {
|
|
38
|
+
height: '8px',
|
|
39
|
+
backgroundColor: '#e5e7eb',
|
|
40
|
+
borderRadius: '4px',
|
|
41
|
+
overflow: 'hidden',
|
|
42
|
+
};
|
|
43
|
+
const barStyle = {
|
|
44
|
+
height: '100%',
|
|
45
|
+
width: `${percentage}%`,
|
|
46
|
+
backgroundColor: percentage >= 80
|
|
47
|
+
? STATUS_COLORS.mastered
|
|
48
|
+
: percentage >= 50
|
|
49
|
+
? STATUS_COLORS.inProgress
|
|
50
|
+
: '#94a3b8',
|
|
51
|
+
borderRadius: '4px',
|
|
52
|
+
transition: 'width 0.3s ease',
|
|
53
|
+
};
|
|
54
|
+
const confidenceColor = {
|
|
55
|
+
low: '#f59e0b',
|
|
56
|
+
medium: '#3b82f6',
|
|
57
|
+
high: '#22c55e',
|
|
58
|
+
};
|
|
59
|
+
return (_jsxs("div", { style: containerStyle, children: [_jsxs("div", { style: labelStyle, children: [_jsxs("span", { children: ["Mastery: ", percentage, "%"] }), _jsxs("span", { style: {
|
|
60
|
+
color: confidenceColor[mastery.confidence],
|
|
61
|
+
textTransform: 'capitalize',
|
|
62
|
+
}, children: [mastery.confidence, " confidence"] })] }), _jsx("div", { style: barContainerStyle, children: _jsx("div", { style: barStyle }) }), _jsxs("div", { style: {
|
|
63
|
+
display: 'flex',
|
|
64
|
+
justifyContent: 'space-between',
|
|
65
|
+
fontSize: '11px',
|
|
66
|
+
marginTop: '4px',
|
|
67
|
+
color: '#9ca3af',
|
|
68
|
+
}, children: [_jsxs("span", { children: [mastery.attempts, " attempts"] }), mastery.nextReview && (_jsxs("span", { children: ["Review: ", formatDate(mastery.nextReview)] }))] })] }));
|
|
69
|
+
};
|
|
70
|
+
function formatDate(date) {
|
|
71
|
+
const now = new Date();
|
|
72
|
+
const diff = date.getTime() - now.getTime();
|
|
73
|
+
const days = Math.ceil(diff / (1000 * 60 * 60 * 24));
|
|
74
|
+
if (days <= 0)
|
|
75
|
+
return 'Today';
|
|
76
|
+
if (days === 1)
|
|
77
|
+
return 'Tomorrow';
|
|
78
|
+
if (days < 7)
|
|
79
|
+
return `${days} days`;
|
|
80
|
+
return date.toLocaleDateString();
|
|
81
|
+
}
|
|
82
|
+
const TagList = ({ tags }) => {
|
|
83
|
+
if (tags.length === 0)
|
|
84
|
+
return null;
|
|
85
|
+
const containerStyle = {
|
|
86
|
+
display: 'flex',
|
|
87
|
+
flexWrap: 'wrap',
|
|
88
|
+
gap: '4px',
|
|
89
|
+
marginTop: '8px',
|
|
90
|
+
};
|
|
91
|
+
const tagStyle = {
|
|
92
|
+
padding: '2px 8px',
|
|
93
|
+
backgroundColor: '#f3f4f6',
|
|
94
|
+
borderRadius: '4px',
|
|
95
|
+
fontSize: '11px',
|
|
96
|
+
color: '#6b7280',
|
|
97
|
+
};
|
|
98
|
+
return (_jsx("div", { style: containerStyle, children: tags.map((tag) => (_jsx("span", { style: tagStyle, children: tag }, tag))) }));
|
|
99
|
+
};
|
|
100
|
+
const PrereqList = ({ title, skills, variant }) => {
|
|
101
|
+
if (skills.length === 0)
|
|
102
|
+
return null;
|
|
103
|
+
const containerStyle = {
|
|
104
|
+
marginTop: '12px',
|
|
105
|
+
};
|
|
106
|
+
const titleStyle = {
|
|
107
|
+
fontSize: '12px',
|
|
108
|
+
fontWeight: 600,
|
|
109
|
+
color: '#374151',
|
|
110
|
+
marginBottom: '6px',
|
|
111
|
+
};
|
|
112
|
+
const listStyle = {
|
|
113
|
+
display: 'flex',
|
|
114
|
+
flexWrap: 'wrap',
|
|
115
|
+
gap: '4px',
|
|
116
|
+
};
|
|
117
|
+
const itemStyle = {
|
|
118
|
+
padding: '4px 8px',
|
|
119
|
+
backgroundColor: '#eff6ff',
|
|
120
|
+
borderRadius: '4px',
|
|
121
|
+
fontSize: '12px',
|
|
122
|
+
color: '#1e40af',
|
|
123
|
+
};
|
|
124
|
+
const displaySkills = variant === 'compact' ? skills.slice(0, 3) : skills;
|
|
125
|
+
const remaining = skills.length - displaySkills.length;
|
|
126
|
+
return (_jsxs("div", { style: containerStyle, children: [_jsx("div", { style: titleStyle, children: title }), _jsxs("div", { style: listStyle, children: [displaySkills.map((skill) => (_jsx("span", { style: itemStyle, children: skill.name }, String(skill.id)))), remaining > 0 && (_jsxs("span", { style: { ...itemStyle, backgroundColor: '#e5e7eb', color: '#6b7280' }, children: ["+", remaining, " more"] }))] })] }));
|
|
127
|
+
};
|
|
128
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
129
|
+
// Main Component
|
|
130
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
131
|
+
/**
|
|
132
|
+
* SkillCard Component
|
|
133
|
+
*
|
|
134
|
+
* Displays skill information with optional mastery tracking.
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```tsx
|
|
138
|
+
* import { SkillCard } from 'learngraph/components';
|
|
139
|
+
*
|
|
140
|
+
* function SkillDetails({ skill }) {
|
|
141
|
+
* return (
|
|
142
|
+
* <SkillCard
|
|
143
|
+
* skill={skill}
|
|
144
|
+
* mastery={{ probability: 0.75, confidence: 'medium', attempts: 10 }}
|
|
145
|
+
* isAvailable={true}
|
|
146
|
+
* variant="detailed"
|
|
147
|
+
* onStartLearning={() => console.log('Start learning')}
|
|
148
|
+
* />
|
|
149
|
+
* );
|
|
150
|
+
* }
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
export const SkillCard = ({ skill, mastery, prerequisites = [], dependents = [], isAvailable = false, isMastered = false, variant = 'detailed', onClick, onStartLearning, onPractice, className, style, }) => {
|
|
154
|
+
const statusColor = useMemo(() => {
|
|
155
|
+
if (isMastered)
|
|
156
|
+
return STATUS_COLORS.mastered;
|
|
157
|
+
if (isAvailable)
|
|
158
|
+
return STATUS_COLORS.available;
|
|
159
|
+
return STATUS_COLORS.locked;
|
|
160
|
+
}, [isMastered, isAvailable]);
|
|
161
|
+
const statusText = useMemo(() => {
|
|
162
|
+
if (isMastered)
|
|
163
|
+
return 'Mastered';
|
|
164
|
+
if (isAvailable)
|
|
165
|
+
return 'Available';
|
|
166
|
+
return 'Locked';
|
|
167
|
+
}, [isMastered, isAvailable]);
|
|
168
|
+
const cardStyle = {
|
|
169
|
+
backgroundColor: '#ffffff',
|
|
170
|
+
borderRadius: '12px',
|
|
171
|
+
border: '1px solid #e5e7eb',
|
|
172
|
+
padding: variant === 'compact' ? '12px' : '16px',
|
|
173
|
+
boxShadow: '0 1px 3px rgba(0, 0, 0, 0.05)',
|
|
174
|
+
cursor: onClick ? 'pointer' : 'default',
|
|
175
|
+
transition: 'box-shadow 0.2s ease, transform 0.2s ease',
|
|
176
|
+
...style,
|
|
177
|
+
};
|
|
178
|
+
const headerStyle = {
|
|
179
|
+
display: 'flex',
|
|
180
|
+
justifyContent: 'space-between',
|
|
181
|
+
alignItems: 'flex-start',
|
|
182
|
+
marginBottom: '8px',
|
|
183
|
+
};
|
|
184
|
+
const titleStyle = {
|
|
185
|
+
fontSize: variant === 'compact' ? '14px' : '16px',
|
|
186
|
+
fontWeight: 600,
|
|
187
|
+
color: '#1f2937',
|
|
188
|
+
margin: 0,
|
|
189
|
+
};
|
|
190
|
+
const statusBadgeStyle = {
|
|
191
|
+
display: 'inline-flex',
|
|
192
|
+
alignItems: 'center',
|
|
193
|
+
gap: '4px',
|
|
194
|
+
padding: '2px 8px',
|
|
195
|
+
borderRadius: '9999px',
|
|
196
|
+
fontSize: '11px',
|
|
197
|
+
fontWeight: 500,
|
|
198
|
+
backgroundColor: statusColor,
|
|
199
|
+
color: '#ffffff',
|
|
200
|
+
};
|
|
201
|
+
const descriptionStyle = {
|
|
202
|
+
fontSize: '13px',
|
|
203
|
+
color: '#6b7280',
|
|
204
|
+
lineHeight: 1.5,
|
|
205
|
+
margin: '8px 0',
|
|
206
|
+
};
|
|
207
|
+
const metaStyle = {
|
|
208
|
+
display: 'flex',
|
|
209
|
+
flexWrap: 'wrap',
|
|
210
|
+
alignItems: 'center',
|
|
211
|
+
gap: '12px',
|
|
212
|
+
marginTop: '8px',
|
|
213
|
+
fontSize: '12px',
|
|
214
|
+
color: '#6b7280',
|
|
215
|
+
};
|
|
216
|
+
const buttonContainerStyle = {
|
|
217
|
+
display: 'flex',
|
|
218
|
+
gap: '8px',
|
|
219
|
+
marginTop: '16px',
|
|
220
|
+
};
|
|
221
|
+
const primaryButtonStyle = {
|
|
222
|
+
flex: 1,
|
|
223
|
+
padding: '10px 16px',
|
|
224
|
+
backgroundColor: isAvailable && !isMastered ? '#3b82f6' : '#e5e7eb',
|
|
225
|
+
color: isAvailable && !isMastered ? '#ffffff' : '#9ca3af',
|
|
226
|
+
border: 'none',
|
|
227
|
+
borderRadius: '8px',
|
|
228
|
+
fontSize: '14px',
|
|
229
|
+
fontWeight: 500,
|
|
230
|
+
cursor: isAvailable && !isMastered ? 'pointer' : 'not-allowed',
|
|
231
|
+
transition: 'background-color 0.2s ease',
|
|
232
|
+
};
|
|
233
|
+
const secondaryButtonStyle = {
|
|
234
|
+
flex: 1,
|
|
235
|
+
padding: '10px 16px',
|
|
236
|
+
backgroundColor: 'transparent',
|
|
237
|
+
color: isMastered ? '#3b82f6' : '#9ca3af',
|
|
238
|
+
border: `1px solid ${isMastered ? '#3b82f6' : '#e5e7eb'}`,
|
|
239
|
+
borderRadius: '8px',
|
|
240
|
+
fontSize: '14px',
|
|
241
|
+
fontWeight: 500,
|
|
242
|
+
cursor: isMastered ? 'pointer' : 'not-allowed',
|
|
243
|
+
transition: 'background-color 0.2s ease',
|
|
244
|
+
};
|
|
245
|
+
return (_jsxs("div", { className: className, style: cardStyle, onClick: onClick, children: [_jsxs("div", { style: headerStyle, children: [_jsxs("div", { children: [_jsx("h3", { style: titleStyle, children: skill.name }), _jsx("div", { style: { marginTop: '6px' }, children: _jsx(BloomBadge, { level: skill.bloomLevel }) })] }), _jsxs("span", { style: statusBadgeStyle, children: [_jsx("span", { style: {
|
|
246
|
+
width: '6px',
|
|
247
|
+
height: '6px',
|
|
248
|
+
borderRadius: '50%',
|
|
249
|
+
backgroundColor: 'currentColor',
|
|
250
|
+
} }), statusText] })] }), variant !== 'compact' && skill.description && (_jsx("p", { style: descriptionStyle, children: skill.description })), _jsxs("div", { style: metaStyle, children: [_jsxs("span", { children: [_jsx("strong", { children: skill.estimatedMinutes }), " min"] }), _jsxs("span", { children: ["Mastery: ", _jsxs("strong", { children: [Math.round(skill.masteryThreshold * 100), "%"] })] })] }), variant !== 'compact' && _jsx(TagList, { tags: skill.tags }), mastery && _jsx(MasteryProgress, { mastery: mastery }), variant === 'full' && (_jsxs(_Fragment, { children: [_jsx(PrereqList, { title: "Prerequisites", skills: prerequisites, variant: variant }), _jsx(PrereqList, { title: "Unlocks", skills: dependents, variant: variant })] })), variant !== 'compact' && (onStartLearning || onPractice) && (_jsxs("div", { style: buttonContainerStyle, children: [onStartLearning && !isMastered && (_jsx("button", { style: primaryButtonStyle, onClick: (e) => {
|
|
251
|
+
e.stopPropagation();
|
|
252
|
+
if (isAvailable)
|
|
253
|
+
onStartLearning();
|
|
254
|
+
}, disabled: !isAvailable, children: isAvailable ? 'Start Learning' : 'Prerequisites Needed' })), onPractice && isMastered && (_jsx("button", { style: secondaryButtonStyle, onClick: (e) => {
|
|
255
|
+
e.stopPropagation();
|
|
256
|
+
onPractice();
|
|
257
|
+
}, children: "Practice" }))] }))] }));
|
|
258
|
+
};
|
|
259
|
+
export default SkillCard;
|
|
260
|
+
//# sourceMappingURL=SkillCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkillCard.js","sourceRoot":"","sources":["../../../src/components/SkillCard.tsx"],"names":[],"mappings":"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"}
|