diff --git a/package.json b/package.json index f0cba3c..60e4a54 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "@mui/icons-material": "^6.1.3", "@mui/material": "^6.1.3", "react": "18.3.1", + "react-color": "^2.19.3", "react-dom": "18.3.1", "react-router-dom": "^6.27.0", "uuid": "^10.0.0" @@ -55,6 +56,7 @@ "@types/jest": "^29.5.12", "@types/node": "18.16.9", "@types/react": "^18.3.11", + "@types/react-color": "^3.0.12", "@types/react-dom": "18.3.0", "@types/uuid": "^10.0.0", "babel-jest": "^29.7.0", diff --git a/src/__fixtures__/dominion-lib-fixtures.ts b/src/__fixtures__/dominion-lib-fixtures.ts index b71c45f..9886280 100644 --- a/src/__fixtures__/dominion-lib-fixtures.ts +++ b/src/__fixtures__/dominion-lib-fixtures.ts @@ -6,6 +6,7 @@ import { EmptyVictoryDetails, EmptyMatDetails, DefaultTurnDetails, + DefaultPlayerColors, } from '@/game/constants'; import { calculateInitialSupply } from '@/game/dominion-lib'; import { GameLogActionWithCount } from '@/game/enumerations/game-log-action-with-count'; @@ -29,7 +30,7 @@ export function createMockGame(playerCount: number, overrides?: Partial): return { players: Array(playerCount) .fill(null) - .map(() => createMockPlayer()), + .map((value, index) => createMockPlayer(undefined, index)), supply, options, risingSun: { @@ -56,9 +57,13 @@ export function createMockGame(playerCount: number, overrides?: Partial): }; } -export function createMockPlayer(victory?: Partial): IPlayer { +export function createMockPlayer(victory?: Partial, index?: number): IPlayer { return { name: faker.person.firstName(), + color: + DefaultPlayerColors[ + index ?? faker.number.int({ min: 0, max: DefaultPlayerColors.length - 1 }) + ], mats: { ...EmptyMatDetails }, turn: { ...DefaultTurnDetails }, newTurn: { ...DefaultTurnDetails }, diff --git a/src/_typography.scss b/src/_typography.scss new file mode 100644 index 0000000..5df0711 --- /dev/null +++ b/src/_typography.scss @@ -0,0 +1,29 @@ +$SUPER_TITLE: 32px; +$LARGE_TITLE: 28px; +$TITLE_SIZE: 24px; +$SUBTITLE_SIZE: 18px; +$TEXT_SIZE: 16px; + +.typography-super-title { + font-size: $SUPER_TITLE !important; + font-weight: bold; +} + +.typography-large-title { + font-size: $LARGE_TITLE !important; + font-weight: bold; +} + +.typography-title { + font-size: $TITLE_SIZE !important; + font-weight: bold; +} + +.typography-subtitle { + font-size: $SUBTITLE_SIZE !important; + font-weight: 600; +} + +.typography-text { + font-size: $TEXT_SIZE !important; +} diff --git a/src/assets/fonts/CharlemagneStd-Bold.ttf b/src/assets/fonts/CharlemagneStd-Bold.ttf deleted file mode 100644 index 575291b..0000000 Binary files a/src/assets/fonts/CharlemagneStd-Bold.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.otf deleted file mode 100644 index b5ba507..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff new file mode 100644 index 0000000..787a370 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff2 new file mode 100644 index 0000000..498386f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.otf deleted file mode 100644 index 822d1ca..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff new file mode 100644 index 0000000..dd049ac Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff2 new file mode 100644 index 0000000..50a5f3a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.otf deleted file mode 100644 index 2d1f622..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff new file mode 100644 index 0000000..7ed8c7a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff2 new file mode 100644 index 0000000..5548a60 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.otf deleted file mode 100644 index e512f07..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff new file mode 100644 index 0000000..861d7bc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff2 new file mode 100644 index 0000000..4dd2646 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.otf deleted file mode 100644 index 5ca3d8f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff new file mode 100644 index 0000000..b1f9669 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff2 new file mode 100644 index 0000000..504a4a7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.otf deleted file mode 100644 index 371b190..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff new file mode 100644 index 0000000..af20b53 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff2 new file mode 100644 index 0000000..3a237cc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.ttf deleted file mode 100644 index 8011f9d..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff new file mode 100644 index 0000000..f817c15 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff2 new file mode 100644 index 0000000..4d7ba83 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.otf deleted file mode 100644 index 0042f7a..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff new file mode 100644 index 0000000..690feea Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff2 new file mode 100644 index 0000000..c2e7d59 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.ttf b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.ttf deleted file mode 100644 index 32e949e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff new file mode 100644 index 0000000..2c8b57b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff2 new file mode 100644 index 0000000..1f645e3 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Display.otf deleted file mode 100644 index 2a63792..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff new file mode 100644 index 0000000..fb2359f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff2 new file mode 100644 index 0000000..3ec6357 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.otf deleted file mode 100644 index 58efe61..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff new file mode 100644 index 0000000..3e239d7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff2 new file mode 100644 index 0000000..6a1491a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.otf deleted file mode 100644 index 52ebf8e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff new file mode 100644 index 0000000..f3a7e85 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff2 new file mode 100644 index 0000000..d61c19f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.otf deleted file mode 100644 index c8a0b31..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff new file mode 100644 index 0000000..a7cf703 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff2 new file mode 100644 index 0000000..ae4873b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.ttf deleted file mode 100644 index 7764576..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff new file mode 100644 index 0000000..2f864e3 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff2 new file mode 100644 index 0000000..147c6dc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.otf deleted file mode 100644 index 45ed754..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff new file mode 100644 index 0000000..bf39bed Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff2 new file mode 100644 index 0000000..a1808d2 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold.ttf b/src/assets/fonts/Minion Pro/Minion Pro Bold.ttf deleted file mode 100644 index ba8a082..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Bold.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold.woff b/src/assets/fonts/Minion Pro/Minion Pro Bold.woff new file mode 100644 index 0000000..81ab134 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Bold.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Bold.woff2 new file mode 100644 index 0000000..94f1c39 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Bold.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Caption.otf deleted file mode 100644 index 6bb336f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Caption.woff new file mode 100644 index 0000000..4934c8f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Caption.woff2 new file mode 100644 index 0000000..017809c Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.otf deleted file mode 100644 index 1021d82..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff new file mode 100644 index 0000000..beb9585 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff2 new file mode 100644 index 0000000..52babb9 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Display.otf deleted file mode 100644 index aff9352..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff new file mode 100644 index 0000000..5b736f8 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff2 new file mode 100644 index 0000000..4b8da9b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.otf deleted file mode 100644 index 4cc87bf..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff new file mode 100644 index 0000000..4a39f93 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff2 new file mode 100644 index 0000000..c33f73b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.otf deleted file mode 100644 index 3d7a2ef..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff new file mode 100644 index 0000000..671f20f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff2 new file mode 100644 index 0000000..222a1c8 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.otf deleted file mode 100644 index de154b5..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff new file mode 100644 index 0000000..6ddaab3 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff2 new file mode 100644 index 0000000..35aae02 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.otf deleted file mode 100644 index 8f32261..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff new file mode 100644 index 0000000..025c346 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff2 new file mode 100644 index 0000000..ede57f4 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.otf deleted file mode 100644 index 48cc4d3..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff new file mode 100644 index 0000000..3916594 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff2 new file mode 100644 index 0000000..8c9cb9b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond.otf b/src/assets/fonts/Minion Pro/Minion Pro Cond.otf deleted file mode 100644 index e01082b..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Cond.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond.woff b/src/assets/fonts/Minion Pro/Minion Pro Cond.woff new file mode 100644 index 0000000..f2ac1aa Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Cond.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Cond.woff2 new file mode 100644 index 0000000..d252f2f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Cond.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Display.otf deleted file mode 100644 index 557bd8b..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Display.woff new file mode 100644 index 0000000..f774440 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Display.woff2 new file mode 100644 index 0000000..992f84a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.otf deleted file mode 100644 index 003a36a..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff new file mode 100644 index 0000000..c129148 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff2 new file mode 100644 index 0000000..437f8c1 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Italic Display.otf deleted file mode 100644 index eabc88d..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff new file mode 100644 index 0000000..267d0f0 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff2 new file mode 100644 index 0000000..c95522c Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.otf deleted file mode 100644 index f7a662f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff new file mode 100644 index 0000000..1110a3b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff2 new file mode 100644 index 0000000..5d8678d Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Italic.ttf deleted file mode 100644 index faa4ff8..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Italic.woff new file mode 100644 index 0000000..77cfecd Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Italic.woff2 new file mode 100644 index 0000000..8241057 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.otf deleted file mode 100644 index 513c5ee..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff new file mode 100644 index 0000000..5e9d205 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff2 new file mode 100644 index 0000000..8adced1 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.otf deleted file mode 100644 index c36039d..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff new file mode 100644 index 0000000..ed78e4c Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff2 new file mode 100644 index 0000000..47471f9 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.otf deleted file mode 100644 index 2c1a478..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff new file mode 100644 index 0000000..5291913 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff2 new file mode 100644 index 0000000..8d9ec97 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.otf deleted file mode 100644 index 411b306..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff new file mode 100644 index 0000000..105de33 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff2 new file mode 100644 index 0000000..cd537f7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.otf deleted file mode 100644 index 79cecb0..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff new file mode 100644 index 0000000..b6fa68e Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff2 new file mode 100644 index 0000000..0416f4b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.otf deleted file mode 100644 index 5f77906..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff new file mode 100644 index 0000000..be7b416 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff2 new file mode 100644 index 0000000..6d8309e Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.otf deleted file mode 100644 index 1fd2d9e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff new file mode 100644 index 0000000..78bba8b Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff2 new file mode 100644 index 0000000..de7caa0 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.otf deleted file mode 100644 index a00a00f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff new file mode 100644 index 0000000..206f21a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff2 new file mode 100644 index 0000000..c02e5df Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.otf deleted file mode 100644 index 9d9613b..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff new file mode 100644 index 0000000..014e5bc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff2 new file mode 100644 index 0000000..c2a6a65 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Display.otf deleted file mode 100644 index 3fabcef..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff new file mode 100644 index 0000000..2a0c494 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff2 new file mode 100644 index 0000000..5ca4df4 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.otf deleted file mode 100644 index 020376d..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff new file mode 100644 index 0000000..3534ba8 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff2 new file mode 100644 index 0000000..9941447 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.otf deleted file mode 100644 index 712871e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff new file mode 100644 index 0000000..15911db Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff2 new file mode 100644 index 0000000..e9731e0 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.otf deleted file mode 100644 index ac40872..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff new file mode 100644 index 0000000..9b97e89 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff2 new file mode 100644 index 0000000..743afcc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.ttf deleted file mode 100644 index d6ded58..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff new file mode 100644 index 0000000..d04bc0a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff2 new file mode 100644 index 0000000..bc3f6e2 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.otf deleted file mode 100644 index 5d8e3b1..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff new file mode 100644 index 0000000..047b6de Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff2 new file mode 100644 index 0000000..d45fc2e Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium.ttf b/src/assets/fonts/Minion Pro/Minion Pro Medium.ttf deleted file mode 100644 index 5aaaa64..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Medium.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium.woff b/src/assets/fonts/Minion Pro/Minion Pro Medium.woff new file mode 100644 index 0000000..6afe3df Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Medium.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Medium.woff2 new file mode 100644 index 0000000..2e83d51 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Medium.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Regular.ttf b/src/assets/fonts/Minion Pro/Minion Pro Regular.ttf deleted file mode 100644 index 47880bc..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Regular.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Regular.woff b/src/assets/fonts/Minion Pro/Minion Pro Regular.woff new file mode 100644 index 0000000..d1af3ea Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Regular.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Regular.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Regular.woff2 new file mode 100644 index 0000000..ccfaba8 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Regular.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.ttf deleted file mode 100644 index cc8568e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff new file mode 100644 index 0000000..6b0d4e8 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff2 new file mode 100644 index 0000000..7c7b2c9 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.otf deleted file mode 100644 index 980c93f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff new file mode 100644 index 0000000..edd99c4 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff2 new file mode 100644 index 0000000..05ddfb7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.otf deleted file mode 100644 index 321783f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff new file mode 100644 index 0000000..0fa94c5 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff2 new file mode 100644 index 0000000..901f7c6 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.otf deleted file mode 100644 index 301645b..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff new file mode 100644 index 0000000..0a13ca1 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff2 new file mode 100644 index 0000000..eed0ad9 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.otf deleted file mode 100644 index 0ea983b..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff new file mode 100644 index 0000000..5c92aa7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff2 new file mode 100644 index 0000000..1089834 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.otf deleted file mode 100644 index 46cc35f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff new file mode 100644 index 0000000..13d01fa Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff2 new file mode 100644 index 0000000..c88b105 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.otf deleted file mode 100644 index 05fe94c..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff new file mode 100644 index 0000000..e047546 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff2 new file mode 100644 index 0000000..3402f79 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.otf deleted file mode 100644 index 3342df4..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff new file mode 100644 index 0000000..de2b9ee Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff2 new file mode 100644 index 0000000..ee594a4 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.otf deleted file mode 100644 index f355c04..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff new file mode 100644 index 0000000..abeb1a0 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff2 new file mode 100644 index 0000000..9a5aecd Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.otf deleted file mode 100644 index a02a50d..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff new file mode 100644 index 0000000..28ee8d7 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff2 new file mode 100644 index 0000000..fca0f84 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.otf deleted file mode 100644 index 6fb696c..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff new file mode 100644 index 0000000..13ef7ed Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff2 new file mode 100644 index 0000000..8f18761 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.otf deleted file mode 100644 index e24c7a8..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff new file mode 100644 index 0000000..1081aeb Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff2 new file mode 100644 index 0000000..39c852f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.otf deleted file mode 100644 index b24a2f7..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff new file mode 100644 index 0000000..78948b4 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff2 new file mode 100644 index 0000000..1a436cc Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.otf deleted file mode 100644 index 6354f2e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff new file mode 100644 index 0000000..8db794e Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff2 new file mode 100644 index 0000000..915864f Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.ttf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.ttf deleted file mode 100644 index ae4488e..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff new file mode 100644 index 0000000..04f9242 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff2 new file mode 100644 index 0000000..c6bcdcf Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.otf deleted file mode 100644 index fcd7f04..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff new file mode 100644 index 0000000..2012662 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff2 new file mode 100644 index 0000000..9421490 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold.ttf b/src/assets/fonts/Minion Pro/Minion Pro Semibold.ttf deleted file mode 100644 index b8f65f8..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Semibold.ttf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff b/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff new file mode 100644 index 0000000..8ecb16a Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff2 new file mode 100644 index 0000000..2228dce Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Semibold.woff2 differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Subhead.otf b/src/assets/fonts/Minion Pro/Minion Pro Subhead.otf deleted file mode 100644 index b84da0f..0000000 Binary files a/src/assets/fonts/Minion Pro/Minion Pro Subhead.otf and /dev/null differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff b/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff new file mode 100644 index 0000000..2c11c75 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff differ diff --git a/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff2 b/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff2 new file mode 100644 index 0000000..d93c602 Binary files /dev/null and b/src/assets/fonts/Minion Pro/Minion Pro Subhead.woff2 differ diff --git a/src/assets/fonts/SpaceMono-Regular.ttf b/src/assets/fonts/SpaceMono-Regular.ttf deleted file mode 100755 index 28d7ff7..0000000 Binary files a/src/assets/fonts/SpaceMono-Regular.ttf and /dev/null differ diff --git a/src/assets/fonts/TrajanPro-Bold.otf b/src/assets/fonts/TrajanPro-Bold.otf deleted file mode 100644 index c27f189..0000000 Binary files a/src/assets/fonts/TrajanPro-Bold.otf and /dev/null differ diff --git a/src/assets/fonts/TrajanPro-Regular.ttf b/src/assets/fonts/TrajanPro-Regular.ttf deleted file mode 100644 index b53d6c0..0000000 Binary files a/src/assets/fonts/TrajanPro-Regular.ttf and /dev/null differ diff --git a/src/assets/fonts/charlemagnestd-bold-webfont.woff b/src/assets/fonts/charlemagnestd-bold-webfont.woff new file mode 100644 index 0000000..41b8f0a Binary files /dev/null and b/src/assets/fonts/charlemagnestd-bold-webfont.woff differ diff --git a/src/assets/fonts/charlemagnestd-bold-webfont.woff2 b/src/assets/fonts/charlemagnestd-bold-webfont.woff2 new file mode 100644 index 0000000..c2f6d2a Binary files /dev/null and b/src/assets/fonts/charlemagnestd-bold-webfont.woff2 differ diff --git a/src/assets/fonts/spacemono-regular-webfont.woff b/src/assets/fonts/spacemono-regular-webfont.woff new file mode 100644 index 0000000..34afe2a Binary files /dev/null and b/src/assets/fonts/spacemono-regular-webfont.woff differ diff --git a/src/assets/fonts/spacemono-regular-webfont.woff2 b/src/assets/fonts/spacemono-regular-webfont.woff2 new file mode 100644 index 0000000..856b9bb Binary files /dev/null and b/src/assets/fonts/spacemono-regular-webfont.woff2 differ diff --git a/src/assets/fonts/trajanpro-bold-webfont.woff b/src/assets/fonts/trajanpro-bold-webfont.woff new file mode 100644 index 0000000..5f5a47c Binary files /dev/null and b/src/assets/fonts/trajanpro-bold-webfont.woff differ diff --git a/src/assets/fonts/trajanpro-bold-webfont.woff2 b/src/assets/fonts/trajanpro-bold-webfont.woff2 new file mode 100644 index 0000000..6689506 Binary files /dev/null and b/src/assets/fonts/trajanpro-bold-webfont.woff2 differ diff --git a/src/assets/fonts/trajanpro-regular-webfont.woff b/src/assets/fonts/trajanpro-regular-webfont.woff new file mode 100644 index 0000000..c4218f2 Binary files /dev/null and b/src/assets/fonts/trajanpro-regular-webfont.woff differ diff --git a/src/assets/fonts/trajanpro-regular-webfont.woff2 b/src/assets/fonts/trajanpro-regular-webfont.woff2 new file mode 100644 index 0000000..e961b84 Binary files /dev/null and b/src/assets/fonts/trajanpro-regular-webfont.woff2 differ diff --git a/src/components/AddPlayerNames.tsx b/src/components/AddPlayerNames.tsx index 8ae7524..a932f46 100644 --- a/src/components/AddPlayerNames.tsx +++ b/src/components/AddPlayerNames.tsx @@ -8,19 +8,32 @@ import { ListItem, ListItemText, IconButton, + styled, + Popover, } from '@mui/material'; import DeleteIcon from '@mui/icons-material/Delete'; +import AddCircleIcon from '@mui/icons-material/AddCircle'; +import { SketchPicker } from 'react-color'; import { useGameContext } from '@/components/GameContext'; import { newPlayer } from '@/game/dominion-lib'; -import { MAX_PLAYERS, MIN_PLAYERS } from '@/game/constants'; +import { DefaultPlayerColors, MAX_PLAYERS, MIN_PLAYERS } from '@/game/constants'; +import SuperCapsText from '@/components/SuperCapsText'; +import CenteredContainer from '@/components/CenteredContainer'; +import TabTitle from '@/components/TabTitle'; interface AddPlayerNamesProps { nextStep: () => void; } +const StyledPlayerNumber = styled(Typography)(({ theme }) => ({ + fontFamily: 'TrajanProBold', +})); + const AddPlayerNames: React.FC = ({ nextStep }) => { const { gameState, setGameState } = useGameContext(); const [playerName, setPlayerName] = useState(''); + const [anchorEl, setAnchorEl] = useState(null); + const [currentPlayerIndex, setCurrentPlayerIndex] = useState(-1); useEffect(() => { setGameState((prevState) => ({ @@ -31,9 +44,10 @@ const AddPlayerNames: React.FC = ({ nextStep }) => { const addPlayer = () => { if (playerName.trim()) { + const nextPlayerIndex = gameState.players.length; // +1, -1 setGameState((prevState) => ({ ...prevState, - players: [...prevState.players, newPlayer(playerName)], + players: [...prevState.players, newPlayer(playerName, nextPlayerIndex)], })); setPlayerName(''); } @@ -46,11 +60,32 @@ const AddPlayerNames: React.FC = ({ nextStep }) => { })); }; + const handleColorClick = (event: React.MouseEvent, playerIndex: number) => { + setCurrentPlayerIndex(playerIndex); + setAnchorEl(event.currentTarget); + }; + + const handleColorChange = (color: any) => { + if (currentPlayerIndex !== -1) { + setGameState((prevState) => { + const players = [...prevState.players]; + players[currentPlayerIndex].color = color.hex; + return { ...prevState, players }; + }); + } + }; + + const handleClose = () => { + setAnchorEl(null); + setCurrentPlayerIndex(-1); + }; + + const open = Boolean(anchorEl); + const id = open ? 'color-popover' : undefined; + return ( - - - Players - + + Players {gameState.players.map((player, index) => ( = ({ nextStep }) => { } > - + + handleColorClick(e, index)} + /> + {`${index + 1}.`} +    + {player.name} + + } + /> ))} @@ -74,9 +127,9 @@ const AddPlayerNames: React.FC = ({ nextStep }) => { placeholder="Enter player name" variant="outlined" /> - + + + )} {gameState.players.length >= 5 && ( @@ -89,7 +142,26 @@ const AddPlayerNames: React.FC = ({ nextStep }) => { Next )} - + + 0 && currentPlayerIndex !== -1 + ? gameState.players[currentPlayerIndex].color + : '#000000' + } + onChange={handleColorChange} + /> + + ); }; diff --git a/src/components/CenteredContainer.tsx b/src/components/CenteredContainer.tsx new file mode 100644 index 0000000..466d622 --- /dev/null +++ b/src/components/CenteredContainer.tsx @@ -0,0 +1,13 @@ +import { Box } from '@mui/material'; +import { styled } from '@mui/system'; + +const CenteredContainer = styled(Box)(({ theme }) => ({ + display: 'flex', + flexDirection: 'column', + alignItems: 'center', + justifyContent: 'center', + height: '100vh', + padding: theme.spacing(2), +})); + +export default CenteredContainer; diff --git a/src/components/EndGame.tsx b/src/components/EndGame.tsx index 2ef400d..b371b2c 100644 --- a/src/components/EndGame.tsx +++ b/src/components/EndGame.tsx @@ -27,7 +27,7 @@ const EndGame: React.FC = ({ game, onNewGame }) => { return ( - Game Over + Game Over Total Turns: {game.currentTurn} diff --git a/src/components/GameLog.tsx b/src/components/GameLog.tsx index ef149ad..cab4df3 100644 --- a/src/components/GameLog.tsx +++ b/src/components/GameLog.tsx @@ -1,26 +1,55 @@ import React from 'react'; -import { Typography, Paper, TableContainer, Table, TableBody } from '@mui/material'; +import { + Paper, + TableContainer, + Table, + TableBody, + TableHead, + TableRow, + TableCell, + Typography, +} from '@mui/material'; import { useGameContext } from '@/components/GameContext'; import GameLogEntry from '@/components/GameLogEntry'; +import TabTitle from '@/components/TabTitle'; +import { CurrentStep } from '@/game/enumerations/current-step'; const GameLog: React.FC = () => { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - const { gameState, setGameState } = useGameContext(); + const { gameState } = useGameContext(); + return ( - - - Game Log - - - - - {gameState.log.map((entry, index) => ( - - ))} - -
-
-
+ <> + Game Log + {gameState.currentStep === CurrentStep.GameScreen || + gameState.currentStep === CurrentStep.EndGame ? ( + + + + + Time + Duration + Action + Undo + + + + {gameState.log.map((entry, index) => ( + + ))} + +
+
+ ) : ( + + The game has not started yet. + + )} + ); }; diff --git a/src/components/GameLogEntry.tsx b/src/components/GameLogEntry.tsx index d4c7905..ca723c8 100644 --- a/src/components/GameLogEntry.tsx +++ b/src/components/GameLogEntry.tsx @@ -1,35 +1,172 @@ -import React from 'react'; -import { TableCell, TableRow, Typography } from '@mui/material'; +import React, { useState } from 'react'; +import { + TableRow, + TableCell, + Typography, + Chip, + Tooltip, + IconButton, + Dialog, + DialogActions, + DialogContent, + DialogContentText, + DialogTitle, + Button, + Box, +} from '@mui/material'; +import TurnIcon from '@mui/icons-material/TurnedIn'; // Example icon for new turn +import EditIcon from '@mui/icons-material/Edit'; // Icon for corrections import LinkIcon from '@mui/icons-material/Link'; -import { getTimeSpanFromStartGame, logEntryToString } from '@/game/dominion-lib-log'; +import UndoIcon from '@mui/icons-material/Undo'; +import ChangeCircleIcon from '@mui/icons-material/ChangeCircle'; +import { useGameContext } from '@/components/GameContext'; import { ILogEntry } from '@/game/interfaces/log-entry'; -import { IGame } from '@/game/interfaces/game'; +import { canUndoAction, undoAction } from '@/game/dominion-lib-undo'; +import { getTimeSpanFromStartGame, logEntryToString } from '@/game/dominion-lib-log'; +import { GameLogActionWithCount } from '@/game/enumerations/game-log-action-with-count'; +import { AdjustmentActions } from '@/game/constants'; interface GameLogEntryProps { - game: IGame; + logIndex: number; entry: ILogEntry; + isCurrentPlayer: boolean; } -const GameLogEntry: React.FC = ({ game, entry }) => { - const formatDate = (date: Date) => { - return date.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit', second: '2-digit' }); +const GameLogEntry: React.FC = ({ logIndex, entry, isCurrentPlayer }) => { + const { gameState, setGameState } = useGameContext(); + const [openUndoDialog, setOpenUndoDialog] = useState(false); + + const handleUndoClick = () => { + setOpenUndoDialog(true); }; + const handleUndoConfirm = () => { + const { game: newGame, success } = undoAction(gameState, logIndex); + if (success) { + setGameState(newGame); + } + setOpenUndoDialog(false); + }; + + const handleUndoCancel = () => { + setOpenUndoDialog(false); + }; + + const formatDate = (timestamp: Date) => { + return timestamp.toLocaleTimeString([], { + hour: '2-digit', + minute: '2-digit', + second: '2-digit', + }); + }; + + const actionText = logEntryToString(entry); + const playerName = + entry.playerIndex !== undefined && gameState.players[entry.playerIndex] + ? gameState.players[entry.playerIndex].name + : ''; + const isActivePlayer = entry.playerIndex === gameState.currentPlayerIndex; + const isNewTurn = entry.action === GameLogActionWithCount.NEXT_TURN; + const isAttributeChange = AdjustmentActions.includes(entry.action); + const isAttributeChangeOutOfTurn = isAttributeChange && !isActivePlayer; + + if (entry.playerIndex !== undefined && !gameState.players[entry.playerIndex]) { + console.warn(`Player not found for index ${entry.playerIndex}`, { + entry, + gamePlayersLength: gameState.players.length, + }); + } + return ( - - - {formatDate(entry.timestamp)} - - - - {getTimeSpanFromStartGame(game.log, entry.timestamp)} - - - - {logEntryToString(entry)} - - {entry.linkedActionId && } - + <> + + + {formatDate(entry.timestamp)} + + + + {getTimeSpanFromStartGame(gameState.log, entry.timestamp)} + + + + + {playerName && ( + : undefined} + style={{ + backgroundColor: + entry.playerIndex !== undefined + ? gameState.players[entry.playerIndex].color + : 'gray', + color: 'white', + marginRight: '8px', + fontWeight: isActivePlayer ? 'bold' : 'normal', + border: isActivePlayer ? '2px solid #000' : 'none', + }} + /> + )} + + {actionText} + + {isAttributeChangeOutOfTurn && ( + + )} + {entry.correction && ( + + + + )} + + + + {entry.linkedActionId && } + {canUndoAction(gameState, logIndex) && ( + + + + )} + + + + Confirm Undo + + + Are you sure you want to undo this action? + + + + + + + + ); }; diff --git a/src/components/IncrementDecrementControl.tsx b/src/components/IncrementDecrementControl.tsx index 783cfd2..30d5a84 100644 --- a/src/components/IncrementDecrementControl.tsx +++ b/src/components/IncrementDecrementControl.tsx @@ -4,16 +4,16 @@ import { SxProps } from '@mui/system'; import { Theme } from '@mui/material/styles'; import AddIcon from '@mui/icons-material/Add'; import RemoveIcon from '@mui/icons-material/Remove'; -import theme from '@/components/theme'; +import '@/styles.scss'; // Modify StyledTypography to use forwardRef const StyledTypography = forwardRef((props, ref) => ( @@ -26,9 +26,9 @@ const StyledLargeNumber = forwardRef((props, r { fullWidth sx={{ mr: 1 }} /> - + + + diff --git a/src/components/OptionItem.tsx b/src/components/OptionItem.tsx new file mode 100644 index 0000000..8c8ede8 --- /dev/null +++ b/src/components/OptionItem.tsx @@ -0,0 +1,20 @@ +import React from 'react'; +import { Box, Checkbox, Tooltip, Typography } from '@mui/material'; + +interface OptionItemProps { + checked: boolean; + onChange: (event: React.ChangeEvent) => void; + title: string; + tooltip: string; +} + +const OptionItem: React.FC = ({ checked, onChange, title, tooltip }) => ( + + + + {title} + + +); + +export default OptionItem; diff --git a/src/components/Player.tsx b/src/components/Player.tsx index 49af4be..6c44bf7 100644 --- a/src/components/Player.tsx +++ b/src/components/Player.tsx @@ -1,8 +1,15 @@ import React, { useState } from 'react'; -import { Checkbox, Paper, Box, IconButton, Popover, Tooltip, Typography } from '@mui/material'; +import { + Checkbox, + Chip, + Paper, + Box, + IconButton, + Popover, + Tooltip, + Typography, +} from '@mui/material'; import { styled } from '@mui/system'; -import { Theme } from '@mui/material/styles'; -import ArrowRightIcon from '@mui/icons-material/ArrowRight'; import SettingsIcon from '@mui/icons-material/Settings'; import { useGameContext } from '@/components/GameContext'; import SuperCapsText from '@/components/SuperCapsText'; @@ -15,11 +22,13 @@ import { PlayerFieldMap } from '@/game/types'; import { useAlert } from '@/components/AlertContext'; import { FailedAddLogEntryError } from '@/game/errors/failed-add-log'; import theme from '@/components/theme'; +import '@/styles.scss'; -const StyledPaper = styled(Paper)(({ theme }: { theme: Theme }) => ({ +const StyledPaper = styled(Paper)(({ theme }) => ({ padding: theme.spacing(2), margin: theme.spacing(2), position: 'relative', + transition: 'box-shadow 0.3s ease-in-out', })); const ColumnBox = styled(Box)({ @@ -53,7 +62,7 @@ const Player: React.FC = () => { if (gameState.selectedPlayerIndex === -1) { return ( - + No player selected ); @@ -168,20 +177,34 @@ const Player: React.FC = () => { return ( - {isCurrentPlayer && } - {player.name} + + + + {player.name} @@ -200,7 +223,7 @@ const Player: React.FC = () => { - Turn + Turn { - Mats + Mats {gameState.options.mats.coffersVillagers && ( @@ -284,7 +307,9 @@ const Player: React.FC = () => { - Global Mats + + Global Mats + @@ -304,7 +329,7 @@ const Player: React.FC = () => { - Victory + Victory { > - Next Turn + Next Turn ({ +const TableText = styled(Typography)(() => ({ fontFamily: 'TrajanProBold', - fontSize: theme.sizes.text, })); -const StyledScoreCell = styled(TableCell)(({ theme }: { theme: Theme }) => ({ - fontFamily: 'TrajanProBold', - fontSize: theme.sizes.title, +const TableScore = styled(Typography)(() => ({ + fontFamily: 'Minion Pro Bold Caption', fontWeight: 'bold', })); -const StyledButton = styled(Button)(({ theme }: { theme: Theme }) => ({ +const StyledButton = styled(Button)(() => ({ fontFamily: 'TrajanProBold', - fontSize: theme.sizes.text, })); const Scoreboard: React.FC = () => { @@ -44,7 +43,7 @@ const Scoreboard: React.FC = () => { const handlePlayerSelect = (index: number) => { setGameState((prevState) => { - addLogEntry(prevState, index, GameLogActionWithCount.SELECT_PLAYER, { + addLogEntry(prevState, NO_PLAYER, GameLogActionWithCount.SELECT_PLAYER, { prevPlayerIndex: prevState.selectedPlayerIndex, newPlayerIndex: index, }); @@ -62,14 +61,20 @@ const Scoreboard: React.FC = () => { - Current - Player - - Score - - - Turn: {gameState.currentTurn} - + + Badge + + + Player + + + + Score + + + + Turn: {gameState.currentTurn} + @@ -82,27 +87,43 @@ const Scoreboard: React.FC = () => { '&:hover': { backgroundColor: 'rgba(0, 0, 0, 0.04)' }, }} > - - {index === getCurrentPlayerIndex() && ( - - )} - - - {player.name} - - - {calculateVictoryPoints(player)} - - + + + + + + + {player.name} + + + + {calculateVictoryPoints(player)} + + + handlePlayerSelect(index)} > - Select + Select - + ))} diff --git a/src/components/SecondarySubtitle.tsx b/src/components/SecondarySubtitle.tsx new file mode 100644 index 0000000..8ac046a --- /dev/null +++ b/src/components/SecondarySubtitle.tsx @@ -0,0 +1,8 @@ +import { styled, Typography } from '@mui/material'; + +const SecondarySubtitle = styled(Typography)(({ theme }) => ({ + className: 'typography-subtitle', + color: theme.palette.text.secondary, +})); + +export default SecondarySubtitle; diff --git a/src/components/SelectFirstPlayer.tsx b/src/components/SelectFirstPlayer.tsx index bf63098..c1f0ff1 100644 --- a/src/components/SelectFirstPlayer.tsx +++ b/src/components/SelectFirstPlayer.tsx @@ -1,16 +1,11 @@ import React, { useCallback, useEffect } from 'react'; -import { - Box, - Typography, - Button, - List, - ListItemIcon, - ListItemText, - ListItemButton, -} from '@mui/material'; +import { Button, List, ListItemIcon, ListItemText, ListItemButton, Box } from '@mui/material'; import ArrowRightIcon from '@mui/icons-material/ArrowRight'; import { useGameContext } from '@/components/GameContext'; import theme from '@/components/theme'; +import CenteredContainer from '@/components/CenteredContainer'; +import TabTitle from '@/components/TabTitle'; +import SuperCapsText from '@/components/SuperCapsText'; interface SelectFirstPlayerProps { nextStep: () => void; @@ -36,8 +31,8 @@ const SelectFirstPlayer: React.FC = ({ nextStep }) => { }, [selectRandomFirstPlayer]); return ( - - Select First Player + + Select First Player {gameState.players.map((player, index) => ( = ({ nextStep }) => { )} - + + + {player.name} + + } + /> ))} @@ -75,7 +85,7 @@ const SelectFirstPlayer: React.FC = ({ nextStep }) => { > Next - + ); }; diff --git a/src/components/SetGameOptions.tsx b/src/components/SetGameOptions.tsx index c208b78..a330e48 100644 --- a/src/components/SetGameOptions.tsx +++ b/src/components/SetGameOptions.tsx @@ -1,9 +1,12 @@ import React from 'react'; -import { Box, Typography, Checkbox, Tooltip, Button } from '@mui/material'; +import { Box, Typography, Button, Paper } from '@mui/material'; import { useGameContext } from '@/components/GameContext'; import { OptionField, OptionSubField } from '@/game/types'; import { IGame } from '@/game/interfaces/game'; import { NewGameState } from '@/game/dominion-lib'; +import CenteredContainer from '@/components/CenteredContainer'; +import OptionItem from '@/components/OptionItem'; +import TabTitle from '@/components/TabTitle'; interface SetGameOptionsProps { startGame: () => void; @@ -48,70 +51,54 @@ const SetGameOptions: React.FC = ({ startGame }) => { }; return ( - - - updateOption('curses', true, e.target.checked)} - /> - - Curses - - - - - updateOption('mats', 'favors', e.target.checked)} - /> - - Favors - - - - - updateOption('mats', 'debt', e.target.checked)} - /> - - Debts - - - - - updateOption('mats', 'coffersVillagers', e.target.checked)} - /> - - Coffers/Villagers - - - - - updateOption('expansions', 'prosperity', e.target.checked)} - /> - - Prosperity - - - - - updateOption('expansions', 'risingSun', e.target.checked)} - /> - - Rising Sun - - + + Game Options + + updateOption('curses', true, e.target.checked)} + title="Curses" + tooltip="Include curses in the game" + /> + + updateOption('mats', 'favors', e.target.checked)} + title="Favors" + tooltip="Include favors in the game" + /> + + updateOption('mats', 'debt', e.target.checked)} + title="Debts" + tooltip="Include debts in the game" + /> + + updateOption('mats', 'coffersVillagers', e.target.checked)} + title="Coffers/Villagers" + tooltip="Include coffers and villagers in the game" + /> + + updateOption('expansions', 'prosperity', e.target.checked)} + title="Prosperity" + tooltip="Include platinum and colonies in the game" + /> + + updateOption('expansions', 'risingSun', e.target.checked)} + title="Rising Sun" + tooltip="Enable Rising Sun" + /> {gameState.options.expansions.risingSun && ( - - + setGameState((prevState: IGame) => ({ @@ -124,17 +111,18 @@ const SetGameOptions: React.FC = ({ startGame }) => { }, })) } + title="Great Leader" + tooltip="Enable Great Leader- +1 action after each action" /> - - Great Leader - )} - - + + + + ); }; diff --git a/src/components/SuperCapsText.tsx b/src/components/SuperCapsText.tsx index 011e81a..0e7815b 100644 --- a/src/components/SuperCapsText.tsx +++ b/src/components/SuperCapsText.tsx @@ -4,22 +4,18 @@ import { styled } from '@mui/material/styles'; import { TypographyProps } from '@mui/material/Typography'; interface SuperCapsSpanProps extends TypographyProps { - fontSize?: number; sx?: object; } -const SmallCapsSpan = styled(Typography)( - ({ fontSize }: { fontSize?: number }) => ({ - fontVariantCaps: 'small-caps', - display: 'inline-block', - fontFamily: 'CharlemagneStdBold', - fontSize: fontSize ? `${fontSize}px` : 'inherit', - lineHeight: 1, - }) -); +const SmallCapsSpan = styled(Typography)(() => ({ + fontVariantCaps: 'small-caps', + display: 'inline-block', + fontFamily: 'CharlemagneStdBold', + lineHeight: 1, +})); const SuperCapsText = forwardRef( - ({ children, fontSize = 24, sx, ...props }, ref) => { + ({ children, sx, ...props }, ref) => { if (typeof children !== 'string') { return null; } @@ -28,7 +24,6 @@ const SuperCapsText = forwardRef( ({ flex: 1, @@ -16,12 +18,6 @@ const Header = styled(Box)(({ theme }) => ({ marginBottom: theme.spacing(2), })); -const Subtitle = styled(Typography)(({ theme }) => ({ - fontSize: 16, - color: theme.palette.text.secondary, - marginTop: theme.spacing(1), -})); - const StyledListItem = styled(ListItem)({ display: 'flex', justifyContent: 'space-between', @@ -30,11 +26,10 @@ const StyledListItem = styled(ListItem)({ }); const CardName = styled(Typography)({ - fontSize: 16, + fontFamily: 'Minion Pro Medium Cond Subhead', }); const Quantity = styled(Typography)({ - fontSize: 16, fontWeight: 'bold', }); @@ -69,8 +64,8 @@ const SupplyCounts: React.FC = () => { return (
- Kingdom Supply - {getSetInfo()} + Kingdom Supply + {getSetInfo()}
{supplyCards.map((item) => { @@ -80,8 +75,8 @@ const SupplyCounts: React.FC = () => { return ( - {cardName} - {quantity} + {cardName} + {quantity} ); })} diff --git a/src/components/TabTitle.tsx b/src/components/TabTitle.tsx new file mode 100644 index 0000000..a19b27e --- /dev/null +++ b/src/components/TabTitle.tsx @@ -0,0 +1,23 @@ +import React, { ReactNode } from 'react'; +import { Typography } from '@mui/material'; +import { styled } from '@mui/system'; +import '@/_typography.scss'; + +interface TabTitleProps { + children: ReactNode; +} + +const StyledTabTitle = styled(Typography)(({ theme }) => ({ + fontFamily: 'TrajanProBold', + color: theme.palette.text.primary, +})); + +const TabTitle: React.FC = ({ children }) => { + return ( + + {children} + + ); +}; + +export default TabTitle; diff --git a/src/components/screens/AboutScreen.tsx b/src/components/screens/AboutScreen.tsx index aea2500..7182c8b 100644 --- a/src/components/screens/AboutScreen.tsx +++ b/src/components/screens/AboutScreen.tsx @@ -11,7 +11,6 @@ import { } from '@mui/material'; import DominionTransparentLogo from '@/assets/images/Dominion-tx.png'; import SuperCapsText from '@/components/SuperCapsText'; -import theme from '@/components/theme'; export default function AboutScreen() { return ( @@ -60,7 +59,7 @@ export default function AboutScreen() { - Features + Features {[ 'Player Management: Add, remove, and track multiple players', @@ -82,7 +81,7 @@ export default function AboutScreen() { - + About diff --git a/src/components/screens/DominionAssistantScreen.tsx b/src/components/screens/DominionAssistantScreen.tsx index 8fd4fa0..1efebb2 100644 --- a/src/components/screens/DominionAssistantScreen.tsx +++ b/src/components/screens/DominionAssistantScreen.tsx @@ -19,7 +19,9 @@ export default function DominionAssistantScreen() { return ( - Unofficial Dominion Assistant + + Unofficial Dominion Assistant + ); diff --git a/src/components/screens/GameLogScreen.tsx b/src/components/screens/GameLogScreen.tsx index 7e1f4bb..1cbbafd 100644 --- a/src/components/screens/GameLogScreen.tsx +++ b/src/components/screens/GameLogScreen.tsx @@ -1,19 +1,11 @@ import React from 'react'; -import { Box } from '@mui/material'; import GameLog from '@/components/GameLog'; +import CenteredContainer from '@/components/CenteredContainer'; export default function GameLogScreen() { return ( - + - + ); } diff --git a/src/components/screens/LoadSaveScreen.tsx b/src/components/screens/LoadSaveScreen.tsx index c74b558..12e2a07 100644 --- a/src/components/screens/LoadSaveScreen.tsx +++ b/src/components/screens/LoadSaveScreen.tsx @@ -1,21 +1,13 @@ import React from 'react'; -import { Box } from '@mui/material'; import LoadSaveGame from '@/components/LoadSaveGame'; -import SaveIcon from '@mui/icons-material/Save'; +import CenteredContainer from '../CenteredContainer'; +import TabTitle from '../TabTitle'; export default function LoadSaveGameScreen() { return ( - - + + Load/Save Game - + ); } diff --git a/src/components/theme.ts b/src/components/theme.ts index 0bc162a..9e3d565 100644 --- a/src/components/theme.ts +++ b/src/components/theme.ts @@ -1,22 +1,5 @@ import { createTheme, Theme } from '@mui/material/styles'; -declare module '@mui/material/styles' { - interface Theme { - sizes: { - title: number; - subtitle: number; - text: number; - }; - } - interface ThemeOptions { - sizes?: { - title?: number; - subtitle?: number; - text?: number; - }; - } -} - const theme: Theme = createTheme({ palette: { primary: { @@ -31,11 +14,6 @@ const theme: Theme = createTheme({ fontSize: '1.25rem', }, }, - sizes: { - title: 24, - subtitle: 18, - text: 16, - }, }); export default theme; diff --git a/src/game/__tests__/dominion-lib-NewGameState.spec.ts b/src/game/__tests__/dominion-lib-NewGameState.spec.ts index 98ace0f..9035960 100644 --- a/src/game/__tests__/dominion-lib-NewGameState.spec.ts +++ b/src/game/__tests__/dominion-lib-NewGameState.spec.ts @@ -21,7 +21,7 @@ describe('NewGameState', () => { it('should initialize a new game state with default options', () => { const initialGameState: IGame = { ...EmptyGameState, - players: [newPlayer('Player 1'), newPlayer('Player 2')], + players: [newPlayer('Player 1', 0), newPlayer('Player 2', 1)], currentPlayerIndex: faker.number.int({ min: 0, max: 1 }), firstPlayerIndex: faker.number.int({ min: 0, max: 1 }), }; @@ -47,7 +47,7 @@ describe('NewGameState', () => { it('should initialize Rising Sun tokens when the expansion is enabled', () => { const initialGameState: IGame = { ...EmptyGameState, - players: [newPlayer('Player 1'), newPlayer('Player 2')], + players: [newPlayer('Player 1', 0), newPlayer('Player 2', 1)], options: { ...EmptyGameState.options, expansions: { ...EmptyGameState.options.expansions, risingSun: true }, @@ -70,7 +70,7 @@ describe('NewGameState', () => { it('should not initialize Rising Sun tokens when the expansion is disabled', () => { const initialGameState: IGame = { ...EmptyGameState, - players: [newPlayer('Player 1'), newPlayer('Player 2')], + players: [newPlayer('Player 1', 0), newPlayer('Player 2', 1)], }; const result = NewGameState(initialGameState); @@ -83,7 +83,7 @@ describe('NewGameState', () => { it('should throw MinPlayersError for less than minimum players', () => { const initialGameState: IGame = { ...EmptyGameState, - players: [newPlayer('Player 1')], + players: [newPlayer('Player 1', 0)], }; expect(() => NewGameState(initialGameState)).toThrow(MinPlayersError); @@ -97,7 +97,7 @@ describe('NewGameState', () => { }; const initialGameState: IGame = { ...EmptyGameState, - players: [newPlayer('Player 1'), newPlayer('Player 2')], + players: [newPlayer('Player 1', 0), newPlayer('Player 2', 1)], options: customOptions, }; @@ -111,7 +111,7 @@ describe('NewGameState', () => { ...EmptyGameState, players: Array(MAX_PLAYERS) .fill(null) - .map((_, i) => newPlayer(`Player ${i + 1}`)), + .map((_, i) => newPlayer(`Player ${i + 1}`, i)), }; const result = NewGameState(initialGameState); @@ -124,7 +124,7 @@ describe('NewGameState', () => { ...EmptyGameState, players: Array(MAX_PLAYERS + 1) .fill(null) - .map((_, i) => newPlayer(`Player ${i + 1}`)), + .map((_, i) => newPlayer(`Player ${i + 1}`, i)), }; expect(() => NewGameState(initialGameState)).toThrow(MaxPlayersError); diff --git a/src/game/__tests__/dominion-lib-load-save-safeParseSavedGame.spec.ts b/src/game/__tests__/dominion-lib-load-save-safeParseSavedGame.spec.ts index 955f8d5..ed82459 100644 --- a/src/game/__tests__/dominion-lib-load-save-safeParseSavedGame.spec.ts +++ b/src/game/__tests__/dominion-lib-load-save-safeParseSavedGame.spec.ts @@ -1,5 +1,4 @@ import { safeParseSavedGame } from '@/game/dominion-lib-load-save'; -import { IGameRaw } from '@/game/interfaces/game-raw'; import { EmptyLogError } from '@/game/errors/empty-log'; import { createMockGame } from '@/__fixtures__/dominion-lib-fixtures'; import { GameLogActionWithCount } from '@/game/enumerations/game-log-action-with-count'; diff --git a/src/game/__tests__/dominion-lib-newPlayer.spec.ts b/src/game/__tests__/dominion-lib-newPlayer.spec.ts index 3aee36c..da8f3b0 100644 --- a/src/game/__tests__/dominion-lib-newPlayer.spec.ts +++ b/src/game/__tests__/dominion-lib-newPlayer.spec.ts @@ -1,39 +1,45 @@ import { newPlayer } from '@/game/dominion-lib'; -import { EmptyMatDetails, DefaultTurnDetails, EmptyVictoryDetails } from '@/game/constants'; +import { + EmptyMatDetails, + DefaultTurnDetails, + EmptyVictoryDetails, + DefaultPlayerColors, +} from '@/game/constants'; describe('newPlayer', () => { it('should create a new player with the given name', () => { const playerName = 'Test Player'; - const player = newPlayer(playerName); + const player = newPlayer(playerName, 0); expect(player.name).toBe(playerName); }); it('should trim the player name', () => { const playerName = ' John Doe '; - const player = newPlayer(playerName); + const player = newPlayer(playerName, 0); expect(player.name).toBe('John Doe'); }); it('should initialize mats with EmptyMatDetails', () => { - const player = newPlayer('Test Player'); + const player = newPlayer('Test Player', 0); expect(player.mats).toEqual(EmptyMatDetails); }); it('should initialize turn and newTurn with DefaultTurnDetails', () => { - const player = newPlayer('Test Player'); + const player = newPlayer('Test Player', 0); expect(player.turn).toEqual(DefaultTurnDetails); expect(player.newTurn).toEqual(DefaultTurnDetails); }); it('should initialize victory with EmptyVictoryDetails', () => { - const player = newPlayer('Test Player'); + const player = newPlayer('Test Player', 0); expect(player.victory).toEqual(EmptyVictoryDetails); }); it('should create a new player object with all expected properties', () => { - const player = newPlayer('Test Player'); + const player = newPlayer('Test Player', 0); expect(player).toEqual({ name: 'Test Player', + color: DefaultPlayerColors[0], mats: EmptyMatDetails, turn: DefaultTurnDetails, newTurn: DefaultTurnDetails, diff --git a/src/game/__tests__/dominion-lib-resetPlayerTurnCounters.spec.ts b/src/game/__tests__/dominion-lib-resetPlayerTurnCounters.spec.ts index 08a7d1e..9f735f1 100644 --- a/src/game/__tests__/dominion-lib-resetPlayerTurnCounters.spec.ts +++ b/src/game/__tests__/dominion-lib-resetPlayerTurnCounters.spec.ts @@ -3,6 +3,7 @@ import { IGame } from '@/game/interfaces/game'; import { IPlayer } from '@/game/interfaces/player'; import { DefaultMatsEnabled, + DefaultPlayerColors, DefaultTurnDetails, EmptyGameSupply, EmptyMatDetails, @@ -12,6 +13,7 @@ import { describe('resetPlayerTurnCounters', () => { const createMockPlayer = (name: string, turn: any, newTurn: any): IPlayer => ({ name, + color: DefaultPlayerColors[0], mats: { ...EmptyMatDetails }, turn: { ...DefaultTurnDetails, ...turn }, newTurn: { ...DefaultTurnDetails, ...newTurn }, diff --git a/src/game/__tests__/dominion-lib-undo-reconstructGameState.spec.ts b/src/game/__tests__/dominion-lib-undo-reconstructGameState.spec.ts index 988da18..33de889 100644 --- a/src/game/__tests__/dominion-lib-undo-reconstructGameState.spec.ts +++ b/src/game/__tests__/dominion-lib-undo-reconstructGameState.spec.ts @@ -15,7 +15,7 @@ describe('reconstructGameState', () => { beforeEach(() => { baseGame = NewGameState({ ...EmptyGameState, - players: [newPlayer('Player 1'), newPlayer('Player 2')], + players: [newPlayer('Player 1', 0), newPlayer('Player 2', 1)], // start with second player firstPlayerIndex: 1, currentPlayerIndex: 1, diff --git a/src/game/__tests__/dominion-lib-updatePlayerField.spec.ts b/src/game/__tests__/dominion-lib-updatePlayerField.spec.ts index c40c681..1d8ef14 100644 --- a/src/game/__tests__/dominion-lib-updatePlayerField.spec.ts +++ b/src/game/__tests__/dominion-lib-updatePlayerField.spec.ts @@ -6,6 +6,7 @@ import { InvalidFieldError } from '@/game/errors/invalid-field'; import { NotEnoughSupplyError } from '@/game/errors/not-enough-supply'; import { NotEnoughSubfieldError } from '@/game/errors/not-enough-subfield'; import { PlayerFieldMap } from '@/game/types'; +import { DefaultPlayerColors } from '@/game/constants'; describe('updatePlayerField', () => { let mockGame: IGame; @@ -14,6 +15,7 @@ describe('updatePlayerField', () => { beforeEach(() => { mockPlayer = { name: 'Test Player', + color: DefaultPlayerColors[0], mats: { coffers: 0, villagers: 0, debt: 0, favors: 0 }, turn: { actions: 1, buys: 1, coins: 0 }, newTurn: { actions: 1, buys: 1, coins: 0 }, diff --git a/src/game/constants.ts b/src/game/constants.ts index b8064c4..6ed2c0b 100644 --- a/src/game/constants.ts +++ b/src/game/constants.ts @@ -121,6 +121,50 @@ export const NoPlayerActions = [ GameLogActionWithCount.SELECT_PLAYER, ]; +export const AdjustmentActions = [ + // turn actions + GameLogActionWithCount.ADD_ACTIONS, + GameLogActionWithCount.REMOVE_ACTIONS, + GameLogActionWithCount.ADD_COINS, + GameLogActionWithCount.REMOVE_COINS, + GameLogActionWithCount.ADD_BUYS, + GameLogActionWithCount.REMOVE_BUYS, + // mats + GameLogActionWithCount.ADD_COFFERS, + GameLogActionWithCount.REMOVE_COFFERS, + GameLogActionWithCount.ADD_VILLAGERS, + GameLogActionWithCount.REMOVE_VILLAGERS, + GameLogActionWithCount.ADD_DEBT, + GameLogActionWithCount.REMOVE_DEBT, + GameLogActionWithCount.ADD_FAVORS, + GameLogActionWithCount.REMOVE_FAVORS, + // global mats + GameLogActionWithCount.ADD_PROPHECY, + GameLogActionWithCount.REMOVE_PROPHECY, + // victory points + GameLogActionWithCount.ADD_ESTATES, + GameLogActionWithCount.REMOVE_ESTATES, + GameLogActionWithCount.ADD_DUCHIES, + GameLogActionWithCount.REMOVE_DUCHIES, + GameLogActionWithCount.ADD_PROVINCES, + GameLogActionWithCount.REMOVE_PROVINCES, + GameLogActionWithCount.ADD_COLONIES, + GameLogActionWithCount.REMOVE_COLONIES, + GameLogActionWithCount.ADD_VP_TOKENS, + GameLogActionWithCount.REMOVE_VP_TOKENS, + GameLogActionWithCount.ADD_OTHER_VP, + GameLogActionWithCount.REMOVE_OTHER_VP, + GameLogActionWithCount.ADD_CURSES, + GameLogActionWithCount.REMOVE_CURSES, + // next turn actions + GameLogActionWithCount.ADD_NEXT_TURN_ACTIONS, + GameLogActionWithCount.REMOVE_NEXT_TURN_ACTIONS, + GameLogActionWithCount.ADD_NEXT_TURN_BUYS, + GameLogActionWithCount.REMOVE_NEXT_TURN_BUYS, + GameLogActionWithCount.ADD_NEXT_TURN_COINS, + GameLogActionWithCount.REMOVE_NEXT_TURN_COINS, +]; + export const StepTransitions: Record = { [CurrentStep.AddPlayerNames]: CurrentStep.SelectFirstPlayer, [CurrentStep.SelectFirstPlayer]: CurrentStep.SetGameOptions, @@ -131,3 +175,12 @@ export const StepTransitions: Record = { export const SaveGameStorageKey = '@dominion_saved_games'; export const SaveGameStorageKeyPrefix = '@dominion_game_'; + +export const DefaultPlayerColors = [ + '#e57373', + '#64b5f6', + '#81c784', + '#ffd54f', + '#ba68c8', + '#4db6ac', +]; diff --git a/src/game/dominion-lib.ts b/src/game/dominion-lib.ts index 536af74..5dbd61a 100644 --- a/src/game/dominion-lib.ts +++ b/src/game/dominion-lib.ts @@ -19,6 +19,7 @@ import { MAX_PLAYERS, MIN_PLAYERS, NOT_PRESENT, + DefaultPlayerColors, } from '@/game/constants'; import { computeStartingSupply as computeBaseStartingSupply } from '@/game/interfaces/set-kingdom/base'; import { @@ -114,9 +115,10 @@ export function distributeInitialSupply(game: IGame): IGame { * @param playerName - The name of the player * @returns The new player object */ -export function newPlayer(playerName: string): IPlayer { +export function newPlayer(playerName: string, index: number): IPlayer { const newPlayer: IPlayer = { name: playerName.trim(), + color: DefaultPlayerColors[index], mats: { ...EmptyMatDetails }, turn: { ...DefaultTurnDetails }, newTurn: { ...DefaultTurnDetails }, @@ -185,7 +187,9 @@ export const NewGameState = (gameStateWithOptions: IGame): IGame => { // Create a new game state with the initial supply, while resetting the player details let newGameState: IGame = { ...gameStateWithOptions, - players: gameStateWithOptions.players.map((player) => ({ ...newPlayer(player.name) })), + players: gameStateWithOptions.players.map((player, index) => ({ + ...newPlayer(player.name, index), + })), supply: initialSupply, currentStep: CurrentStep.GameScreen, currentTurn: 1, diff --git a/src/game/interfaces/player.ts b/src/game/interfaces/player.ts index ff284fb..c68104f 100644 --- a/src/game/interfaces/player.ts +++ b/src/game/interfaces/player.ts @@ -2,4 +2,5 @@ import { IPlayerGameDetails } from '@/game/interfaces/player-game-details'; export interface IPlayer extends IPlayerGameDetails { name: string; + color: string; } diff --git a/src/minion-pro.scss b/src/minion-pro.scss new file mode 100644 index 0000000..74bae16 --- /dev/null +++ b/src/minion-pro.scss @@ -0,0 +1,585 @@ +@font-face { + font-family: 'Minion Pro Bold Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Caption.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Caption.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Display.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Caption.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Display.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic Subhead.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Italic.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond Subhead.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Cond'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Cond.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Display.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Caption.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Display.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Italic Subhead.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Italic.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold Subhead.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Bold'; + src: url('/assets/fonts/Minion Pro/Minion Pro Bold.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Bold.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Caption.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Caption.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Display.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Caption.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Display.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Italic Subhead.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Italic.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond Subhead.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Cond'; + src: url('/assets/fonts/Minion Pro/Minion Pro Cond.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Cond.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Display.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Italic Caption.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Italic Display.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Italic Subhead.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Italic.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Caption.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Caption.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Display.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Caption.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Display.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic Subhead.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Italic.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond Subhead.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Cond'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Cond.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Display.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Caption.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Display.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Italic Subhead.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Italic.woff') format('woff'); + font-weight: normal; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium Subhead.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Medium'; + src: url('/assets/fonts/Minion Pro/Minion Pro Medium.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Medium.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Regular'; + src: url('/assets/fonts/Minion Pro/Minion Pro Regular.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Regular.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semi Bold Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semi Bold Italic.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Caption.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Caption.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Display.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Caption.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Display.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic Subhead.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Italic.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond Subhead.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Cond'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Cond.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Display.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Italic Caption'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Caption.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Italic Display'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Display.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Italic Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic Subhead.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Italic'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Italic.woff') format('woff'); + font-weight: bold; + font-style: italic; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold Subhead.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Semibold'; + src: url('/assets/fonts/Minion Pro/Minion Pro Semibold.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Semibold.woff') format('woff'); + font-weight: bold; + font-style: normal; + font-display: auto; +} + +@font-face { + font-family: 'Minion Pro Subhead'; + src: url('/assets/fonts/Minion Pro/Minion Pro Subhead.woff2') format('woff2'), + url('/assets/fonts/Minion Pro/Minion Pro Subhead.woff') format('woff'); + font-weight: normal; + font-style: normal; + font-display: auto; +} + diff --git a/src/styles.scss b/src/styles.scss index 2532dc5..4d418df 100644 --- a/src/styles.scss +++ b/src/styles.scss @@ -68,21 +68,22 @@ $TEXT_SIZE: 16px; @font-face { font-family: 'CharlemagneStdBold'; - src: url('/assets/fonts/CharlemagneStd-Bold.ttf') format('truetype'); + src: + url('/assets/fonts/charlemagnestd-bold-webfont.woff2') format('woff2'), + url('/assets/fonts/charlemagnestd-bold-webfont.woff') format('woff'); font-weight: normal; font-style: normal; } @font-face { - font-family: 'TrajanProBold'; - src: url('/assets/fonts/TrajanPro-Bold.otf') format('opentype'); - font-weight: bold; - font-style: normal; -} - -@font-face { - font-family: 'TrajanProRegular'; - src: url('/assets/fonts/TrajanPro-Regular.ttf') format('truetype'); + font-family: 'SpaceMonoRegular'; + src: + url('/assets/fonts/spacemono-regular-webfont.woff2') format('woff2'), + url('/assets/fonts/spacemono-regular-webfont.woff') format('woff'); font-weight: normal; font-style: normal; } + +@import 'minion-pro'; +@import 'trajan-pro'; +@import 'typography'; diff --git a/src/trajan-pro.scss b/src/trajan-pro.scss new file mode 100644 index 0000000..20ba91d --- /dev/null +++ b/src/trajan-pro.scss @@ -0,0 +1,17 @@ +@font-face { + font-family: 'TrajanProBold'; + src: + url('/assets/fonts/trajanpro-bold-webfont.woff2') format('woff2'), + url('/assets/fonts/trajanpro-bold-webfont.woff') format('woff'); + font-weight: bold; + font-style: normal; +} + +@font-face { + font-family: 'TrajanProRegular'; + src: + url('/assets/fonts/trajanpro-regular-webfont.woff2') format('woff2'), + url('/assets/fonts/trajanpro-regular-webfont.woff') format('woff'); + font-weight: normal; + font-style: normal; +} diff --git a/yarn.lock b/yarn.lock index 949758c..14ad440 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1270,6 +1270,11 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.1.tgz#c72a5c76a9fbaf3488e231b13dc52c0da7bab42a" integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== +"@icons/material@^0.2.4": + version "0.2.4" + resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8" + integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw== + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -3026,6 +3031,14 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== +"@types/react-color@^3.0.12": + version "3.0.12" + resolved "https://registry.yarnpkg.com/@types/react-color/-/react-color-3.0.12.tgz#231e75f11dd6805bdf1c954774588fefc8172f30" + integrity sha512-pr3uKE3lSvf7GFo1Rn2K3QktiZQFFrSgSGJ/3iMvSOYWt2pPAJ97rVdVfhWxYJZ8prAEXzoP2XX//3qGSQgu7Q== + dependencies: + "@types/react" "*" + "@types/reactcss" "*" + "@types/react-dom@18.3.0": version "18.3.0" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.0.tgz#0cbc818755d87066ab6ca74fbedb2547d74a82b0" @@ -3055,6 +3068,13 @@ "@types/prop-types" "*" csstype "^3.0.2" +"@types/reactcss@*": + version "1.2.12" + resolved "https://registry.yarnpkg.com/@types/reactcss/-/reactcss-1.2.12.tgz#57f6f046e7aafbe0288689bd96a2d5664378ca7b" + integrity sha512-BrXUQ86/wbbFiZv8h/Q1/Q1XOsaHneYmCb/tHe9+M8XBAAUc2EHfdY0DY22ZZjVSaXr5ix7j+zsqO2eGZub8lQ== + dependencies: + "@types/react" "*" + "@types/responselike@^1.0.0": version "1.0.3" resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.3.tgz#cc29706f0a397cfe6df89debfe4bf5cea159db50" @@ -7824,6 +7844,11 @@ locate-path@^7.1.0: dependencies: p-locate "^6.0.0" +lodash-es@^4.17.15: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" + integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + lodash.clonedeepwith@4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeepwith/-/lodash.clonedeepwith-4.5.0.tgz#6ee30573a03a1a60d670a62ef33c10cf1afdbdd4" @@ -7854,7 +7879,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@^4.17.14, lodash@^4.17.21: +lodash@^4.0.1, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -7966,6 +7991,11 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" +material-colors@^1.2.1: + version "1.2.6" + resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.6.tgz#6d1958871126992ceecc72f4bcc4d8f010865f46" + integrity sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg== + mdn-data@2.0.28: version "2.0.28" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" @@ -9078,7 +9108,7 @@ prompts@^2.0.1, prompts@^2.4.1: kleur "^3.0.3" sisteransi "^1.0.5" -prop-types@^15.6.2, prop-types@^15.8.1: +prop-types@^15.5.10, prop-types@^15.6.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -9182,6 +9212,19 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" +react-color@^2.19.3: + version "2.19.3" + resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.19.3.tgz#ec6c6b4568312a3c6a18420ab0472e146aa5683d" + integrity sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA== + dependencies: + "@icons/material" "^0.2.4" + lodash "^4.17.15" + lodash-es "^4.17.15" + material-colors "^1.2.1" + prop-types "^15.5.10" + reactcss "^1.2.0" + tinycolor2 "^1.4.1" + react-dom@18.3.1: version "18.3.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" @@ -9242,6 +9285,13 @@ react@18.3.1: dependencies: loose-envify "^1.1.0" +reactcss@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" + integrity sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A== + dependencies: + lodash "^4.0.1" + read-cache@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" @@ -10263,6 +10313,11 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== +tinycolor2@^1.4.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.6.0.tgz#f98007460169b0263b97072c5ae92484ce02d09e" + integrity sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw== + tmp@~0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.3.tgz#eb783cc22bc1e8bebd0671476d46ea4eb32a79ae"