fix: pass activeIds to DisciplineCard in ElementalSubtab; add missing mana type names
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m29s

This commit is contained in:
2026-06-01 11:04:48 +02:00
parent 4103423b95
commit 2539559edc
5 changed files with 17 additions and 5 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# Circular Dependencies # Circular Dependencies
Generated: 2026-05-31T18:23:54.984Z Generated: 2026-06-01T07:54:15.106Z
No circular dependencies found. ✅ No circular dependencies found. ✅
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"_meta": { "_meta": {
"generated": "2026-05-31T18:23:53.253Z", "generated": "2026-06-01T07:54:13.158Z",
"description": "Import dependency graph for src/lib/game. Keys are files, values are arrays of files they import.", "description": "Import dependency graph for src/lib/game. Keys are files, values are arrays of files they import.",
"usage": "To find what a file affects, search for its path in the VALUES. To find what a file depends on, look at its KEY entry." "usage": "To find what a file affects, search for its path in the VALUES. To find what a file depends on, look at its KEY entry."
}, },
@@ -120,6 +120,7 @@ export const DisciplinesTab: React.FC = () => {
{activeAttunement === 'elemental' ? ( {activeAttunement === 'elemental' ? (
<ElementalSubtab <ElementalSubtab
disciplines={disciplines} disciplines={disciplines}
activeIds={activeIds}
concurrentLimit={concurrentLimit} concurrentLimit={concurrentLimit}
elements={elements} elements={elements}
onToggle={handleToggle} onToggle={handleToggle}
+6 -3
View File
@@ -50,6 +50,7 @@ function buildElementalDisciplineMap(
interface SharedRenderProps { interface SharedRenderProps {
disciplines: Record<string, { xp: number; paused: boolean }>; disciplines: Record<string, { xp: number; paused: boolean }>;
activeIds: string[];
concurrentLimit: number; concurrentLimit: number;
elements: DisciplineCardProps['missingSourceMana'] extends readonly string[] elements: DisciplineCardProps['missingSourceMana'] extends readonly string[]
? Record<string, { unlocked: boolean }> ? Record<string, { unlocked: boolean }>
@@ -65,8 +66,8 @@ interface GroupProps extends SharedRenderProps {
conversion?: DisciplineDefinition; conversion?: DisciplineDefinition;
} }
const ElementalDisciplineGroup: React.FC<GroupProps> = ({ const ElementalDisciplineGroup: React.FC<GroupProps & { activeIds: string[] }> = ({
manaType, capacity, conversion, disciplines, concurrentLimit, elements, onToggle, manaType, capacity, conversion, disciplines, activeIds, concurrentLimit, elements, onToggle,
}) => { }) => {
const elementDef = ELEMENTS[manaType]; const elementDef = ELEMENTS[manaType];
const manaColor = elementDef?.color ?? '#888888'; const manaColor = elementDef?.color ?? '#888888';
@@ -95,6 +96,7 @@ const ElementalDisciplineGroup: React.FC<GroupProps> = ({
definition={def} definition={def}
xp={discState.xp} xp={discState.xp}
paused={discState.paused} paused={discState.paused}
activeIds={activeIds}
concurrentLimit={concurrentLimit} concurrentLimit={concurrentLimit}
isLocked={!prereqCheck.canProceed} isLocked={!prereqCheck.canProceed}
missingPrereqs={prereqCheck.missingPrereqs} missingPrereqs={prereqCheck.missingPrereqs}
@@ -117,7 +119,7 @@ const ElementalDisciplineGroup: React.FC<GroupProps> = ({
interface ElementalSubtabProps extends SharedRenderProps {} interface ElementalSubtabProps extends SharedRenderProps {}
export const ElementalSubtab: React.FC<ElementalSubtabProps> = ({ export const ElementalSubtab: React.FC<ElementalSubtabProps> = ({
disciplines, concurrentLimit, elements, onToggle, disciplines, activeIds, concurrentLimit, elements, onToggle,
}) => { }) => {
const disciplineMap = useMemo( const disciplineMap = useMemo(
() => buildElementalDisciplineMap( () => buildElementalDisciplineMap(
@@ -151,6 +153,7 @@ export const ElementalSubtab: React.FC<ElementalSubtabProps> = ({
capacity={entry.capacity} capacity={entry.capacity}
conversion={entry.conversion} conversion={entry.conversion}
disciplines={disciplines} disciplines={disciplines}
activeIds={activeIds}
concurrentLimit={concurrentLimit} concurrentLimit={concurrentLimit}
elements={elements} elements={elements}
onToggle={onToggle} onToggle={onToggle}
+8
View File
@@ -100,9 +100,17 @@ const MANA_TYPE_NAMES: Record<string, string> = {
metal: 'metal', metal: 'metal',
sand: 'sand', sand: 'sand',
lightning: 'lightning', lightning: 'lightning',
frost: 'frost',
blackflame: 'blackflame',
radiantflames: 'radiantflames',
miasma: 'miasma',
shadowglass: 'shadowglass',
crystal: 'crystal', crystal: 'crystal',
stellar: 'stellar', stellar: 'stellar',
void: 'void', void: 'void',
soul: 'soul',
time: 'time',
plasma: 'plasma',
}; };
/** /**