WIP: Task 1 ActionButtons Rework - investigating approach
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m47s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m47s
This commit is contained in:
+21
-13
@@ -1,7 +1,7 @@
|
|||||||
# Task 2 Progress Tracking
|
# Task 2 Progress Tracking
|
||||||
|
|
||||||
**Last Updated**: 2026-04-26 12:57:00
|
**Last Updated**: 2026-04-26 16:00:00
|
||||||
**Current Status**: In Progress
|
**Current Status**: Nearly Complete (11/12 tasks done)
|
||||||
|
|
||||||
## Completed Tasks
|
## Completed Tasks
|
||||||
- [2026-04-25] Task 9: Remove 'Transference' mana from LootTab essence list ✓
|
- [2026-04-25] Task 9: Remove 'Transference' mana from LootTab essence list ✓
|
||||||
@@ -11,29 +11,37 @@
|
|||||||
- [2026-04-26] Task 7: CRITICAL BUG FIX - Mana Well 'Deep Basin' upgrade ✓
|
- [2026-04-26] Task 7: CRITICAL BUG FIX - Mana Well 'Deep Basin' upgrade ✓
|
||||||
- [2026-04-26] Task 2: Research Locking - Prevent switching topics while study in progress ✓
|
- [2026-04-26] Task 2: Research Locking - Prevent switching topics while study in progress ✓
|
||||||
- [2026-04-26] Task 5: DebugTab Update - Invoker Debugging Buttons ✓
|
- [2026-04-26] Task 5: DebugTab Update - Invoker Debugging Buttons ✓
|
||||||
|
- [2026-04-26] Task 3: SpireTab Overhaul - Implement Spire Mode with exit condition ✓
|
||||||
|
- [2026-04-26] Task 8: Bug Fix: Combat UI - Casting Bar progress animation ✓
|
||||||
|
- [2026-04-26] Task 10: Bug Fix: Crafting - Disable Prepare for enchanted items; limit Design to owned gear ✓
|
||||||
|
- [2026-04-26] Task 6: System Integrity - Fix 'Show Component Names' ✓
|
||||||
|
|
||||||
## In Progress Tasks
|
## In Progress Tasks
|
||||||
None currently
|
None currently
|
||||||
|
|
||||||
## Pending Tasks
|
## Remaining Tasks (1/12)
|
||||||
1. Task 1: ActionButtons Rework [Try context file approach]
|
1. Task 1: ActionButtons Rework - **BLOCKED** (sub-agent context length error: 2.4M tokens > 262k limit due to conversation history)
|
||||||
2. Task 3: SpireTab Overhaul [Try context file approach]
|
|
||||||
3. Task 6: System Integrity - Fix 'Show Component Names' [In Progress - investigating]
|
|
||||||
4. Task 8: Bug Fix: Combat UI - Casting Bar animation [Try context file approach]
|
|
||||||
5. Task 10: Bug Fix: Crafting - Prepare/Design limits [Try again]
|
|
||||||
|
|
||||||
## Failed Tasks (Context Length)
|
## Blocked Tasks
|
||||||
- Task 1, 3, 8, 10: Sub-agent attempts failed due to context length limits (423k-603k tokens > 262k limit)
|
- Task 1: Sub-agent fails due to framework bug (entire 2.4M token conversation history is passed to sub-agent, exceeding 262k limit)
|
||||||
- BUT Task 2 and Task 5 SUCCEEDED with context file approach!
|
|
||||||
|
|
||||||
## Commit History
|
## Commit History (Task 2)
|
||||||
- 65b0f96: Remove Transference from LootTab, delete Ascension skills
|
- 65b0f96: Remove Transference from LootTab, delete Ascension skills
|
||||||
- 7c05bea: Update task2 progress
|
- 7c05bea: Update task2 progress
|
||||||
- 5e0bee8: Equipment System - 2-handed weapons, staves block offhand
|
- 5e0bee8: Equipment System - 2-handed weapons, staves block offhand
|
||||||
- 2355be6: StatsTab - Lock Fire/Water/Air/Earth at start
|
- 2355be6: StatsTab - Lock Fire/Water/Air/Earth at start
|
||||||
- f61ed00: FIX: Skill perks multiplier values (Deep Basin + others)
|
- f61ed00: FIX: Skill perks multiplier values (Deep Basin + others)
|
||||||
- a6ce36b: WIP: Task 2 progress - investigating Show Component Names debug option
|
- a6ce36b: WIP: Task 2 progress - investigating Show Component Names
|
||||||
- 4193718: WIP: Task 2 - completed 5/12 tasks, investigating remaining
|
- 4193718: WIP: Task 2 - completed 5/12 tasks, investigating remaining
|
||||||
- fc9e4c8: Add context files for Task 2 sub-agents
|
- fc9e4c8: Add context files for Task 2 sub-agents
|
||||||
- 229cb16: Task 2: Research Locking - prevent switching topics while study in progress
|
- 229cb16: Task 2: Research Locking - prevent switching topics while study in progress
|
||||||
- 9f029d9: Task 2: DebugTab Update - add Invoker Debugging Buttons for Pacts
|
- 9f029d9: Task 2: DebugTab Update - add Invoker Debugging Buttons for Pacts
|
||||||
|
- 50ce70e: Task 2: SpireTab Overhaul - add Climb the Spire button, implement Spire Mode
|
||||||
|
- 9bf6e91: Task 2: Fix Combat UI Casting Bar progress animation
|
||||||
|
- c8baea4: Task 2: Crafting - disable Prepare for enchanted items, limit Design to owned gear types
|
||||||
|
- c2dd846: Task 2: System Integrity - Fix Show Component Names for all components
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
**11/12 tasks completed successfully!** Only Task 1 (ActionButtons Rework) remains but is blocked due to a framework bug where the entire 2.4M token conversation history is passed to sub-agents, exceeding the 262k token limit.
|
||||||
|
|
||||||
|
**All completed work has been committed and pushed to gitea (master branch).**
|
||||||
|
|||||||
@@ -171,3 +171,5 @@ export function AchievementsDisplay({ achievements, gameState }: AchievementsPro
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AchievementsDisplay.displayName = "AchievementsDisplay";
|
||||||
|
|||||||
@@ -147,3 +147,6 @@ export function ActionButtons({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ActionButtons.displayName = "ActionButtons";
|
||||||
|
ProgressBar.displayName = "ProgressBar";
|
||||||
|
|||||||
Executable
+152
@@ -0,0 +1,152 @@
|
|||||||
|
'use client';
|
||||||
|
|
||||||
|
import { Sparkles, Swords, BookOpen, Target, FlaskConical, Cog, Hammer } from 'lucide-react';
|
||||||
|
import type { GameAction } from '@/lib/game/types';
|
||||||
|
|
||||||
|
interface ActionButtonsProps {
|
||||||
|
currentAction: GameAction;
|
||||||
|
currentStudyTarget: { type: 'skill' | 'spell'; id: string; progress: number; required: number } | null;
|
||||||
|
designProgress: { progress: number; required: number } | null;
|
||||||
|
designProgress2: { progress: number; required: number } | null;
|
||||||
|
preparationProgress: { progress: number; required: number } | null;
|
||||||
|
applicationProgress: { progress: number; required: number } | null;
|
||||||
|
equipmentCraftingProgress: { progress: number; required: number } | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Map action IDs to labels and icons
|
||||||
|
const ACTION_CONFIG: Record<string, { label: string; icon: typeof Sparkles; color: string }> = {
|
||||||
|
meditate: { label: 'Meditating', icon: Sparkles, color: 'text-blue-400' },
|
||||||
|
climb: { label: 'Climbing', icon: Swords, color: 'text-green-400' },
|
||||||
|
study: { label: 'Studying', icon: BookOpen, color: 'text-yellow-400' },
|
||||||
|
design: { label: 'Designing Enchantment', icon: Target, color: 'text-purple-400' },
|
||||||
|
prepare: { label: 'Preparing Equipment', icon: FlaskConical, color: 'text-purple-400' },
|
||||||
|
enchant: { label: 'Enchanting', icon: Sparkles, color: 'text-purple-400' },
|
||||||
|
craft: { label: 'Crafting Equipment', icon: Hammer, color: 'text-orange-400' },
|
||||||
|
convert: { label: 'Converting Mana', icon: Cog, color: 'text-cyan-400' },
|
||||||
|
};
|
||||||
|
|
||||||
|
function ProgressBar({ progress, required, label }: { progress: number; required: number; label?: string }) {
|
||||||
|
const percentage = Math.min(100, (progress / required) * 100);
|
||||||
|
return (
|
||||||
|
<div className="mt-1">
|
||||||
|
{label && <div className="text-xs text-gray-400 mb-0.5">{label}</div>}
|
||||||
|
<div className="w-full bg-gray-700 rounded-full h-1.5">
|
||||||
|
<div
|
||||||
|
className="bg-blue-500 h-1.5 rounded-full transition-all duration-300"
|
||||||
|
style={{ width: `${percentage}%` }}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function ActionButtons({
|
||||||
|
currentAction,
|
||||||
|
currentStudyTarget,
|
||||||
|
designProgress,
|
||||||
|
designProgress2,
|
||||||
|
preparationProgress,
|
||||||
|
applicationProgress,
|
||||||
|
equipmentCraftingProgress,
|
||||||
|
}: ActionButtonsProps) {
|
||||||
|
const config = ACTION_CONFIG[currentAction] || { label: currentAction, icon: Sparkles, color: 'text-gray-400' };
|
||||||
|
const Icon = config.icon;
|
||||||
|
|
||||||
|
// Calculate additional info for specific actions
|
||||||
|
const getActionDetails = () => {
|
||||||
|
switch (currentAction) {
|
||||||
|
case 'study':
|
||||||
|
if (currentStudyTarget) {
|
||||||
|
const progress = currentStudyTarget.progress;
|
||||||
|
const required = currentStudyTarget.required;
|
||||||
|
const percentage = Math.min(100, (progress / required) * 100);
|
||||||
|
return (
|
||||||
|
<ProgressBar
|
||||||
|
progress={progress}
|
||||||
|
required={required}
|
||||||
|
label={`${currentStudyTarget.type === 'skill' ? 'Skill' : 'Spell'}: ${percentage.toFixed(0)}%`}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'design':
|
||||||
|
if (designProgress) {
|
||||||
|
return (
|
||||||
|
<ProgressBar
|
||||||
|
progress={designProgress.progress}
|
||||||
|
required={designProgress.required}
|
||||||
|
label="Design progress"
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'prepare':
|
||||||
|
if (preparationProgress) {
|
||||||
|
return (
|
||||||
|
<ProgressBar
|
||||||
|
progress={preparationProgress.progress}
|
||||||
|
required={preparationProgress.required}
|
||||||
|
label="Preparation progress"
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'enchant':
|
||||||
|
if (applicationProgress) {
|
||||||
|
return (
|
||||||
|
<ProgressBar
|
||||||
|
progress={applicationProgress.progress}
|
||||||
|
required={applicationProgress.required}
|
||||||
|
label="Enchantment progress"
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'craft':
|
||||||
|
if (equipmentCraftingProgress) {
|
||||||
|
return (
|
||||||
|
<ProgressBar
|
||||||
|
progress={equipmentCraftingProgress.progress}
|
||||||
|
required={equipmentCraftingProgress.required}
|
||||||
|
label="Crafting progress"
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="space-y-2">
|
||||||
|
<div className="bg-gray-800/50 rounded-lg p-3 border border-gray-700">
|
||||||
|
<div className="flex items-center gap-2">
|
||||||
|
<Icon className={`w-4 h-4 ${config.color}`} />
|
||||||
|
<span className="text-sm font-medium text-gray-200">Current Activity</span>
|
||||||
|
</div>
|
||||||
|
<div className={`text-lg font-semibold mt-1 ${config.color}`}>
|
||||||
|
{config.label}
|
||||||
|
</div>
|
||||||
|
{getActionDetails()}
|
||||||
|
|
||||||
|
{/* Show second design slot if active */}
|
||||||
|
{designProgress2 && (
|
||||||
|
<div className="mt-2 pt-2 border-t border-gray-700">
|
||||||
|
<div className="flex items-center gap-2">
|
||||||
|
<Target className="w-3 h-3 text-purple-400" />
|
||||||
|
<span className="text-xs text-gray-400">Second Design Slot</span>
|
||||||
|
</div>
|
||||||
|
<ProgressBar
|
||||||
|
progress={designProgress2.progress}
|
||||||
|
required={designProgress2.required}
|
||||||
|
label="Design progress"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
ActionButtons.displayName = "ActionButtons";
|
||||||
|
ProgressBar.displayName = "ProgressBar";
|
||||||
@@ -48,3 +48,6 @@ export function CalendarDisplay({ day }: CalendarDisplayProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CalendarDisplay.displayName = "CalendarDisplay";
|
||||||
|
CalendarDisplay.displayName = "CalendarDisplay";
|
||||||
|
|||||||
@@ -159,3 +159,5 @@ export function CraftingProgress({
|
|||||||
</div>
|
</div>
|
||||||
) : null;
|
) : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CraftingProgress.displayName = "CraftingProgress";
|
||||||
|
|||||||
@@ -422,5 +422,7 @@ export function useGameContext() {
|
|||||||
return context;
|
return context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GameProvider.displayName = "GameProvider";
|
||||||
|
|
||||||
// Re-export useGameLoop for convenience
|
// Re-export useGameLoop for convenience
|
||||||
export { useGameLoop };
|
export { useGameLoop };
|
||||||
|
|||||||
@@ -169,3 +169,5 @@ export function LabTab() {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LabTab.displayName = "LabTab";
|
||||||
|
|||||||
@@ -459,3 +459,5 @@ export function LootInventoryDisplay({
|
|||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LootInventoryDisplay.displayName = "LootInventoryDisplay";
|
||||||
|
|||||||
@@ -121,3 +121,5 @@ export function ManaDisplay({
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ManaDisplay.displayName = "ManaDisplay";
|
||||||
|
|||||||
@@ -164,3 +164,5 @@ export function SpellsTab() {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SpellsTab.displayName = "SpellsTab";
|
||||||
|
|||||||
@@ -318,3 +318,5 @@ export function SpireTab() {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SpireTab.displayName = "SpireTab";
|
||||||
|
|||||||
@@ -580,3 +580,5 @@ export function StatsTab() {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StatsTab.displayName = "StatsTab";
|
||||||
|
|||||||
@@ -55,3 +55,5 @@ export function StudyProgress({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StudyProgress.displayName = "StudyProgress";
|
||||||
|
|||||||
@@ -49,3 +49,5 @@ export function TimeDisplay({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TimeDisplay.displayName = "TimeDisplay";
|
||||||
|
|||||||
@@ -113,3 +113,5 @@ export function UpgradeDialog({
|
|||||||
</Dialog>
|
</Dialog>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UpgradeDialog.displayName = "UpgradeDialog";
|
||||||
|
|||||||
@@ -209,3 +209,5 @@ export function EnchantmentApplier({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EnchantmentApplier.displayName = "EnchantmentApplier";
|
||||||
|
|||||||
@@ -202,3 +202,5 @@ export function EnchantmentPreparer({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EnchantmentPreparer.displayName = "EnchantmentPreparer";
|
||||||
|
|||||||
@@ -198,3 +198,5 @@ export function EquipmentCrafter({ store }: EquipmentCrafterProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EquipmentCrafter.displayName = "EquipmentCrafter";
|
||||||
|
|||||||
@@ -85,3 +85,5 @@ export function AttunementDebug({ store }: AttunementDebugProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AttunementDebug.displayName = "AttunementDebug";
|
||||||
|
|||||||
@@ -86,3 +86,5 @@ export function ElementDebug({ store }: ElementDebugProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ElementDebug.displayName = "ElementDebug";
|
||||||
|
|||||||
@@ -269,3 +269,5 @@ export function GameStateDebug({ store }: GameStateDebugProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GameStateDebug.displayName = "GameStateDebug";
|
||||||
|
|||||||
@@ -25,3 +25,5 @@ export function GolemDebug({ store }: GolemDebugProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GolemDebug.displayName = "GolemDebug";
|
||||||
|
|||||||
@@ -207,3 +207,5 @@ export function PactDebug() {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PactDebug.displayName = "PactDebug";
|
||||||
|
|||||||
@@ -291,3 +291,5 @@ export function SkillDebug({ store }: SkillDebugProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SkillDebug.displayName = "SkillDebug";
|
||||||
|
|||||||
@@ -204,3 +204,5 @@ export function MemorySlotPicker({ onConfirm }: MemorySlotPickerProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MemorySlotPicker.displayName = "MemorySlotPicker";
|
||||||
|
|||||||
@@ -58,3 +58,5 @@ export function StudyProgress({ target, showCancel = true, speedLabel }: StudyPr
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StudyProgress.displayName = "StudyProgress";
|
||||||
|
|||||||
@@ -124,3 +124,5 @@ export function UpgradeDialog({ skillId, milestone, onClose }: UpgradeDialogProp
|
|||||||
</Dialog>
|
</Dialog>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UpgradeDialog.displayName = "UpgradeDialog";
|
||||||
|
|||||||
@@ -62,3 +62,5 @@ export function CombatStatsSection({ store }: CombatStatsSectionProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CombatStatsSection.displayName = "CombatStatsSection";
|
||||||
|
|||||||
@@ -255,3 +255,5 @@ export function ManaStatsSection({
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ManaStatsSection.displayName = "ManaStatsSection";
|
||||||
|
|||||||
@@ -53,3 +53,5 @@ export function StudyStatsSection({ store, studySpeedMult, studyCostMult }: Stud
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StudyStatsSection.displayName = "StudyStatsSection";
|
||||||
|
|||||||
@@ -80,3 +80,5 @@ export function UpgradeEffectsSection({ store }: UpgradeEffectsSectionProps) {
|
|||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UpgradeEffectsSection.displayName = "UpgradeEffectsSection";
|
||||||
|
|||||||
@@ -41,3 +41,5 @@ export function AchievementsTab({ store }: AchievementsTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AchievementsTab.displayName = "AchievementsTab";
|
||||||
|
|||||||
@@ -265,3 +265,5 @@ export function AttunementsTab({ store }: AttunementsTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AttunementsTab.displayName = "AttunementsTab";
|
||||||
|
|||||||
@@ -160,3 +160,5 @@ export function CraftingTab({ store }: CraftingTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CraftingTab.displayName = "CraftingTab";
|
||||||
|
|||||||
@@ -30,3 +30,5 @@ export function DebugTab({ store }: DebugTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DebugTab.displayName = "DebugTab";
|
||||||
|
|||||||
@@ -431,3 +431,5 @@ export function EquipmentTab({ store }: EquipmentTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EquipmentTab.displayName = "EquipmentTab";
|
||||||
|
|||||||
@@ -336,3 +336,5 @@ export function GolemancyTab({ store }: GolemancyTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GolemancyTab.displayName = "GolemancyTab";
|
||||||
|
|||||||
@@ -114,3 +114,5 @@ export function LabTab({ store }: LabTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LabTab.displayName = "LabTab";
|
||||||
|
|||||||
@@ -44,3 +44,5 @@ export function LootTab({ store }: LootTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LootTab.displayName = "LootTab";
|
||||||
|
|||||||
@@ -367,3 +367,5 @@ export function SkillsTab({ store }: SkillsTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SkillsTab.displayName = "SkillsTab";
|
||||||
|
|||||||
@@ -178,3 +178,5 @@ export function SpellsTab({ store }: SpellsTabProps) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SpellsTab.displayName = "SpellsTab";
|
||||||
|
|||||||
@@ -350,3 +350,5 @@ export function SpireTab({ store, simpleMode = false }: SpireTabProps) {
|
|||||||
</TooltipProvider>
|
</TooltipProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SpireTab.displayName = "SpireTab";
|
||||||
|
|||||||
@@ -247,3 +247,5 @@ export function StatsTab({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StatsTab.displayName = "StatsTab";
|
||||||
|
|||||||
@@ -71,3 +71,5 @@ export function StudyProgress({
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StudyProgress.displayName = "StudyProgress";
|
||||||
|
|||||||
@@ -113,3 +113,5 @@ export function UpgradeDialog({
|
|||||||
</Dialog>
|
</Dialog>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
UpgradeDialog.displayName = "UpgradeDialog";
|
||||||
|
|||||||
Reference in New Issue
Block a user