From 7f037b3de923e54399144d3d947f0a68870cbf59 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Wed, 2 Mar 2022 11:14:31 -0500 Subject: [PATCH] ShipCost component --- src/lib/components/ShipEdit/ShipCost.svelte | 86 +++++++++++++++++++++ src/lib/components/ShipEdit/index.svelte | 20 ++++- src/lib/shipDux/index.js | 8 +- 3 files changed, 109 insertions(+), 5 deletions(-) create mode 100644 src/lib/components/ShipEdit/ShipCost.svelte diff --git a/src/lib/components/ShipEdit/ShipCost.svelte b/src/lib/components/ShipEdit/ShipCost.svelte new file mode 100644 index 0000000..969b577 --- /dev/null +++ b/src/lib/components/ShipEdit/ShipCost.svelte @@ -0,0 +1,86 @@ +
+ + + + +
+ {#if withinBudget} + mass unused: {massUnused} + {:else} + excessive mass: {-massUnused} + {/if} +
+
+
+ +
+ + {cost} + +
+ + + + diff --git a/src/lib/components/ShipEdit/index.svelte b/src/lib/components/ShipEdit/index.svelte index 841b7c7..5a96ab0 100644 --- a/src/lib/components/ShipEdit/index.svelte +++ b/src/lib/components/ShipEdit/index.svelte @@ -1,12 +1,24 @@ - +
+ + + +
diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index 755e3e9..3cf5750 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -1,4 +1,5 @@ import { Updux } from "updux"; +import u from 'updeep'; import engine from "./engine.js"; import identification from "./identification.js"; @@ -10,8 +11,13 @@ const dux = new Updux({ engine, }, initial: { - reqs: { cost: 0, mass: 10 }, + reqs: { cost: 0, mass: 10, usedMass: 0 }, }, + actions: { + setShipMass: null, + } }); +dux.setMutation( 'setShipMass', mass => u({reqs: {mass}}) ); + export default dux;