diff --git a/src/lib/components/Table/Table.svelte b/src/lib/components/Table/Table.svelte
index 1851272a..af2e01ed 100644
--- a/src/lib/components/Table/Table.svelte
+++ b/src/lib/components/Table/Table.svelte
@@ -11,6 +11,23 @@
export let data;
export let rawData;
+ export let excludedRules = new Set([
+ "volume",
+ "price",
+ "changesPercentage",
+ "revenue",
+ "eps",
+ "marketCap",
+ ]);
+
+ export let defaultList = [
+ { name: "Market Cap", rule: "marketCap" },
+ { name: "Price", rule: "price" },
+ { name: "% Change", rule: "changesPercentage" },
+ { name: "Revenue", rule: "revenue" },
+ ];
+
+ let ruleOfList = defaultList;
let pagePathName = $page?.url?.pathname;
let testList = [];
@@ -108,20 +125,6 @@
},
];
- let ruleOfList = [
- { name: "Market Cap", rule: "marketCap" },
- { name: "Price", rule: "price" },
- { name: "% Change", rule: "changesPercentage" },
- { name: "Revenue", rule: "revenue" },
- ];
-
- const excludedRules = new Set([
- "volume",
- "price",
- "changesPercentage",
- "revenue",
- "eps",
- ]);
const proOnlyItems = new Set(
allRows
?.filter((item) => !excludedRules?.has(item?.rule)) // Exclude the items based on the rule
@@ -141,15 +144,23 @@
for (let i = 0; i < updateData.length; i++) {
if (rawData[i]) {
- // Check if "rank" is missing in updateData[i] and only add that key if it is
+ // Check if "rank" is missing in updateData[i] and add it if it exists in rawData[i]
if (!("rank" in updateData[i]) && "rank" in rawData[i]) {
updateData[i] = {
...updateData[i],
rank: rawData[i]["rank"],
};
}
+ // Check if "years" is missing in updateData[i] and add it if it exists in rawData[i]
+ if (!("years" in updateData[i]) && "years" in rawData[i]) {
+ updateData[i] = {
+ ...updateData[i],
+ years: rawData[i]["years"],
+ };
+ }
}
}
+
rawData = updateData;
stockList = rawData?.slice(0, 50); // Assign to stockList instead of rawData directly
columns = generateColumns(rawData);
@@ -174,12 +185,7 @@
async function handleResetAll() {
searchQuery = "";
- ruleOfList = [
- { name: "Market Cap", rule: "marketCap" },
- { name: "Price", rule: "price" },
- { name: "% Change", rule: "changesPercentage" },
- { name: "Revenue", rule: "revenue" },
- ];
+ ruleOfList = defaultList;
ruleOfList = [...ruleOfList];
checkedItems = new Set(ruleOfList.map((item) => item.name));
allRows = sortIndicatorCheckMarks(allRows);
@@ -449,7 +455,7 @@
-
+
diff --git a/src/routes/list/+layout.svelte b/src/routes/list/+layout.svelte
index 27db6457..b244b55a 100644
--- a/src/routes/list/+layout.svelte
+++ b/src/routes/list/+layout.svelte
@@ -156,11 +156,11 @@
},
{
title: "Dividend Kings",
- link: "/list/dividend-kings",
+ link: "/list/dividend/dividend-kings",
},
{
title: "Dividend Aristocrats",
- link: "/list/dividend-aristocrats",
+ link: "/list/dividend/dividend-aristocrats",
},
{
title: "All Active REITs on the US Stock Market",
diff --git a/src/routes/list/+page.svelte b/src/routes/list/+page.svelte
index 1ab326ec..b3af167c 100644
--- a/src/routes/list/+page.svelte
+++ b/src/routes/list/+page.svelte
@@ -508,7 +508,7 @@
Dividend Kings
@@ -516,7 +516,7 @@
Dividend Aristocrats
diff --git a/src/routes/list/country/[slug]/+page.svelte b/src/routes/list/country/[slug]/+page.svelte
index 7a317634..5fc655c5 100644
--- a/src/routes/list/country/[slug]/+page.svelte
+++ b/src/routes/list/country/[slug]/+page.svelte
@@ -1,15 +1,10 @@
-
-
-
-
-
-
+
diff --git a/src/routes/list/dividend-aristocrats/+page.server.ts b/src/routes/list/dividend-aristocrats/+page.server.ts
deleted file mode 100644
index 56d4aa45..00000000
--- a/src/routes/list/dividend-aristocrats/+page.server.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-export const load = async ({ locals }) => {
- const getDividendAristocrats = async () => {
- const { apiKey, apiURL } = locals;
-
- const response = await fetch(apiURL + "/dividend-aristocrats", {
- method: "GET",
- headers: {
- "Content-Type": "application/json",
- "X-API-KEY": apiKey,
- },
- });
-
- const output = await response.json();
-
- return output;
- };
-
- // Make sure to return a promise
- return {
- getDividendAristocrats: await getDividendAristocrats(),
- };
-};
diff --git a/src/routes/list/dividend-aristocrats/+page.svelte b/src/routes/list/dividend-aristocrats/+page.svelte
deleted file mode 100644
index 63ff754d..00000000
--- a/src/routes/list/dividend-aristocrats/+page.svelte
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
- Dividend Aristocrats are companies in the S&P500 index that have been
- raising their dividends every year for 25 or more years. This is a list of
- all the dividend aristocrats.
-
-
-
-
-
-
-
-
-
diff --git a/src/routes/list/dividend-kings/+page.server.ts b/src/routes/list/dividend-kings/+page.server.ts
deleted file mode 100644
index 352a35ff..00000000
--- a/src/routes/list/dividend-kings/+page.server.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-export const load = async ({ locals }) => {
- const getDividendKings = async () => {
- const { apiKey, apiURL } = locals;
-
- const response = await fetch(apiURL + "/dividend-kings", {
- method: "GET",
- headers: {
- "Content-Type": "application/json",
- "X-API-KEY": apiKey,
- },
- });
-
- const output = await response.json();
-
- return output;
- };
-
- // Make sure to return a promise
- return {
- getDividendKings: await getDividendKings(),
- };
-};
diff --git a/src/routes/list/dividend-kings/+page.svelte b/src/routes/list/dividend-kings/+page.svelte
deleted file mode 100644
index 914ffc07..00000000
--- a/src/routes/list/dividend-kings/+page.svelte
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
- Dividend Kings are companies that have been raising their dividend payments
- every year for 50 or more years. This is a list of all the dividend kings on
- the US stock market.
-
-
-
-
-
-
-
-
-
diff --git a/src/routes/list/dividend/[slug]/+page.server.ts b/src/routes/list/dividend/[slug]/+page.server.ts
new file mode 100644
index 00000000..7bae353f
--- /dev/null
+++ b/src/routes/list/dividend/[slug]/+page.server.ts
@@ -0,0 +1,28 @@
+export const load = async ({ locals, params }) => {
+ const getParams = async () => {
+ return params.slug;
+ };
+ const getDividendCategory = async () => {
+ const { apiKey, apiURL } = locals;
+ const postData = { filterList: params.slug };
+
+ const response = await fetch(apiURL + "/list-category", {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": apiKey,
+ },
+ body: JSON.stringify(postData),
+ });
+
+ const output = await response.json();
+
+ return output;
+ };
+
+ // Make sure to return a promise
+ return {
+ getDividendCategory: await getDividendCategory(),
+ getParams: await getParams(),
+ };
+};
diff --git a/src/routes/list/dividend/[slug]/+page.svelte b/src/routes/list/dividend/[slug]/+page.svelte
new file mode 100644
index 00000000..d9a9ae70
--- /dev/null
+++ b/src/routes/list/dividend/[slug]/+page.svelte
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+ Dividend Kings are companies that have been raising their dividend payments
+ every year for 50 or more years. This is a list of all the dividend kings on
+ the US stock market.
+
+
+
+
+
diff --git a/src/routes/list/exchange/[slug]/+page.svelte b/src/routes/list/exchange/[slug]/+page.svelte
index 8ca05f27..3e74670b 100644
--- a/src/routes/list/exchange/[slug]/+page.svelte
+++ b/src/routes/list/exchange/[slug]/+page.svelte
@@ -1,10 +1,7 @@
@@ -170,89 +84,5 @@
-
-
-
-
-
-
+
diff --git a/src/routes/list/index/[slug]/+page.svelte b/src/routes/list/index/[slug]/+page.svelte
index e33d470e..904c86e1 100644
--- a/src/routes/list/index/[slug]/+page.svelte
+++ b/src/routes/list/index/[slug]/+page.svelte
@@ -1,8 +1,6 @@
diff --git a/src/routes/list/magnificent-seven/+page.server.ts b/src/routes/list/magnificent-seven/+page.server.ts
index 6657883a..9e1ddeb5 100644
--- a/src/routes/list/magnificent-seven/+page.server.ts
+++ b/src/routes/list/magnificent-seven/+page.server.ts
@@ -1,4 +1,5 @@
export const load = async ({ locals }) => {
+
const getMagnificentSeven = async () => {
const { apiURL, apiKey } = locals;
diff --git a/src/routes/list/magnificent-seven/+page.svelte b/src/routes/list/magnificent-seven/+page.svelte
index 83e55c62..bf881d93 100644
--- a/src/routes/list/magnificent-seven/+page.svelte
+++ b/src/routes/list/magnificent-seven/+page.svelte
@@ -1,14 +1,9 @@
@@ -157,82 +71,5 @@
-
-
-
-
-
-
+
diff --git a/src/routes/list/market-cap/[slug]/+page.svelte b/src/routes/list/market-cap/[slug]/+page.svelte
index 0cd6fff4..9a6974e3 100644
--- a/src/routes/list/market-cap/[slug]/+page.svelte
+++ b/src/routes/list/market-cap/[slug]/+page.svelte
@@ -1,11 +1,8 @@
@@ -126,77 +38,6 @@
the US stock market.
-
-
-
-
-
+
diff --git a/src/routes/list/sector/[slug]/+page.svelte b/src/routes/list/sector/[slug]/+page.svelte
index 46bb8b33..e9c858f2 100644
--- a/src/routes/list/sector/[slug]/+page.svelte
+++ b/src/routes/list/sector/[slug]/+page.svelte
@@ -1,136 +1,19 @@
@@ -177,89 +60,5 @@
-
-
-
-
-
-
+