update profile page
This commit is contained in:
parent
7edd863beb
commit
8c123ae36b
@ -11,11 +11,19 @@
|
|||||||
let showFullHistory = false;
|
let showFullHistory = false;
|
||||||
|
|
||||||
function latestInfoDate(inputDate) {
|
function latestInfoDate(inputDate) {
|
||||||
// Convert the input date string to milliseconds since epoch
|
// Create a Date object for the input date and convert it to New York time zone
|
||||||
const inputDateMs = new Date(inputDate);
|
const inputDateLocal = new Date(inputDate).toLocaleString("en-US", {
|
||||||
|
timeZone: "America/New_York",
|
||||||
|
});
|
||||||
|
|
||||||
// Get today's date in milliseconds since epoch
|
// Get the current date and time in New York timezone
|
||||||
const todayMs = Date.now();
|
const todayLocal = new Date().toLocaleString("en-US", {
|
||||||
|
timeZone: "America/New_York",
|
||||||
|
});
|
||||||
|
|
||||||
|
// Convert the localized strings back to Date objects
|
||||||
|
const inputDateMs = new Date(inputDateLocal).getTime();
|
||||||
|
const todayMs = new Date(todayLocal).getTime();
|
||||||
|
|
||||||
// Calculate the difference in milliseconds
|
// Calculate the difference in milliseconds
|
||||||
const differenceInMs = todayMs - inputDateMs;
|
const differenceInMs = todayMs - inputDateMs;
|
||||||
@ -23,7 +31,7 @@
|
|||||||
// Convert milliseconds to days
|
// Convert milliseconds to days
|
||||||
const differenceInDays = Math.floor(differenceInMs / (1000 * 60 * 60 * 24));
|
const differenceInDays = Math.floor(differenceInMs / (1000 * 60 * 60 * 24));
|
||||||
|
|
||||||
// Return the difference in days
|
// Return whether the difference is less than or equal to 1 day
|
||||||
return differenceInDays <= 1;
|
return differenceInDays <= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -671,7 +671,14 @@ export function abbreviateNumber(number, addDollarSign = false) {
|
|||||||
|
|
||||||
export const formatDate = (dateString) => {
|
export const formatDate = (dateString) => {
|
||||||
const date = new Date(dateString);
|
const date = new Date(dateString);
|
||||||
const now = new Date();
|
|
||||||
|
// Get the current time in New York timezone
|
||||||
|
const now = new Date(
|
||||||
|
new Intl.DateTimeFormat("en-US", {
|
||||||
|
timeZone: "America/New_York",
|
||||||
|
}).format(new Date())
|
||||||
|
);
|
||||||
|
|
||||||
const diffInDays = Math.floor((now - date) / (1000 * 60 * 60 * 24));
|
const diffInDays = Math.floor((now - date) / (1000 * 60 * 60 * 24));
|
||||||
|
|
||||||
if (diffInDays >= 30) {
|
if (diffInDays >= 30) {
|
||||||
|
|||||||
@ -4,7 +4,7 @@ import { loginUserSchema, registerUserSchema } from "$lib/schemas";
|
|||||||
|
|
||||||
|
|
||||||
export const load = async ({ params, locals }) => {
|
export const load = async ({ params, locals }) => {
|
||||||
const getStockDividend = async () => {
|
const getData = async () => {
|
||||||
let newsList;
|
let newsList;
|
||||||
|
|
||||||
const { apiURL, apiKey } = locals;
|
const { apiURL, apiKey } = locals;
|
||||||
@ -14,7 +14,7 @@ export const load = async ({ params, locals }) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// make the POST request to the endpoint
|
// make the POST request to the endpoint
|
||||||
const response = await fetch(apiURL + "/stock-dividend", {
|
const response = await fetch(apiURL + "/profile", {
|
||||||
method: "POST",
|
method: "POST",
|
||||||
headers: {
|
headers: {
|
||||||
"Content-Type": "application/json",
|
"Content-Type": "application/json",
|
||||||
@ -30,7 +30,7 @@ export const load = async ({ params, locals }) => {
|
|||||||
|
|
||||||
// Make sure to return a promise
|
// Make sure to return a promise
|
||||||
return {
|
return {
|
||||||
getStockDividend: await getStockDividend(),
|
getData: await getData(),
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -4,11 +4,42 @@
|
|||||||
displayCompanyName,
|
displayCompanyName,
|
||||||
numberOfUnreadNotification,
|
numberOfUnreadNotification,
|
||||||
} from "$lib/store";
|
} from "$lib/store";
|
||||||
|
import { sectorNavigation } from "$lib/utils";
|
||||||
|
|
||||||
export let data;
|
export let data;
|
||||||
|
|
||||||
const similarStocks = data?.getSimilarStocks?.sort(
|
const rawData = data?.getData;
|
||||||
(a, b) => b?.dividendYield - a?.dividendYield,
|
|
||||||
|
function getIndustryHref(industryName) {
|
||||||
|
// Replace spaces with hyphens
|
||||||
|
let formattedName = industryName?.replace(/ /g, "-");
|
||||||
|
// Replace "&" with "and"
|
||||||
|
formattedName = formattedName?.replace(/&/g, "and");
|
||||||
|
// Remove any extra hyphens (e.g., from consecutive spaces)
|
||||||
|
formattedName = formattedName?.replace(/-{2,}/g, "-");
|
||||||
|
// Convert to lowercase for consistency
|
||||||
|
return "/list/industry/" + formattedName?.toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
|
function textToParagraphs(text) {
|
||||||
|
// Split the text into sentences
|
||||||
|
const sentences = text.split(
|
||||||
|
/(?<!\w\.\w.)(?<![A-Z][a-z]\.)(?<=\.)\s+(?=[A-Z])/,
|
||||||
|
);
|
||||||
|
|
||||||
|
// Wrap sentences in paragraphs
|
||||||
|
const paragraphs = sentences.map(
|
||||||
|
(sentence) => `<p class="mb-5">${sentence.trim()}</p>`,
|
||||||
|
);
|
||||||
|
|
||||||
|
// Wrap paragraphs in a div with additional classes
|
||||||
|
return `<div class="mb-5 md:text-lg [&>p]:mb-5">
|
||||||
|
${paragraphs.join("\n")}
|
||||||
|
</div>`;
|
||||||
|
}
|
||||||
|
|
||||||
|
const formattedText = textToParagraphs(
|
||||||
|
rawData?.description || "No Company description available at the moment.",
|
||||||
);
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -59,48 +90,13 @@
|
|||||||
class="relative flex flex-row justify-center items-start overflow-hidden w-full"
|
class="relative flex flex-row justify-center items-start overflow-hidden w-full"
|
||||||
>
|
>
|
||||||
<div class="sm:p-7 w-full mt-2 sm:mt-0">
|
<div class="sm:p-7 w-full mt-2 sm:mt-0">
|
||||||
<div class="lg:float-left lg:w-[calc(100%-336px-40px)]">
|
<div class="lg:float-left lg:w-[calc(100%-336px-20px)]">
|
||||||
<h1 class="text-xl sm:text-2xl font-bold mb-4 w-full">
|
<h1 class="text-xl sm:text-2xl font-bold mb-4 w-full">
|
||||||
Company Description
|
Company Description
|
||||||
</h1>
|
</h1>
|
||||||
<div class="mb-5 text-base md:text-lg [&>p]:mb-5">
|
{@html formattedText}
|
||||||
<p class="mb-5">
|
|
||||||
The Coca-Cola Company, a beverage company, manufactures,
|
|
||||||
markets, and sells various nonalcoholic beverages worldwide.
|
|
||||||
</p>
|
|
||||||
<p class="mb-5">
|
|
||||||
The company provides sparkling soft drinks, sparkling flavors;
|
|
||||||
water, sports, coffee, and tea; juice, value-added dairy, and
|
|
||||||
plant-based beverages; and other beverages.
|
|
||||||
</p>
|
|
||||||
<p class="mb-5">
|
|
||||||
It also offers beverage concentrates and syrups, as well as
|
|
||||||
fountain syrups to fountain retailers, such as restaurants and
|
|
||||||
convenience stores.
|
|
||||||
</p>
|
|
||||||
<p class="mb-5">
|
|
||||||
The company sells its products under the Coca-Cola, Diet
|
|
||||||
Coke/Coca-Cola Light, Coca-Cola Zero Sugar, caffeine free Diet
|
|
||||||
Coke, Cherry Coke, Fanta Orange, Fanta Zero Orange, Fanta Zero
|
|
||||||
Sugar, Fanta Apple, Sprite, Sprite Zero Sugar, Simply Orange,
|
|
||||||
Simply Apple, Simply Grapefruit, Fresca, Schweppes, Thums Up,
|
|
||||||
Aquarius, Ayataka, BODYARMOR, Ciel, Costa, Dasani, doğadan, FUZE
|
|
||||||
TEA, Georgia, glacéau smartwater, glacéau vitaminwater, Gold
|
|
||||||
Peak, Ice Dew, I LOHAS, Powerade, Topo Chico, AdeS, Del Valle,
|
|
||||||
fairlife, innocent, Minute Maid, and Minute Maid Pulpy brands.
|
|
||||||
</p>
|
|
||||||
<p class="mb-5">
|
|
||||||
It operates through a network of independent bottling partners,
|
|
||||||
distributors, wholesalers, and retailers, as well as through
|
|
||||||
bottling and distribution operators.
|
|
||||||
</p>
|
|
||||||
<p class="mb-5">
|
|
||||||
The company was founded in 1886 and is headquartered in Atlanta,
|
|
||||||
Georgia.
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="lg:-mr-6 flex-shrink-0 lg:float-right lg:w-[336px]">
|
||||||
<div class="-mr-5 flex-shrink-0 lg:float-right lg:w-[336px]">
|
|
||||||
<div
|
<div
|
||||||
class="mt-7 rounded border border-gray-600 bg-primary px-3 pb-2 pt-3 xs:px-4 xs:pt-4 lg:mt-1"
|
class="mt-7 rounded border border-gray-600 bg-primary px-3 pb-2 pt-3 xs:px-4 xs:pt-4 lg:mt-1"
|
||||||
>
|
>
|
||||||
@ -121,30 +117,39 @@
|
|||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-bpivlp">Country</td
|
data-svelte-h="svelte-bpivlp">Country</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">United States</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.country
|
||||||
|
? rawData?.country?.replace("US", "United States")
|
||||||
|
: "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
|
||||||
><td
|
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
|
||||||
data-svelte-h="svelte-99zpt0">Founded</td
|
|
||||||
> <td class="px-1 py-1.5 text-right lg:py-2">1886</td></tr
|
|
||||||
>
|
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-pqn7mx">IPO Date</td
|
data-svelte-h="svelte-pqn7mx">IPO Date</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">Sep 5, 1919</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.ipoDate !== null &&
|
||||||
|
rawData?.ipoDate?.length > 0
|
||||||
|
? new Date(rawData?.ipoDate)?.toLocaleString("en-US", {
|
||||||
|
month: "short",
|
||||||
|
day: "numeric",
|
||||||
|
year: "numeric",
|
||||||
|
daySuffix: "2-digit",
|
||||||
|
})
|
||||||
|
: "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td class="px-1 py-1.5 font-semibold lg:py-2">Industry</td>
|
><td class="px-1 py-1.5 font-semibold lg:py-2">Industry</td>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2"
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
><a
|
><a
|
||||||
|
href={rawData?.industry
|
||||||
|
? getIndustryHref(rawData?.industry)
|
||||||
|
: "#"}
|
||||||
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
||||||
href="/stocks/industry/beverages-non-alcoholic/"
|
>{rawData?.industry ?? "n/a"}</a
|
||||||
>Beverages - Non-Alcoholic</a
|
|
||||||
></td
|
></td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
@ -153,23 +158,28 @@
|
|||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-5e1uzt">Sector</td
|
data-svelte-h="svelte-5e1uzt">Sector</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2"
|
<td class="px-1 py-1.5 text-right lg:py-2">
|
||||||
><a
|
<a
|
||||||
|
href={sectorNavigation?.find(
|
||||||
|
(item) => item?.title === rawData?.sector,
|
||||||
|
)?.link}
|
||||||
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
||||||
href="/stocks/sector/consumer-staples/"
|
>{rawData?.sector ? rawData?.sector : "n/a"}</a
|
||||||
>Consumer Staples</a
|
|
||||||
></td
|
></td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td class="px-1 py-1.5 font-semibold lg:py-2">Employees</td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
|
||||||
data-svelte-h="svelte-8d46v8">Employees</td
|
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2"
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
><a
|
><a
|
||||||
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
class="sm:hover:text-blue-400 text-white underline underline-offset-4"
|
||||||
href="/stocks/ko/employees/">79,100</a
|
href={`/stocks/${$stockTicker}/statistics/employees`}
|
||||||
|
>{rawData?.fullTimeEmployees
|
||||||
|
? new Intl.NumberFormat("en")?.format(
|
||||||
|
rawData?.fullTimeEmployees,
|
||||||
|
)
|
||||||
|
: "n/a"}</a
|
||||||
></td
|
></td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
@ -179,7 +189,7 @@
|
|||||||
data-svelte-h="svelte-1qhfmvo">CEO</td
|
data-svelte-h="svelte-1qhfmvo">CEO</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2"
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
>James Robert Quincey</td
|
>{rawData?.ceo || "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
></tbody
|
></tbody
|
||||||
>
|
>
|
||||||
@ -202,25 +212,24 @@
|
|||||||
Address:
|
Address:
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
One Coca-Cola Plaza<br />Atlanta, Georgia 30313<br
|
{rawData?.address
|
||||||
/>United States
|
? rawData?.address
|
||||||
|
: "No Address available"}<br />{rawData?.city
|
||||||
|
? rawData?.city
|
||||||
|
: "No city data available"}, {rawData?.state ?? ""}<br
|
||||||
|
/>{rawData?.country?.replace("US", "United States") ??
|
||||||
|
""}
|
||||||
</div></td
|
</div></td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
|
||||||
><td
|
|
||||||
class="px-0.5 py-2 font-semibold"
|
|
||||||
data-svelte-h="svelte-13hrol0">Phone</td
|
|
||||||
> <td class="px-0.5 py-2 text-right">404 676 2121</td></tr
|
|
||||||
>
|
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td class="px-0.5 py-2 font-semibold">Website</td>
|
><td class="px-0.5 py-2 font-semibold">Website</td>
|
||||||
<td class="px-0.5 py-2 text-right"
|
<td class="px-0.5 py-2 text-right">
|
||||||
><a
|
<a
|
||||||
href="https://www.coca-colacompany.com"
|
href={rawData?.website}
|
||||||
target="_blank"
|
class="hover:sm:text-white truncate text-blue-400"
|
||||||
rel="noopener noreferrer nofollow"
|
target="_blank">{rawData?.website ?? "n/a"}</a
|
||||||
>coca-colacompany.com</a
|
|
||||||
></td
|
></td
|
||||||
></tr
|
></tr
|
||||||
></tbody
|
></tbody
|
||||||
@ -237,13 +246,19 @@
|
|||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-lmvnpx">Ticker Symbol</td
|
data-svelte-h="svelte-lmvnpx">Ticker Symbol</td
|
||||||
> <td class="px-1 py-1.5 text-right lg:py-2">KO</td></tr
|
>
|
||||||
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.symbol ?? "n/a"}</td
|
||||||
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-h7dsem">Exchange</td
|
data-svelte-h="svelte-h7dsem">Exchange</td
|
||||||
> <td class="px-1 py-1.5 text-right lg:py-2">NYSE</td></tr
|
>
|
||||||
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.exchange ?? "n/a"}</td
|
||||||
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
@ -251,21 +266,25 @@
|
|||||||
data-svelte-h="svelte-q9yzrm">Fiscal Year</td
|
data-svelte-h="svelte-q9yzrm">Fiscal Year</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2"
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
>January - December</td
|
>{rawData?.fiscalYearRange ?? "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-1tbczfa">Reporting Currency</td
|
data-svelte-h="svelte-1tbczfa">Reporting Currency</td
|
||||||
> <td class="px-1 py-1.5 text-right lg:py-2">USD</td></tr
|
>
|
||||||
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.currency ?? "n/a"}</td
|
||||||
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-ucpcs9">CIK Code</td
|
data-svelte-h="svelte-ucpcs9">CIK Code</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">0000021344</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.cik ?? "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
@ -273,7 +292,8 @@
|
|||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-1fdyovu">CUSIP Number</td
|
data-svelte-h="svelte-1fdyovu">CUSIP Number</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">191216100</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.cusip ?? "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
@ -281,7 +301,8 @@
|
|||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-t5u2mr">ISIN Number</td
|
data-svelte-h="svelte-t5u2mr">ISIN Number</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">US1912161007</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.isin ?? "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
@ -289,14 +310,18 @@
|
|||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-x8apyl">Employer ID</td
|
data-svelte-h="svelte-x8apyl">Employer ID</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-1.5 text-right lg:py-2">58-0628465</td
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.taxIdentificationNumber ?? "n/a"}</td
|
||||||
></tr
|
></tr
|
||||||
>
|
>
|
||||||
<tr class="border-b border-gray-600 last:border-0"
|
<tr class="border-b border-gray-600 last:border-0"
|
||||||
><td
|
><td
|
||||||
class="px-1 py-1.5 font-semibold lg:py-2"
|
class="px-1 py-1.5 font-semibold lg:py-2"
|
||||||
data-svelte-h="svelte-1o4kelt">SIC Code</td
|
data-svelte-h="svelte-1o4kelt">SIC Code</td
|
||||||
> <td class="px-1 py-1.5 text-right lg:py-2">2080</td></tr
|
>
|
||||||
|
<td class="px-1 py-1.5 text-right lg:py-2"
|
||||||
|
>{rawData?.sicCode ?? "n/a"}</td
|
||||||
|
></tr
|
||||||
></tbody
|
></tbody
|
||||||
>
|
>
|
||||||
</table>
|
</table>
|
||||||
@ -304,9 +329,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class=" mb-2 lg:float-left lg:w-[calc(100%-336px-40px)]">
|
<div class=" mb-2 lg:float-left lg:w-[calc(100%-336px-40px)]">
|
||||||
<h2 class="mt-6 xs:mt-8 lg:mt-4 text-xl sm:text-2xl font-bold mb-5">
|
<h2 class="mt-6 lg:mt-4 text-xl sm:text-2xl font-bold mb-5">
|
||||||
Key Executives
|
Key Executives
|
||||||
</h2>
|
</h2>
|
||||||
|
{#if rawData?.executives?.length > 0}
|
||||||
<table class="mb-6 w-full text-base xs:mb-8">
|
<table class="mb-6 w-full text-base xs:mb-8">
|
||||||
<thead class="bg-primary"
|
<thead class="bg-primary"
|
||||||
><tr class="border-y border-gray-600"
|
><tr class="border-y border-gray-600"
|
||||||
@ -320,258 +346,70 @@
|
|||||||
></tr
|
></tr
|
||||||
></thead
|
></thead
|
||||||
>
|
>
|
||||||
<tbody
|
<tbody>
|
||||||
><tr class="border-b border-gray-600"
|
{#each rawData?.executives as item}
|
||||||
|
<tr class="border-b border-gray-600 text-sm sm:text-[1rem]"
|
||||||
><td
|
><td
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
||||||
>James Robert B. Quincey</td
|
>{item?.name}</td
|
||||||
>
|
>
|
||||||
<td
|
<td
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
||||||
>Chairman and Chief Executive Officer</td
|
>{item?.position}</td
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>John Murphy</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>President and Chief Financial Officer</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Manuel Arroyo Prieto</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Executive Vice President and Global chief Marketing Officer</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Henrique Braun</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Executive Vice President and President of International
|
|
||||||
Development</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Jennifer Kay Mann</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Executive Vice President and President of North America
|
|
||||||
Operating Unit</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Erin May</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Senior Vice President, Chief Accounting Officer and
|
|
||||||
Controller</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Stacy Lynn Apter</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Senior Vice President, Treasurer and Head of Corporate
|
|
||||||
Finance</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Nancy W. Quan</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Executive Vice President and Global Chief Technical and
|
|
||||||
Innovation Officer</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Neeraj Tolmare</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Senior Vice President and Chief Information Officer</td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="px-2 py-2.5 align-top font-semibold text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Robin Halpern</td
|
|
||||||
>
|
|
||||||
<td
|
|
||||||
class="px-2 py-2.5 align-top text-white xs:px-3 xs:py-3 sm:px-4"
|
|
||||||
>Vice President and Head of Investor Relations</td
|
|
||||||
>
|
|
||||||
</tr></tbody
|
|
||||||
>
|
>
|
||||||
|
</tr>
|
||||||
|
{/each}
|
||||||
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
{:else}
|
||||||
<h2
|
No executives data available.
|
||||||
class="mt-6 xs:mt-8 lg:mt-12 text-xl sm:text-2xl font-bold mb-5"
|
{/if}
|
||||||
>
|
<h2 class="mt-10 text-xl sm:text-2xl font-bold mb-5">
|
||||||
Latest SEC Filings
|
Latest SEC Filings
|
||||||
</h2>
|
</h2>
|
||||||
|
{#if rawData?.filings?.length > 0}
|
||||||
<table class="w-full">
|
<table class="w-full">
|
||||||
<thead
|
<thead
|
||||||
><tr class="border-b border-t border-gray-600 bg-primary"
|
><tr class="border-b border-t border-gray-600 bg-primary"
|
||||||
><th class="px-1 py-2 text-left text-white xs:px-2">Date</th>
|
><th class="px-1 py-2 text-left text-white xs:px-2">Date</th
|
||||||
|
>
|
||||||
<th class="px-1 py-2 text-left text-white xs:px-2">Type</th>
|
<th class="px-1 py-2 text-left text-white xs:px-2">Type</th>
|
||||||
<th class="px-1 py-2 text-left text-white xs:px-2">Title</th
|
<th class="px-1 py-2 text-left text-white xs:px-2">Title</th
|
||||||
></tr
|
></tr
|
||||||
></thead
|
></thead
|
||||||
>
|
>
|
||||||
<tbody
|
<tbody>
|
||||||
><tr class="border-b border-gray-600"
|
{#each rawData?.filings as item}
|
||||||
|
<tr class="border-b border-gray-600 text-sm sm:text-[1rem]"
|
||||||
><td
|
><td
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
||||||
>Dec 11, 2024</td
|
>{item?.date}</td
|
||||||
|
>
|
||||||
|
<td class="px-1 py-3 align-top text-white xs:px-2"
|
||||||
|
>{item?.type}</td
|
||||||
>
|
>
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">8-K</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
<td class="py-3 pl-1 align-top xs:px-2"
|
||||||
><a
|
><a
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000155278124000626/e24365_ko-8k.htm"
|
class="text-blue-400 sm:hover:text-white sm:hover:underline sm:hover:underline-offset-4"
|
||||||
|
href={item?.link}
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer">Current Report</a
|
rel="noopener noreferrer"
|
||||||
|
>{item?.title?.length > 50
|
||||||
|
? item?.title?.slice(0, 50) + "..."
|
||||||
|
: item?.title}</a
|
||||||
></td
|
></td
|
||||||
>
|
>
|
||||||
</tr><tr class="border-b border-gray-600"
|
</tr>
|
||||||
><td
|
{/each}
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
</tbody>
|
||||||
>Nov 27, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">144</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000196535324000360/xsl144X01/primary_doc.xml"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Filing</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Nov 7, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">144</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000194984624000652/xsl144X01/primary_doc.xml"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Filing</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Oct 24, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">10-Q</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000002134424000060/ko-20240927.htm"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Quarterly Report</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Oct 23, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">8-K</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000002134424000056/ko-20241023.htm"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Current Report</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Oct 17, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">8-K</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000002134424000051/ko-20241017.htm"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Current Report</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Aug 26, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">144</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000155278124000502/xsl144X01/primary_doc.xml"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Filing</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Aug 21, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">8-K</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000002134424000047/ko-20240821.htm"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Current Report</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Aug 21, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">144</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000195004724006367/xsl144X01/primary_doc.xml"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Filing</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr><tr class="border-b border-gray-600"
|
|
||||||
><td
|
|
||||||
class="whitespace-nowrap py-3 pr-1 align-top text-white xs:px-2"
|
|
||||||
>Aug 21, 2024</td
|
|
||||||
>
|
|
||||||
<td class="px-1 py-3 align-top text-white xs:px-2">144</td>
|
|
||||||
<td class="py-3 pl-1 align-top xs:px-2"
|
|
||||||
><a
|
|
||||||
href="https://www.sec.gov/Archives/edgar/data/21344/000195004724006356/xsl144X01/primary_doc.xml"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer">Filing</a
|
|
||||||
></td
|
|
||||||
>
|
|
||||||
</tr></tbody
|
|
||||||
>
|
|
||||||
</table>
|
</table>
|
||||||
|
{:else}
|
||||||
|
No SEC filings available.
|
||||||
|
{/if}
|
||||||
<div class="border-b border-gray-600 py-3 text-xl font-semibold">
|
<div class="border-b border-gray-600 py-3 text-xl font-semibold">
|
||||||
<a
|
<a
|
||||||
class="text-blue-400 sm:hover:text-white sm:hover:underline sm:hover:underline-offset-4"
|
class="text-blue-400 sm:hover:text-white sm:hover:underline sm:hover:underline-offset-4"
|
||||||
href="https://www.sec.gov/cgi-bin/browse-edgar?CIK=0000021344&count=100"
|
href={`https://www.sec.gov/cgi-bin/browse-edgar?CIK=${rawData?.cik}&count=100`}
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer">View All SEC Filings</a
|
rel="noopener noreferrer">View All SEC Filings</a
|
||||||
>
|
>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user