v1.1.0: Add cancelled course, duplicate prevention, and credit bar ticks
- Mark "Managing Growing Companies" as cancelled with visual indicator and solver exclusion - Prevent selecting duplicate courses across elective sets (e.g., same course in Spring and Summer) - Add 2.5-credit interval tick marks to specialization progress bars - Bump version to 1.1.0 with date display in UI header
This commit is contained in:
@@ -33,6 +33,12 @@ function CreditBar({ allocated, potential, threshold }: { allocated: number; pot
|
||||
const allocPct = Math.min((allocated / maxWidth) * 100, 100);
|
||||
const potentialPct = Math.min((potential / maxWidth) * 100, 100);
|
||||
|
||||
// Generate tick marks at 2.5 credit intervals
|
||||
const ticks: number[] = [];
|
||||
for (let t = 2.5; t < maxWidth; t += 2.5) {
|
||||
ticks.push(t);
|
||||
}
|
||||
|
||||
return (
|
||||
<div style={{ position: 'relative', height: '6px', background: '#e5e7eb', borderRadius: '3px', marginTop: '4px' }}>
|
||||
{potential > allocated && (
|
||||
@@ -51,11 +57,22 @@ function CreditBar({ allocated, potential, threshold }: { allocated: number; pot
|
||||
borderRadius: '3px', transition: 'width 300ms ease-out',
|
||||
}}
|
||||
/>
|
||||
{/* Tick marks at 2.5 credit intervals — rendered above bar fills */}
|
||||
{ticks.map((t) => (
|
||||
<div
|
||||
key={t}
|
||||
style={{
|
||||
position: 'absolute', left: `${(t / maxWidth) * 100}%`, top: 0,
|
||||
width: '1px', height: '6px', background: 'rgba(0,0,0,0.2)',
|
||||
zIndex: 1, transition: 'left 300ms ease-out',
|
||||
}}
|
||||
/>
|
||||
))}
|
||||
<div
|
||||
style={{
|
||||
position: 'absolute', left: `${(threshold / maxWidth) * 100}%`, top: '-2px',
|
||||
width: '2px', height: '10px', background: '#666',
|
||||
transition: 'left 300ms ease-out',
|
||||
zIndex: 2, transition: 'left 300ms ease-out',
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user