import { writable } from 'svelte/store'; import { write } from 'xlsx'; // Function to set cache data for a specific tickerID export const setCache = (key, data, name) => { clientSideCache.update(cache => { return { ...cache, [key]: { ...cache[key], [name]: data } }; }); }; export const getCache = (key, name) => { let cacheData; clientSideCache.subscribe(cache => { cacheData = cache[key]?.[name]; }); return cacheData; }; export const showCookieConsent = writable((false)); export const executiveClicked = writable((false)); export const secFilingsClicked = writable((false)); export const discordMembers = writable( (308)); export const newAvatar = writable( ("")); export const displayCompanyName = writable( ("")); export const currentPrice = writable( (0)); export const currentPortfolioPrice = writable( (0)); export const realtimePrice = writable( (0)); export const priceIncrease = writable((false)); export const isCrosshairMoveActive = writable((true)); export const twitchStatus = writable((false)); export const clientSideCache = writable({}); export const screenWidth = writable( (0)); export const globalForm = writable(> []); export const trendingList = writable(> []); export const userRegion = writable( ("")); export const loginData = writable(({})); export const replyCommentClicked = writable(({})); export const editCommentClicked = writable(({})); export const fundamentalAnalysisComponent = writable((false)); export const priceAnalysisComponent = writable((false)); export const revenueSegmentationComponent = writable((false)); export const trendAnalysisComponent = writable((false)); export const shareStatisticsComponent = writable((false)); export const shareholderComponent = writable((false)); export const retailVolumeComponent = writable((false)); export const darkPoolComponent = writable((false)); export const enterpriseComponent = writable((false)); export const varComponent = writable((false)); export const sentimentComponent = writable((false)); export const analystEstimateComponent = writable((false)); export const marketMakerComponent = writable((false)); export const strategyId = writable( ("")); export const articleId = writable( ("")); export const traded = writable((false)); export const previousPage = writable( ("")); export const oauthState = writable( ("")); export const oauthVerifier = writable( ("")); export const oauthProvider = writable( ("")); export const switchWatchList = writable((false)); export const cachedPosts = writable(> {}); export const currentPagePosition = writable( (0)); export const postVote = writable(> {}); export const similarTickerClicked = writable((false)); export const isScrollingUp = writable((true)); export const isWeekend = writable((false)); export const isBeforeMarketOpen = writable((false)); export const isAfterMarketClose = writable((false)); export const isOpen = writable((false)); export const commentIdDeleted = writable( ("")); export const postIdDeleted = writable( ("")); export const commentAdded = writable( ("")); export const commentUpdated = writable( ("")); export const scrollToComment = writable( ("")); export const searchBarData = writable([]); export const stockTicker = writable( ("")); export const etfTicker = writable( ("")); export const cryptoTicker = writable( ("")); export const assetType = writable( ("")); export const hedgeFundsCIK = writable( ("")); export const linkTitle = writable( ("")); export const numberOfUnreadNotification = writable( (0)); export const openPriceAlert = writable((false)); export const sidebarOpen = writable((false)); export const sidebarExpanded = writable((true)); export const sidebarOpenField = writable((false)); export const tagList = writable( [ { name: "Meme", color: '#105488', }, { name: "News", color: '#c78900', }, { name: "Discussion", color: '#800080', }, { name: "Gain", color: '#19c41d', }, { name: "Loss", color: '#FF0000', }, { name: 'Chart', color: '#FF4500', }, { name: 'DD', color: '#365B8C', }, { name: 'YOLO', color: '#56B6DF', } ]);