From 3882116ab64c6cede22e3ee787a6731497271ebb Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Sat, 14 Dec 2024 21:26:11 +0100 Subject: [PATCH] ui fixes --- src/routes/options-flow/+page.svelte | 2 +- src/routes/stock-screener/+page.svelte | 15 +++++++++------ src/routes/stock-screener/workers/filterWorker.ts | 10 ++++------ 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/routes/options-flow/+page.svelte b/src/routes/options-flow/+page.svelte index be4bab51..5cd53911 100644 --- a/src/routes/options-flow/+page.svelte +++ b/src/routes/options-flow/+page.svelte @@ -1873,7 +1873,7 @@
diff --git a/src/routes/stock-screener/+page.svelte b/src/routes/stock-screener/+page.svelte index b1c5532c..c9962d0e 100644 --- a/src/routes/stock-screener/+page.svelte +++ b/src/routes/stock-screener/+page.svelte @@ -1848,7 +1848,7 @@ const handleKeyDown = (event) => { ruleName = name; if ( ruleCondition[ruleName] === "between" && - ["over", "under"]?.includes(state?.toLowerCase()) + ["over", "under", "exactly"]?.includes(state?.toLowerCase()) ) { valueMappings[ruleName] = ""; } @@ -2733,7 +2733,8 @@ const handleKeyDown = (event) => { {:else} {ruleCondition[row?.rule] ?.replace("under", "Under") - ?.replace("over", "Over") ?? ""} + ?.replace("over", "Over") + ?.replace("exactly", "Exactly") ?? ""} {valueMappings[row?.rule]} {/if} @@ -2778,7 +2779,8 @@ const handleKeyDown = (event) => { {ruleCondition[ruleName] ?.replace("under", "Under") ?.replace("over", "Over") - ?.replace("between", "Between")} + ?.replace("between", "Between") + ?.replace("exactly", "Exactly")} { - {#each ["Over", "Under", "Between"] as item} + {#each ["Over", "Under", "Between", "Exactly"] as item} changeRuleCondition( @@ -2855,7 +2857,7 @@ const handleKeyDown = (event) => { /> {/if} - {#if ["over", "under"]?.includes(ruleCondition[ruleName]?.toLowerCase())} + {#if ["over", "under", "exactly"]?.includes(ruleCondition[ruleName]?.toLowerCase())}
@@ -2968,7 +2970,8 @@ const handleKeyDown = (event) => { > {ruleCondition[row?.rule] ?.replace("under", "Under") - ?.replace("over", "Over")} + ?.replace("over", "Over") + ?.replace("exactly", "Exactly")} {newValue} diff --git a/src/routes/stock-screener/workers/filterWorker.ts b/src/routes/stock-screener/workers/filterWorker.ts index e080caa1..249ea8a4 100644 --- a/src/routes/stock-screener/workers/filterWorker.ts +++ b/src/routes/stock-screener/workers/filterWorker.ts @@ -174,13 +174,11 @@ function createRuleCheck(rule, ruleName, ruleValue) { if (itemValue === null) return false; - if (rule.condition === 'over') { - return itemValue > ruleValue; - } + if (rule.condition === 'exactly' && itemValue !== ruleValue) return false; + if (rule.condition === 'over' && itemValue <= ruleValue) return false; + if (rule.condition === 'under' && itemValue >= ruleValue) return false; + - if (rule.condition === 'under') { - return itemValue < ruleValue; - } // Default comparison if no specific condition return true;