From 967be9e750221ab2ab783f95df79bb26d290a45e Mon Sep 17 00:00:00 2001 From: Martial Simon Date: Mon, 15 Sep 2025 01:07:58 +0200 Subject: add: added projects --- ping/frontend/src/lib/components/Avatar.svelte | 48 +++++ ping/frontend/src/lib/components/Button.svelte | 17 ++ ping/frontend/src/lib/components/NavBar.svelte | 44 ++++ .../src/lib/components/NumberStatList.svelte | 55 +++++ ping/frontend/src/lib/components/SideBar.svelte | 61 ++++++ .../src/lib/components/SteppedLineChart.svelte | 76 +++++++ ping/frontend/src/lib/components/ToastList.svelte | 67 ++++++ ping/frontend/src/lib/components/UserItem.svelte | 42 ++++ .../lib/components/dashboard/RiskAnalysis.svelte | 10 + .../src/lib/components/dashboard/StockGraph.svelte | 136 ++++++++++++ .../components/dashboard/TrendingSymbols.svelte | 85 ++++++++ .../dashboard/transactions/TransactionModal.svelte | 165 +++++++++++++++ .../src/lib/components/input/StockSelector.svelte | 231 +++++++++++++++++++++ .../src/lib/components/input/UserSelector.svelte | 35 ++++ 14 files changed, 1072 insertions(+) create mode 100644 ping/frontend/src/lib/components/Avatar.svelte create mode 100644 ping/frontend/src/lib/components/Button.svelte create mode 100644 ping/frontend/src/lib/components/NavBar.svelte create mode 100644 ping/frontend/src/lib/components/NumberStatList.svelte create mode 100644 ping/frontend/src/lib/components/SideBar.svelte create mode 100644 ping/frontend/src/lib/components/SteppedLineChart.svelte create mode 100644 ping/frontend/src/lib/components/ToastList.svelte create mode 100644 ping/frontend/src/lib/components/UserItem.svelte create mode 100644 ping/frontend/src/lib/components/dashboard/RiskAnalysis.svelte create mode 100644 ping/frontend/src/lib/components/dashboard/StockGraph.svelte create mode 100644 ping/frontend/src/lib/components/dashboard/TrendingSymbols.svelte create mode 100644 ping/frontend/src/lib/components/dashboard/transactions/TransactionModal.svelte create mode 100644 ping/frontend/src/lib/components/input/StockSelector.svelte create mode 100644 ping/frontend/src/lib/components/input/UserSelector.svelte (limited to 'ping/frontend/src/lib/components') diff --git a/ping/frontend/src/lib/components/Avatar.svelte b/ping/frontend/src/lib/components/Avatar.svelte new file mode 100644 index 0000000..c04b563 --- /dev/null +++ b/ping/frontend/src/lib/components/Avatar.svelte @@ -0,0 +1,48 @@ + + + +
+ + (showTooltip = true)} + onmouseleave={() => (showTooltip = false)} + {onclick} + alt="User Avatar" + /> + {#if showTooltip} +
{username}
+ {/if} +
+ + diff --git a/ping/frontend/src/lib/components/Button.svelte b/ping/frontend/src/lib/components/Button.svelte new file mode 100644 index 0000000..54b26ab --- /dev/null +++ b/ping/frontend/src/lib/components/Button.svelte @@ -0,0 +1,17 @@ + + +{#if href} + {@render children?.()} +{:else} + +{/if} diff --git a/ping/frontend/src/lib/components/NavBar.svelte b/ping/frontend/src/lib/components/NavBar.svelte new file mode 100644 index 0000000..1a76876 --- /dev/null +++ b/ping/frontend/src/lib/components/NavBar.svelte @@ -0,0 +1,44 @@ + + + + + diff --git a/ping/frontend/src/lib/components/NumberStatList.svelte b/ping/frontend/src/lib/components/NumberStatList.svelte new file mode 100644 index 0000000..b6444e8 --- /dev/null +++ b/ping/frontend/src/lib/components/NumberStatList.svelte @@ -0,0 +1,55 @@ + + +
+ {#each statsList as stat} +
+ + {stat.name} + {stat.value} +
+ {/each} +
+ + diff --git a/ping/frontend/src/lib/components/SideBar.svelte b/ping/frontend/src/lib/components/SideBar.svelte new file mode 100644 index 0000000..9ea8a04 --- /dev/null +++ b/ping/frontend/src/lib/components/SideBar.svelte @@ -0,0 +1,61 @@ + + + + + diff --git a/ping/frontend/src/lib/components/SteppedLineChart.svelte b/ping/frontend/src/lib/components/SteppedLineChart.svelte new file mode 100644 index 0000000..d393b44 --- /dev/null +++ b/ping/frontend/src/lib/components/SteppedLineChart.svelte @@ -0,0 +1,76 @@ + + +
+ +
diff --git a/ping/frontend/src/lib/components/ToastList.svelte b/ping/frontend/src/lib/components/ToastList.svelte new file mode 100644 index 0000000..5351ef7 --- /dev/null +++ b/ping/frontend/src/lib/components/ToastList.svelte @@ -0,0 +1,67 @@ + + +
+ {#each $toastList as toast} +
+

{toast.title}

+

{toast.message}

+
+ {/each} +
+ + diff --git a/ping/frontend/src/lib/components/UserItem.svelte b/ping/frontend/src/lib/components/UserItem.svelte new file mode 100644 index 0000000..44add60 --- /dev/null +++ b/ping/frontend/src/lib/components/UserItem.svelte @@ -0,0 +1,42 @@ + + +
+
+ + + +
+
+

Nom: {user.displayName}

+

Login: {user.login}

+

Role: {user.isAdmin ? 'ADMIN' : 'USER'}

+

Id: {user.id}

+
+
+ + diff --git a/ping/frontend/src/lib/components/dashboard/RiskAnalysis.svelte b/ping/frontend/src/lib/components/dashboard/RiskAnalysis.svelte new file mode 100644 index 0000000..3844abc --- /dev/null +++ b/ping/frontend/src/lib/components/dashboard/RiskAnalysis.svelte @@ -0,0 +1,10 @@ +

Analyse de risque

+tkt t safe c hardcodé chef + + diff --git a/ping/frontend/src/lib/components/dashboard/StockGraph.svelte b/ping/frontend/src/lib/components/dashboard/StockGraph.svelte new file mode 100644 index 0000000..beefed9 --- /dev/null +++ b/ping/frontend/src/lib/components/dashboard/StockGraph.svelte @@ -0,0 +1,136 @@ + + +
+
+

Vue d'ensemble : {selectedStock}

+
+ + + + + +
+
+ +
+ + diff --git a/ping/frontend/src/lib/components/dashboard/TrendingSymbols.svelte b/ping/frontend/src/lib/components/dashboard/TrendingSymbols.svelte new file mode 100644 index 0000000..3d947ad --- /dev/null +++ b/ping/frontend/src/lib/components/dashboard/TrendingSymbols.svelte @@ -0,0 +1,85 @@ + + +

Tendances

+ + + diff --git a/ping/frontend/src/lib/components/dashboard/transactions/TransactionModal.svelte b/ping/frontend/src/lib/components/dashboard/transactions/TransactionModal.svelte new file mode 100644 index 0000000..b9f0224 --- /dev/null +++ b/ping/frontend/src/lib/components/dashboard/transactions/TransactionModal.svelte @@ -0,0 +1,165 @@ + + + + +{#if isOpen} +
+ e.stopPropagation()}> +

Créer une nouvelle transaction

+
+ + + + + + + +
+
+
+{/if} + + diff --git a/ping/frontend/src/lib/components/input/StockSelector.svelte b/ping/frontend/src/lib/components/input/StockSelector.svelte new file mode 100644 index 0000000..1237128 --- /dev/null +++ b/ping/frontend/src/lib/components/input/StockSelector.svelte @@ -0,0 +1,231 @@ + + + + + +
+ + +
+
+
+ {#if stocks.length === 0} +

Aucune action, ETFs trouvés.

+ {:else} +

{stocks.length} actions, ETFs trouvés

+ {#each stocks as stock} + + {/each} + {/if} +
+
+ {#if news.length === 0} +

Pas de news trouvés.

+ {:else} +

{news.length} news trouvées

+ {#each news as newsItem} + + {#if newsItem.thumbnail?.resolutions?.length > 0} + News Thumbnail + {/if} +

{newsItem.title}

+ {/each} + {/if} +
+
+
+ + +
+ + diff --git a/ping/frontend/src/lib/components/input/UserSelector.svelte b/ping/frontend/src/lib/components/input/UserSelector.svelte new file mode 100644 index 0000000..a0c80c7 --- /dev/null +++ b/ping/frontend/src/lib/components/input/UserSelector.svelte @@ -0,0 +1,35 @@ + + +
+ {#each users as u, i} + { + users = users.filter((_, index) => index !== i); + }} + /> + {/each} + { + let userId = prompt("Entrez l'ID de l'utilisateur à ajouter :"); + if (userId === null || userId.trim() === '') { + addToast({ title: 'ID utilisateur invalide.' }); + return; + } + if (users.map((u) => u.displayName).includes(userId)) { + addToast({ title: 'Cet utilisateur est déjà ajouté.' }); + return; + } + users = [...users, { displayName: userId, avatar: '/img/default-avatar.png' } as IUser]; + }} + /> +
-- cgit v1.2.3