{"version":3,"file":"422.3860bbf7.js","mappings":"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","sources":["webpack://@finviz/website/./js/app/shared/components/Boxover.tsx","webpack://@finviz/website/./js/app/shared/components/ChartBoxover.tsx","webpack://@finviz/website/./js/app/shared/components/HoverChart.tsx","webpack://@finviz/website/./js/app/shared/components/QueryClientContext.tsx","webpack://@finviz/website/./js/app/shared/hover-chart.ts","webpack://@finviz/website/./js/main/components/ChipSwitch.tsx","webpack://@finviz/website/./js/main/components/SubMenu/SubMenu.tsx","webpack://@finviz/website/./js/main/components/SubMenu/SubMenuTabs.tsx","webpack://@finviz/website/./js/main/components/chart/Bar.tsx","webpack://@finviz/website/./js/main/components/chart/CartesianGrid.tsx","webpack://@finviz/website/./js/main/components/chart/ChartWrapper.tsx","webpack://@finviz/website/./js/main/components/chart/Cursor.tsx","webpack://@finviz/website/./js/main/components/chart/Tooltip.tsx","webpack://@finviz/website/./js/main/components/chart/XAxis.tsx","webpack://@finviz/website/./js/main/components/chart/YAxis.tsx","webpack://@finviz/website/./js/main/components/chart/constants.ts","webpack://@finviz/website/./js/main/components/line-stacked-bar-chart/ChartTooltip.tsx","webpack://@finviz/website/./js/main/components/line-stacked-bar-chart/types.ts","webpack://@finviz/website/./js/main/modules/insider-trading/components/Charts/utils.ts","webpack://@finviz/website/./js/main/modules/insider-trading/components/Charts/StackedBarChart.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/AllocationsOverTime.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/Charts/constants.ts","webpack://@finviz/website/./js/main/modules/insider-trading/components/IndividualManagersSection.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/DetailsSummary.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/HoldingsHeatmap.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/Layout.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/ManagerDetailsLayout.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/Navigation.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/components/TickerButton.tsx","webpack://@finviz/website/./js/main/modules/insider-trading/utils.ts"],"sourcesContent":["import * as React from 'react'\r\nimport * as ReactDOMServer from 'react-dom/server'\r\n\r\nconst BOXOVER_THEME = {\r\n default: { body: 'tooltip_bdy', header: 'tooltip_hdr' },\r\n chart: { body: 'hoverchart', header: 'tabchrthdr' },\r\n}\r\n\r\ninterface BoxoverProps {\r\n children: React.ReactNode\r\n\r\n /**\r\n * Which tooltip design to use\r\n *\r\n * @default default\r\n */\r\n theme?: keyof typeof BOXOVER_THEME\r\n\r\n /**\r\n * Tooltip header\r\n */\r\n header?: string\r\n\r\n /**\r\n * Tooltip body, can be any react node\r\n */\r\n body: React.ReactNode\r\n\r\n /**\r\n * Delay in ms to show the tooltip\r\n *\r\n * @default 300\r\n */\r\n delay?: number\r\n\r\n offsetX?: number\r\n offsetY?: number\r\n}\r\n\r\n/**\r\n * This component composes boxover and forwards `data-boxover` prop to children\r\n */\r\nexport function Boxover({\r\n children,\r\n theme = 'default',\r\n header,\r\n body,\r\n delay = 300,\r\n offsetX = 100,\r\n offsetY = 100,\r\n}: BoxoverProps) {\r\n const boxover = React.useMemo(\r\n () =>\r\n [\r\n `cssbody=[${BOXOVER_THEME[theme].body}]`,\r\n `cssheader=[${BOXOVER_THEME[theme].header}]`,\r\n header && `header=[${header}]`,\r\n `body=[${React.isValidElement(body) ? ReactDOMServer.renderToString(body) : body}]`,\r\n `delay=[${delay}]`,\r\n `offsetx=[${offsetX}]`,\r\n `offsety=[${offsetY}]`,\r\n ]\r\n .filter(Boolean)\r\n .join(' '),\r\n [theme, header, body, delay, offsetX, offsetY]\r\n )\r\n\r\n return React.Children.map(children, (child) =>\r\n React.isValidElement(child)\r\n ? React.cloneElement(child as React.ReactElement<{ 'data-boxover': string }>, {\r\n 'data-boxover': boxover,\r\n })\r\n : child\r\n ) as unknown as JSX.Element\r\n}\r\n","import * as React from 'react'\r\n\r\nimport { shortFormatNumber } from '../../../main/util'\r\nimport { Boxover } from './Boxover'\r\nimport { HoverChart } from './HoverChart'\r\n\r\nexport type ChartBoxoverEntry = {\r\n isDelisted?: boolean\r\n country: string\r\n company: string\r\n ticker: string\r\n industry: string\r\n marketCap?: number | null\r\n aum?: number | null\r\n}\r\n\r\ninterface Props {\r\n entry: ChartBoxoverEntry\r\n rowIndex?: number\r\n children: React.ReactElement\r\n offsetX?: number\r\n offsetY?: number\r\n}\r\n\r\nconst MOUSE_LEAVE_DEBOUNCE_MS = 250\r\n\r\n/**\r\n * Renders basic chart boxover for the stock ticker\r\n */\r\nexport function ChartBoxover({ entry, rowIndex = 0, children, offsetX, offsetY }: Props) {\r\n const [isMouseOver, setIsMouseOver] = React.useState(false)\r\n const mouseLeaveTimeoutRef = React.useRef(null)\r\n const clearMouseLeaveTimoutRef = React.useRef(() => {\r\n if (mouseLeaveTimeoutRef.current) {\r\n window.clearTimeout(mouseLeaveTimeoutRef.current)\r\n mouseLeaveTimeoutRef.current = null\r\n }\r\n })\r\n const mouseEventsRef = React.useRef({\r\n onMouseEnter: () => {\r\n clearMouseLeaveTimoutRef.current()\r\n setIsMouseOver(true)\r\n },\r\n onMouseLeave: () => {\r\n mouseLeaveTimeoutRef.current = window.setTimeout(() => {\r\n setIsMouseOver(false)\r\n }, MOUSE_LEAVE_DEBOUNCE_MS)\r\n },\r\n })\r\n\r\n const value = React.useMemo(() => {\r\n if (Number.isFinite(entry.aum)) {\r\n return 'AUM: ' + shortFormatNumber(entry.aum! * 1_000_000)\r\n }\r\n return shortFormatNumber(entry.marketCap ? entry.marketCap * 1_000_000 : null)\r\n }, [entry.marketCap, entry.aum])\r\n\r\n React.useEffect(\r\n () => () => {\r\n clearMouseLeaveTimoutRef.current()\r\n },\r\n []\r\n )\r\n\r\n const child = React.cloneElement(children, mouseEventsRef.current)\r\n\r\n if (!isMouseOver || entry.isDelisted) {\r\n return child\r\n }\r\n\r\n return (\r\n \r\n \r\n
\r\n {entry.company}\r\n {entry.industry} {entry.country} {value}\r\n
\r\n \r\n }\r\n delay={0}\r\n offsetX={offsetX ?? 50}\r\n offsetY={offsetY ?? (rowIndex < 10 ? 0 : -260)}\r\n >\r\n {child}\r\n \r\n )\r\n}\r\n","import * as React from 'react'\r\n\r\nimport * as utils from '../hover-chart'\r\n\r\nexport interface ImageProps\r\n extends React.DetailedHTMLProps, HTMLImageElement> {\r\n ticker: string\r\n}\r\n\r\nexport function HoverChart({ ticker, ...props }: ImageProps) {\r\n const referrerPolicy = utils.getReferrerPolicy()\r\n const dimensions = utils.getHoverChartDimensions()\r\n const url = utils.getHoverChartUrl(ticker, true)\r\n const srcSet = utils.getSrcSet(url)\r\n\r\n return \r\n}\r\n","import { DefaultOptions, MutationCache, QueryCache, QueryClient, QueryClientProvider } from '@tanstack/react-query'\r\nimport * as React from 'react'\r\nimport { ErrorBoundary } from 'react-error-boundary'\r\n\r\nimport { DefaultErrorBoundary } from '../../../main/components/error-view'\r\n\r\ninterface QueryClientConfig {\r\n queryCache?: QueryCache\r\n mutationCache?: MutationCache\r\n defaultOptions?: DefaultOptions\r\n}\r\n\r\ninterface QueryContextProps {\r\n queryOptions?: QueryClientConfig\r\n}\r\n\r\nexport function getQueryClient(queryOptions?: QueryClientConfig) {\r\n return new QueryClient({\r\n defaultOptions: {\r\n queries: {\r\n useErrorBoundary: true,\r\n refetchOnWindowFocus: false,\r\n ...queryOptions?.defaultOptions?.queries,\r\n },\r\n ...queryOptions?.defaultOptions,\r\n },\r\n ...queryOptions,\r\n })\r\n}\r\n\r\nexport function QueryClientContext({ children, queryOptions }: React.PropsWithChildren) {\r\n const client = React.useRef(getQueryClient(queryOptions))\r\n\r\n return (\r\n \r\n {children}\r\n \r\n )\r\n}\r\n\r\nexport function withQueryClientContext(\r\n Component: React.ComponentType,\r\n config?: QueryClientConfig\r\n): React.ComponentType {\r\n const hocComponent = (props: Props) => (\r\n \r\n \r\n \r\n )\r\n\r\n hocComponent.displayName = `withQueryClientContext(${Component.displayName ?? 'Component'})`\r\n\r\n return hocComponent\r\n}\r\n","import { HTMLAttributeReferrerPolicy } from 'react'\r\n\r\nimport { encodeQueryString } from '../queryString'\r\n\r\nconst DEFAULT_OVERLAYS =\r\n '&o[0][ot]=sma&o[0][op]=50&o[0][oc]=FF8F33C6&o[1][ot]=sma&o[1][op]=200&o[1][oc]=DCB3326D&o[2][ot]=patterns&o[2][op]=&o[2][oc]=000'\r\n\r\nexport function getHoverChartUrl(\r\n ticker: string,\r\n escaped: boolean = false,\r\n timeframe = FinvizSettings.hoverCharts?.stock?.timeframe,\r\n dateRange = FinvizSettings.hoverCharts?.stock?.dateRange\r\n): string {\r\n const theme = FinvizSettings.hasDarkTheme ? 'd' : undefined\r\n const overlays = FinvizSettings.hasUserPremium && FinvizSettings.hoverCharts?.stock?.patterns ? DEFAULT_OVERLAYS : ''\r\n const query = encodeQueryString({\r\n cs: 'm',\r\n t: ticker,\r\n tf: timeframe ?? 'd',\r\n ct: 'candle_stick',\r\n r: dateRange,\r\n tm: theme,\r\n })\r\n\r\n let imgUrl = `${FinvizSettings.nodeChartsDomain}/chart.ashx?${query}${overlays}`\r\n\r\n if (escaped) {\r\n // \"Escaping\" [ and ] because of how boxover.js works\r\n imgUrl = imgUrl.replace(/\\[/g, '[[').replace(/]/g, ']]')\r\n }\r\n return imgUrl\r\n}\r\n\r\nexport function getHoverChartDimensions() {\r\n switch (FinvizSettings.hoverCharts?.stock?.timeframe) {\r\n case 'i3':\r\n case 'i15':\r\n return { width: 584, height: 180 }\r\n case 'i5':\r\n return { width: 376, height: 180 }\r\n case 'd':\r\n if (FinvizSettings.hoverCharts?.stock?.patterns) return { width: 464, height: 230 }\r\n return { width: 324, height: 180 }\r\n default:\r\n return { width: 324, height: 180 }\r\n }\r\n}\r\n\r\nexport function getReferrerPolicy(): HTMLAttributeReferrerPolicy {\r\n return 'no-referrer-when-downgrade'\r\n}\r\n\r\nexport function getHoverChartImg(\r\n ticker: string,\r\n escaped: boolean = false,\r\n timeframe = FinvizSettings.hoverCharts?.stock?.timeframe,\r\n dateRange?: string\r\n) {\r\n const chartSize = getHoverChartDimensions()\r\n const referrerPolicy = getReferrerPolicy()\r\n const url = getHoverChartUrl(ticker, escaped, timeframe, dateRange)\r\n const srcSet = getSrcSet(url)\r\n const srcsetString = srcSet?.length ? ` srcset='${srcSet}'` : ''\r\n\r\n return {\r\n img: ``,\r\n ...chartSize,\r\n }\r\n}\r\n\r\nexport function getSrcSet(url: string) {\r\n // You must keep a space after , for refresh to work\r\n return `${url} 1x, ${url}&sf=2 2x`\r\n}\r\n","import classnames from 'classnames'\r\nimport * as React from 'react'\r\n\r\nimport { Button, ButtonComponentProps, ButtonProps } from './button'\r\nimport { Paragraph } from './typography'\r\n\r\ninterface Props {\r\n children: (React.ReactElement | null)[]\r\n label?: string\r\n size?: ButtonProps['size']\r\n rounding?: ButtonProps['rounding']\r\n}\r\n\r\nexport function ChipSwitch({ children, label, size, rounding }: Props) {\r\n return (\r\n
\r\n {label && (\r\n \r\n {label}\r\n \r\n )}\r\n\r\n {React.Children.map(children, (child: React.ReactElement | null) => {\r\n if (React.isValidElement(child) && child.type === Button) {\r\n return React.cloneElement(child, {\r\n size,\r\n rounding,\r\n theme: child.props.theme ?? 'chipTransparent',\r\n className: classnames(child.props.className, {\r\n // @todo - these style should be applied globally onto all chipTransparent buttons\r\n '!text-gray-600 dark:!text-gray-400': !child.props.disabled && !child.props.active,\r\n '!text-gray-800 dark:!text-white': !child.props.disabled && child.props.active,\r\n '!text-gray-400 ': child.props.disabled && !child.props.active,\r\n '!text-gray-400 !bg-gray-200 !bg-opacity-30 !border-gray-100 dark:!bg-gray-600 dark:!border-gray-500':\r\n child.props.disabled && child.props.active,\r\n }),\r\n })\r\n }\r\n\r\n return child\r\n })}\r\n
\r\n )\r\n}\r\n\r\nexport const ChipSwitchButton = Button\r\n","import classNames from 'classnames'\r\nimport { isRedesignEnabled } from 'finviz-charts/app/utils'\r\nimport * as React from 'react'\r\n\r\ninterface Props extends React.HTMLProps {\r\n leftContent?: React.ReactNode\r\n middleContent?: React.ReactNode\r\n rightContent?: React.ReactNode\r\n}\r\n\r\nexport function SubMenu({ leftContent, middleContent, rightContent, ...props }: Props) {\r\n return (\r\n
\r\n
\r\n \r\n {leftContent}\r\n
\r\n {middleContent &&
{middleContent}
}\r\n
{rightContent}
\r\n
\r\n \r\n )\r\n}\r\n","import { Link } from 'react-router-dom'\r\n\r\nimport { Button, ButtonSizeType } from '../button'\r\n\r\ninterface Props {\r\n items: Array<{ label: string; href: string; isActive: boolean; reloadDocument?: boolean }>\r\n size?: ButtonSizeType\r\n}\r\n\r\nexport function SubMenuTabs({ items, size = 'medium' }: Props) {\r\n return (\r\n
\r\n {items.map(({ label, href, isActive, reloadDocument }) => (\r\n \r\n {label}\r\n \r\n ))}\r\n
\r\n )\r\n}\r\n","import classNames from 'classnames'\r\nimport * as React from 'react'\r\nimport { Bar as RechartsBar, BarProps as RechartsBarProps, Rectangle } from 'recharts'\r\nimport { BarRectangleItem } from 'recharts/types/cartesian/Bar'\r\nimport { ActiveShape } from 'recharts/types/util/types'\r\n\r\nimport { ChartWrapperContext } from './ChartWrapper'\r\nimport { CHART_ITEM_COLORS, ChartItemColorType } from './constants'\r\n\r\ninterface ColorProps {\r\n color?: ChartItemColorType | ((value: ValueType | null, payload: PayloadType) => ChartItemColorType)\r\n}\r\n\r\ntype BarInnerProps = ColorProps &\r\n Omit & {\r\n payload?: PayloadType\r\n }\r\n\r\nexport function BarInner({ color = 'blue', ...props }: BarInnerProps) {\r\n const colorResult = typeof color === 'function' ? color(props.value as ValueType, props.payload!) : color\r\n const barColor = CHART_ITEM_COLORS[colorResult] ?? CHART_ITEM_COLORS.blue\r\n\r\n return \r\n}\r\n\r\ntype BarProps = ColorProps &\r\n React.PropsWithoutRef, 'color'>>\r\n\r\nexport class Bar extends React.Component<\r\n BarProps\r\n> {\r\n static getComposedData = RechartsBar.getComposedData\r\n static displayName = RechartsBar.displayName\r\n static contextType = ChartWrapperContext\r\n context!: React.ContextType\r\n\r\n static defaultProps = {\r\n ...RechartsBar.defaultProps,\r\n radius: [2, 2, 0, 0],\r\n activeBar: false,\r\n isAnimationActive: false,\r\n }\r\n\r\n render() {\r\n const { setActiveKey } = this.context\r\n const { color, shape = BarInner, ...props } = this.props\r\n\r\n return (\r\n >, {\r\n color,\r\n }) as ActiveShape)\r\n : undefined\r\n }\r\n onMouseEnter={() => {\r\n setActiveKey(props.dataKey as string)\r\n }}\r\n onMouseLeave={() => {\r\n setActiveKey(null)\r\n }}\r\n />\r\n )\r\n }\r\n}\r\n","import classNames from 'classnames'\r\nimport * as React from 'react'\r\nimport { CartesianGrid as RechartsCartesianGrid } from 'recharts'\r\n\r\nexport function CartesianGrid({\r\n vertical = false,\r\n ...props\r\n}: React.PropsWithoutRef>) {\r\n return (\r\n \r\n )\r\n}\r\n\r\nCartesianGrid.displayName = RechartsCartesianGrid.displayName\r\n","import * as React from 'react'\r\nimport { ResponsiveContainer } from 'recharts'\r\n\r\nexport const ChartWrapperContext = React.createContext<{\r\n isTooltipActive: boolean\r\n activeKey: string | null\r\n setActiveKey: (key: string | null) => void\r\n}>({\r\n isTooltipActive: true,\r\n activeKey: null,\r\n setActiveKey: () => {},\r\n})\r\n\r\ninterface ChartContextProps extends React.HTMLProps {\r\n isHoverHighlight?: boolean\r\n}\r\n\r\nexport function ChartContext({ isHoverHighlight = true, ...props }: React.PropsWithChildren) {\r\n const [isTooltipActive, setTooltipActive] = React.useState(false)\r\n const [activeKey, setActiveKey] = React.useState(null)\r\n\r\n const contextValue = React.useMemo(\r\n () => ({\r\n isTooltipActive,\r\n activeKey,\r\n setActiveKey: isHoverHighlight ? setActiveKey : () => {},\r\n }),\r\n [activeKey, isHoverHighlight, isTooltipActive]\r\n )\r\n\r\n return (\r\n setTooltipActive(true)}\r\n onMouseLeave={() => setTooltipActive(false)}\r\n >\r\n {props.children}\r\n \r\n )\r\n}\r\n\r\nexport function ChartWrapper({\r\n isHoverHighlight,\r\n ...props\r\n}: ChartContextProps & React.PropsWithChildren>) {\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n","import * as React from 'react'\r\nimport { Rectangle, RectangleProps } from 'recharts'\r\n\r\nimport { ChartWrapperContext } from './ChartWrapper'\r\n\r\ninterface CustomCursorProps extends Partial> {\r\n points?: [{ x: number; y: number }]\r\n}\r\n\r\nexport function CursorBar({\r\n numberOfDatapoints,\r\n points,\r\n x: givenX,\r\n y: givenY,\r\n ...props\r\n}: CustomCursorProps & { numberOfDatapoints: number | null }) {\r\n const { isTooltipActive } = React.useContext(ChartWrapperContext)\r\n\r\n if (!isTooltipActive) return null\r\n\r\n const cursorWidth = numberOfDatapoints ? props.width! / numberOfDatapoints : props.width!\r\n const x = givenX ?? points![0].x - cursorWidth / 2\r\n const y = givenY ?? points![0].y\r\n return (\r\n \r\n )\r\n}\r\n\r\nexport function CursorLine({ points, x: givenX, y: givenY, ...props }: CustomCursorProps) {\r\n const { isTooltipActive } = React.useContext(ChartWrapperContext)\r\n\r\n if (!isTooltipActive) return null\r\n\r\n const x = givenX ?? points![0].x - 1\r\n const y = givenY ?? points![0].y\r\n return \r\n}\r\n","import classNames from 'classnames'\r\nimport * as React from 'react'\r\nimport { Tooltip as RechartsTooltip } from 'recharts'\r\n\r\nimport { ChartWrapperContext } from './ChartWrapper'\r\nimport { CursorLine } from './Cursor'\r\nimport { CHART_ITEM_COLORS, ChartItemColorType } from './constants'\r\n\r\ntype TooltipPayload = {\r\n color?: string\r\n name?: string | number\r\n value?: ValueType\r\n unit?: React.ReactNode\r\n dataKey?: string | number\r\n payload?: PayloadType\r\n chartType?: string\r\n className?: string\r\n}\r\n\r\ntype TooltipValueFormatter = (\r\n value: ValueType,\r\n extra: {\r\n dataKey: string\r\n payload?: PayloadType & { dataKey: string }\r\n fullTooltipPayload: Array>\r\n }\r\n) => React.ReactNode\r\n\r\ninterface TooltipRowProps {\r\n isActive?: boolean\r\n label: React.ReactNode\r\n dataKey: string\r\n dataKeyPayload?: any\r\n fullTooltipPayload?: any\r\n indicator?: ChartItemColorType | JSX.Element\r\n formatValue?: TooltipValueFormatter\r\n indicatorClass?: string\r\n labelClass?: string\r\n valueClass?: string\r\n}\r\n\r\nexport function TooltipRow({\r\n isActive,\r\n indicator,\r\n label,\r\n dataKey,\r\n dataKeyPayload,\r\n fullTooltipPayload,\r\n formatValue,\r\n indicatorClass,\r\n labelClass,\r\n valueClass,\r\n}: TooltipRowProps) {\r\n return (\r\n <>\r\n
\r\n {!indicator || React.isValidElement(indicator) ? (\r\n indicator\r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n {label}\r\n \r\n
\r\n {formatValue?.(dataKeyPayload?.value, { dataKey, payload: dataKeyPayload ?? {}, fullTooltipPayload }) ??\r\n dataKeyPayload?.value}\r\n
\r\n \r\n )\r\n}\r\n\r\ninterface TooltipInnerProps extends React.ComponentProps {\r\n className?: string\r\n showLabel?: boolean\r\n formatLabel?: (value: any, payload?: Array>) => React.ReactNode\r\n formatValue?: TooltipValueFormatter\r\n}\r\n\r\nexport function TooltipInner({\r\n payload,\r\n label,\r\n formatLabel,\r\n formatValue,\r\n showLabel = !!label,\r\n ...props\r\n}: React.PropsWithChildren>) {\r\n const { isTooltipActive, activeKey } = React.useContext(ChartWrapperContext)\r\n\r\n return (\r\n \r\n {showLabel && (\r\n
\r\n {formatLabel?.(label, payload) ?? label}\r\n
\r\n )}\r\n\r\n
\r\n {React.Children.map(props.children, (child) => {\r\n if (!React.isValidElement(child) || child.type !== TooltipRow) return child\r\n\r\n const dataKeyPayload = payload?.find((payload) => payload.dataKey === child.props.dataKey)\r\n\r\n return React.cloneElement(child, {\r\n isActive: child.props.isActive ?? activeKey === child.props.dataKey,\r\n dataKeyPayload,\r\n fullTooltipPayload: payload,\r\n formatValue: child.props.formatValue ?? formatValue,\r\n } as TooltipRowProps)\r\n })}\r\n
\r\n \r\n )\r\n}\r\n\r\nexport class Tooltip extends React.Component<\r\n React.PropsWithChildren>\r\n> {\r\n static displayName = RechartsTooltip.displayName\r\n\r\n static defaultProps = {\r\n ...RechartsTooltip.defaultProps,\r\n offset: 40,\r\n position: { y: 4 },\r\n isAnimationActive: false,\r\n wrapperStyle: { outline: 'none', zIndex: 10 },\r\n className: 'min-w-70',\r\n cursor: ,\r\n }\r\n\r\n render() {\r\n const { className, showLabel, formatLabel: formatTitle, formatValue, children, ...props } = this.props\r\n\r\n return (\r\n \r\n className={className}\r\n formatLabel={formatTitle}\r\n formatValue={formatValue}\r\n showLabel={showLabel}\r\n >\r\n {children}\r\n \r\n }\r\n {...props}\r\n />\r\n )\r\n }\r\n}\r\n","import { format } from 'date-fns'\r\nimport { XAxis as RechartsXAxis } from 'recharts'\r\n\r\nimport { getDate } from '../../../app/header/utils'\r\n\r\nexport enum DateFormat {\r\n MonthSingleChar = 'MMMMM',\r\n MonthShort = 'MMM',\r\n MonthShortDayNum = 'MMM dd',\r\n MonthShortDayNumYearFull = 'MMM dd yyyy',\r\n}\r\n\r\nconst TICK_STYLE = {\r\n fontSize: 10,\r\n fontWeight: 400, // Different from YAxis\r\n fill: '',\r\n}\r\n\r\nexport function dateAxisFormatter({\r\n value,\r\n outFormat,\r\n parseAsNY = true,\r\n breakOnYear = false,\r\n}: {\r\n value: any\r\n outFormat: string\r\n parseAsNY?: boolean\r\n breakOnYear?: boolean\r\n}) {\r\n if (!Number.isFinite(new Date(value).getTime())) return ''\r\n\r\n const date = parseAsNY ? getDate(value) : new Date(value)\r\n\r\n if (breakOnYear && date.getMonth() === 0) {\r\n if (outFormat === DateFormat.MonthSingleChar) return date.getFullYear().toString().substring(2)\r\n return date.getFullYear().toString()\r\n }\r\n\r\n return format(date, outFormat)\r\n}\r\n\r\nexport class XAxis extends RechartsXAxis {\r\n static defaultProps = {\r\n ...RechartsXAxis.defaultProps,\r\n className: 'fill-gray-500 dark:fill-gray-300',\r\n tickLine: false,\r\n axisLine: false,\r\n dy: 5,\r\n tick: TICK_STYLE,\r\n dataKey: 'date',\r\n scale: 'time',\r\n type: 'number',\r\n interval: 'equidistantPreserveStart',\r\n }\r\n}\r\n","import * as React from 'react'\r\nimport { YAxis as RechartsYAxis } from 'recharts'\r\n\r\nimport { shortFormatNumber } from '../../util'\r\n\r\nexport class YAxis extends React.Component<\r\n Omit, 'tickCount'> & { tickCount?: number | null }\r\n> {\r\n static displayName = RechartsYAxis.displayName\r\n\r\n static defaultProps = {\r\n ...RechartsYAxis.defaultProps,\r\n className: 'fill-gray-500 dark:fill-gray-300',\r\n tickLine: false,\r\n axisLine: false,\r\n tick: {\r\n fontSize: 10,\r\n fontWeight: 500, // Different from XAxis\r\n fill: '',\r\n },\r\n tickFormatter: shortFormatNumber,\r\n }\r\n\r\n render() {\r\n return \r\n }\r\n}\r\n","export enum ChartItemColor {\r\n gray,\r\n lightGray,\r\n darkGray,\r\n blue,\r\n red,\r\n green,\r\n teal,\r\n purple,\r\n violet,\r\n emerald,\r\n orange,\r\n pink,\r\n lime,\r\n yellow,\r\n}\r\n\r\nexport type ChartItemColorType = keyof typeof ChartItemColor\r\n\r\nexport const CHART_ITEM_COLORS: Record = {\r\n gray: 'text-gray-200 dark:text-gray-700',\r\n lightGray: 'text-gray-400',\r\n darkGray: 'text-gray-700 dark:text-gray-300',\r\n blue: 'text-blue-400',\r\n red: 'text-red-400',\r\n green: 'text-green-400',\r\n teal: 'text-teal-400 dark:text-teal-300',\r\n purple: 'text-purple-400',\r\n violet: 'text-violet-400',\r\n emerald: 'text-emerald-400 dark:text-emerald-300',\r\n orange: 'text-orange-300',\r\n pink: 'text-pink-400',\r\n lime: 'text-lime-400 dark:text-lime-300',\r\n yellow: 'text-yellow-300 dark:text-yellow-200',\r\n}\r\n","import * as React from 'react'\r\nimport { NameType, Payload, ValueType } from 'recharts/types/component/DefaultTooltipContent'\r\n\r\nimport { shortFormatNumber } from '../../util'\r\nimport { TooltipInner, TooltipRow } from '../chart/Tooltip'\r\nimport { ChartItemColorType } from '../chart/constants'\r\nimport { LineChartTooltipSort } from './types'\r\n\r\ntype ChartTooltipProps = {\r\n activeKey?: string | null\r\n payload?: Payload[] | undefined\r\n isReversed?: boolean\r\n payloadSort?: keyof typeof LineChartTooltipSort\r\n valueFormatter?: (data: ValueType) => string\r\n}\r\nexport default function ChartTooltip({\r\n payload,\r\n payloadSort = 'default',\r\n isReversed = false,\r\n valueFormatter,\r\n}: ChartTooltipProps) {\r\n const items = React.useMemo(() => {\r\n if (!payload || payload.length === 0) return []\r\n\r\n if (LineChartTooltipSort[payloadSort] === LineChartTooltipSort.value) {\r\n return [...payload].sort((a, b) => Number(b.value ?? 0) - Number(a.value ?? 0))\r\n }\r\n return isReversed ? [...payload].reverse() : payload\r\n }, [payload, payloadSort, isReversed])\r\n\r\n const formatter = React.useCallback(\r\n (value: ValueType) => valueFormatter?.(value) ?? shortFormatNumber(value as number),\r\n [valueFormatter]\r\n )\r\n\r\n if (items.length === 0) return null\r\n\r\n return (\r\n \r\n {items.map((area) => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n","import * as React from 'react'\r\n\r\nimport { ColorVariant } from '../checkbox'\r\nimport { FinancialsRowDataType } from '../financials-table/types'\r\n\r\nexport enum View {\r\n bars,\r\n lines,\r\n}\r\n\r\nexport interface ChartProps {\r\n chartData: ChartData[]\r\n showTotal?: boolean\r\n visibleAreas: Array<\r\n Pick & {\r\n color: ColorVariant\r\n }\r\n >\r\n columnsCount: number\r\n barWidth?: number\r\n isFullWidth?: boolean\r\n}\r\n\r\nexport type ChartData = {\r\n year: string\r\n topKey: string\r\n bottomKey: string\r\n total: number\r\n} & Record\r\n\r\nexport enum LineChartTooltipSort {\r\n default = 'default',\r\n value = 'value',\r\n}\r\n\r\nexport type LineStackedBarChartProps = {\r\n data: FinancialsRowDataType[]\r\n yearKeys: string[]\r\n chartView: View\r\n isShowAll?: boolean\r\n isFullWidth?: boolean\r\n hasXAxis?: boolean\r\n isInView?: boolean\r\n hasBeenInView?: boolean\r\n lineChartTooltipSort?: keyof typeof LineChartTooltipSort\r\n emptyMessage?: React.ReactNode\r\n isEmpty?: boolean\r\n}\r\n","import { shortFormatNumber } from '../../../../util'\r\nimport { ChangeTypeEnum } from '../../constants'\r\n\r\nexport function tickFormatter(value?: number | null, type?: ChangeTypeEnum, fractions = 0) {\r\n const formattedNumber = shortFormatNumber(value, { fractions })\r\n if (type !== ChangeTypeEnum.Percentage) {\r\n return formattedNumber\r\n }\r\n return `${formattedNumber}%`\r\n}\r\n\r\nexport function formatQuarter(quarterString: string) {\r\n // This will be changed when BE changes querter format in DB\r\n return quarterString\r\n}\r\n","import * as React from 'react'\r\nimport { Cell, BarChart as RechartsBarChart, ResponsiveContainer } from 'recharts'\r\n\r\nimport { Bar } from '../../../../components/chart/Bar'\r\nimport { CartesianGrid } from '../../../../components/chart/CartesianGrid'\r\nimport { ChartContext } from '../../../../components/chart/ChartWrapper'\r\nimport { CursorBar } from '../../../../components/chart/Cursor'\r\nimport { Tooltip } from '../../../../components/chart/Tooltip'\r\nimport { XAxis } from '../../../../components/chart/XAxis'\r\nimport { YAxis } from '../../../../components/chart/YAxis'\r\nimport { ChartItemColorType } from '../../../../components/chart/constants'\r\nimport ChartTooltip from '../../../../components/line-stacked-bar-chart/ChartTooltip'\r\nimport { ChangeTypeEnum } from '../../constants'\r\nimport { STACKED_BAR_CHART_HEIGHT, STACKED_BAR_CHART_MARGIN, STACKED_BAR_LABELS_WIDTH } from './constants'\r\nimport { formatQuarter, tickFormatter } from './utils'\r\n\r\ninterface Props {\r\n chartData: Array<{ quarter: string; smallestSector: string | null } & Record>\r\n sectors: Array<{ sector: string; color: string }>\r\n type: ChangeTypeEnum\r\n}\r\n\r\nexport default function StackedBarChart({ chartData, sectors, type }: Props) {\r\n const [reverseTooltipDirection, setReverseTooltipDirection] = React.useState(true)\r\n\r\n return (\r\n \r\n \r\n {\r\n setReverseTooltipDirection(mouseEvent.clientX > window.innerWidth / 2)\r\n }}\r\n >\r\n tickFormatter(value, type)}\r\n width={STACKED_BAR_LABELS_WIDTH}\r\n domain={type === ChangeTypeEnum.Percentage ? [0, 100] : undefined}\r\n />\r\n formatQuarter(value)} />\r\n \r\n }\r\n content={ tickFormatter(+value!, type, 2)} isReversed />}\r\n />\r\n {sectors.map(({ sector, color }) => (\r\n \r\n {chartData.map(({ smallestSector }, index) => (\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n \r\n \r\n )\r\n}\r\n","import classNames from 'classnames'\r\nimport * as React from 'react'\r\n\r\nimport { Heading } from '../../../components'\r\nimport { ChipSwitch, ChipSwitchButton } from '../../../components/ChipSwitch'\r\nimport { CHART_ITEM_COLORS, ChartItemColorType } from '../../../components/chart/constants'\r\nimport { ChangeTypeEnum, SEGMENT_COLORS, SectorAllocation } from '../constants'\r\nimport StackedBarChart from './Charts/StackedBarChart'\r\n\r\ninterface Props {\r\n headingLabel: string\r\n sectorAllocations: SectorAllocation[]\r\n}\r\n\r\nexport function AllocationsOverTime({ headingLabel, sectorAllocations }: Props) {\r\n const [sectorAllocationOverTime, setSectorAllocationOverTime] = React.useState(ChangeTypeEnum.Usd)\r\n const chartDataQuarters = React.useMemo(() => {\r\n const dataByQuarters: Record<\r\n string,\r\n { quarter: string; sectors: Array<{ sector: string; usdAllocation: number; pctAllocation: number }> }\r\n > = {}\r\n\r\n sectorAllocations.forEach(({ quarter, sector, usdAllocation, pctAllocation }) => {\r\n dataByQuarters[quarter] ??= {\r\n quarter,\r\n sectors: [],\r\n }\r\n dataByQuarters[quarter].sectors.push({ sector, usdAllocation, pctAllocation })\r\n })\r\n\r\n return Object.values(dataByQuarters).sort((quarterA, quarterB) => {\r\n const [qA, yearA] = quarterA.quarter.split(' ')\r\n const [qB, yearB] = quarterB.quarter.split(' ')\r\n\r\n const valueA = Number(qA.replace('Q', '')) + Number(yearA) * 10\r\n const valueB = Number(qB.replace('Q', '')) + Number(yearB) * 10\r\n return valueA - valueB\r\n })\r\n }, [sectorAllocations])\r\n\r\n const { chartData, sectors } = React.useMemo(() => {\r\n const data = chartDataQuarters.map(({ quarter, sectors }) => {\r\n let smallestSector: { sector: string | null; value: number } = { sector: null, value: Number.MAX_SAFE_INTEGER }\r\n\r\n sectors.forEach(({ sector, usdAllocation, pctAllocation }) => {\r\n const value = sectorAllocationOverTime === ChangeTypeEnum.Usd ? usdAllocation : pctAllocation\r\n smallestSector = smallestSector.value > value ? { sector, value } : smallestSector\r\n })\r\n\r\n return {\r\n quarter,\r\n smallestSector: smallestSector.sector,\r\n ...sectors.reduce(\r\n (acc, { sector, usdAllocation, pctAllocation }) => ({\r\n ...acc,\r\n [sector]: sectorAllocationOverTime === ChangeTypeEnum.Usd ? usdAllocation : pctAllocation,\r\n }),\r\n {} as Record\r\n ),\r\n }\r\n }) as Array<{ quarter: string; smallestSector: string | null } & Record>\r\n\r\n return {\r\n chartData: data,\r\n sectors: chartDataQuarters\r\n .flatMap(({ sectors }) => sectors.map(({ sector }) => sector))\r\n .filter((sector, index, arr) => arr.indexOf(sector) === index)\r\n .map((sector, index) => ({\r\n sector,\r\n color: SEGMENT_COLORS[index % SEGMENT_COLORS.length],\r\n }))\r\n .sort((sectorA, sectorB) => data[0][sectorB.sector] - data[0][sectorA.sector]),\r\n }\r\n }, [chartDataQuarters, sectorAllocationOverTime])\r\n\r\n return (\r\n
\r\n
\r\n {headingLabel}\r\n \r\n {\r\n setSectorAllocationOverTime(ChangeTypeEnum.Usd)\r\n }}\r\n >\r\n $ Value\r\n \r\n {\r\n setSectorAllocationOverTime(ChangeTypeEnum.Percentage)\r\n }}\r\n >\r\n % of Portfolio\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n {sectors.map(({ sector, color }) => (\r\n
\r\n \r\n {sector}\r\n
\r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n","export const AREA_CHART_HEIGHT = 100\r\nexport const AREA_CHART_MARGIN = { top: 5, right: 5, bottom: 5, left: 5 }\r\nexport const AREA_CHART_STYLE = { cursor: 'pointer' }\r\n\r\n// Stacked bar chart constants\r\nexport const STACKED_BAR_CHART_MARGIN = { top: 1, right: 0, bottom: 0, left: 0 }\r\nexport const STACKED_BAR_CHART_HEIGHT = 400\r\nexport const STACKED_BAR_LABELS_WIDTH = 50\r\n","import classNames from 'classnames'\r\nimport React from 'react'\r\n\r\nimport { Button, Heading } from '../../../components'\r\nimport { Table, TableBody, TableCell, TableRow } from '../../../components/Table'\r\nimport { IndividualManagers, InsiderView } from '../constants'\r\nimport { useInsiderTradingRouter } from '../hooks/useInsiderTradingRouter'\r\n\r\ninterface Props {\r\n individualManagers?: IndividualManagers\r\n}\r\n\r\nconst SHARED_BUTTON_CLASSES = 'text-wrap border-none font-normal'\r\n\r\nfunction IndividualManagersSection({ individualManagers }: Props) {\r\n const insiderTradingRouter = useInsiderTradingRouter()\r\n\r\n if (!individualManagers) {\r\n return null\r\n }\r\n\r\n return (\r\n
\r\n
\r\n Individual Managers\r\n
\r\n {individualManagers.length === 0 ? (\r\n \r\n There aro no other managers reporting in the combined 13F filing.\r\n \r\n ) : (\r\n \r\n \r\n {individualManagers.map(({ name, investorId }, index) => (\r\n \r\n \r\n \r\n {name}\r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n )}\r\n
\r\n )\r\n}\r\n\r\nexport default IndividualManagersSection\r\n","import * as React from 'react'\r\n\r\nimport { Heading } from '../../../components'\r\nimport { ChipSwitch, ChipSwitchButton } from '../../../components/ChipSwitch'\r\nimport { RedGreenText } from '../../../components/RedGreenText'\r\nimport { Table, TableAlign, TableBody, TableCell, TableHead, TableHeader, TableRow } from '../../../components/Table'\r\nimport { formatNumber, shortFormatDollar, shortFormatNumber } from '../../../util'\r\nimport { ChangeTypeEnum, HoldingOptionTypeLabelMap, ManagerData, TopInvestmentType } from '../constants'\r\nimport IndividualManagersSection from './IndividualManagersSection'\r\nimport { TickerButton } from './TickerButton'\r\n\r\nenum TopInvestmentTypeEnum {\r\n Buys = 'buys',\r\n Sells = 'sells',\r\n}\r\n\r\nconst TopInvestmentLabels = {\r\n [TopInvestmentTypeEnum.Buys]: 'Top Buys',\r\n [TopInvestmentTypeEnum.Sells]: 'Top Sells',\r\n}\r\n\r\ninterface Props\r\n extends Pick {\r\n individualManagers?: ManagerData['individualManagers']\r\n}\r\n\r\nexport function DetailsSummary({\r\n latestSummary,\r\n individualManagers,\r\n topSellsPct,\r\n topSellsUsd,\r\n topBuysUsd,\r\n topBuysPct,\r\n}: Props) {\r\n const [topBuysChange, setTopBuysChange] = React.useState(ChangeTypeEnum.Usd)\r\n const [topSellsChange, setTopSellsChange] = React.useState(ChangeTypeEnum.Usd)\r\n\r\n const generalStatistics = React.useMemo(\r\n () => [\r\n ['Market Value - This Q', shortFormatDollar(latestSummary.totalSumOfUsdValue)],\r\n ['Market Value - Prev Q', shortFormatDollar(latestSummary.totalSumOfUsdValuePrevQ)],\r\n ['Number of Holdings', shortFormatNumber(latestSummary.totalCountOfInvestments, { fractions: 0 })],\r\n ['New Purchases', shortFormatNumber(latestSummary.countOfNewPurchased, { fractions: 0 })],\r\n ['Added To', shortFormatNumber(latestSummary.countOfAddedTo, { fractions: 0 })],\r\n ['Reduced', shortFormatNumber(latestSummary.countOfReduced, { fractions: 0 })],\r\n ['Top 10 Holdings %', formatNumber(latestSummary.percOfPortfolioOfTop10, { suffix: '%' })],\r\n ['Time Held Top 10', `${shortFormatNumber(latestSummary.timeHeldTop10)} Q`],\r\n ['Time Held Top 20', `${shortFormatNumber(latestSummary.timeHeldTop20)} Q`],\r\n ['Time Held All', `${shortFormatNumber(latestSummary.timeHeldAll)} Q`],\r\n ],\r\n [latestSummary]\r\n )\r\n\r\n return (\r\n
\r\n
\r\n\r\n
\r\n
\r\n {[TopInvestmentTypeEnum.Buys, TopInvestmentTypeEnum.Sells].map((topInvestmentType) => {\r\n const isBuys = topInvestmentType === TopInvestmentTypeEnum.Buys\r\n const isSells = topInvestmentType === TopInvestmentTypeEnum.Sells\r\n const isPercentage =\r\n (isBuys && topBuysChange === ChangeTypeEnum.Percentage) ||\r\n (isSells && topSellsChange === ChangeTypeEnum.Percentage)\r\n const topTradeChange = topInvestmentType === TopInvestmentTypeEnum.Buys ? topBuysChange : topSellsChange\r\n const setTopTradeChange =\r\n topInvestmentType === TopInvestmentTypeEnum.Buys ? setTopBuysChange : setTopSellsChange\r\n let topTrades: TopInvestmentType[] = []\r\n if (isBuys) {\r\n topTrades = isPercentage ? topBuysPct : topBuysUsd\r\n } else if (isSells) {\r\n topTrades = isPercentage ? topSellsPct : topSellsUsd\r\n }\r\n\r\n return (\r\n
\r\n
\r\n {TopInvestmentLabels[topInvestmentType]}\r\n \r\n {\r\n setTopTradeChange(ChangeTypeEnum.Usd)\r\n }}\r\n >\r\n $ Chng.\r\n $ Change\r\n \r\n {\r\n setTopTradeChange(ChangeTypeEnum.Percentage)\r\n }}\r\n >\r\n % Chng.\r\n % Change\r\n \r\n \r\n
\r\n \r\n \r\n \r\n Ticker\r\n \r\n \r\n Type\r\n \r\n \r\n Change\r\n \r\n \r\n \r\n {topTrades.map(({ ticker, name, value, putCall, boxoverData }, index) => (\r\n \r\n \r\n \r\n \r\n \r\n {HoldingOptionTypeLabelMap[putCall]}\r\n \r\n \r\n \r\n {Number.isFinite(value) && isPercentage\r\n ? formatNumber(value, { suffix: '%' })\r\n : shortFormatNumber(value)}\r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n )\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n General Statistics\r\n
\r\n \r\n \r\n {generalStatistics.map(([ticker, change], index) => (\r\n \r\n {ticker}\r\n {change}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n}\r\n","import * as React from 'react'\r\n\r\nimport { Map } from '../../../../app/maps/components/Map'\r\nimport { MAP_SUBTYPE_MANAGERS_FUNDS, MAP_TYPE_MANAGERS_FUNDS_WIDGET } from '../../../../app/maps/constants/constants'\r\nimport { SettingsScreener, SettingsScreenerDark } from '../../../../app/maps/constants/settings'\r\nimport { MapDataRoot } from '../../../../app/maps/types'\r\nimport { Heading } from '../../../components'\r\n\r\ninterface Props {\r\n data: MapDataRoot\r\n}\r\n\r\nconst MapSettings = FinvizSettings.hasDarkTheme ? SettingsScreenerDark : SettingsScreener\r\n\r\nexport function HoldingsHeatmap({ data }: Props) {\r\n return (\r\n
\r\n \r\n Quarterly % Change in Holdings\r\n \r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n","import classnames from 'classnames'\r\nimport * as React from 'react'\r\n\r\nimport { SubMenu } from '../../../components/SubMenu/SubMenu'\r\nimport { Navigation } from './Navigation'\r\n\r\nexport interface Props {\r\n isContainer?: boolean\r\n rightContent?: React.ReactNode\r\n middleContent?: React.ReactNode\r\n}\r\n\r\nexport default function Layout({\r\n children,\r\n isContainer = true,\r\n middleContent,\r\n rightContent,\r\n}: React.PropsWithChildren) {\r\n // Remove min-height from react root element which is set on BE because of CLS\r\n React.useEffect(() => {\r\n document.getElementById('root')?.style.removeProperty('min-height')\r\n }, [])\r\n\r\n return (\r\n // Screen loader has min-h-64 (Website/js/main/components/loading.tsx)\r\n
\r\n } middleContent={middleContent} rightContent={rightContent} />\r\n \r\n {children}\r\n
\r\n
\r\n )\r\n}\r\n","import { format, getQuarter, parseISO } from 'date-fns'\r\nimport * as React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nimport { Button, ButtonGroup, Select, Tooltip, TooltipTrigger, useTooltipState } from '../../../components'\r\nimport { InsiderView, InstOwnFiler } from '../constants'\r\nimport { useInsiderTradingRouter } from '../hooks/useInsiderTradingRouter'\r\nimport { getInvestorNameFromFiler } from '../utils'\r\nimport Layout from './Layout'\r\nimport type { Props as LayoutProps } from './Layout'\r\n\r\ninterface Props extends Pick {\r\n reportEndDates: string[]\r\n filer?: InstOwnFiler | null\r\n}\r\n\r\nexport function ManagerDetailsLayout({ children, reportEndDates, filer, isContainer }: React.PropsWithChildren) {\r\n const tooltip = useTooltipState({\r\n placement: 'bottom',\r\n })\r\n // This is temporary until select options are changed to use Link without reloadDocument\r\n const [tempReportEndDate, setTempReportEndDate] = React.useState()\r\n const insiderTradingRouter = useInsiderTradingRouter()\r\n const { getInsiderTradingLink, viewParams } = insiderTradingRouter\r\n const { isManagerView, isDetailsView, isHoldingsView } = React.useMemo(() => {\r\n const { view } = viewParams\r\n const isManagerView = [InsiderView.ManagerDetails, InsiderView.ManagerHoldings].includes(view)\r\n const isFundView = [InsiderView.FundDetails, InsiderView.FundHoldings].includes(view)\r\n const isDetailsView = [InsiderView.ManagerDetails, InsiderView.FundDetails].includes(view)\r\n const isHoldingsView = [InsiderView.ManagerHoldings, InsiderView.FundHoldings].includes(view)\r\n return { isManagerView, isFundView, isDetailsView, isHoldingsView }\r\n }, [viewParams])\r\n\r\n const reportEndDateItems = React.useMemo(\r\n () =>\r\n reportEndDates.map((reportEndDate) => {\r\n const parsedReportEndDate = parseISO(reportEndDate)\r\n return {\r\n value: reportEndDate,\r\n label: `${format(parsedReportEndDate, 'MM/dd/yyyy')} (Q${getQuarter(parsedReportEndDate)})`,\r\n href: getInsiderTradingLink({\r\n view: viewParams.view,\r\n params: { ...viewParams, reportEndDate },\r\n }),\r\n reloadDocument: true,\r\n }\r\n }),\r\n [reportEndDates, viewParams, getInsiderTradingLink]\r\n )\r\n\r\n const reportEndDate = React.useMemo(\r\n () => reportEndDates.find((d) => d === viewParams.reportEndDate) ?? reportEndDates[0],\r\n [reportEndDates, viewParams.reportEndDate]\r\n )\r\n\r\n const portfolioHighlightsButton = React.useMemo(() => {\r\n const buttonLabel = 'Portfolio Highlights'\r\n\r\n if (filer?.hasOwnHoldings === false) {\r\n return (\r\n \r\n )\r\n }\r\n\r\n return (\r\n \r\n {buttonLabel}\r\n \r\n )\r\n }, [tooltip, filer, getInsiderTradingLink, viewParams, isManagerView, isDetailsView])\r\n\r\n return (\r\n \r\n {portfolioHighlightsButton}\r\n \r\n Holdings\r\n \r\n \r\n }\r\n rightContent={\r\n Report End Date}\r\n aria-label=\"Report End Date\"\r\n value={tempReportEndDate ?? reportEndDate}\r\n items={reportEndDateItems}\r\n className=\"ml-2 w-36\"\r\n onChange={({ value }) => setTempReportEndDate(value)}\r\n />\r\n }\r\n isContainer={isContainer}\r\n >\r\n {children}\r\n \r\n )\r\n}\r\n","import * as React from 'react'\r\n\r\nimport { Badge } from '../../../components'\r\nimport { SubMenuTabs } from '../../../components/SubMenu/SubMenuTabs'\r\nimport { INSIDER_VIEW_LABELS, InsiderView } from '../constants'\r\nimport { useInsiderTradingRouter } from '../hooks/useInsiderTradingRouter'\r\n\r\nconst MENU_TABS: Array = [InsiderView.Index, InsiderView.Managers, InsiderView.Funds]\r\nconst MENU_TABS_MAP = {\r\n [InsiderView.Managers]: InsiderView.Managers,\r\n [InsiderView.ManagerDetails]: InsiderView.Managers,\r\n [InsiderView.ManagerHoldings]: InsiderView.Managers,\r\n [InsiderView.Funds]: InsiderView.Funds,\r\n [InsiderView.FundDetails]: InsiderView.Funds,\r\n [InsiderView.FundHoldings]: InsiderView.Funds,\r\n}\r\nconst MANAGER_FUNDS_VIEWS = [\r\n InsiderView.Managers,\r\n InsiderView.ManagerDetails,\r\n InsiderView.ManagerHoldings,\r\n InsiderView.Funds,\r\n InsiderView.FundDetails,\r\n InsiderView.FundHoldings,\r\n]\r\n\r\nexport function Navigation() {\r\n const insiderTradingRouter = useInsiderTradingRouter()\r\n const activeView = (insiderTradingRouter.viewParams.view as InsiderView) || InsiderView.Index\r\n const isIndexPage = activeView === InsiderView.Index\r\n const menuItems = React.useMemo(\r\n () =>\r\n MENU_TABS.map((view) => ({\r\n label: INSIDER_VIEW_LABELS[view],\r\n href: insiderTradingRouter.getInsiderTradingLink({ view }),\r\n isActive: isIndexPage\r\n ? view === InsiderView.Index\r\n : MENU_TABS_MAP[activeView as keyof typeof MENU_TABS_MAP] === view,\r\n reloadDocument: true,\r\n })),\r\n [activeView, insiderTradingRouter, isIndexPage]\r\n )\r\n\r\n return (\r\n <>\r\n \r\n {!isIndexPage && MANAGER_FUNDS_VIEWS.includes(activeView) ? (\r\n \r\n Beta\r\n \r\n ) : null}\r\n \r\n )\r\n}\r\n","import classname from 'classnames'\r\nimport * as React from 'react'\r\n\r\nimport { ChartBoxover } from '../../../../app/shared/components/ChartBoxover'\r\nimport { Button, ButtonComponentProps, Tag, Tooltip, TooltipTrigger, useTooltipState } from '../../../components'\r\nimport { HoldingOptionType, HoldingOptionTypeLabelMap, TopInvestmentType } from '../constants'\r\n\r\ninterface Props extends Pick, ButtonComponentProps {\r\n className?: string\r\n putCall?: HoldingOptionType\r\n}\r\n\r\nexport function TickerButton({ ticker, name, putCall, boxoverData, className, ...props }: Props) {\r\n const tooltipState = useTooltipState({ placement: 'bottom-start' })\r\n const button = (\r\n \r\n {ticker ?? '-'}{' '}\r\n {putCall && [HoldingOptionType.Put, HoldingOptionType.Call].includes(putCall) ? (\r\n {HoldingOptionTypeLabelMap[putCall]}\r\n ) : null}\r\n \r\n )\r\n\r\n if (!boxoverData) {\r\n return (\r\n <>\r\n \r\n {button}\r\n \r\n \r\n {name ?? ticker ?? '-'}\r\n \r\n \r\n )\r\n }\r\n\r\n return (\r\n \r\n {button}\r\n \r\n )\r\n}\r\n","import { InstOwnFiler, InvestorType } from './constants'\r\n\r\nexport function getQuarterAndYear(period: string) {\r\n const year = period.substring(0, 4)\r\n const quarter = period.substring(4, 6)\r\n\r\n return { quarter, year }\r\n}\r\n\r\nexport function getInvestorNameFromFiler(filer?: InstOwnFiler | null) {\r\n if (!filer) return '-'\r\n switch (filer.investorType) {\r\n case InvestorType.Fund:\r\n return filer.seriesName ?? filer.filerName ?? '-'\r\n case InvestorType.Manager:\r\n return filer.filerName ?? '-'\r\n case InvestorType.OtherManager:\r\n return filer.otherManagerName ?? '-'\r\n }\r\n}\r\n"],"names":["BOXOVER_THEME","default","body","header","chart","Boxover","_ref","children","theme","delay","offsetX","offsetY","boxover","React","ReactDOMServer","filter","Boolean","join","map","child","MOUSE_LEAVE_DEBOUNCE_MS","ChartBoxover","entry","rowIndex","isMouseOver","setIsMouseOver","mouseLeaveTimeoutRef","clearMouseLeaveTimoutRef","current","window","clearTimeout","mouseEventsRef","onMouseEnter","onMouseLeave","setTimeout","value","Number","isFinite","aum","shortFormatNumber","marketCap","isDelisted","_jsx","_jsxs","_Fragment","HoverChart","ticker","company","industry","country","props","referrerPolicy","utils","dimensions","url","srcSet","src","getQueryClient","queryOptions","_queryOptions$default","QueryClient","defaultOptions","queries","useErrorBoundary","refetchOnWindowFocus","QueryClientContext","client","QueryClientProvider","ErrorBoundary","FallbackComponent","DefaultErrorBoundary","withQueryClientContext","Component","config","_Component$displayNam","hocComponent","displayName","DEFAULT_OVERLAYS","getHoverChartUrl","_FinvizSettings$hover","_FinvizSettings$hover2","_FinvizSettings$hover3","escaped","arguments","length","undefined","timeframe","FinvizSettings","hoverCharts","stock","dateRange","hasDarkTheme","overlays","hasUserPremium","patterns","query","encodeQueryString","cs","t","tf","ct","r","tm","imgUrl","nodeChartsDomain","replace","getHoverChartDimensions","_FinvizSettings$hover4","_FinvizSettings$hover5","width","height","getReferrerPolicy","getHoverChartImg","_FinvizSettings$hover6","chartSize","getSrcSet","img","ChipSwitch","label","size","rounding","className","Paragraph","_child$props$theme","type","Button","classnames","disabled","active","ChipSwitchButton","SubMenu","leftContent","middleContent","rightContent","classNames","isRedesignEnabled","SubMenuTabs","items","_ref2","href","isActive","reloadDocument","as","Link","to","BarInner","_CHART_ITEM_COLORS$co","color","colorResult","payload","barColor","CHART_ITEM_COLORS","blue","Rectangle","Bar","constructor","_defineProperty","render","setActiveKey","this","context","shape","RechartsBar","fill","dataKey","getComposedData","ChartWrapperContext","defaultProps","radius","activeBar","isAnimationActive","CartesianGrid","vertical","RechartsCartesianGrid","stroke","strokeDasharray","isTooltipActive","activeKey","ChartContext","isHoverHighlight","setTooltipActive","contextValue","Provider","ChartWrapper","ResponsiveContainer","CursorBar","numberOfDatapoints","points","x","givenX","y","givenY","cursorWidth","CursorLine","TooltipRow","_CHART_ITEM_COLORS","_formatValue","indicator","dataKeyPayload","fullTooltipPayload","formatValue","indicatorClass","labelClass","valueClass","TooltipInner","_formatLabel","formatLabel","showLabel","_child$props$isActive","_child$props$formatVa","find","Tooltip","formatTitle","RechartsTooltip","content","offset","position","wrapperStyle","outline","zIndex","cursor","DateFormat","dateAxisFormatter","outFormat","parseAsNY","breakOnYear","Date","getTime","date","getDate","getMonth","MonthSingleChar","getFullYear","toString","substring","format","XAxis","RechartsXAxis","tickLine","axisLine","dy","tick","fontSize","fontWeight","scale","interval","YAxis","RechartsYAxis","tickFormatter","gray","lightGray","darkGray","red","green","teal","purple","violet","emerald","orange","pink","lime","yellow","ChartTooltip","payloadSort","isReversed","valueFormatter","LineChartTooltipSort","sort","a","b","_b$value","_a$value","reverse","formatter","_valueFormatter","area","name","View","fractions","formattedNumber","ChangeTypeEnum","Percentage","StackedBarChart","chartData","sectors","reverseTooltipDirection","setReverseTooltipDirection","STACKED_BAR_CHART_HEIGHT","RechartsBarChart","data","margin","STACKED_BAR_CHART_MARGIN","stackOffset","onMouseMove","_","mouseEvent","clientX","innerWidth","orientation","textAnchor","STACKED_BAR_LABELS_WIDTH","domain","allowEscapeViewBox","reverseDirection","sector","stackId","_ref3","index","smallestSector","Cell","AllocationsOverTime","headingLabel","sectorAllocations","sectorAllocationOverTime","setSectorAllocationOverTime","Usd","chartDataQuarters","dataByQuarters","forEach","_dataByQuarters$quart","quarter","usdAllocation","pctAllocation","push","Object","values","quarterA","quarterB","qA","yearA","split","qB","yearB","MAX_SAFE_INTEGER","_ref4","reduce","acc","_ref5","flatMap","_ref6","_ref7","arr","indexOf","SEGMENT_COLORS","sectorA","sectorB","Heading","level","onClick","_ref8","AREA_CHART_HEIGHT","AREA_CHART_MARGIN","top","right","bottom","left","AREA_CHART_STYLE","SHARED_BUTTON_CLASSES","individualManagers","insiderTradingRouter","useInsiderTradingRouter","Table","TableBody","investorId","TableRow","TableCell","getInsiderTradingLink","view","InsiderView","ManagerDetails","params","reportEndDate","viewParams","align","title","TopInvestmentTypeEnum","TopInvestmentLabels","Buys","Sells","DetailsSummary","latestSummary","topSellsPct","topSellsUsd","topBuysUsd","topBuysPct","topBuysChange","setTopBuysChange","topSellsChange","setTopSellsChange","generalStatistics","shortFormatDollar","totalSumOfUsdValue","totalSumOfUsdValuePrevQ","totalCountOfInvestments","countOfNewPurchased","countOfAddedTo","countOfReduced","formatNumber","percOfPortfolioOfTop10","suffix","timeHeldTop10","timeHeldTop20","timeHeldAll","topInvestmentType","isBuys","isSells","isPercentage","topTradeChange","setTopTradeChange","topTrades","TableHead","TableHeader","TableAlign","Left","Right","putCall","boxoverData","TickerButton","HoldingOptionTypeLabelMap","RedGreenText","change","IndividualManagersSection","MapSettings","SettingsScreenerDark","SettingsScreener","HoldingsHeatmap","Map","isFetchingPerf","isLoadingData","MAP_TYPE_MANAGERS_FUNDS_WIDGET","subtype","MAP_SUBTYPE_MANAGERS_FUNDS","dataHash","hash","legend","zoom","settings","Layout","isContainer","_document$getElementB","document","getElementById","style","removeProperty","Navigation","ManagerDetailsLayout","reportEndDates","filer","tooltip","useTooltipState","placement","tempReportEndDate","setTempReportEndDate","isManagerView","isDetailsView","isHoldingsView","ManagerHoldings","includes","isFundView","FundDetails","FundHoldings","reportEndDateItems","parsedReportEndDate","parseISO","getQuarter","_reportEndDates$find","d","portfolioHighlightsButton","buttonLabel","hasOwnHoldings","TooltipTrigger","state","getInvestorNameFromFiler","ButtonGroup","hasDivider","hasBorder","Select","onChange","MENU_TABS","Index","Managers","Funds","MENU_TABS_MAP","MANAGER_FUNDS_VIEWS","activeView","isIndexPage","menuItems","INSIDER_VIEW_LABELS","Badge","tooltipState","button","classname","HoldingOptionType","Put","Call","Tag","tabIndex","getQuarterAndYear","period","year","_filer$seriesName","_filer$filerName","_filer$otherManagerNa","investorType","InvestorType","Fund","seriesName","filerName","Manager","OtherManager","otherManagerName"],"sourceRoot":""}