0 ? 0 : undefined,
- transform: `translateX(${direction * -4}px)`,
- }}
- />
- )}
-
-
-
-
-
- >
- )}
-
-
setByUnlock(unlock)}
- />
-
- {(module as ModuleDefinition).unlocks &&
- (module as ModuleDefinition).unlocks!.length > 1 && (
-
- )}
-
- {(module as ModuleDefinition).unlocks &&
- tree(type, (module as ModuleDefinition).unlocks!)}
-
- );
- })}
-
- );
- }
-
- return (
-
- Modules
-
-
- {tree('turret', [
- {
- cost: { type: 'xp', value: 0 },
- id: turret0.id,
- type: 'turret',
- },
- ])}
- {tree('gun', [
- {
- cost: { type: 'xp', value: 0 },
- id: gun0.id,
- type: 'gun',
- },
- ])}
- {tree('engine', [
- {
- cost: { type: 'xp', value: 0 },
- id: engine0.id,
- type: 'engine',
- },
- ])}
- {tree('chassis', [
- {
- cost: { type: 'xp', value: 0 },
- id: track0.id,
- type: 'chassis',
- },
- ])}
-
-
- );
-}
diff --git a/src/app/tools/tankopedia/[id]/components/Model/TechTreeSection.tsx b/src/app/tools/tankopedia/[id]/components/Model/TechTreeSection.tsx
index 5f8d456e0..970c121c6 100644
--- a/src/app/tools/tankopedia/[id]/components/Model/TechTreeSection.tsx
+++ b/src/app/tools/tankopedia/[id]/components/Model/TechTreeSection.tsx
@@ -1,5 +1,5 @@
import { ChevronRightIcon } from '@radix-ui/react-icons';
-import { ChevronDownIcon, Flex, Heading, Text } from '@radix-ui/themes';
+import { ChevronDownIcon, Flex, Text } from '@radix-ui/themes';
import Link from 'next/link';
import { ComponentProps, use } from 'react';
import PageWrapper from '../../../../../../components/PageWrapper';
@@ -121,10 +121,39 @@ export function TechTreeSection() {
}
return (
-
- Tech tree
+
+
-
+ {/*
+ Tech tree
+ */}
+
+
{tank.ancestors && (
<>
)}
-
+
-
-
{tank.successors && (
diff --git a/src/app/tools/tankopedia/[id]/page.tsx b/src/app/tools/tankopedia/[id]/page.tsx
index 518b964bd..1287a19c7 100644
--- a/src/app/tools/tankopedia/[id]/page.tsx
+++ b/src/app/tools/tankopedia/[id]/page.tsx
@@ -5,9 +5,9 @@ import PageWrapper from '../../../../components/PageWrapper';
import { assignDuelMember } from '../../../../core/blitzkit/assignDuelMember';
import { mutateDuel, useDuel } from '../../../../stores/duel';
import { mutateTankopediaTemporary } from '../../../../stores/tankopedia';
+import { CharacteristicsSection } from './components/Model/CharacteristicsSection';
import { HeroSection } from './components/Model/HeroSection';
import { HistoricalSection } from './components/Model/HistoricalSection';
-import { ModulesSection } from './components/Model/ModulesSection';
import { TechTreeSection } from './components/Model/TechTreeSection';
import { Videos } from './components/Videos';
@@ -62,10 +62,9 @@ export default function Page({ params }: { params: { id: string } }) {
<>
{/* */}
-
+
- {/*
- */}
+ {/* */}
>
diff --git a/src/components/PageWrapper.tsx b/src/components/PageWrapper.tsx
index 8de691c0a..218c40e44 100644
--- a/src/components/PageWrapper.tsx
+++ b/src/components/PageWrapper.tsx
@@ -1,11 +1,13 @@
import { Flex, FlexProps, Theme } from '@radix-ui/themes';
import { ComponentProps } from 'react';
+import { theme } from '../stitches.config';
type PageWrapperProps = FlexProps & {
color?: ComponentProps['accentColor'];
size?: number | string;
noPadding?: boolean;
noMaxWidth?: boolean;
+ highlight?: boolean;
};
export default function PageWrapper({
@@ -15,6 +17,7 @@ export default function PageWrapper({
children,
noPadding = false,
noMaxWidth = false,
+ highlight = false,
...props
}: PageWrapperProps) {
return (
@@ -24,6 +27,9 @@ export default function PageWrapper({
flex: 1,
display: 'flex',
flexDirection: 'column',
+ background: highlight
+ ? `linear-gradient(-90deg, ${theme.colors.appBackground1}, ${theme.colors.appBackground2})`
+ : undefined,
}}
>