diff --git a/src/lib/components/AIScore.svelte b/src/lib/components/AIScore.svelte index d12ec522..09230b29 100644 --- a/src/lib/components/AIScore.svelte +++ b/src/lib/components/AIScore.svelte @@ -13,7 +13,9 @@ } -
+
- import { executiveClicked, stockTicker, clientSideCache } from "$lib/store"; - import { afterUpdate } from "svelte"; - - //export let executiveList; - let executiveList = []; - - let isLoaded = false; - const currentYear = new Date().getFullYear(); - - let numberOfFemales = 0; - let numberOfMales = 0; - - async function fetchData() { - if ($clientSideCache[$stockTicker]?.getExecutives) { - executiveList = $clientSideCache[$stockTicker]?.getExecutives; - } else { - const postData = { ticker: $stockTicker, path: "get-executives" }; - const response = await fetch("/api/ticker-data", { - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify(postData), - }); - - executiveList = await response.json(); - $clientSideCache[$stockTicker].getExecutives = executiveList; - } - } - - afterUpdate(async () => { - if ( - $stockTicker && - typeof window !== "undefined" && - $executiveClicked === true - ) { - $executiveClicked = false; - await fetchData(); - for (const executive of executiveList) { - switch (executive?.gender) { - case "female": - numberOfFemales++; - break; - case "male": - numberOfMales++; - break; - // Handle other gender cases if needed - } - } - - isLoaded = true; - } - }); - - -
-
- -
-

- Executives -

- -
- Female/Total Ratio - -
-
- - - - Female ({numberOfFemales}) - -
- - - {numberOfFemales === 0 - ? 0 - : ( - (numberOfFemales / (numberOfFemales + numberOfMales)) * - 100 - )?.toFixed(2)}% - - -
- - - - Male ({numberOfMales}) - -
-
-
-
- - {#if isLoaded} - {#if executiveList?.length !== 0} -
- {#each executiveList as item} - -
-
-
-
-
- - {item?.name} - {#if item?.yearBorn !== null} - , {currentYear - item.yearBorn} - {/if} - -
- - {item?.title} - -
- - {#if item?.gender === "male"} -
- - - - Male - -
- {:else if item?.gender === "female"} -
- - - - Female - -
- {/if} -
-
-
- - {/each} -
- {:else} -
- No data available -
- {/if} - {:else} -
-
- -
-
- {/if} -
-
- diff --git a/src/lib/components/Searchbar.svelte b/src/lib/components/Searchbar.svelte index 69a2821d..e22791e1 100644 --- a/src/lib/components/Searchbar.svelte +++ b/src/lib/components/Searchbar.svelte @@ -378,7 +378,8 @@ on:click={() => handleSearch(item?.symbol, item?.type)} >
- {item?.symbol} - +