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
Generated: 2026-05-31T18:23:54.984Z
Generated: 2026-06-01T07:54:15.106Z
No circular dependencies found. ✅
+1 -1
View File
@@ -1,6 +1,6 @@
{
"_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.",
"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' ? (
<ElementalSubtab
disciplines={disciplines}
activeIds={activeIds}
concurrentLimit={concurrentLimit}
elements={elements}
onToggle={handleToggle}
+6 -3
View File
@@ -50,6 +50,7 @@ function buildElementalDisciplineMap(
interface SharedRenderProps {
disciplines: Record<string, { xp: number; paused: boolean }>;
activeIds: string[];
concurrentLimit: number;
elements: DisciplineCardProps['missingSourceMana'] extends readonly string[]
? Record<string, { unlocked: boolean }>
@@ -65,8 +66,8 @@ interface GroupProps extends SharedRenderProps {
conversion?: DisciplineDefinition;
}
const ElementalDisciplineGroup: React.FC<GroupProps> = ({
manaType, capacity, conversion, disciplines, concurrentLimit, elements, onToggle,
const ElementalDisciplineGroup: React.FC<GroupProps & { activeIds: string[] }> = ({
manaType, capacity, conversion, disciplines, activeIds, concurrentLimit, elements, onToggle,
}) => {
const elementDef = ELEMENTS[manaType];
const manaColor = elementDef?.color ?? '#888888';
@@ -95,6 +96,7 @@ const ElementalDisciplineGroup: React.FC<GroupProps> = ({
definition={def}
xp={discState.xp}
paused={discState.paused}
activeIds={activeIds}
concurrentLimit={concurrentLimit}
isLocked={!prereqCheck.canProceed}
missingPrereqs={prereqCheck.missingPrereqs}
@@ -117,7 +119,7 @@ const ElementalDisciplineGroup: React.FC<GroupProps> = ({
interface ElementalSubtabProps extends SharedRenderProps {}
export const ElementalSubtab: React.FC<ElementalSubtabProps> = ({
disciplines, concurrentLimit, elements, onToggle,
disciplines, activeIds, concurrentLimit, elements, onToggle,
}) => {
const disciplineMap = useMemo(
() => buildElementalDisciplineMap(
@@ -151,6 +153,7 @@ export const ElementalSubtab: React.FC<ElementalSubtabProps> = ({
capacity={entry.capacity}
conversion={entry.conversion}
disciplines={disciplines}
activeIds={activeIds}
concurrentLimit={concurrentLimit}
elements={elements}
onToggle={onToggle}
+8
View File
@@ -100,9 +100,17 @@ const MANA_TYPE_NAMES: Record<string, string> = {
metal: 'metal',
sand: 'sand',
lightning: 'lightning',
frost: 'frost',
blackflame: 'blackflame',
radiantflames: 'radiantflames',
miasma: 'miasma',
shadowglass: 'shadowglass',
crystal: 'crystal',
stellar: 'stellar',
void: 'void',
soul: 'soul',
time: 'time',
plasma: 'plasma',
};
/**