From 074b929f537318c6afc864e3cba31e7711b55432 Mon Sep 17 00:00:00 2001 From: Leo Date: Tue, 14 Jan 2025 22:35:15 +0100 Subject: [PATCH] make roles user-defined --- ui/src/crud/store.ts | 4 + ui/src/lib/Initialize.svelte | 8 +- ui/src/lib/Map.svelte | 10 +- ui/src/lib/Nav.svelte | 70 ++++---- ui/src/lib/RecipeFlowModal.svelte | 92 ++++++++--- ui/src/lib/SidePanel.svelte | 2 +- ui/src/lib/SvgIcon.svelte | 29 ++++ ui/src/lib/graphql/proposal.fragments.ts | 5 + ui/src/lib/svgIcons.ts | 40 +++++ ui/src/routes/+page.svelte | 4 +- ui/src/routes/agents/+page.svelte | 2 +- ui/src/routes/agents/AgentModal.svelte | 106 +++++++++--- ui/src/routes/plans/=helper.ts | 151 +++++++++++------- .../plans/update/[plan_id]/+page.svelte | 75 ++++----- ui/static/building.svg | 1 + 15 files changed, 419 insertions(+), 180 deletions(-) create mode 100644 ui/src/lib/SvgIcon.svelte create mode 100644 ui/src/lib/svgIcons.ts create mode 100644 ui/static/building.svg diff --git a/ui/src/crud/store.ts b/ui/src/crud/store.ts index 031a94a..9abf18f 100644 --- a/ui/src/crud/store.ts +++ b/ui/src/crud/store.ts @@ -3,6 +3,7 @@ import { writable } from 'svelte/store'; export const allHashChanges = writable([]); export const clientStored = writable(null); export const allAgents = writable([]); +export const allRoles = writable([]); export const allFacets = writable([]); export const allFacetValues = writable([]); export const allUnits = writable([]); @@ -42,6 +43,9 @@ export function setActions(newActions: any) { export function setAgents(newAgents: any) { allAgents.update(v => newAgents); + const roles = newAgents.map((a: any) => a.classifiedAs[2]).flat(); + const uniqueRoles = Array.from(new Set(roles)); + allRoles.update(v => uniqueRoles); } export function setEconomicEvents(newEconomicEvents: any) { diff --git a/ui/src/lib/Initialize.svelte b/ui/src/lib/Initialize.svelte index 75093e2..545a5bf 100644 --- a/ui/src/lib/Initialize.svelte +++ b/ui/src/lib/Initialize.svelte @@ -405,11 +405,9 @@ onMount(checkDependencies) // dependenciesOk = false - + + + {#if dependenciesOk === true} {:else} diff --git a/ui/src/lib/Map.svelte b/ui/src/lib/Map.svelte index e623e99..04c994f 100644 --- a/ui/src/lib/Map.svelte +++ b/ui/src/lib/Map.svelte @@ -31,10 +31,10 @@ } const defaultIconOptions = { - iconSize: [41, 41], - iconAnchor: [20, 41], - popupAnchor: [1, -34], - tooltipAnchor: [16 - 28] + iconSize: [31, 31], + // iconAnchor: [20, 41], + // popupAnchor: [1, -34], + // tooltipAnchor: [16 - 28] } @@ -52,7 +52,7 @@ }} > {#if agent.iconUrl } - + {/if} diff --git a/ui/src/lib/Nav.svelte b/ui/src/lib/Nav.svelte index e51f0d8..e316c89 100644 --- a/ui/src/lib/Nav.svelte +++ b/ui/src/lib/Nav.svelte @@ -136,6 +136,36 @@ > Plans + + + + + + + + + @@ -207,7 +237,7 @@ - - - - - {#if processIndex == 0} + +
+ +
+
+
+
- {/if} + + + + {#if processIndex == 0} + + {/if} +
-
{#each committedInputs as { resourceConformsTo, providerId, resourceQuantity, action, receiverId, id, revisionId, agreement, fulfilledBy, finished, clauseOf, meta }} {@const color = finished ? "#c4fbc4" : (((fulfilledBy && fulfilledBy.length > 0) || yellow.includes(id)) ? "#fbfbb0" : "white")} @@ -1476,8 +1477,8 @@ bind:open={economicEventModalOpen}
{/if}
diff --git a/ui/static/building.svg b/ui/static/building.svg new file mode 100644 index 0000000..d53bf99 --- /dev/null +++ b/ui/static/building.svg @@ -0,0 +1 @@ + \ No newline at end of file