Compare commits
2 commits
59c8656328
...
f01d77fde7
| Author | SHA1 | Date | |
|---|---|---|---|
| f01d77fde7 | |||
| e59f917c46 |
1 changed files with 71 additions and 63 deletions
|
|
@ -751,8 +751,11 @@ export default function Page() {
|
||||||
}, [categories]);
|
}, [categories]);
|
||||||
|
|
||||||
function formatTrophies(value: number) {
|
function formatTrophies(value: number) {
|
||||||
const sign = value > 0 ? '+' : '';
|
const sign = value > 0 ? '' : '+';
|
||||||
return `${sign}${value} trophies`;
|
let gained = false;
|
||||||
|
if(sign === '+') gained = true;
|
||||||
|
let suffix = gained ? 'gained' : 'lost';
|
||||||
|
return `${sign}${value} trophies ${suffix}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
|
|
@ -1141,6 +1144,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<li>No categories yet.</li>
|
<li>No categories yet.</li>
|
||||||
)}
|
)}
|
||||||
</ul>
|
</ul>
|
||||||
|
</details>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="card">
|
<div className="card">
|
||||||
|
|
@ -1236,6 +1240,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<li>No bases yet.</li>
|
<li>No bases yet.</li>
|
||||||
)}
|
)}
|
||||||
</ul>
|
</ul>
|
||||||
|
</details>
|
||||||
</div>
|
</div>
|
||||||
{baseBeingEdited && (
|
{baseBeingEdited && (
|
||||||
<div className="subsection">
|
<div className="subsection">
|
||||||
|
|
@ -1440,6 +1445,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
{defenses.length > 10 ? (
|
{defenses.length > 10 ? (
|
||||||
<p className="muted">Showing the latest 10 entries.</p>
|
<p className="muted">Showing the latest 10 entries.</p>
|
||||||
) : null}
|
) : null}
|
||||||
|
</details>
|
||||||
</div>
|
</div>
|
||||||
{defenseBeingEdited && (
|
{defenseBeingEdited && (
|
||||||
<div className="subsection">
|
<div className="subsection">
|
||||||
|
|
@ -1551,7 +1557,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<input type="number" name="trophiesAtStart" min={0} step={1} required className="styled-number" />
|
<input type="number" name="trophiesAtStart" min={0} step={1} required className="styled-number" />
|
||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
Trophies Lost
|
Trophies Gained/Lost
|
||||||
<input type="number" name="trophiesLost" step={1} required className="styled-number" />
|
<input type="number" name="trophiesLost" step={1} required className="styled-number" />
|
||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
|
|
@ -1596,7 +1602,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
</div>
|
</div>
|
||||||
<div className="defense-meta">
|
<div className="defense-meta">
|
||||||
<span>{reset.trophiesAtStart} trophies</span>
|
<span>{reset.trophiesAtStart} trophies</span>
|
||||||
<span>{formatTrophies(reset.trophiesLost)} lost</span>
|
<span>{formatTrophies(reset.trophiesLost)}</span>
|
||||||
<span>{reset.numberOfDefenses} defenses</span>
|
<span>{reset.numberOfDefenses} defenses</span>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -1634,7 +1640,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<input type="number" name="trophiesAtStart" min={0} step={1} required className="styled-number" defaultValue={trophyResetBeingEdited.trophiesAtStart} />
|
<input type="number" name="trophiesAtStart" min={0} step={1} required className="styled-number" defaultValue={trophyResetBeingEdited.trophiesAtStart} />
|
||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
Trophies Lost
|
Trophies Gained/Lost
|
||||||
<input type="number" name="trophiesLost" step={1} required className="styled-number" defaultValue={trophyResetBeingEdited.trophiesLost} />
|
<input type="number" name="trophiesLost" step={1} required className="styled-number" defaultValue={trophyResetBeingEdited.trophiesLost} />
|
||||||
</label>
|
</label>
|
||||||
<label>
|
<label>
|
||||||
|
|
@ -1732,6 +1738,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<li>No army categories have attacked this base yet.</li>
|
<li>No army categories have attacked this base yet.</li>
|
||||||
)}
|
)}
|
||||||
</ul>
|
</ul>
|
||||||
|
</details>
|
||||||
</div>
|
</div>
|
||||||
<div className="card">
|
<div className="card">
|
||||||
<details open>
|
<details open>
|
||||||
|
|
@ -1760,8 +1767,8 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="defense-meta">
|
<div className="defense-meta">
|
||||||
<span>{reset.trophiesAtStart} trophies at start</span>
|
<span>{reset.trophiesAtStart} trophies</span>
|
||||||
<span>{formatTrophies(reset.trophiesLost)} lost</span>
|
<span>{formatTrophies(reset.trophiesLost)}</span>
|
||||||
<span>{reset.numberOfDefenses} defenses</span>
|
<span>{reset.numberOfDefenses} defenses</span>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
@ -1800,6 +1807,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<li>No defenses recorded for this base yet.</li>
|
<li>No defenses recorded for this base yet.</li>
|
||||||
)}
|
)}
|
||||||
</ul>
|
</ul>
|
||||||
|
</details>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|
@ -1888,7 +1896,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div className="card">
|
<div className="card">
|
||||||
<details>
|
<details open>
|
||||||
<summary><h3>Recent Resets</h3></summary>
|
<summary><h3>Recent Resets</h3></summary>
|
||||||
<ul className="list compact">
|
<ul className="list compact">
|
||||||
{profileSelectedBase.trophyResets.length ? (
|
{profileSelectedBase.trophyResets.length ? (
|
||||||
|
|
@ -1897,7 +1905,7 @@ function summarizeProfileDefenses(defenses: ProfileDefense[]): Summary {
|
||||||
<div className="defense-header">
|
<div className="defense-header">
|
||||||
<span>{new Date(reset.date).toLocaleDateString()}</span>
|
<span>{new Date(reset.date).toLocaleDateString()}</span>
|
||||||
<div className="defense-meta">
|
<div className="defense-meta">
|
||||||
<span>{reset.trophiesAtStart} trophies </span>
|
<span>{reset.trophiesAtStart} trophies at start</span>
|
||||||
<span>{formatTrophies(reset.trophiesLost)} lost</span>
|
<span>{formatTrophies(reset.trophiesLost)} lost</span>
|
||||||
<span>{reset.numberOfDefenses} defenses</span>
|
<span>{reset.numberOfDefenses} defenses</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue