{"version":3,"file":"static/js/main-4dffeee1.2e85439f.js","mappings":"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","sources":["components/common/TradingProtocol.tsx","components/common/Sortable.tsx","components/common/FormControlLoader.jsx","components/clo-managers/tabs/overview/TotalStatisticsItem.tsx","components/common/DragFileZone.tsx","components/common/Tooltip.tsx","components/clo-managers/tabs/overview/StatisticsItem.tsx","components/common/InfiniteScrollLoader.tsx","components/common/RejectReasonPopup.tsx","components/common/ClickOutside.tsx","components/common/AlertsButton.tsx","components/common/IntroCarousel.jsx","components/common/FlexRow.tsx","components/common/LazyLoad.tsx","components/common/MyBwicIcon.tsx","components/common/PxTalk/PxTalkNormalizationTable.jsx","components/common/UploadFileButton.tsx","components/common/Badge.tsx","components/common/InfoTooltip.tsx","components/common/PxTalk/PxTalkRow.jsx","components/common/PxTalk/ChangePxTalk.tsx","components/clo-managers/tabs/overview/AumStatisticsItem.tsx","components/common/PxTalk/PxTalkListButton.jsx","components/common/SearchInput.jsx","components/common/EmailInfoTooltip.tsx","components/common/Preloader.tsx","components/common/SortDropdown.tsx","components/common/Color.tsx","components/common/LiveBiddingTooltipContent.tsx","components/common/HorizontalSlider.tsx","components/common/BloombergLink.tsx","components/common/DailyTradingLimitDialog.tsx","components/common/EmptyPlaceholder.tsx","components/common/EmailChipList.jsx","components/common/FavoriteButton.tsx","components/common/UserStatusDetails.tsx","components/common/CopyToClipboard.tsx","components/clo-managers/types/InvestmentTeamColumn.ts","components/common/TradedPositionsCountBadge.tsx","components/common/ParsedBwicLabel.tsx","components/bwic-rules/BwicRulesPanel.tsx","components/common/BwicViewLink.tsx","components/common/SlideDownPanel.tsx","components/common/Player.tsx","components/common/SelectBrokerDealerPopup.tsx","components/common/SameDayBwicIcon.tsx","components/common/ChangeColor.jsx","components/clo-managers/tabs/deals/hooks.ts","components/clo-managers/tabs/deals/DealsTickerButton.tsx","components/clo-managers/tabs/deals/columns.tsx","components/common/IntexLink.tsx","components/common/BwicRulesPseudoLink.tsx","components/common/ScrollIntoView.tsx","components/common/PxTalk/EvalKTalkLabel.tsx","components/common/Pluralize.tsx","components/common/BwicMonitorLookupLink.tsx","components/common/IntersectionObsereverProvider.tsx","components/clients/companies/control-panel/TradingLimitDescription.tsx","components/clients/companies/control-panel/TradingLimitPanelContent.tsx","components/clients/companies/control-panel/ClientsControlPanel.tsx","components/clients/companies/BrokerDealerAgreementStatusLabel.tsx","components/clients/companies/AgreementActionButtons.tsx","components/clients/companies/CurrencyConversion.tsx","components/clients/companies/clients-filter/ClientsFilterOptions.ts","components/clients/companies/clients-filter/ClientsFilter.tsx","components/clients/companies/clients-filter/useClientsFilter.ts","components/clients/companies/Clients.tsx","components/clients/companies/settlement-account/ClientsSettlementAccounts.tsx","components/clients/companies/ClientsView.tsx","components/clo-managers/CloManagerLink.tsx","components/common/ImageLoader.tsx","components/common/SecurityLastTradedDate.tsx","components/common/DocumentBodyPortal.tsx","components/common/FollowUp.tsx","components/common/SupportInformation.tsx","components/common/BwicStatusTimerLabel.tsx","components/bwic-rules/sections/BwicRulesSectionRow.tsx","components/bwic-rules/sections/BwicRulesStartEndTime.tsx","components/bwic-rules/BwicRulesSection.tsx","components/bwic-rules/bwic-types/BwicRulesParsed.tsx","components/bwic-rules/sections/BwicRulesSectionGeneral.tsx","components/bwic-rules/CutOffReminder.tsx","components/bwic-rules/sections/BwicRulesStage.tsx","components/bwic-rules/sections/BwicRulesSectionJumpBall.tsx","components/bwic-rules/sections/BwicRulesSectionOpenBidding.tsx","components/bwic-rules/sections/BwicRulesTopX.tsx","components/bwic-rules/sections/BwicRulesBestFootForward.tsx","components/bwic-rules/bwic-types/BwicRulesMain.tsx","components/bwic-rules/BwicRules.tsx","components/common/Support.jsx","components/clo-managers/tabs/overview/StatisticsChart.tsx","components/common/PxTalk/MembersList.tsx","components/common/PxTalk/PxTalkList.tsx","components/common/OnHoverTooltip.tsx","components/common/JoditEditor.tsx","components/common/TickerButton.jsx","components/common/SecuritiesGridFlaggedPopup.tsx","components/common/Timer.tsx","components/common/Clamp.jsx","components/common/BorderHighlightAnimation.tsx","components/common/RevertBidButton.tsx","components/common/CollapsablePanel.tsx","components/common/BwicStatusLabel.tsx","components/common/AdaptiveHorizontalSlider.tsx","components/clients/companies/ViewSettlementAgentCommission.tsx","components/clo-managers/tabs/overview/constants.ts","components/common/Relative.jsx","components/bwic-rules/BwicTextRulesPanel.tsx","components/clo-managers/CloManagerAlertsButton.tsx","components/clo-managers/CloManagerLabels.tsx","components/clo-managers/CloManagersNavItem.tsx","components/clo-managers/CloManagersSelectionPanel.tsx","components/clo-managers/cloManagersContext.ts","components/clo-managers/scheduleMeetingPopup/columns.tsx","components/clo-managers/scheduleMeetingPopup/ScheduleMeetingPreview.tsx","components/clo-managers/scheduleMeetingPopup/ScheduleMeetingPopup.tsx","components/clo-managers/scheduleMeetingPopup/useRequestScheduleMeeting.ts","components/clo-managers/Header.tsx","components/clo-managers/form/AdditionalInformation.tsx","components/clo-managers/form/ESGConsiderations.tsx","components/clo-managers/form/ManagerPresentationUpload.tsx","components/clo-managers/form/ManagerPresentations.tsx","components/clo-managers/form/ContactInformation.tsx","components/clo-managers/tabs/cloTeam/investment-team.columns.tsx","components/clo-managers/form/Contacts.tsx","components/clo-managers/form/CompanyProfile.tsx","components/clo-managers/form/CloSystemInfrastructure.tsx","components/clo-managers/CloManagersEdit.tsx","components/clo-managers/CloManagerValidationSchema.ts","components/clo-managers/tabs/overview/Statistics.tsx","components/clo-managers/tabs/overview/charts/ShortLongDatedDealsFilter.tsx","components/clo-managers/tabs/overview/charts/CloManagerArrangerStatsBarChart.tsx","components/clo-managers/tabs/overview/charts/CloManagerArrangerStatsWidget.tsx","components/clo-managers/tabs/overview/charts/CloManagerTrusteeStatsBarChart.tsx","components/clo-managers/tabs/overview/charts/CloManagerTrusteeStatsWidget.tsx","components/clo-managers/tabs/overview/Overview.tsx","components/clo-managers/tabs/deals/DealsControlPanel.tsx","components/clo-managers/tabs/deals/Deals.tsx","components/clo-managers/tabs/cloTeam/CloTeam.tsx","components/clo-managers/tabs/sections/ESGConsiderations.tsx","components/clo-managers/tabs/sections/ManagerPresentations.tsx","components/clo-managers/tabs/sections/KeyConsiderations.tsx","components/clo-managers/tabs/sections/CloSystemInrastructure.tsx","components/clo-managers/tabs/AdditionalInformation.tsx","components/clo-managers/tabs/analytics/General.tsx","components/clo-managers/tabs/analytics/ViewedTabs.tsx","components/clo-managers/tabs/analytics/clientsActivity/ClientsActivityWidget.tsx","components/clo-managers/tabs/analytics/ProfileViewHistoryPopover/ProfileViewHistoryTabs.ts","components/clo-managers/tabs/analytics/ProfileViewHistoryPopover/OverviewTab.tsx","components/clo-managers/tabs/analytics/ProfileViewHistoryPopover/ContactsTab.tsx","components/clo-managers/tabs/analytics/ProfileViewHistoryPopover/PresDownloadedTab.tsx","components/clo-managers/tabs/analytics/ProfileViewHistoryPopover/ProfileViewHistoryPopover.tsx","components/clo-managers/tabs/analytics/profileViewHistory/profileViewHistory.columns.tsx","components/clo-managers/tabs/analytics/profileViewHistory/ProfileViewHistoryWidget.tsx","components/clo-managers/tabs/analytics/Analytics.tsx","components/clo-managers/CloManagersDetails.tsx","components/clo-managers/CloManagerAlertsPopup.tsx","components/clo-managers/CloManagers.tsx"],"sourcesContent":["import { InfoTooltip } from './InfoTooltip';\r\n\r\ninterface Props {\r\n isDirectBidding: boolean;\r\n isAllToAll: boolean;\r\n infoTooltipVisible?: boolean;\r\n}\r\n\r\nexport const TradingProtocol = ({ isDirectBidding, isAllToAll, infoTooltipVisible }: Props) => {\r\n let text = '';\r\n let tooltip = '';\r\n\r\n if (isAllToAll) {\r\n text = \"All-to-All\";\r\n tooltip = \"All-to-All(anonymous) BWIC. Only on-platform members approved to All-to-All trading are able to participate on a BWIC.\";\r\n } else if (isDirectBidding) {\r\n text = \"DirectBidding™\";\r\n tooltip = \"DirectBidding™ BWIC. Invited Broker-Dealer members and Buy-Side members approved to DirectBidding™ are able to participate on a BWIC.\";\r\n }\r\n\r\n if (text && tooltip) {\r\n return (\r\n <>\r\n Trading Protocol: {text}\r\n {infoTooltipVisible && }\r\n \r\n );\r\n }\r\n\r\n return null;\r\n}\r\n","import React, { useEffect, useRef, useState, PropsWithChildren, ReactElement } from 'react';\r\n\r\ninterface DragItem {\r\n item: any;\r\n nodeIndex: number;\r\n}\r\n\r\ninterface DraggableProps {\r\n list: any[];\r\n dragOverClassName?: string;\r\n onChange: (list: any[]) => void;\r\n}\r\n\r\nexport const Sortable: React.FC> = ({\r\n list,\r\n children,\r\n dragOverClassName,\r\n onChange\r\n}) => {\r\n const [internalList, setInternalList] = useState([]);\r\n const [dragging, setDragging] = useState(false);\r\n\r\n const transformToInternal = (list: any[]) => list.map((item, nodeIndex) => ({ item, nodeIndex }));\r\n\r\n useEffect(() => {\r\n setInternalList(transformToInternal(list));\r\n }, [setInternalList, list]);\r\n\r\n useEffect(() => {\r\n lastAppliedList.current = internalList;\r\n }, [internalList]);\r\n\r\n const dragItem = useRef();\r\n const dragItemNode = useRef();\r\n const lastAppliedList = useRef(list);\r\n\r\n const handleDragEnd = (e: DragEvent) => {\r\n e.preventDefault();\r\n\r\n dragItem.current = undefined;\r\n\r\n if (dragItemNode.current) {\r\n dragItemNode.current.removeEventListener(\r\n \"dragend\",\r\n handleDragEnd as EventListener\r\n );\r\n dragItemNode.current = undefined;\r\n }\r\n\r\n const newList = lastAppliedList.current.map(({ item }) => {\r\n const { draggable, ...listProps } = item;\r\n return listProps;\r\n })\r\n\r\n setDragging(false);\r\n setInternalList(transformToInternal(newList));\r\n onChange(newList);\r\n };\r\n\r\n const handletDragStart = (e: DragEvent, itemIndex: number) => {\r\n if (!e.target || !(e.target as HTMLElement).draggable) {\r\n return;\r\n }\r\n\r\n e.target.addEventListener(\"dragend\", handleDragEnd as EventListener);\r\n\r\n dragItem.current = itemIndex;\r\n dragItemNode.current = e.target;\r\n\r\n setTimeout(() => {\r\n setDragging(true);\r\n }, 0);\r\n };\r\n\r\n const handleDragEnter = (e: DragEvent, targetIndex: number) => {\r\n // To prevent dragging outside `fixed` columns, that are usually\r\n // at the top and bottom of the list\r\n if (!(e.target as HTMLElement).draggable) {\r\n return;\r\n }\r\n\r\n if (dragItemNode.current === e.target) {\r\n return;\r\n }\r\n\r\n setInternalList((oldList) => {\r\n if (dragItem.current === undefined) {\r\n return oldList;\r\n }\r\n\r\n const results = oldList.slice();\r\n const firstItem = oldList[targetIndex];\r\n results[targetIndex] = oldList[dragItem.current];\r\n results[dragItem.current] = firstItem;\r\n\r\n dragItem.current = targetIndex;\r\n\r\n return results;\r\n });\r\n };\r\n\r\n const getStyles = (itemIndex: number) => {\r\n const { current } = dragItem;\r\n\r\n if (current && current === itemIndex) {\r\n return dragOverClassName;\r\n }\r\n\r\n return null;\r\n };\r\n\r\n const wrapChild = (child: React.ReactNode, itemIndex: number) => {\r\n if (React.isValidElement(child)) {\r\n const { draggable } = child.props;\r\n\r\n return React.cloneElement(child as ReactElement, {\r\n draggable: draggable !== undefined ? draggable : true,\r\n onDragOver: (e: DragEvent) => e.preventDefault(),\r\n onDragStart: (e: DragEvent) => handletDragStart(e, itemIndex),\r\n onDragEnter: dragging\r\n ? (e: DragEvent) => handleDragEnter(e, itemIndex)\r\n : null,\r\n className: getStyles(itemIndex)\r\n });\r\n }\r\n\r\n return child;\r\n };\r\n\r\n if (!list) {\r\n return null;\r\n }\r\n\r\n return (\r\n <>\r\n {internalList.map((item, itemIndex) =>\r\n wrapChild(React.Children.toArray(children)[item.nodeIndex], itemIndex)\r\n )}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { Preloader } from './Preloader';\r\n\r\nexport function FormControlLoader({ inProgress }) {\r\n if (inProgress) {\r\n return (\r\n
\r\n );\r\n }\r\n return null;\r\n}\r\n","import { constants } from '../../../../constants';\r\n\r\ninterface TotalStatisticsItemProps {\r\n count?: number;\r\n}\r\n\r\nexport const TotalStatisticsItem = ({ count }: TotalStatisticsItemProps) => (\r\n <>\r\n {count ? {count} : constants.emptyPlaceholder}\r\n \r\n);\r\n","import React, { DragEvent, useRef } from 'react';\r\n\r\ninterface DragFileZoneProps {\r\n children: React.ReactNode;\r\n onFile?: (file: File) => void;\r\n onFiles?: (files: FileList) => void;\r\n onDragEnter?: () => void;\r\n onDragLeave?: () => void;\r\n className?: string;\r\n}\r\n\r\nexport function DragFileZone({ children, onFile, onFiles, onDragEnter, onDragLeave, className = 'drag-zone' }: DragFileZoneProps) {\r\n const dragEnterCount = useRef(0);\r\n\r\n const dragOver = (e: DragEvent) => {\r\n e.preventDefault();\r\n };\r\n\r\n const dragEnter = (e: DragEvent) => {\r\n dragEnterCount.current++;\r\n onDragEnter && onDragEnter();\r\n e.preventDefault();\r\n };\r\n\r\n const dragLeave = (e: DragEvent) => {\r\n dragEnterCount.current--;\r\n if (dragEnterCount.current === 0) {\r\n onDragLeave && onDragLeave();\r\n }\r\n e.preventDefault();\r\n };\r\n\r\n const fileDrop = (e: DragEvent) => {\r\n e.preventDefault();\r\n if(typeof onFile === 'function') {\r\n onFile(e.dataTransfer.files[0]);\r\n }\r\n if(typeof onFiles === 'function') {\r\n onFiles(e.dataTransfer.files);\r\n }\r\n onDragLeave && onDragLeave();\r\n dragEnterCount.current = 0;\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n )\r\n}\r\n","import React, { useCallback, useEffect, useRef, useState, ReactElement } from 'react';\r\nimport { createPortal } from 'react-dom';\r\nimport cn from 'classnames';\r\nimport { ClickOutside } from './ClickOutside';\r\n\r\nexport enum TooltipTriggerType {\r\n Hover = 'hover',\r\n Click = 'click',\r\n}\r\n\r\nexport enum TooltipPlacement {\r\n Top = 'top',\r\n TopLeft = 'topLeft',\r\n TopRight = 'topRight',\r\n Bottom = 'bottom',\r\n BottomLeft = 'bottomLeft',\r\n BottomRight = 'bottomRight',\r\n Left = 'left',\r\n Right = 'right',\r\n CenterTop = 'centerTop',\r\n CenterLeft = 'centerLeft',\r\n CenterRight = 'centerRight',\r\n CenterBottom = 'centerBottom',\r\n}\r\n\r\ninterface TooltipProps {\r\n overlay: (() => React.ReactNode) | React.ReactNode;\r\n disabled?: boolean;\r\n placement: string | TooltipPlacement;\r\n children: React.ReactNode;\r\n indent: number;\r\n overlayClassName?: string;\r\n className?: string;\r\n delay?: number;\r\n trigger: TooltipTriggerType;\r\n onVisibleChange?: (visible: boolean) => void;\r\n visible: boolean;\r\n hideOnAnyAction?: boolean;\r\n}\r\n\r\ntype TAdjustmentMap = {\r\n [defaultPlacement in TooltipPlacement]: {\r\n x: TooltipPlacement,\r\n y: TooltipPlacement\r\n }\r\n};\r\n\r\nconst adjustmentMap: TAdjustmentMap = {\r\n [TooltipPlacement.Top]: { x: TooltipPlacement.BottomRight, y: TooltipPlacement.TopLeft },\r\n [TooltipPlacement.TopLeft]: { x: TooltipPlacement.BottomRight, y: TooltipPlacement.TopRight },\r\n [TooltipPlacement.TopRight]: { x: TooltipPlacement.BottomLeft, y: TooltipPlacement.TopLeft },\r\n [TooltipPlacement.Bottom]: { x: TooltipPlacement.BottomLeft, y: TooltipPlacement.Top },\r\n [TooltipPlacement.BottomLeft]: { x: TooltipPlacement.Left, y: TooltipPlacement.TopLeft },\r\n [TooltipPlacement.BottomRight]: { x: TooltipPlacement.Right, y: TooltipPlacement.TopRight },\r\n [TooltipPlacement.Left]: { x: TooltipPlacement.Right, y: TooltipPlacement.BottomRight },\r\n [TooltipPlacement.Right]: { x: TooltipPlacement.Left, y: TooltipPlacement.BottomLeft },\r\n [TooltipPlacement.CenterTop]: { x: TooltipPlacement.CenterBottom, y: TooltipPlacement.CenterBottom },\r\n [TooltipPlacement.CenterBottom]: { x: TooltipPlacement.CenterRight, y: TooltipPlacement.CenterRight },\r\n [TooltipPlacement.CenterRight]: { x: TooltipPlacement.CenterLeft, y: TooltipPlacement.CenterLeft },\r\n [TooltipPlacement.CenterLeft]: { x: TooltipPlacement.CenterTop, y: TooltipPlacement.CenterTop },\r\n\r\n}\r\n\r\nconst defaultCoords: { x: number, y: number } = { x: 0, y: 0 };\r\nconst maxCountOfSideAdjust = 3;\r\nconst maxCountOfAdjust = maxCountOfSideAdjust + 4; // Side Adjustments + 4 centered\r\n\r\nexport const Tooltip = ({ children, overlay, placement, disabled, indent, className, overlayClassName, delay, trigger, hideOnAnyAction = true, onVisibleChange, ...props }: TooltipProps) => {\r\n const timeout = useRef | null>(null);\r\n const childrenRef = useRef(null);\r\n const overlayWrapperRef = useRef(null);\r\n const [visible, setVisible] = useState(props.visible);\r\n const [coordinates, setCoordinates] = useState<{ x: number, y: number }>(defaultCoords);\r\n const [placementClassName, setPlacementClassName] = useState('');\r\n\r\n useEffect(() => {\r\n setVisible(props.visible);\r\n }, [props.visible]);\r\n\r\n useEffect(() => {\r\n if (props.visible) {\r\n showTooltip();\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [])\r\n\r\n const showTooltip = () => {\r\n const timeDelay = trigger === TooltipTriggerType.Click ? 0 : delay;\r\n timeout.current = setTimeout(() => {\r\n handleSetCoordinates(placement)\r\n onVisibleChange ? onVisibleChange(true) : setVisible(true);\r\n }, timeDelay);\r\n }\r\n\r\n const hideTooltip = useCallback(() => {\r\n setCoordinates(defaultCoords)\r\n onVisibleChange ? onVisibleChange(false) : setVisible(false)\r\n setPlacementClassName('')\r\n }, [onVisibleChange]);\r\n\r\n useEffect(() => {\r\n if (hideOnAnyAction) {\r\n const onMouseWheel = (a: WheelEvent) => {\r\n if (overlayWrapperRef.current?.contains(a?.target as Node)) return;\r\n hideTooltip()\r\n }\r\n if (visible) {\r\n window.addEventListener(\"wheel\", onMouseWheel);\r\n }\r\n return () => {\r\n window.removeEventListener(\"wheel\", onMouseWheel);\r\n }\r\n }\r\n }, [visible, hideTooltip, hideOnAnyAction]);\r\n\r\n const getMargin = (element: Element) => {\r\n const result = { t: 0, r: 0, b: 0, l: 0 }\r\n if (element) {\r\n const styles = window.getComputedStyle(element);\r\n result.t = Number(styles.getPropertyValue('margin-top').replace('px', ''));\r\n result.r = Number(styles.getPropertyValue('margin-right').replace('px', ''));\r\n result.b = Number(styles.getPropertyValue('margin-bottom').replace('px', ''));\r\n result.l = Number(styles.getPropertyValue('margin-left').replace('px', ''));\r\n }\r\n return result;\r\n }\r\n\r\n const handleSetCoordinates = useCallback((placement: TooltipPlacement | string, overlayWidth = 0, overlayHeight = 0, adjustmentIteration = 0) => {\r\n if (!childrenRef.current) return;\r\n adjustmentIteration += 1;\r\n const margin = getMargin(childrenRef.current?.children[0]);\r\n\r\n const { y, width, left, top, bottom } = childrenRef.current.getBoundingClientRect();\r\n\r\n const clientWith = document.documentElement.clientWidth + document.documentElement.scrollLeft;\r\n const clientHeight = document.documentElement.clientHeight + document.documentElement.scrollTop;\r\n\r\n const targetLeft = left + document.documentElement.scrollLeft;\r\n const targetTop = top + document.documentElement.scrollTop + margin.t;\r\n\r\n const coords = { x: targetLeft, y: y + indent };\r\n\r\n // Calculation coordinates by placement\r\n if (placement === TooltipPlacement.Bottom) {\r\n //Bottom\r\n coords.y = bottom + indent;\r\n coords.x = targetLeft + width / 2 - overlayWidth / 2;\r\n } else if (placement === TooltipPlacement.BottomRight) {\r\n //BottomRight\r\n coords.y = bottom + indent;\r\n coords.x = targetLeft + width - overlayWidth - margin.r;\r\n\r\n } else if (placement === TooltipPlacement.BottomLeft) {\r\n //BottomLeft\r\n coords.y = bottom + indent;\r\n coords.x = targetLeft + margin.l;\r\n } else if (placement === TooltipPlacement.Top) {\r\n //Top\r\n coords.y = targetTop - overlayHeight - indent;\r\n coords.x = targetLeft + width / 2 - overlayWidth / 2;\r\n\r\n } else if (placement === TooltipPlacement.TopRight) {\r\n //TopRight\r\n coords.y = targetTop - overlayHeight - indent;\r\n coords.x = targetLeft + width - overlayWidth - margin.r;\r\n\r\n } else if (placement === TooltipPlacement.TopLeft) {\r\n //TopLeft\r\n coords.y = targetTop - overlayHeight - indent;\r\n coords.x = targetLeft + margin.l;\r\n\r\n } else if (placement === TooltipPlacement.Left) {\r\n //Left\r\n coords.y = targetTop;\r\n coords.x = targetLeft - overlayWidth - margin.r - indent;\r\n\r\n } else if (placement === TooltipPlacement.Right) {\r\n //Right\r\n coords.y = targetTop;\r\n coords.x = targetLeft + width + margin.l + indent;\r\n } else if (placement === TooltipPlacement.CenterTop) {\r\n //Top Center\r\n coords.y = targetTop - overlayHeight - indent;\r\n coords.x = clientWith / 2 - overlayWidth / 2;\r\n } else if (placement === TooltipPlacement.CenterBottom) {\r\n //Bottom Center\r\n coords.y = bottom + indent;\r\n coords.x = clientWith / 2 - overlayWidth / 2;\r\n } else if (placement === TooltipPlacement.CenterRight) {\r\n //Right Center\r\n coords.y = clientHeight / 2 - overlayHeight / 2;\r\n coords.x = targetLeft + width + margin.l + indent;\r\n } else if (placement === TooltipPlacement.CenterLeft) {\r\n //Left Center\r\n coords.y = clientHeight / 2 - overlayHeight / 2;\r\n coords.x = targetLeft - overlayWidth - margin.r - indent;\r\n }\r\n\r\n //Adjust to screen coordinates\r\n let adjusted: TooltipPlacement | undefined;\r\n\r\n if (coords.y < 0 || coords.y + overlayHeight > clientHeight) { //Top or Bottom\r\n adjusted = adjustmentMap[placement as TooltipPlacement].y;\r\n if (placement === TooltipPlacement.Bottom) {\r\n setPlacementClassName('top-placement')\r\n } else {\r\n setPlacementClassName('bottom-placement')\r\n }\r\n }\r\n\r\n if (coords.x < 0 || coords.x + overlayWidth > clientWith) { //Left or Right\r\n adjusted = adjustmentMap[adjusted ?? placement as TooltipPlacement].x;\r\n }\r\n\r\n if (adjusted && adjustmentIteration <= maxCountOfAdjust) {\r\n if (adjustmentIteration === maxCountOfSideAdjust + 1) { // Set on the screen center if all adjustments are placed outside user's screen\r\n adjusted = TooltipPlacement.CenterLeft;\r\n }\r\n\r\n handleSetCoordinates(adjusted, overlayWidth, overlayHeight, adjustmentIteration);\r\n return;\r\n }\r\n\r\n setCoordinates(coords);\r\n }, [indent]);\r\n\r\n\r\n const overlayCallback = useCallback((node: HTMLDivElement | null) => {\r\n if (node !== null) {\r\n overlayWrapperRef.current = node\r\n const { width, height } = node.getBoundingClientRect();\r\n handleSetCoordinates(placement, width, height)\r\n }\r\n }, [handleSetCoordinates, placement]);\r\n\r\n const handleMouseEnter = () => {\r\n if (!childrenRef.current || disabled || !overlay || trigger !== TooltipTriggerType.Hover) return;\r\n showTooltip();\r\n }\r\n\r\n const handleMouseLeave = () => {\r\n if (timeout.current) {\r\n clearTimeout(timeout.current);\r\n }\r\n\r\n if (trigger !== TooltipTriggerType.Hover) return;\r\n\r\n hideTooltip();\r\n }\r\n\r\n const handleClick = () => {\r\n if (trigger === TooltipTriggerType.Click && !visible) {\r\n showTooltip();\r\n }\r\n }\r\n\r\n const handleClickOutside = (e: MouseEvent) => {\r\n if (overlayWrapperRef.current?.contains(e.target as Node)) {\r\n return;\r\n }\r\n\r\n if (hideOnAnyAction) {\r\n hideTooltip();\r\n }\r\n }\r\n\r\n const renderOverlay = () => {\r\n if (!overlay) return null;\r\n const element = (\r\n
\r\n \r\n
\r\n
\r\n {typeof overlay === 'function' ? overlay() : overlay}\r\n
\r\n
\r\n
\r\n \r\n )\r\n return createPortal(element, document.body)\r\n }\r\n\r\n const childrenWithProps = React.Children.map(children, child => {\r\n if (React.isValidElement(child)) {\r\n return React.cloneElement(child as ReactElement, {\r\n ref: childrenRef,\r\n onMouseEnter: handleMouseEnter,\r\n onMouseLeave: handleMouseLeave,\r\n onClick: handleClick,\r\n });\r\n }\r\n return child;\r\n });\r\n\r\n const renderChildren = () =>\r\n trigger === TooltipTriggerType.Click\r\n ? {childrenWithProps}\r\n : childrenWithProps;\r\n\r\n return (\r\n <>\r\n {renderChildren()}\r\n {visible && (coordinates.x !== 0 || coordinates.y !== 0) && renderOverlay()}\r\n \r\n );\r\n}\r\n\r\nTooltip.defaultProps = {\r\n placement: TooltipPlacement.BottomLeft,\r\n indent: 5,\r\n className: '',\r\n overlayClassName: '',\r\n delay: 300,\r\n trigger: TooltipTriggerType.Hover,\r\n visible: false,\r\n}\r\n","import IconSVG from '../../../../styles/svg-icons';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../../../access/ActionBlocker';\r\nimport { OnHoverTooltip } from '../../../common';\r\n\r\ninterface StatisticsItemProps {\r\n label: string;\r\n redirectRequiredFeatures?: SubscriptionFeature[];\r\n showLink?: boolean;\r\n onLinkClick?: () => void;\r\n children: React.ReactElement;\r\n}\r\n\r\nexport const StatisticsItem = ({ label, redirectRequiredFeatures, showLink, onLinkClick, children }: StatisticsItemProps) => {\r\n const renderRedirectButton = () => {\r\n if (!onLinkClick || !showLink) {\r\n return null;\r\n }\r\n\r\n const redirectButton = (disabled: boolean = false) => (\r\n <>\r\n {disabled ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n\r\n if (redirectRequiredFeatures?.length) {\r\n return (\r\n \r\n {redirectButton}\r\n \r\n );\r\n }\r\n\r\n return redirectButton();\r\n };\r\n\r\n return (\r\n
\r\n {label}\r\n
\r\n {children}\r\n {renderRedirectButton()}\r\n
\r\n
\r\n );\r\n}\r\n","import * as React from 'react';\r\nimport { Preloader } from './Preloader';\r\n\r\ninterface Props {\r\n isNextPageRequesting: boolean;\r\n}\r\nexport function InfiniteScrollLoader({ isNextPageRequesting }: Props) {\r\n if (isNextPageRequesting) {\r\n return
\r\n }\r\n return null;\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { formsActions } from '../../actions';\r\nimport { constants } from '../../constants';\r\nimport { Popup, PopupBody, PopupFooter } from '../controls';\r\nimport { Form, FormFieldLabel, ValidationMessage } from '../forms';\r\n\r\ninterface Props {\r\n title?: React.ReactNode;\r\n textareaPlaceholder?: string;\r\n comfirmButtonText?: string;\r\n onReject: (reason: string) => void;\r\n onClose: () => void;\r\n}\r\n\r\nexport function RejectReasonPopup({ title = 'Reject Reason', textareaPlaceholder, comfirmButtonText, onReject, onClose }: Props) {\r\n const dispatch = useDispatch()\r\n const [rejectReason, setRejectReason] = useState('');\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(formsActions.reset());\r\n }\r\n }, [dispatch])\r\n\r\n const handleRejectReasonCustomValidate = (reason: string) => constants.nonWhitespace.test(reason);\r\n\r\n const handleSubmit = () => {\r\n onReject(rejectReason);\r\n onClose();\r\n }\r\n\r\n return (\r\n {title}}\r\n modalClass=\"modal-reject-form\"\r\n onClose={onClose}\r\n renderInBody={true}\r\n >\r\n handleRejectReasonCustomValidate(rejectReason)}\r\n >\r\n \r\n
\r\n \r\n setRejectReason(e.target.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","import * as React from 'react';\r\nimport { useEffect, useRef } from 'react';\r\n\r\ninterface ClickOutsideProps {\r\n children: React.ReactNode;\r\n onClick: (e: MouseEvent) => void;\r\n className?: string;\r\n}\r\n\r\nexport function ClickOutside({ children, onClick, className }: ClickOutsideProps) {\r\n const ref = useRef(null);\r\n\r\n useEffect(() => {\r\n function handleClickOutside(e: MouseEvent) {\r\n if (ref.current && !ref.current.contains(e.target as Node)) {\r\n e.stopPropagation();\r\n if (onClick) onClick(e);\r\n }\r\n }\r\n\r\n document.addEventListener('mousedown', handleClickOutside);\r\n return () => document.removeEventListener('mousedown', handleClickOutside); // eslint-disable-next-line\r\n }, []);\r\n\r\n return (\r\n
{children}
\r\n )\r\n}\r\n","import IconSVG from \"../../styles/svg-icons\";\r\n\r\ninterface Props {\r\n isSelected: boolean;\r\n onClick: () => void;\r\n disabled?: boolean;\r\n label?: string;\r\n}\r\n\r\nexport const AlertsButton = ({\r\n isSelected,\r\n onClick,\r\n disabled,\r\n label,\r\n}: Props) => (\r\n {\r\n e.stopPropagation();\r\n onClick();\r\n }}\r\n >\r\n \r\n {label}\r\n \r\n);\r\n","import React, { Component } from \"react\";\r\nimport Slider from \"react-slick\";\r\nimport { introCarousel } from '../../constants';\r\nimport \"../../styles/components/slick-slider.scss\";\r\n\r\nclass IntroCarousel extends Component {\r\n render() {\r\n const carouselItem = introCarousel.map(({ img, title, text, newFeature }, i) => {\r\n return (\r\n
\r\n
{title}
\r\n
\r\n

\r\n { newFeature &&\r\n new\r\n }\r\n {title}\r\n

\r\n
    \r\n {text.map((t, j) =>
  • {t}
  • )}\r\n
\r\n
\r\n
\r\n )\r\n });\r\n const settings = {\r\n arrows: true,\r\n dots: true,\r\n draggable: false,\r\n infinite: true,\r\n autoplay: true,\r\n autoplaySpeed: 10000,\r\n slidesToShow: 1,\r\n slidesToScroll: 1\r\n };\r\n return (\r\n <>\r\n \r\n {carouselItem}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default IntroCarousel\r\n","import React from 'react';\r\nimport cn from 'classnames';\r\n\r\ninterface FlexRowProps {\r\n className?: string;\r\n children?: React.ReactNode;\r\n}\r\n\r\nfunction FlexRow({ className, children }: FlexRowProps) {\r\n return (\r\n
\r\n {children}\r\n
\r\n )\r\n}\r\n\r\nexport { FlexRow };\r\n","import * as React from 'react';\r\n\r\ntype TRenderChildren = (visible: boolean) => React.ReactNode;\r\n\r\ninterface Props {\r\n disabled?: boolean;\r\n enabledUnloading?: boolean;\r\n children: React.ReactNode | TRenderChildren;\r\n className?: string;\r\n onVisibleChange?: (visible: boolean) => void;\r\n}\r\n\r\nexport function LazyLoad({ children, disabled = false, enabledUnloading = false, className, onVisibleChange }: Props) {\r\n const [inViewport, setInViewport] = React.useState(false);\r\n const targetRef = React.createRef();\r\n const observer = React.useRef();\r\n\r\n const renderChildren = () => {\r\n if (typeof children === 'function') {\r\n return children(inViewport);\r\n }\r\n\r\n if (inViewport || disabled) {\r\n return children as React.ReactNode;\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n const handleIntersection = (entries: any) => {\r\n const entry = entries[0] || {};\r\n const { isIntersecting, intersectionRatio } = entry;\r\n const intersected = typeof isIntersecting === 'undefined' ? intersectionRatio > 0 : isIntersecting;\r\n\r\n if (intersected && !inViewport) {\r\n setInViewport(true);\r\n onVisibleChange?.(true);\r\n\r\n if (observer.current) {\r\n observer.current.disconnect();\r\n }\r\n } else if(enabledUnloading && !intersected && inViewport) {\r\n setInViewport(false);\r\n onVisibleChange?.(false);\r\n\r\n if (observer.current) {\r\n observer.current.disconnect();\r\n }\r\n }\r\n }\r\n\r\n if (!disabled && targetRef.current) {\r\n observer.current = new IntersectionObserver(handleIntersection);\r\n observer.current.observe(targetRef.current);\r\n }\r\n\r\n return () => {\r\n if (observer.current) {\r\n observer.current.disconnect();\r\n }\r\n } // eslint-disable-next-line\r\n }, [enabledUnloading, targetRef, disabled, inViewport]);\r\n\r\n return
{renderChildren()}
\r\n}\r\n","import { user } from \"../../user\";\r\n\r\ninterface BwicFlags {\r\n isMy: boolean;\r\n isParticipant: boolean;\r\n isAllToAll: boolean;\r\n}\r\n\r\ninterface MyBwicIconProps {\r\n bwic: BwicFlags\r\n}\r\n\r\n\r\nexport const MyBwicIcon = ({ bwic }: MyBwicIconProps) => {\r\n if (bwic.isAllToAll && user.current()?.isClearingBank) return null;\r\n\r\n return bwic.isMy || bwic.isParticipant ? (\r\n
My
\r\n ) : null;\r\n}","import React from 'react';\r\n\r\nexport const PxTalkNormalizationTable = () => (\r\n <>\r\n
Px Talk Normalization Algorithm
\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 \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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
PrefixAVVLVLLLM
Digital Convertion00.0250.050.150.35
PrefixMMHHVHVVH
Digital Convertion0.50.60.80.90.95
A – Area
\r\n \r\n);\r\n","import React, { ChangeEvent, useRef } from 'react';\r\nimport classNames from 'classnames';\r\n\r\ninterface UploadFileButtonProps {\r\n onFile: (file: Blob) => void;\r\n buttonText: string;\r\n acceptedFormats: string[];\r\n className?: string,\r\n disabled?: boolean;\r\n}\r\n\r\nexport function UploadFileButton({ onFile, buttonText, acceptedFormats, className = '', disabled = false }: UploadFileButtonProps) {\r\n const fileInputRef = useRef(null);\r\n\r\n const handleClick = () => {\r\n if (fileInputRef.current) {\r\n fileInputRef.current.click()\r\n }\r\n };\r\n\r\n const handleChange = (e: ChangeEvent) =>{\r\n if (e.target.files && e.target.files.length > 0) {\r\n const file = e.target.files[0];\r\n onFile(file)\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n )\r\n}\r\n","import React from 'react';\r\n\r\ninterface Props {\r\n value: number;\r\n}\r\n\r\nexport const Badge = ({value}: Props) => (\r\n {value}\r\n)\r\n","import * as React from 'react';\r\nimport cn from 'classnames';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\ninterface Props {\r\n text?: string;\r\n disabled?: boolean;\r\n}\r\n\r\nexport function InfoTooltip({ text, disabled }: Props) {\r\n const classes = cn(\r\n \"info-tooltip\",\r\n {\r\n \"display-inline text-light-grey\": disabled\r\n }\r\n );\r\n\r\n if (disabled) {\r\n return
\r\n }\r\n\r\n return (\r\n \r\n {text && }\r\n \r\n );\r\n}\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { changePxTalkActions as actions } from '../../../actions';\r\nimport { ButtonSwitch } from '../../controls';\r\nimport { pxTalkLevelTypes } from '../../../constants';\r\n\r\nclass PxTalkRow extends Component {\r\n state = {\r\n changed: true\r\n }\r\n\r\n render = () => {\r\n const { index, pxTalk, dispatch } = this.props;\r\n\r\n return (\r\n
\r\n
{pxTalk.company.name}
\r\n
\r\n
\r\n {\r\n !!pxTalk.error\r\n ?\r\n \r\n :\r\n \r\n }\r\n {!!pxTalk.error &&
{pxTalk.error}
}\r\n
\r\n
\r\n
{pxTalk.normalizedLevel || ''}
\r\n
\r\n dispatch(actions.levelTypeChange(pxTalk.company.id, levelType))}\r\n className=\"control-group-type01\"\r\n />\r\n
\r\n dispatch(actions.deletePxTalk(index))}>\r\n
\r\n );\r\n }\r\n\r\n handleTalkChange = e => {\r\n const { pxTalk, dispatch } = this.props;\r\n\r\n this.setState({ changed: true });\r\n dispatch(actions.talkChange(pxTalk.company.id, e.target.value));\r\n }\r\n\r\n handleTalkBlur = () => {\r\n const { pxTalk, dispatch } = this.props;\r\n\r\n if (this.state.changed) {\r\n this.setState({ changed: false });\r\n dispatch(actions.normalizeTalk(pxTalk.company.id, pxTalk.talk, pxTalk.levelType));\r\n }\r\n }\r\n}\r\n\r\nconst mapStateToProps = () => ({\r\n});\r\n\r\nconst connectedPxTalkRow = connect(mapStateToProps)(PxTalkRow);\r\nexport { connectedPxTalkRow as PxTalkRow };\r\n","import * as React from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Form, Formik } from 'formik';\r\nimport { changePxTalkActions as actions } from '../../../actions';\r\nimport { AutoCompleteInput, FormError } from '../../controls';\r\nimport { PxTalkRow } from './PxTalkRow';\r\nimport { errorMessages, pxTalkLevelTypes } from '../../../constants';\r\nimport { isRequesting, stringUtils } from '../../../utils';\r\nimport { yup } from '../../../validation/yup';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { FormikHelpers } from 'formik/dist/types';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { usePriceTalks } from '../../../effects/usePriceTalks';\r\nimport { Preloader } from '../Preloader';\r\nimport { useBrokerDealers } from '../../../effects/useBrokerDealers';\r\nimport { useAppDispatch } from '../../../effects/useAppDispatch';\r\n\r\ninterface Props {\r\n saveButtonText: string;\r\n onSave: () => void;\r\n onCancel: () => void;\r\n}\r\n\r\nexport const ChangePxTalk: React.FC = ({ saveButtonText, onSave, onCancel }) => {\r\n const dispatch = useAppDispatch();\r\n\r\n const visible = useSelector((s: AppState) => s.changePxTalk.visible);\r\n const existingPriceTalks = useSelector((state: AppState) => state.changePxTalk.pxTalks);\r\n const ticker = useSelector((state: AppState) => state.changePxTalk.ticker);\r\n const bwicReferenceName = useSelector((state: AppState) => state.changePxTalk.bwicReferenceName);\r\n const positionId = useSelector((state: AppState) => state.changePxTalk.positionId);\r\n\r\n const hasEmptyCompany = existingPriceTalks?.some(p => p.company == null);\r\n const pxTalksState = usePriceTalks(bwicReferenceName ?? '', positionId ?? 0, hasEmptyCompany);\r\n const pxTalks = hasEmptyCompany ? [] : existingPriceTalks ?? [];\r\n\r\n const brokerDealersState = useBrokerDealers();\r\n\r\n React.useEffect(() => {\r\n return () => {\r\n dispatch(actions.reset());\r\n }\r\n }, [dispatch]);\r\n\r\n if (!visible) return null;\r\n\r\n const handleCompanyCustomValidate = (companyName: string | null | undefined) =>\r\n !!brokerDealersState.items\r\n .filter(c => !pxTalks?.some(p => p.company.id === c.id))\r\n .map(c => c.name)\r\n .some(n => n.localeCompare(String(companyName), undefined, { sensitivity: 'accent' }) === 0);\r\n\r\n const validationSchema = yup.object().shape({\r\n companyName: yup.string().required().test('companyName', errorMessages.invalidValue, handleCompanyCustomValidate)\r\n });\r\n\r\n const handleAddCompany = (values: { companyName: string }, formHelpers: FormikHelpers<{ companyName: string }>) => {\r\n const levelType = pxTalkLevelTypes.price.key;\r\n const company = brokerDealersState.items.find(c =>\r\n c.name.localeCompare(values.companyName, undefined, { sensitivity: 'accent' }) === 0);\r\n\r\n dispatch(actions.add({ company, levelType }));\r\n formHelpers.setFieldValue('companyName', '');\r\n formHelpers.setTouched({ companyName: false });\r\n };\r\n\r\n const handleCancel = () => {\r\n dispatch(actions.reset());\r\n if (onCancel) {\r\n onCancel();\r\n }\r\n };\r\n\r\n return (\r\n
\r\n
\r\n {!stringUtils.isNullOrEmpty(ticker) &&

Px Talk for {ticker}

}\r\n {stringUtils.isNullOrEmpty(ticker) &&

Change Px Talk

}\r\n \r\n
\r\n
\r\n \r\n \r\n {({ values, errors, touched, setFieldValue }) => (\r\n
\r\n
\r\n
\r\n !pxTalks.some(p => p.company.id === c.id)).map(c => c.name)}\r\n value={values.companyName}\r\n onChange={(companyName: string) => setFieldValue('companyName', companyName)}\r\n placeholder=\"Add New Company\"\r\n isInvalid={touched.companyName && values.companyName.trim() && errors.companyName}\r\n />\r\n \r\n
\r\n \r\n
\r\n
\r\n )}\r\n \r\n
\r\n
\r\n
Company
\r\n
Px Talk
\r\n
Normalized
\r\n
Type
\r\n
\r\n
\r\n {pxTalks.map((p, i: number) => )}\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\nChangePxTalk.defaultProps = {\r\n saveButtonText: 'SAVE CHANGES'\r\n};\r\n","import { constants } from '../../../../constants';\r\nimport { formatUtils } from '../../../../utils';\r\n\r\ninterface AumStatisticsItemProps {\r\n value?: number;\r\n count?: number;\r\n}\r\n\r\nexport const AumStatisticsItem = ({ value, count }: AumStatisticsItemProps) => {\r\n if (!value && !count) {\r\n return {constants.emptyPlaceholder};\r\n }\r\n\r\n return (\r\n <>\r\n {value ? formatUtils.formatToBillions(value) : constants.emptyPlaceholder} /\r\n {count || constants.emptyPlaceholder}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { formatUtils } from '../../../utils';\r\nimport { pxTalkListActions } from '../../../actions';\r\nimport { constants } from '../../../constants';\r\nimport { FeatureButton } from '../../access/FeatureButton';\r\nimport { ValueBlocker } from '../../access/ValueBlocker';\r\n\r\nexport function PxTalkListButton({ positionId, className, pxTalks, requiredFeature, onClick }) {\r\n const dispatch = useDispatch();\r\n const activePositionId = useSelector(store => store.pxTalkList.positionId);\r\n const pxTalkRangeText =\r\n pxTalks &&\r\n pxTalks.length &&\r\n formatUtils.formatPxTalk(pxTalks);\r\n\r\n if (!pxTalkRangeText) {\r\n return {constants.emptyPlaceholder};\r\n }\r\n\r\n const handleClick = e => {\r\n if (activePositionId === positionId) {\r\n dispatch(pxTalkListActions.hide());\r\n } else {\r\n dispatch(pxTalkListActions.show(positionId));\r\n }\r\n\r\n if (onClick) {\r\n onClick();\r\n }\r\n\r\n e.stopPropagation();\r\n }\r\n\r\n return (\r\n \r\n \r\n {pxTalkRangeText}\r\n \r\n \r\n );\r\n}\r\n\r\nPxTalkListButton.defaultProps = {\r\n requiredFeature: undefined,\r\n onClick: undefined\r\n}\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport classNames from 'classnames';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nexport function SearchInput({ value, onChange, onClear = () => {}, disabled = false, placeholder = 'Search', maxLengthValue = 1000, small = false, ...props }) {\r\n const refInput = useRef(null);\r\n const timeout = useRef(0);\r\n const [currentValue, setCurrentValue] = useState('');\r\n const [inputFocus, setInputFocus] = useState(false);\r\n\r\n useEffect(() => {\r\n setCurrentValue(value)\r\n }, [value]);\r\n\r\n function handleChange(e) {\r\n const changedValue = e.target.value;\r\n setCurrentValue(() => {\r\n if (changedValue.length <= maxLengthValue && typeof onChange === 'function') {\r\n if (timeout.current) {\r\n clearTimeout(timeout.current)\r\n }\r\n timeout.current = setTimeout(() => { onChange(changedValue)}, 200)\r\n }\r\n return changedValue\r\n });\r\n }\r\n\r\n function handleClear() {\r\n if (refInput.current) {\r\n refInput.current.focus();\r\n }\r\n onClear && onClear();\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n setInputFocus(true)}\r\n onBlur={() => setInputFocus(false)}\r\n disabled={disabled}\r\n {...props}\r\n />\r\n {\r\n !!value &&\r\n \r\n }\r\n
\r\n );\r\n}\r\n","import { InfoTooltip } from \"./InfoTooltip\";\r\n\r\ninterface EmailInfoTooltipProps {\r\n overlayText?: string;\r\n}\r\n\r\nconst EmailInfoTooltip = ({ overlayText }: EmailInfoTooltipProps) => ;\r\n\r\nexport default EmailInfoTooltip;\r\n","import * as React from 'react';\r\nimport { isIE } from '../../utils/isIE.utils';\r\nimport cn from 'classnames';\r\n\r\ninterface Props {\r\n inProgress: boolean;\r\n text?: React.ReactNode;\r\n children?: React.ReactNode;\r\n small?: boolean;\r\n fullScreen?: boolean;\r\n textOnly?: boolean;\r\n}\r\n\r\nexport function Preloader({ inProgress = false, text = '', children, small = false, fullScreen = true, textOnly = false}: Props) {\r\n const renderIE = () => ;\r\n\r\n const render = () => (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n\r\n const renderFullScreen = (content: React.ReactNode) => {\r\n return fullScreen\r\n ?
{content}
\r\n : content as React.ReactElement;\r\n }\r\n\r\n const renderLoaderBox = (loaderImage: React.ReactNode) => {\r\n return fullScreen\r\n ? loaderImage as React.ReactElement\r\n :
{loaderImage} {renderText()}
;\r\n }\r\n\r\n const renderLoader = () => isIE() ? renderLoaderBox(renderIE()) : renderLoaderBox(render())\r\n\r\n const renderText = () => text ? {text} : null\r\n\r\n if (inProgress) {\r\n const content = textOnly ? renderText() : renderLoader();\r\n\r\n return renderFullScreen(content);\r\n }\r\n\r\n return children ? children as React.ReactElement : null;\r\n}\r\n","import cn from 'classnames'\r\nimport { DropDownList, DropDownListItem } from '../controls/DropDownList'\r\n\r\ninterface SortDropdownProps {\r\n disabled?: boolean;\r\n items: DropDownListItem[];\r\n onChange: (option: string) => void;\r\n}\r\n\r\nexport const SortDropdown = ({ disabled, items, onChange }: SortDropdownProps) => {\r\n return (\r\n
\r\n \r\n onChange(String(item.value))}\r\n />\r\n
\r\n )\r\n}","import cn from 'classnames';\r\nimport { Color as _Color } from \"../../types/bwic/Color\";\r\nimport { formatUtils } from \"../../utils/format.utils\";\r\n\r\ninterface Props {\r\n color: _Color;\r\n}\r\n\r\nexport function Color({ color }: Props) {\r\n return (\r\n \r\n {formatUtils.formatColor(color)}\r\n \r\n );\r\n}","import * as React from 'react';\r\n\r\nexport function LiveBiddingTooltipContent() {\r\n return (\r\n <>\r\n

LiveBidding™

\r\n

\r\n In Stage 1, participants submit blind bids to set the starting bid level for\r\n Stage 2. In Stage 2, a specified number of top bidders from Stage 1 can see\r\n live Best or Cover bid levels and improve their bids until the BWIC is completed.\r\n

\r\n \r\n );\r\n}\r\n","import { useCallback, useEffect, useRef, useState } from \"react\";\r\nimport cn from 'classnames';\r\nimport IconSVG from \"../../styles/svg-icons\";\r\n\r\ninterface HorizontalScrollProps {\r\n disabled?: boolean;\r\n children: React.ReactElement[];\r\n itemsPerView: number;\r\n activeItemIndex: number;\r\n}\r\n\r\nenum Direction {\r\n Left = 'Left',\r\n Right = 'Right'\r\n}\r\n\r\nexport const HorizontalSlider = ({ children, itemsPerView, activeItemIndex, disabled = false }: HorizontalScrollProps) => {\r\n const [lastDirection, setLastDirection] = useState(Direction.Left);\r\n const [lastIndexToScroll, setLastIndexToScroll] = useState(0);\r\n const [lastActiveIndex, setLastActiveIndex] = useState(null);\r\n const scrollContainer = useRef(null);\r\n\r\n const getRangeOfView = () => {\r\n const from = lastIndexToScroll;\r\n let to = lastDirection === Direction.Left\r\n ? from + itemsPerView - 1\r\n : from - itemsPerView + 1;\r\n return [from, to].sort();\r\n }\r\n\r\n const [from, to] = getRangeOfView();\r\n\r\n const handleSlide = (direction: Direction) => {\r\n const directionChanged = direction !== lastDirection;\r\n const proceedItems = directionChanged ? itemsPerView : 1;\r\n const intendedIndexToScroll = direction === Direction.Left\r\n ? lastIndexToScroll - proceedItems\r\n : lastIndexToScroll + proceedItems;\r\n handleSlideTo(intendedIndexToScroll);\r\n }\r\n\r\n const handleSlideTo = useCallback((intendedIndexToScroll: number) => {\r\n if (scrollContainer.current?.children) {\r\n const items = Array.from(scrollContainer.current.children);\r\n let indexToScroll = intendedIndexToScroll;\r\n if (indexToScroll > children.length - 1) {\r\n indexToScroll = children.length - 1;\r\n }\r\n if (indexToScroll < 0) {\r\n indexToScroll = 0;\r\n }\r\n if (indexToScroll <= from || indexToScroll >= to) {\r\n items[indexToScroll].scrollIntoView({ behavior: \"smooth\" });\r\n setLastDirection(indexToScroll <= from ? Direction.Left : Direction.Right);\r\n setLastIndexToScroll(indexToScroll);\r\n }\r\n }\r\n }, [children.length, from, to])\r\n\r\n useEffect(() => {\r\n // Prevent useEffect when handleSlideTo changed. Hook should work only when activeItemIndex changed.\r\n if(activeItemIndex !== lastActiveIndex) {\r\n handleSlideTo(\r\n activeItemIndex\r\n )\r\n setLastActiveIndex(activeItemIndex)\r\n }\r\n }, [activeItemIndex, lastActiveIndex, handleSlideTo])\r\n\r\n if (disabled) {\r\n return <>{children}\r\n }\r\n\r\n const leftArrowClassNames = cn(\r\n 'btn-link horizontal-slider-button horizontal-slider-button-prev',\r\n { 'disabled': lastIndexToScroll === 0 }\r\n )\r\n\r\n const rightArrowClassNames = cn(\r\n 'btn-link horizontal-slider-button horizontal-slider-button-next',\r\n { 'disabled': lastIndexToScroll === children.length - 1 }\r\n )\r\n\r\n return (\r\n
\r\n handleSlide(Direction.Left)}\r\n >\r\n \r\n \r\n
\r\n {children}\r\n
\r\n handleSlide(Direction.Right)}\r\n >\r\n \r\n \r\n
\r\n )\r\n}","import IconSVG from '../../styles/svg-icons';\r\nimport cn from 'classnames';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\nimport { ContextMenuItem } from '../controls/ContextMenuItem';\r\nimport { ClassIndicators } from '../../types/amr-pipeline/models/ClassIndicators';\r\nimport { constants } from '../../constants';\r\nimport { useContext, useState } from 'react';\r\nimport { Tooltip, TooltipPlacement, TooltipTriggerType } from './Tooltip';\r\nimport { logger } from '../../logging/logger';\r\nimport { ActionBlocker } from '../access/ActionBlocker';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { BlockedFeatureContext } from '../access/BlockedFeatureContext';\r\n\r\ntype Props = {\r\n identifier?: string;\r\n identifiers?: ClassIndicators;\r\n text?: string;\r\n className?: string;\r\n disabled?: boolean;\r\n textLink?: boolean;\r\n placeholderIfEmpty?: boolean;\r\n secondaryPlaceholderColor?: boolean;\r\n};\r\n\r\ntype BloombergFunction = 'DES' | 'DES%202' | 'CLC' | 'CLP' | 'CFT' | 'TRIG' | 'MV';\r\n\r\nconst BLOOMBERG_FUNCTIONS: {\r\n name: BloombergFunction;\r\n text: string;\r\n}[] = [\r\n {\r\n name: 'DES',\r\n text: 'DES - Security Description',\r\n },\r\n {\r\n name: 'DES%202',\r\n text: 'DES 2 - Collateral Description',\r\n },\r\n {\r\n name: 'CLC',\r\n text: 'CLC - Collateral Composition',\r\n },\r\n {\r\n name: 'CLP',\r\n text: 'CLP - Collateral Performance',\r\n },\r\n {\r\n name: 'CFT',\r\n text: 'CFT - Cash Flow Table',\r\n },\r\n {\r\n name: 'TRIG',\r\n text: 'TRIG - Trigger Information',\r\n },\r\n {\r\n name: 'MV',\r\n text: 'MV - Market Value',\r\n },\r\n ];\r\n\r\nexport function BloombergLink({\r\n identifiers,\r\n identifier,\r\n className,\r\n placeholderIfEmpty,\r\n secondaryPlaceholderColor,\r\n textLink = false,\r\n}: Props) {\r\n const blockedFromOutside = useContext(BlockedFeatureContext);\r\n const [visible, setVisible] = useState(false);\r\n\r\n const identifierForLink = identifier ?? getBloombergIdentifier(identifiers);\r\n\r\n if (!identifierForLink) {\r\n return placeholderIfEmpty ? (\r\n \r\n {constants.emptyPlaceholder}\r\n \r\n ) : null;\r\n }\r\n\r\n function getBloombergIdentifier(identifiers?: ClassIndicators) {\r\n if (!identifiers) {\r\n return undefined;\r\n }\r\n\r\n const { ticker144A, tickerAccdInvCertif, tickerRegS } = identifiers;\r\n\r\n return ticker144A ?? tickerAccdInvCertif ?? tickerRegS;\r\n }\r\n\r\n const handleVisibilityChange = (visible: boolean) => {\r\n setVisible(visible);\r\n };\r\n\r\n const generateBloombergLink = (functionName: BloombergFunction) => {\r\n return `https://blinks.bloomberg.com/screens/${identifierForLink}%20Mtge%20${functionName} `;\r\n };\r\n\r\n const getMenuItems = () => {\r\n return (\r\n <>\r\n {BLOOMBERG_FUNCTIONS.map(item => {\r\n const link = generateBloombergLink(item.name);\r\n\r\n if (!link) {\r\n return null;\r\n }\r\n\r\n return (\r\n {\r\n logger.trace('User clicked the Bloomberg link');\r\n window.open(link, '_blank');\r\n }}\r\n key={item.name}\r\n >\r\n {item.text}\r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n };\r\n\r\n const renderBlockedView = () => (\r\n
\r\n \r\n
\r\n );\r\n\r\n const renderTooltip = () => (\r\n (\r\n
\r\n
    {getMenuItems()}
\r\n
\r\n )}\r\n >\r\n e.stopPropagation()}>\r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n {blocked => (blocked || blockedFromOutside ? renderBlockedView() : renderTooltip())}\r\n \r\n );\r\n}\r\n","import React, { useState } from 'react';\r\nimport { Popup, PopupBody, PopupFooter } from '../controls';\r\nimport { SettlementAgentClientAgreement } from '../../types/bid-as-dealer/SettlementAgentClientAgreement';\r\nimport { moneyUtils } from '../../utils/money.utils';\r\nimport { constants } from '../../constants/constants';\r\nimport { OnHoverTooltip } from \"./OnHoverTooltip\";\r\nimport { SettlementAgreementStatus } from '../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { SettlementAgentAgreement } from '../../types/bid-as-dealer/SettlementAgentAgreement';\r\nimport { SettlementAgentDailyTraidingLimit } from './settlment-agent-popup/SettlementAgentDailyTraidingLimit';\r\nimport { useTotalDailyTradingLimit } from './settlment-agent-popup/useTotalDailyTradingLimit';\r\n\r\ninterface Props {\r\n companyName: string;\r\n valueLabel?: string;\r\n agreement: SettlementAgentAgreement | SettlementAgentClientAgreement;\r\n amountToMM?: boolean;\r\n}\r\n\r\nexport const DailyTradingLimitDialog: React.FC = ({\r\n agreement,\r\n companyName,\r\n valueLabel,\r\n amountToMM,\r\n }) => {\r\n const dailyTradingLimit = agreement.dailyTradingLimit;\r\n const agreementStatus = agreement.agreementStatus;\r\n\r\n const [popupVisible, setPopupVisible] = useState(false);\r\n\r\n const total = useTotalDailyTradingLimit(dailyTradingLimit);\r\n\r\n const handleClosePopup = (e: MouseEvent | React.MouseEvent) => {\r\n e.stopPropagation();\r\n setPopupVisible(false);\r\n }\r\n\r\n const renderTitle = () => (\r\n <>\r\n Daily Trading Limit\r\n \r\n {companyName}\r\n \r\n \r\n )\r\n\r\n const renderPopup = () => popupVisible && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n\r\n const handleOnTotalClick = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n setPopupVisible(true);\r\n }\r\n\r\n return (\r\n
e.stopPropagation()}>\r\n {\r\n agreementStatus === SettlementAgreementStatus.confirmed && Boolean(total) ? (\r\n \r\n ) : constants.emptyPlaceholder\r\n }\r\n {renderPopup()}\r\n
\r\n )\r\n}\r\n\r\nDailyTradingLimitDialog.defaultProps = {\r\n amountToMM: false,\r\n valueLabel: '',\r\n}\r\n","import * as React from 'react';\r\nimport { ReactNode } from 'react';\r\nimport cn from 'classnames';\r\n\r\ninterface Props {\r\n title?: string;\r\n text?: ReactNode;\r\n children?: ReactNode;\r\n textView?: boolean;\r\n textViewRow?: boolean;\r\n className?: string;\r\n onResetClick?: () => void;\r\n}\r\n\r\nexport const EmptyPlaceholder = ({\r\n title = '',\r\n text = 'No search results found.',\r\n children = null,\r\n textView = false,\r\n textViewRow = false,\r\n className,\r\n onResetClick,\r\n}: Props) => (\r\n
\r\n {!!title &&

{title}

}\r\n {!!text && (\r\n

\r\n {text}\r\n {onResetClick && (\r\n \r\n {\" \"} to clear the filters/search for more results.\r\n \r\n )}\r\n

\r\n )}\r\n {children}\r\n
\r\n);\r\n","import React, { useState, useEffect, useRef } from 'react';\r\nimport classNames from 'classnames';\r\nimport { constants } from \"../../constants\";\r\nimport { Chip } from \"../controls\";\r\nimport { validateEmail } from '../../utils/validate-email.utils'\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nconst INITIAL_INPUT_WIDTH = 320;\r\nconst MIN_INPUT_WIDTH = 32;\r\nconst INPUT_INDENT = 12;\r\n\r\nexport function EmailChipList({\r\n disabled = false,\r\n onChange,\r\n allowInvalid = false,\r\n withClearAll = false,\r\n placeholder = 'You can copy and paste a list of emails here',\r\n className,\r\n defaultItems = [],\r\n}) {\r\n const refInterval = useRef(null);\r\n const refInput = useRef(null);\r\n const refInvalidEmailInput = useRef([]);\r\n const refInvalidEmailSpan = useRef([]);\r\n const [items, setItems] = useState(defaultItems);\r\n const [selectedItem, setSelectedItem] = useState(null);\r\n const [value, setValue] = useState('');\r\n const [inputBgOpacity, setInputBgOpacity] = useState(0);\r\n const [inputWidth, setInputWidth] = useState(INITIAL_INPUT_WIDTH);\r\n\r\n const displayClearAll = !!(withClearAll && (value || items.length));\r\n const isValidEmail = validateEmail(value);\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (refInterval.current) {\r\n clearInterval(refInterval.current)\r\n }\r\n } // eslint-disable-next-line\r\n }, []);\r\n\r\n useEffect(() => resetInputWidth(), [value]);\r\n\r\n useEffect(() => {\r\n if (inputBgOpacity <= 0 && refInterval.current) {\r\n clearInterval(refInterval.current);\r\n }\r\n }, [inputBgOpacity])\r\n\r\n useEffect(() => {\r\n onChange && onChange(items);\r\n if (allowInvalid && refInvalidEmailInput?.current?.some(el => el?.isEditing)) {\r\n return;\r\n }\r\n if (items.length) {\r\n resetInputWidth();\r\n } else {\r\n setInputWidth(INITIAL_INPUT_WIDTH);\r\n } // eslint-disable-next-line\r\n }, [items]);\r\n\r\n useEffect(() => {\r\n if (!inputWidth) {\r\n resetInputWidth();\r\n }\r\n }, [inputWidth]);\r\n\r\n const resetInputWidth = () => {\r\n if (refInput.current) {\r\n setInputWidth(Math.max(MIN_INPUT_WIDTH, refInput.current.scrollWidth));\r\n }\r\n };\r\n\r\n const setFocus = () => {\r\n refInput.current && refInput.current.focus();\r\n }\r\n\r\n const highlightInput = () => {\r\n setInputWidth(0);\r\n setInputBgOpacity(1);\r\n if (refInterval.current) {\r\n clearInterval(refInterval.current);\r\n }\r\n refInterval.current = setInterval(() => {\r\n setInputBgOpacity(opacity => Math.max(0, opacity - 0.05));\r\n }, 50)\r\n }\r\n\r\n const addItem = item => setItems(items => [...items, item.toLowerCase()]);\r\n\r\n const removeItem = index => {\r\n if (items[index]) {\r\n setItems(items.filter((item, i) => i !== index));\r\n setFocus();\r\n }\r\n }\r\n\r\n const addToChipList = () => {\r\n if (isValidEmail || (allowInvalid && value)) {\r\n addItem(value);\r\n setValue('');\r\n setSelectedItem(null);\r\n setInputWidth(MIN_INPUT_WIDTH);\r\n } else if (value) {\r\n highlightInput();\r\n }\r\n }\r\n\r\n const handleClickContainer = e => {\r\n e.stopPropagation();\r\n setFocus();\r\n setSelectedItem(null);\r\n }\r\n const handleClickInput = () => setSelectedItem(null);\r\n\r\n const handleClickItem = index => {\r\n setSelectedItem(index);\r\n setFocus();\r\n }\r\n\r\n const handleChange = e => {\r\n if (e.target.value.length - value.length > 1) {\r\n const list = e.target.value.split(/[\\s,;]+/);\r\n let added = false;\r\n for (let i = 0; i < list.length; i++) {\r\n if (list[i].search(constants.email) === 0 || (allowInvalid && list[i])) {\r\n addItem(list[i]);\r\n added = true;\r\n }\r\n }\r\n if (added) {\r\n setValue('');\r\n }\r\n } else {\r\n setValue(e.target.value.replace(/\\s+/g, ''));\r\n }\r\n\r\n if (isValidEmail) {\r\n onChange([...items, value]);\r\n }\r\n }\r\n\r\n const handleKeyDown = e => {\r\n const isNavEnabled = e.target.selectionStart === 0 && e.target.selectionEnd === 0;\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n e.preventDefault();\r\n addToChipList();\r\n } else if (isNavEnabled && e.key === 'ArrowLeft') {\r\n if (selectedItem > 0) {\r\n setSelectedItem(selectedItem - 1);\r\n } else if (selectedItem === null) {\r\n setSelectedItem(items.length - 1);\r\n }\r\n } else if (e.key === 'ArrowRight') {\r\n if (isNavEnabled && selectedItem !== null && selectedItem < items.length - 1) {\r\n e.preventDefault();\r\n setSelectedItem(selectedItem + 1);\r\n } else {\r\n setSelectedItem(null);\r\n }\r\n } else if ((e.key === 'Delete' || e.key === 'Backspace') && isNavEnabled) {\r\n e.preventDefault();\r\n if (items[selectedItem]) {\r\n removeItem(selectedItem);\r\n } else if (selectedItem === null && items.length) {\r\n removeItem(items.length - 1);\r\n }\r\n if (selectedItem >= items.length - 1) {\r\n setSelectedItem(null);\r\n }\r\n }\r\n }\r\n\r\n const handleDeleteItem = item => removeItem(item);\r\n\r\n const switchEditMode = (index, isEditing) => {\r\n if (refInvalidEmailInput.current) {\r\n refInvalidEmailInput.current[index].isEditing = isEditing;\r\n }\r\n }\r\n\r\n const handleEdit = (e, index) => {\r\n const { value } = e.target;\r\n\r\n if (!value) {\r\n return removeItem(index);\r\n }\r\n\r\n setItems(prevValues =>\r\n [...prevValues.slice(0, index), value.toLowerCase(), ...prevValues.slice(index + 1)]\r\n );\r\n switchEditMode(index, true);\r\n }\r\n\r\n const handleEditKeydown = (e, index) => {\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n e.preventDefault();\r\n setSelectedItem(index === selectedItem ? null : index);\r\n switchEditMode(index, false);\r\n }\r\n }\r\n\r\n const handleEditClick = (e) => {\r\n e.stopPropagation();\r\n setSelectedItem(null);\r\n }\r\n\r\n const handleEditOnBlur = index => {\r\n switchEditMode(index, false);\r\n setSelectedItem(index);\r\n }\r\n\r\n const handleClearAll = () => {\r\n if (onChange) {\r\n onChange([]);\r\n }\r\n setItems([]);\r\n setValue('');\r\n }\r\n\r\n const renderItems = () => {\r\n return items.map((item, i) => {\r\n const isValid = validateEmail(item);\r\n const isEditing = refInvalidEmailInput?.current[i]?.isEditing;\r\n return allowInvalid && (!isValid || isEditing) ? (\r\n
\r\n refInvalidEmailSpan.current[i] = node}\r\n className=\"invalid-email-hidden\"\r\n >\r\n {item}\r\n \r\n refInvalidEmailInput.current[i] = node}\r\n style={{ width: refInvalidEmailSpan?.current[i]?.offsetWidth || \"auto\" }}\r\n onClick={handleEditClick}\r\n onChange={(e) => handleEdit(e, i)}\r\n onKeyDown={(e) => handleEditKeydown(e, i)}\r\n onBlur={() => handleEditOnBlur(i)}\r\n value={item}\r\n onDoubleClick={() => removeItem(i)}\r\n className=\"invalid-email-input\"\r\n />\r\n
\r\n ) : (\r\n handleClickItem(i)}\r\n onDelete={() => handleDeleteItem(i)}\r\n disabled={disabled}\r\n />\r\n )\r\n });\r\n }\r\n\r\n return (\r\n
\r\n
\r\n {renderItems()}\r\n
\r\n
\r\n addToChipList()}\r\n />\r\n
\r\n
\r\n {displayClearAll && (\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\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { FeatureButton } from '../access/FeatureButton';\r\nimport { favoriteBrokerDealersActions } from '../../actions/favorite-broker-dealers.actions';\r\nimport { OnHoverTooltip } from '../common/OnHoverTooltip';\r\nimport classNames from 'classnames';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { RoleActionBlocker } from '../access/RoleActionBlocker';\r\nimport { roles } from '../../constants';\r\n\r\ninterface Props {\r\n companyId: number;\r\n disabled?: boolean;\r\n hideWhenNotFavorite?: boolean\r\n}\r\n\r\nexport function FavoriteButton({ companyId, disabled = false, hideWhenNotFavorite = false }: Props) {\r\n const dispatch = useDispatch();\r\n const isFavorite = useSelector((s: AppState) => s.favoriteBrokerDealers.favorites[companyId]);\r\n const isUpdatingFavorite = useSelector((state: AppState) => state.favoriteBrokerDealers.isUpdatingFavorite[companyId]);\r\n\r\n const handleToggleFavorite = (companyId: number, isFavorite: boolean, e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n\r\n if (!isUpdatingFavorite) {\r\n dispatch(favoriteBrokerDealersActions.updateFavoriteBrokerDealerRequest(companyId, isFavorite))\r\n }\r\n };\r\n\r\n const getTitle = () => {\r\n if (disabled) {\r\n return isFavorite ? 'Favorite' : null;\r\n }\r\n return (isFavorite ? \"Remove from favorite\" : \"Add to favorite\");\r\n };\r\n\r\n if (hideWhenNotFavorite && !isFavorite && disabled) return null;\r\n\r\n return (\r\n \r\n \r\n handleToggleFavorite(companyId, isFavorite, e)}\r\n >\r\n {\r\n isFavorite\r\n ? \r\n : \r\n }\r\n \r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport { userStatuses } from '../../constants';\r\nimport { UserStatus } from '../../types/account/UserStatus';\r\nimport { Popover } from '../controls';\r\n\r\ninterface UserStatusDetailsProps {\r\n blockReason?: string;\r\n status: UserStatus;\r\n}\r\n\r\nexport function UserStatusDetails({ blockReason, status }: UserStatusDetailsProps) {\r\n const hasBlockedReason = status === UserStatus.Blocked && blockReason;\r\n\r\n const statusClasses = classNames({\r\n [`first-letter status ${userStatuses.getByStatusCode(status)?.className}`]: true,\r\n 'has-blocked-reason': hasBlockedReason\r\n });\r\n\r\n return (\r\n
\r\n {\r\n hasBlockedReason ? (\r\n {userStatuses.getByStatusCode(status)?.title}\r\n )}\r\n >\r\n
\r\n \r\n {blockReason}\r\n
\r\n \r\n ) : (\r\n {userStatuses.getByStatusCode(status)?.title}\r\n )\r\n }\r\n
\r\n )\r\n}\r\n","import * as React from 'react';\r\nimport IconSVG from \"../../styles/svg-icons\";\r\n\r\ninterface Props {\r\n text: string;\r\n stateDescription?: boolean\r\n duration?: number\r\n}\r\n\r\nexport function CopyToClipboard({ text, stateDescription = false, duration = 500 }: Props) {\r\n const [copyed, setCopyed] = React.useState(false);\r\n\r\n const handleClick = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n if (navigator.clipboard != null) {\r\n navigator.clipboard.writeText(text);\r\n setCopyed(true);\r\n }\r\n else if (window.clipboardData) { // IE 11\r\n window.clipboardData.setData(\"Text\", text);\r\n setCopyed(true);\r\n }\r\n setTimeout(() => setCopyed(false), duration);\r\n }\r\n\r\n return (\r\n
\r\n {\r\n stateDescription\r\n ?\r\n <>\r\n \r\n {copyed ? 'Сopied' : 'Copy Generated Token'}\r\n \r\n : \r\n }\r\n
\r\n );\r\n}\r\n","export enum InvestmentTeamColumn {\r\n status = 'status',\r\n fullName = 'fullName',\r\n title = 'title',\r\n email = 'email',\r\n linkedIn = 'linkedIn',\r\n phoneNumber = 'phoneNumber',\r\n location = 'location',\r\n yrsAtCompany = 'yrsAtCompany',\r\n yrsExperience = 'yrsExperience',\r\n meetingContact = 'meetingContact',\r\n}\r\n","import React from 'react';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\nimport { Pluralize } from './Pluralize';\r\n\r\ninterface Props {\r\n tradedPositionsCount: number;\r\n hideCount?: boolean;\r\n}\r\n\r\nexport const TradedPositionsCountBadge: React.FC = ({ tradedPositionsCount, hideCount }) => tradedPositionsCount\r\n ? (\r\n }>\r\n {!hideCount && tradedPositionsCount}\r\n \r\n )\r\n : null\r\n\r\nTradedPositionsCountBadge.defaultProps = {\r\n hideCount: false\r\n}\r\n","import * as React from 'react';\r\n\r\ninterface Props {\r\n isParsed: boolean\r\n}\r\n\r\nexport function ParsedBwicLabel({ isParsed }: Props) {\r\n return isParsed ? PARSED : null;\r\n}\r\n","import * as React from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { BwicRules, BwicRulesProps } from './BwicRules';\r\nimport { RightSidePanel } from '../controls';\r\nimport { rulesActions } from '../../actions';\r\nimport { useAppDispatch } from '../../effects/useAppDispatch';\r\n\r\ninterface BwicRulesPanelProps extends BwicRulesProps {\r\n onClose?: () => void;\r\n}\r\n\r\nexport function BwicRulesPanel({ onClose, process, parsedProcess, bidsDueDate, goodUntilDate, isParsed, isSameDayBwic, daysToSettle, isMy, isAllToAll, isDirectBidding }: BwicRulesPanelProps) {\r\n const visible: boolean = useSelector(store => store.rules.show);\r\n const dispatch = useAppDispatch();\r\n if (!visible) {\r\n return null;\r\n }\r\n const handleClose = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n dispatch(rulesActions.hide());\r\n\r\n if (onClose) {\r\n onClose();\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import cn from 'classnames';\r\nimport { roles, routes } from '../../constants';\r\nimport { user } from '../../user';\r\nimport { BwicStatus } from '../../types/enums/BwicStatus';\r\nimport { DirectBiddingDesclaimerLink } from '../direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerLink';\r\nimport { useAgreement } from '../seller-buyside/useAgreement';\r\nimport { SettlementAgreementStatus } from '../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { RoleActionBlocker } from '../access/RoleActionBlocker';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\n\r\ninterface Props {\r\n small?: boolean;\r\n text?: string;\r\n emptyPlaceholderText?: string;\r\n referenceName: string;\r\n status?: BwicStatus;\r\n isDirectBidding: boolean;\r\n isParticipant: boolean;\r\n isParsed: boolean;\r\n isMy: boolean;\r\n isAllToAll?: boolean;\r\n disabled?: boolean;\r\n className?: string;\r\n}\r\n\r\nexport function BwicViewLink({\r\n text,\r\n emptyPlaceholderText,\r\n referenceName,\r\n status,\r\n isMy,\r\n isParticipant,\r\n isDirectBidding,\r\n isAllToAll,\r\n disabled,\r\n isParsed,\r\n className,\r\n small }: Props) {\r\n const { agreement } = useAgreement();\r\n\r\n const isSeller = user.hasRoles(...roles.seller());\r\n const isAdmin = user.hasRoles(roles.Administrator);\r\n const isBd = user.hasRoles(...roles.bd());\r\n\r\n const isParsedHidden = isParsed && (isSeller || isAdmin);\r\n const isAllToAllHidden = isAllToAll && isAdmin;\r\n const isSellerHidden = isSeller && !isMy;\r\n const isHiddenForSettlementAgent = isAllToAll && user.current()?.isClearingBank;\r\n\r\n\r\n if (isHiddenForSettlementAgent) {\r\n return emptyPlaceholderText ?\r\n (\r\n {emptyPlaceholderText}\r\n )\r\n : null\r\n }\r\n\r\n if (isParsedHidden || isAllToAllHidden || isSellerHidden || isHiddenForSettlementAgent) {\r\n return emptyPlaceholderText ? <>{emptyPlaceholderText} : null;\r\n }\r\n\r\n const isScheduled = status === BwicStatus.scheduled;\r\n const isBidding = status === BwicStatus.bidding;\r\n const hasSignedAgreement = agreement?.agreementStatus === SettlementAgreementStatus.confirmed;\r\n const isBdBuyer = isBd && hasSignedAgreement;\r\n\r\n const canSubmitBid = isBd && user.hasRoles(roles.BrokerDealerTrader);\r\n\r\n const getAppearance = () => {\r\n if (text) return { text, className: \"\" };\r\n\r\n const bid = { text: \"bid\", className: \"btn btn-main width-64\" };\r\n const addPxTalk = { text: \"Px Talk\", className: \"btn btn-ghost width-64\" };\r\n const view = { text: \"view\", className: \"btn btn-ghost width-64\" };\r\n\r\n if (isScheduled && isBd && (!isAllToAll || !hasSignedAgreement) && canSubmitBid) return addPxTalk;\r\n if (isAllToAll && isBdBuyer && (isBidding || isScheduled) && !isMy && canSubmitBid) return bid;\r\n if (!isAllToAll && isBd && isParticipant && isBidding && canSubmitBid) return bid;\r\n return view;\r\n }\r\n\r\n const appearance = getAppearance();\r\n\r\n return (\r\n \r\n {disabledByRole => (\r\n \r\n )}\r\n \r\n );\r\n}","import React, { useEffect, useState, PropsWithChildren } from 'react';\r\nimport classNames from 'classnames';\r\nimport { ClickOutside } from './ClickOutside';\r\n\r\ninterface Props {\r\n visible: boolean;\r\n onHide: (e: MouseEvent) => void;\r\n className: string;\r\n timeout?: number\r\n}\r\n\r\nexport const SlideDownPanel: React.FC> = ({ visible, children, onHide, className, timeout = 500 }) => {\r\n const [internalVisible, setInternalVisible] = useState(visible);\r\n\r\n useEffect(() => {\r\n if (visible !== internalVisible) {\r\n setTimeout(() => setInternalVisible(visible), timeout);\r\n }\r\n }, [visible, internalVisible, timeout]);\r\n\r\n const panelClassNames = classNames(className, { 'show': visible });\r\n\r\n return (\r\n
\r\n {\r\n (visible || internalVisible) &&\r\n {children}\r\n }\r\n
\r\n );\r\n};\r\n","import React, { Suspense, lazy, useState } from 'react';\r\nimport { Preloader } from './Preloader';\r\n\r\nconst ReactPlayer = lazy(() => import('react-player'));\r\n\r\ninterface Props {\r\n url: string;\r\n width?: number;\r\n height?: number\r\n controls?: boolean\r\n}\r\n\r\nexport const Player = ({ url, width, height, controls = true }: Props) => {\r\n const [isReady, setIsReady] = useState(false);\r\n return (\r\n
\r\n }>\r\n {!isReady && }\r\n setIsReady(true)}\r\n />\r\n \r\n
\r\n )\r\n}\r\n","import * as React from 'react';\r\nimport { useBrokerDealers } from '../../effects/useBrokerDealers';\r\nimport { AutoCompleteInput, FormError, Popup, PopupBody, PopupFooter } from '../controls';\r\nimport { Preloader } from '../common/Preloader';\r\nimport { FormFieldLabel } from '../forms/FormFieldLabel';\r\nimport { CompanySlim } from '../../types/company/CompanySlim';\r\nimport { isRequesting, isRequestNone } from '../../utils';\r\nimport { errorMessages } from '../../constants';\r\n\r\ninterface Props {\r\n onSelected: (company: CompanySlim) => void;\r\n onCancel: () => void;\r\n}\r\n\r\nexport function SelectBrokerDealerPopup({ onSelected, onCancel }: Props) {\r\n const { items, requestState } = useBrokerDealers();\r\n\r\n const [companyName, setCompanyName] = React.useState(\"\");\r\n const [errorMessage, setErrorMessage] = React.useState(\"\");\r\n\r\n const sourceItems = React.useMemo(() => items.map(i => i.name), [items]);\r\n\r\n const validate = (companyName: string) => {\r\n if (!companyName) return { errorMessage: errorMessages.empty };\r\n\r\n const company = items.find(c => c.name.localeCompare(companyName, undefined, { sensitivity: 'accent' }) === 0);\r\n if (!company) return { errorMessage: errorMessages.invalidValue };\r\n\r\n return { errorMessage: \"\", company };\r\n }\r\n\r\n const handleClick = () => {\r\n const { errorMessage, company } = validate(companyName);\r\n\r\n setErrorMessage(errorMessage);\r\n\r\n if (company) {\r\n onSelected(company);\r\n }\r\n }\r\n\r\n const handleCompanyChange = (name: string) => {\r\n setCompanyName(name);\r\n\r\n if (errorMessage) {\r\n const validationResult = validate(name);\r\n setErrorMessage(validationResult.errorMessage);\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Apply\r\n \r\n \r\n \r\n );\r\n}\r\n","import * as React from 'react';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nexport function SameDayBwicIcon() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { changeColorActions as actions } from '../../actions';\r\nimport { levelSpecifications, pxTalkLevelTypes } from '../../constants';\r\nimport { ButtonSwitch } from '../controls';\r\nimport { stringUtils } from '../../utils';\r\nimport { classnames } from '../../styles/classnames';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nclass ChangeColor extends Component {\r\n\r\n state = {\r\n changed: false\r\n };\r\n\r\n render = () => {\r\n const { ticker, color, errors, saveButtonText, onDelete, dispatch } = this.props;\r\n const formControlClasses = classnames({\r\n 'form-control': true,\r\n 'is-invalid': !!errors.level || !!errors.color\r\n });\r\n\r\n if (!color) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n {!stringUtils.isNullOrEmpty(ticker) &&

Color for {ticker}

}\r\n {stringUtils.isNullOrEmpty(ticker) &&

Change color

}\r\n \r\n
\r\n
\r\n
\r\n
\r\n dispatch(actions.tradedChange(traded))}\r\n className=\"control-group-type01\"\r\n />\r\n
\r\n
\r\n dispatch(actions.levelSpecificationChange(levelSpecification))}\r\n className=\"control-group-type01\"\r\n />\r\n
\r\n
\r\n \r\n
\r\n \r\n {(!!errors.level || !!errors.color) &&
{errors.level || errors.color}
}\r\n
\r\n {color.normalizedLevel != null &&
{color.normalizedLevel} Normalized
}\r\n
\r\n
\r\n dispatch(actions.levelTypeChange(levelType))}\r\n className=\"control-group-type01\"\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 !color.isNew &&\r\n onDelete != null &&\r\n \r\n \r\n Delete\r\n \r\n }\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n handleSave = () => {\r\n const { onSave, dispatch } = this.props;\r\n\r\n dispatch(actions.waitNormalizing(onSave));\r\n }\r\n\r\n handleCancel = () => {\r\n const { onCancel, dispatch } = this.props;\r\n\r\n dispatch(actions.reset());\r\n\r\n if (onCancel) {\r\n onCancel();\r\n }\r\n }\r\n\r\n handleLevelChange = e => {\r\n this.setState({ changed: true });\r\n this.props.dispatch(actions.levelChange(e.target.value))\r\n }\r\n\r\n handleDmChange = e => {\r\n const { value } = e.target;\r\n if (value.search(/[^\\d]/g) === -1) {\r\n this.props.dispatch(actions.setDm(value));\r\n }\r\n }\r\n\r\n handleLevelBlur = () => {\r\n const { color, dispatch } = this.props;\r\n\r\n if (this.state.changed) {\r\n this.setState({ changed: false });\r\n dispatch(actions.normalizeLevel(color.level, color.levelType));\r\n }\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({ changeColor }) => ({\r\n ticker: changeColor.ticker,\r\n color: changeColor.color,\r\n errors: changeColor.errors\r\n});\r\n\r\nconst connectedChangeColor = connect(mapStateToProps)(ChangeColor);\r\nexport { connectedChangeColor as ChangeColor };\r\n","import { useDispatch } from 'react-redux';\r\nimport { saveAs } from 'file-saver';\r\nimport { OriginatingTransaction } from '../../../../types/amr-pipeline/models/OriginatingTransaction';\r\nimport { useEffect, useState } from 'react';\r\nimport { RequestState } from '../../../../constants/request-state';\r\nimport { amrPipelineService } from '../../../../services/amr-pipeline.service';\r\nimport { isRequestNone } from '../../../../utils';\r\nimport { DealSecurityStatistics } from '../../../../types/security/DealSecurityStatistics';\r\nimport { bwicDealsService } from '../../../../services';\r\nimport { errorActions } from '../../../../actions';\r\nimport { compareClassName, compareDates, compareEmpty } from '../../../../utils/compare.utils';\r\n\r\nexport function useLatestDealTransactions(companyReferenceName?: string) {\r\n const [requestState, setRequestState] = useState(RequestState.none);\r\n const [transactions, setTransactions] = useState([]);\r\n\r\n useEffect(() => {\r\n if (companyReferenceName && isRequestNone(requestState)) {\r\n const doRequest = async () => {\r\n setRequestState(RequestState.request);\r\n try {\r\n const transactions = await amrPipelineService.getLatestTransactions(companyReferenceName);\r\n setTransactions(transactions)\r\n setRequestState(RequestState.success);\r\n } catch (e) {\r\n setRequestState(RequestState.failure);\r\n }\r\n }\r\n\r\n doRequest();\r\n }\r\n }, [requestState, companyReferenceName])\r\n\r\n return { requestState, transactions };\r\n}\r\n\r\nexport function useDealSecurityStatistics(dealTickers: string[], disabled: boolean = false) {\r\n const [requestState, setRequestState] = useState(RequestState.none);\r\n const [statistics, setStatistics] = useState([]);\r\n\r\n const resetFlag = JSON.stringify(dealTickers.sort());\r\n\r\n useEffect(() => {\r\n setStatistics([]);\r\n setRequestState(RequestState.none);\r\n }, [resetFlag]);\r\n\r\n useEffect(() => {\r\n if (!disabled && dealTickers.length && isRequestNone(requestState)) {\r\n const doRequest = async () => {\r\n setRequestState(RequestState.request);\r\n try {\r\n const statistics: DealSecurityStatistics[] = await bwicDealsService.getDealSecurityStatistics(dealTickers);\r\n const sorted = statistics.map(s => ({\r\n ...s,\r\n classes: s.classes?.sort((a, b) =>\r\n compareEmpty(a.closingDate, b.closingDate) || // put classes without closing date down\r\n compareDates(b.closingDate, a.closingDate) ||\r\n compareClassName(a.name, b.name)\r\n )\r\n }))\r\n setStatistics(sorted)\r\n setRequestState(RequestState.success);\r\n } catch (e) {\r\n setRequestState(RequestState.failure);\r\n }\r\n }\r\n\r\n doRequest();\r\n }\r\n }, [dealTickers, disabled, requestState])\r\n\r\n return { requestState, statistics };\r\n}\r\n\r\nexport function useDownloadDealSecurityDocuments() {\r\n const dispatch = useDispatch();\r\n const [requestState, setRequestState] = useState(RequestState.none);\r\n\r\n\r\n const downloadCallback = async (dealTicker: string, dealName: string) => {\r\n try {\r\n setRequestState(RequestState.request);\r\n const document = await bwicDealsService.downloadDealSecurityDocuments(dealTicker, dealName ?? 'docs');\r\n setRequestState(RequestState.success);\r\n saveAs(document.blob, document.name);\r\n } catch (e) {\r\n setRequestState(RequestState.failure);\r\n dispatch(errorActions.unexpectedError(e));\r\n }\r\n }\r\n\r\n return { downloadCallback, requestState };\r\n}\r\n","import { useDispatch } from 'react-redux';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { TickerButton } from '../../../common/TickerButton';\r\nimport { DealSecurityTableItem } from './columns';\r\n\r\ninterface Props {\r\n security: DealSecurityTableItem;\r\n}\r\n\r\nexport const DealsTickerButton = ({ security }: Props) => {\r\n const dispatch = useDispatch();\r\n\r\n return (\r\n dispatch(cloManagersActions.selectedSecurityChange(security))}\r\n />\r\n )\r\n}\r\n","import moment from \"moment\";\r\nimport cn from \"classnames\";\r\nimport { SORTING_TYPE, constants, pipelineColumnLabels, pipelineTooltipText, routes } from \"../../../../constants\";\r\nimport { OriginatingTransaction } from \"../../../../types/amr-pipeline/models/OriginatingTransaction\";\r\nimport { PipelineColumn } from \"../../../amrPipeline/types/PipelineColumn\";\r\nimport { IColumnDefinition } from \"../../../bidding/common/table/types/ColumnDefinition\";\r\nimport { ColumnBuilder } from \"../../../bidding/common/table/columns/column-builder/ColumnBuilder\";\r\nimport StatusLabel from \"../../../amrPipeline/StatusLabel\";\r\nimport { TransactionStatus, transactionStatusTitles } from \"../../../../types/amr-pipeline/enums/TransactionStatus\";\r\nimport { isNil, startCase } from \"lodash\";\r\nimport { BwicStatusLabel, OnHoverTooltip } from \"../../../common\";\r\nimport { dateTimeUtils, formatUtils, moneyUtils } from \"../../../../utils\";\r\nimport IconSVG from \"../../../../styles/svg-icons\";\r\nimport { NewDebutAmrLabel } from \"../../../amrPipeline/common/NewDebutAmrLabel\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { getTransactionDetailsUrl } from \"../../../../utils/amr-pipeline.utils\";\r\nimport { DealSecurity, DealSecurityStatistics } from \"../../../../types/security/DealSecurityStatistics\";\r\nimport { BwicProcessType } from \"../../../../types/models/Process\";\r\nimport { Color } from \"../../../common/Color\";\r\nimport { collapseStickRightColumn } from \"../../../bidding/common/table/CollapseStickRightColumn\";\r\nimport { IntexLink } from \"../../../common/IntexLink\";\r\nimport { BloombergLink } from \"../../../common/BloombergLink\";\r\nimport { ValitanaLink } from \"../../../common/ValitanaLink\";\r\nimport { isinCusip as createIsinCusip, isinCusip } from \"../../../../types/security/Security\";\r\nimport { IntexButton } from \"../../../amrPipeline/aggregated/IntexButton/IntexButton\";\r\nimport { Company } from \"../../../../types/amr-pipeline/models/Company\";\r\nimport { DealsTickerButton } from './DealsTickerButton';\r\nimport { DealUpdatesPopover } from '../../../amrPipeline/aggregated/DealUpdatesPopover';\r\nimport { MyBwicIcon } from \"../../../common/MyBwicIcon\";\r\nimport { ActionBlocker } from '../../../access/ActionBlocker';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { BankLink } from \"../../../amrPipeline/common/BankLink\";\r\nimport { SecurityLastTradedDate } from \"../../../common/SecurityLastTradedDate\";\r\nimport { ViewDealDocumentsButton } from \"../../../documents/deal-documents-popup/ViewDealDocumentButton\";\r\nimport { BwicMonitorLookupLink } from \"../../../common/BwicMonitorLookupLink\";\r\n\r\ntype TContext = {\r\n trackDoorClick: () => void;\r\n trackIntexClick: () => void;\r\n setTransactionForIntex: (transaction: OriginatingTransaction) => void;\r\n userCompany: Company;\r\n}\r\n\r\nexport interface DealSecurityTableItem extends DealSecurity {\r\n dealReferenceName: string;\r\n dealLegalName: string;\r\n isinCusip?: string;\r\n}\r\n\r\nexport const convertToDealSecurityTableItem = (\r\n security: DealSecurity,\r\n transaction: OriginatingTransaction): DealSecurityTableItem => ({\r\n ...security,\r\n dealReferenceName: transaction.dealReferenceName,\r\n dealLegalName: transaction.legalNameOnDeal,\r\n isinCusip: createIsinCusip(security)\r\n });\r\n\r\ninterface OriginatingTransactionTableItem extends OriginatingTransaction {\r\n arrangerText?: string;\r\n ncEndYears?: string;\r\n riEndYears?: string;\r\n}\r\n\r\nexport const convertToTableItem = (t: OriginatingTransaction): OriginatingTransactionTableItem => ({\r\n ...t,\r\n arrangerText: t.arranger?.code ?? t.arranger?.legalName,\r\n ncEndYears: dateTimeUtils.yrsLeftToDateFrom(t.nonCallPeriodEnd, t.closingDate, false) || undefined,\r\n riEndYears: dateTimeUtils.yrsLeftToDateFrom(t.reinvestmentPeriodEnd, t.closingDate, false) || undefined\r\n});\r\n\r\n// Deal columns ------------------------------------------------------------------------\r\n\r\nexport const isNewColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.isNew,\r\n renderColumnHeaderContent: () => \"\",\r\n renderColumnContent: (transaction) => ,\r\n className: 'data-list-cell-xxs padding-l-0'\r\n};\r\n\r\nexport const createLastUpdatedColumn = (features?: SubscriptionFeature[]): IColumnDefinition => ({\r\n columnKey: PipelineColumn.lastUpdated,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.lastUpdated],\r\n renderColumnContent: (transaction, { onLastUpdatedClick, onVersionHistoryClick }) => (\r\n \r\n {blocked =>\r\n \r\n }\r\n \r\n ),\r\n className: 'data-list-cell-sm-01',\r\n sortingField: \"lastUpdated\",\r\n sortingType: SORTING_TYPE.date\r\n});\r\n\r\nexport const dealNameColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.legalNameOnDeal,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.legalNameOnDeal],\r\n renderColumnContent: transaction => transaction.legalNameOnDeal,\r\n className: 'data-list-cell-xl-xxl',\r\n sortingField: 'legalNameOnDeal',\r\n sortingType: SORTING_TYPE.string\r\n};\r\n\r\nexport const dealTickerColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.dealTicker,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.dealTicker],\r\n renderColumnContent: transaction => transaction.dealTicker || constants.emptyPlaceholder,\r\n className: 'data-list-cell-lg',\r\n sortingField: 'dealTicker',\r\n sortingType: SORTING_TYPE.string\r\n};\r\n\r\nexport const transactionStatusColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.transactionStatus,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.transactionStatus],\r\n renderColumnContent: transaction => ,\r\n sortingField: 'status',\r\n sortingType: SORTING_TYPE.string,\r\n};\r\n\r\nexport const transactionTypeColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.transactionType,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.transactionType],\r\n renderColumnContent: transaction => startCase(transaction.type),\r\n sortingField: 'type',\r\n sortingType: SORTING_TYPE.string\r\n};\r\n\r\nexport const transactionCollateralTypeColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.collateralType,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.collateralType],\r\n renderColumnContent: transaction => formatUtils.formatCollateralType(transaction.collateralType),\r\n sortingField: 'collateralType',\r\n sortingType: SORTING_TYPE.string\r\n};\r\n\r\nexport const transactionCurrencyColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.currency,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.currency],\r\n renderColumnContent: transaction => transaction.currency?.code || constants.emptyPlaceholder,\r\n sortingField: 'currency',\r\n sortingType: SORTING_TYPE.transactionCurrency,\r\n};\r\n\r\nconst arrangerColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.arranger,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.arranger],\r\n renderColumnContent: ({ arranger, arrangerText }) =>\r\n arranger && arrangerText\r\n ? (\r\n \r\n ) : constants.emptyPlaceholder,\r\n sortingField: \"arrangerText\",\r\n sortingType: SORTING_TYPE.string\r\n};\r\n\r\nexport const transactionSizeColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.transactionSize,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.dealSize],\r\n renderColumnContent: transaction => transaction.dealBalance\r\n ? moneyUtils.money(transaction.dealBalance)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-md text-right',\r\n sortingField: \"dealBalance\",\r\n sortingType: SORTING_TYPE.number\r\n};\r\n\r\nexport const pricingDateColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.pricingDate,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.pricingDate],\r\n renderColumnContent: transaction =>\r\n transaction.pricingDate\r\n ? moment(transaction.pricingDate).format(constants.dateFormat)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm',\r\n sortingField: \"pricingDate\",\r\n sortingType: SORTING_TYPE.date\r\n};\r\n\r\nexport const closingDateColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.closingDate,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.closingDate],\r\n renderColumnContent: transaction =>\r\n transaction.closingDate\r\n ? moment(transaction.closingDate).format(constants.dateFormat)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm',\r\n sortingField: \"closingDate\",\r\n sortingType: SORTING_TYPE.date\r\n};\r\n\r\nexport const nonCallPeriodEndColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.nonCallPeriodEnd,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.nonCallPeriodEnd],\r\n renderColumnContent: ({ nonCallPeriodEnd }) =>\r\n nonCallPeriodEnd\r\n ? moment(nonCallPeriodEnd).format(constants.dateFormatDoubleDay)\r\n : constants.emptyPlaceholder,\r\n sortingField: PipelineColumn.nonCallPeriodEnd,\r\n sortingType: SORTING_TYPE.date,\r\n className: \"data-list-cell-sm\",\r\n};\r\n\r\nexport const nonCallPeriodEndYrsColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.nonCallPeriodEndYears,\r\n renderColumnHeaderContent: () =>\r\n \r\n {pipelineColumnLabels[PipelineColumn.nonCallPeriodEndYears]}\r\n \r\n ,\r\n renderColumnContent: ({ ncEndYears }) => ncEndYears || constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n sortingField: \"ncEndYears\",\r\n sortingType: SORTING_TYPE.number\r\n};\r\n\r\nexport const outOfNcColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.outOfNC,\r\n renderColumnHeaderContent: () =>\r\n \r\n {pipelineColumnLabels[PipelineColumn.outOfNC]}\r\n \r\n ,\r\n renderColumnContent: ({ outOfNC }) =>\r\n isNil(outOfNC)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatBoolean(outOfNC),\r\n sortingField: PipelineColumn.outOfNC,\r\n sortingType: SORTING_TYPE.booleanAndNull,\r\n className: 'data-list-cell-sm text-capitalize',\r\n};\r\n\r\nexport const reinvestmentPeriodEndColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.reinvestmentPeriodEnd,\r\n renderColumnHeaderContent: () => pipelineColumnLabels[PipelineColumn.reinvestmentPeriodEnd],\r\n renderColumnContent: ({ reinvestmentPeriodEnd }) =>\r\n reinvestmentPeriodEnd\r\n ? moment(reinvestmentPeriodEnd).format(constants.dateFormatDoubleDay)\r\n : constants.emptyPlaceholder,\r\n sortingField: PipelineColumn.reinvestmentPeriodEnd,\r\n sortingType: SORTING_TYPE.date,\r\n className: \"data-list-cell-sm\",\r\n};\r\n\r\nexport const reinvestmentPeriodEndYrsColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.reinvestmentPeriodEndYears,\r\n renderColumnHeaderContent: () =>\r\n \r\n {pipelineColumnLabels[PipelineColumn.reinvestmentPeriodEndYears]}\r\n \r\n ,\r\n renderColumnContent: ({ riEndYears }) => riEndYears || constants.emptyPlaceholder,\r\n sortingField: \"riEndYears\",\r\n sortingType: SORTING_TYPE.number,\r\n className: \"data-list-cell-sm text-right\",\r\n};\r\n\r\nexport const outOfRiColumn: IColumnDefinition = {\r\n columnKey: PipelineColumn.outOfRI,\r\n renderColumnHeaderContent: () =>\r\n \r\n {pipelineColumnLabels[PipelineColumn.outOfRI]}\r\n \r\n ,\r\n renderColumnContent: ({ outOfRI }) =>\r\n isNil(outOfRI)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatBoolean(outOfRI),\r\n sortingField: PipelineColumn.outOfRI,\r\n sortingType: SORTING_TYPE.booleanAndNull,\r\n className: 'data-list-cell-sm text-capitalize',\r\n};\r\n\r\nconst downloadDocumentsColumn: IColumnDefinition = {\r\n columnKey: 'download-documents',\r\n renderColumnHeaderContent: () => 'Docs',\r\n renderColumnContent: (transaction, context) => {\r\n const security =\r\n transaction.hasDocuments && transaction.dealTicker\r\n ? context.securities.find(\r\n (s) => s.ticker === transaction.dealTicker\r\n )\r\n : null;\r\n\r\n const firstSecurity = security?.classes[0];\r\n const isinCusipValue = firstSecurity\r\n ? isinCusip(firstSecurity)\r\n : undefined;\r\n\r\n if (!firstSecurity) {\r\n return constants.emptyPlaceholder;\r\n }\r\n\r\n return (\r\n
e.stopPropagation()}>\r\n \r\n
\r\n );\r\n },\r\n className: 'data-list-cell-lg data-list-cell-download-deal-documents',\r\n sortingField: \"hasDocuments\",\r\n sortingType: SORTING_TYPE.boolean\r\n};\r\n\r\nexport const dealIntexColumn: IColumnDefinition = {\r\n columnKey: 'dealIntex',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: (transaction, context) => (\r\n \r\n ),\r\n className: 'data-list-cell-xxs text-right padding-r-0',\r\n stickRight: true,\r\n};\r\n\r\nexport const createRelatedTransactionsColumn = (features?: SubscriptionFeature[]): IColumnDefinition => ({\r\n columnKey: 'relatedTransactions',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: transaction => {\r\n if (transaction.numberOfDealPublishedTransactions <= 1) {\r\n return ({constants.emptyPlaceholder});\r\n }\r\n\r\n return (\r\n \r\n {blocked => blocked ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n e.stopPropagation()}\r\n >\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n },\r\n headerClassName: 'data-list-cell-auto text-right',\r\n bodyClassName: 'data-list-cell-xxs text-right',\r\n stickRight: true,\r\n});\r\n\r\nexport const createGoToColumn = (features?: SubscriptionFeature[]): IColumnDefinition => ({\r\n columnKey: \"goTo\",\r\n renderColumnHeaderContent: () => \"Actions\",\r\n renderColumnContent: (transaction, context) =>\r\n \r\n {blocked => blocked ? (\r\n \r\n ) : (\r\n \r\n {\r\n e.stopPropagation();\r\n context.trackDoorClick && context.trackDoorClick();\r\n }}\r\n >\r\n \r\n \r\n \r\n )}\r\n ,\r\n headerClassName: 'data-list-cell-xxs-02 text-right padding-r-0',\r\n bodyClassName: 'data-list-cell-xxs text-right padding-r-0',\r\n stickRight: true\r\n});\r\n\r\nexport const dealOptionsColumn: IColumnDefinition = {\r\n columnKey: 'deal-options',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: () => '',\r\n headerClassName: 'data-list-cell-xxs',\r\n bodyClassName: 'data-list-cell-xxxs',\r\n stickRight: true\r\n};\r\n\r\nexport const dealColumns = [\r\n isNewColumn,\r\n createLastUpdatedColumn([SubscriptionFeature.ManagerProfileDeals, SubscriptionFeature.IssuanceMonitorHistoricalData]),\r\n dealNameColumn,\r\n dealTickerColumn,\r\n downloadDocumentsColumn,\r\n transactionStatusColumn,\r\n transactionTypeColumn,\r\n transactionCollateralTypeColumn,\r\n transactionCurrencyColumn,\r\n arrangerColumn,\r\n transactionSizeColumn,\r\n pricingDateColumn,\r\n closingDateColumn,\r\n nonCallPeriodEndColumn,\r\n nonCallPeriodEndYrsColumn,\r\n outOfNcColumn,\r\n reinvestmentPeriodEndColumn,\r\n reinvestmentPeriodEndYrsColumn,\r\n outOfRiColumn,\r\n collapseStickRightColumn,\r\n dealOptionsColumn,\r\n dealIntexColumn,\r\n createGoToColumn([SubscriptionFeature.ManagerProfileDeals, SubscriptionFeature.IssuanceMonitorHistoricalData]),\r\n createRelatedTransactionsColumn([SubscriptionFeature.ManagerProfileDeals, SubscriptionFeature.IssuanceMonitorMarketingHistory]),\r\n].map((c) => new ColumnBuilder(c));\r\n\r\n\r\n// Security columns ----------------------------------------------------------------------\r\n\r\nconst ticker: IColumnDefinition = {\r\n columnKey: 'ticker',\r\n renderColumnHeaderContent: () => 'Ticker',\r\n renderColumnContent: security => ,\r\n className: 'data-list-cell-lg-02',\r\n sortingField: 'ticker',\r\n sortingType: SORTING_TYPE.string\r\n};\r\nconst myBwic: IColumnDefinition = {\r\n columnKey: 'is-my-bwic',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: security => security.currentBwic ? (\r\n \r\n ) : null,\r\n className: 'data-list-cell-xxs',\r\n};\r\nconst currentBWIC: IColumnDefinition = {\r\n columnKey: 'current-bwic',\r\n renderColumnHeaderContent: () => 'Current BWIC',\r\n renderColumnContent: security => security.currentBwic ? (\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n ) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-xl-xxl'\r\n};\r\nconst lastTraded: IColumnDefinition = {\r\n columnKey: 'last-traded',\r\n renderColumnHeaderContent: () => 'Last Traded',\r\n renderColumnContent: security =>\r\n (\r\n \r\n {(isInventoryDate, lastTradeDate) => lastTradeDate ? moment(lastTradeDate).format(constants.dateFormat) : constants.emptyPlaceholder}\r\n \r\n ),\r\n className: 'data-list-cell-sm-01',\r\n sortingField: 'lastTraded.bidsDueUtc',\r\n sortingType: SORTING_TYPE.date\r\n\r\n};\r\nconst lastTradedColor: IColumnDefinition = {\r\n columnKey: 'last-traded-color',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: security => (\r\n \r\n {\r\n (isInventoryDate) =>\r\n security.lastTraded?.color && !isInventoryDate\r\n ? \r\n : null\r\n }\r\n ),\r\n className: 'data-list-cell-md'\r\n};\r\nconst securityClosingDate: IColumnDefinition = {\r\n columnKey: 'closing-date',\r\n renderColumnHeaderContent: () => 'Closing',\r\n renderColumnContent: s => s.closingDate\r\n ? moment(s.closingDate).format(constants.dateFormat)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm-flexible',\r\n sortingField: 'closingDate',\r\n sortingType: SORTING_TYPE.date\r\n};\r\nconst collaspsePlaceholder: IColumnDefinition = {\r\n columnKey: 'collapse-placeholder',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: () => '',\r\n className: 'data-list-cell-xxs data-list-cell-icon-collapsed'\r\n};\r\nconst intex: IColumnDefinition = {\r\n columnKey: 'intex',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: (security, context) => {\r\n if (!security.isinCusip) {\r\n return constants.emptyPlaceholder\r\n }\r\n\r\n return (\r\n \r\n );\r\n },\r\n\r\n className: 'data-list-cell-xxs text-right padding-r-0 flex-item-right'\r\n};\r\nconst bloomberg: IColumnDefinition = {\r\n columnKey: 'bloomberg',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: security => (\r\n \r\n ),\r\n headerClassName: 'data-list-cell-xxxs text-right padding-r-0',\r\n className: 'data-list-cell-xxs text-right padding-r-0'\r\n};\r\nconst valitana: IColumnDefinition = {\r\n columnKey: 'valitana',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: security => (\r\n \r\n ),\r\n className: 'data-list-cell-xxs text-right'\r\n}\r\n\r\nexport const securityColumns = {\r\n left: [],\r\n middle: [\r\n ticker, myBwic, currentBWIC, lastTraded, lastTradedColor, securityClosingDate].map(c => new ColumnBuilder(c)),\r\n right: [collaspsePlaceholder, intex, bloomberg, valitana].map(c => new ColumnBuilder(c))\r\n};\r\n","import IconSVG from \"../../styles/svg-icons\";\r\nimport { generateIntexLink } from \"../../utils/amr-pipeline.utils\";\r\nimport cn from 'classnames';\r\nimport { OnHoverTooltip } from \"./OnHoverTooltip\";\r\nimport { logger } from \"../../logging/logger\";\r\nimport { SubscriptionFeature } from \"../../types/billing/SubscriptionFeature\";\r\nimport { ActionBlocker } from \"../access/ActionBlocker\";\r\n\r\ntype Props = {\r\n positionId?: string,\r\n text?: string;\r\n className?: string;\r\n onClick?: () => void;\r\n disabled?: boolean;\r\n overrideRequiredFeature?: boolean;\r\n}\r\n\r\nexport function IntexLink({\r\n positionId,\r\n text,\r\n className,\r\n onClick,\r\n disabled = false,\r\n overrideRequiredFeature,\r\n}: Props) {\r\n if (disabled) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {\r\n blocked =>\r\n \r\n {\r\n e.stopPropagation()\r\n logger.trace('User clicked the Intex button');\r\n if (onClick) {\r\n onClick();\r\n }\r\n }}\r\n >\r\n \r\n {!!text && text}\r\n \r\n \r\n }\r\n \r\n );\r\n}\r\n","import cn from \"classnames\";\r\nimport IconSVG from \"../../styles/svg-icons\";\r\nimport { ParsedBwicProcess } from \"../../types/models/ParsedBwicProcess\";\r\nimport { BwicProcessType, Process } from \"../../types/models/Process\";\r\nimport { formatUtils } from \"../../utils/format.utils\";\r\n\r\ninterface BwicRulesButtonProps {\r\n className?: string;\r\n isParsed: boolean;\r\n process: Process;\r\n parsedProcess?: ParsedBwicProcess;\r\n withIcon?: boolean;\r\n showLabel?: boolean;\r\n onClick: (e: React.MouseEvent) => void;\r\n}\r\n\r\nexport const BwicRulesPseudoLink = ({ className, isParsed, process, parsedProcess, withIcon = false, showLabel = true, onClick }: BwicRulesButtonProps) => {\r\n const processType = isParsed ? parsedProcess?.processType : process.type;\r\n const btnTypeClassName = withIcon ? \"btn-link\" : \"pseudo-link\";\r\n\r\n return (\r\n \r\n )\r\n}","import React, { useLayoutEffect, useRef } from 'react';\r\nimport { scrollIntoView } from 'seamless-scroll-polyfill';\r\n\r\ninterface Props {\r\n children: React.ReactNode;\r\n className?: string;\r\n disabled?: boolean;\r\n}\r\n\r\nexport const ScrollIntoView = ({ children, className, disabled = true }: Props) => {\r\n const containerRef = useRef(null);\r\n useLayoutEffect(() => {\r\n\r\n if (!disabled && containerRef.current) {\r\n scrollIntoView(containerRef.current, { block: 'center', inline: 'center', behavior: 'smooth' })\r\n }\r\n // eslint-disable-next-line\r\n }, []);\r\n\r\n return
{children}
\r\n}\r\n","import classNames from 'classnames';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { OnHoverTooltip } from '../OnHoverTooltip';\r\n\r\ninterface Props {\r\n withInfoButton?: boolean;\r\n}\r\n\r\nexport const EvalKTalkLabel = ({ withInfoButton = false }: Props) => {\r\n const tooltipOverlay = (\r\n
\r\n K-Talk is KopenTech's proprietary BWICs (Bids Wanted in Competition) price talk tool.\r\n Utilizing diverse datasets, including both primary and secondary market data,\r\n K-Talk provides price talks calibrated to reflect broad market activity.\r\n Values are regularly updated on business days.\r\n
\r\n );\r\n\r\n return (\r\n
\r\n
\r\n \r\n K-Talk\r\n {withInfoButton &&\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\ninterface Props {\r\n singular: string;\r\n plural?: string;\r\n count: number;\r\n template?: string;\r\n}\r\n\r\nexport function Pluralize({ singular, plural, count, template = '{{count}} {{text}}' }: Props) {\r\n const renderString = (text: string) => template.replace('{{count}}', String(count)).replace('{{text}}', text);\r\n\r\n return <>{count === 1 ? renderString(singular) : renderString(plural ?? singular + 's')};\r\n}\r\n","import moment from 'moment';\r\nimport { routes } from '../../constants';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../access/ActionBlocker';\r\nimport { FeatureLink } from '../access/FeatureLink';\r\n\r\ninterface Props {\r\n ticker: string\r\n text?: string\r\n}\r\n\r\nexport const BwicMonitorLookupLink = ({ ticker, text = \"View BWIC\" }: Props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n","import { createContext, useContext, useEffect, useLayoutEffect, useRef, useState } from \"react\";\r\nimport { v4 as uuid } from 'uuid';\r\n\r\ntype TVisibilityChangeCallback = (visible: boolean) => void\r\n\r\ninterface IContext {\r\n observe: (target: Element, onVisibilityChange: TVisibilityChangeCallback) => void\r\n unobserve: (target: Element) => void\r\n}\r\n\r\nexport const IntersectionObserverContext = createContext(null);\r\n\r\ninterface Props {\r\n disabled?: boolean;\r\n options?: IntersectionObserverInit;\r\n children: React.ReactNode;\r\n}\r\nexport function IntersectionObserverProvider({ disabled, options, children }: Props) {\r\n const handler = (entries: IntersectionObserverEntry[]) => {\r\n entries.forEach(e => {\r\n const visible = typeof e.isIntersecting === 'undefined'\r\n ? e.intersectionRatio > 0\r\n : e.isIntersecting;\r\n\r\n observableHandlers.current.get(e.target.id)?.(visible);\r\n });\r\n }\r\n\r\n const observerRef = useRef(new IntersectionObserver(handler, options));\r\n const observableHandlers = useRef(new Map());\r\n\r\n useEffect(() => {\r\n const observer = observerRef.current;\r\n return () => {\r\n observer?.disconnect();\r\n }\r\n }, [])\r\n\r\n if(disabled) return <>{children}\r\n\r\n const observe = (target: Element, onVisibilityChange: TVisibilityChangeCallback) => {\r\n if (!target.id) throw new Error(\"element.id is required\");\r\n\r\n observableHandlers.current.set(target.id, onVisibilityChange);\r\n observerRef.current.observe(target)\r\n }\r\n\r\n const unobserve = (target: Element) => {\r\n if (!observerRef.current) return;\r\n\r\n observableHandlers.current.delete(target.id);\r\n observerRef.current.unobserve(target);\r\n }\r\n\r\n return (\r\n \r\n {children}\r\n \r\n )\r\n}\r\n\r\nexport function useIntersectionObserver(elementRef?: React.RefObject){\r\n const ioContext = useContext(IntersectionObserverContext);\r\n const idRef = useRef(ioContext ? uuid() : undefined);\r\n\r\n const [visible, setVisible] = useState(!ioContext);\r\n\r\n useLayoutEffect(() => {\r\n const element = elementRef?.current;\r\n if (ioContext && element) {\r\n ioContext.observe(element, setVisible);\r\n }\r\n\r\n return () => {\r\n if (ioContext && element) {\r\n ioContext.unobserve(element);\r\n }\r\n };\r\n // eslint-disable-next-line\r\n }, []);\r\n\r\n return {id: idRef.current, visible };\r\n}","import React from 'react';\r\nimport { StatusMessageSectionType } from '../../../../types/state/NotificationState';\r\nimport { StatusMessageSection } from '../../../status-message/StatusMessageSection';\r\n\r\ninterface Props {\r\n isCommon: boolean;\r\n isByRating: boolean;\r\n}\r\n\r\nexport const TradingLimitDescription = ({ isCommon, isByRating }: Props) => {\r\n let result: React.ReactNode = 'Please select from the options below';\r\n if (isCommon && !isByRating) {\r\n result = 'The total daily trading limit across all ratings will be set.'\r\n } else if (!isCommon && isByRating) {\r\n result = 'The trading daily limit will be set per each rating individually.'\r\n } else if (isCommon && isByRating) {\r\n result = (\r\n <>\r\n

A double daily trading limit will be set:

\r\n
    \r\n
  • First, the limit by rating is checked.
  • \r\n
  • Then by the total daily trading limit.
  • \r\n
\r\n \r\n )\r\n }\r\n return
{result}
\r\n}\r\n","import React, { useEffect, useMemo, useRef } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { Rating, Ratings } from '../../../../types/enums/Rating';\r\nimport { clientsCompaniesActions } from '../../../../actions/clients-companies.actions';\r\nimport { UpdateSettlementAgentAgreementStatus } from '../../../../types/bid-as-dealer/UpdateSettlementAgentAgreementStatus';\r\nimport { SettlementAgreementStatus } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { yup } from '../../../../validation/yup';\r\nimport { RevertBidButton } from '../../../common/RevertBidButton';\r\nimport { Form, Formik } from 'formik';\r\nimport { isEqual, keys } from 'lodash';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { CurrencyInputField } from '../../../forms/CurrencyInputField';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { apiUtils, isRequesting, moneyUtils, numericUtils } from '../../../../utils';\r\nimport { constants, errorMessages } from '../../../../constants';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { Checkbox } from '../../../controls';\r\nimport { SettlementAgentClientAgreement } from '../../../../types/bid-as-dealer/SettlementAgentClientAgreement';\r\nimport { TradingLimitDescription } from './TradingLimitDescription';\r\n\r\nenum TradingLimitType {\r\n Common,\r\n ByRating,\r\n}\r\n\r\ninterface FormParams {\r\n commonLimit: number;\r\n byRating: { [key in Rating]?: number | null };\r\n [TradingLimitType.Common]: boolean;\r\n [TradingLimitType.ByRating]: boolean;\r\n}\r\n\r\ninterface Props {\r\n onCancel: () => void;\r\n onTrackChanges: (isChanged: boolean) => void;\r\n company: SettlementAgentClientAgreement;\r\n}\r\n\r\ninterface TrackFormChangesProps {\r\n initialValues: FormParams;\r\n values: FormParams;\r\n onChanged: (isChanged: boolean) => void\r\n}\r\n\r\n\r\nconst TrackFormChanges: React.FC = ({ initialValues, values, onChanged }) => {\r\n const isChanged = useRef(false);\r\n useEffect(() => {\r\n const isFormInitialValuesChanged = !isEqual(\r\n { byRating: values.byRating, commonLimit: values.commonLimit },\r\n { byRating: initialValues.byRating, commonLimit: initialValues.commonLimit }\r\n )\r\n if (isChanged.current !== isFormInitialValuesChanged) {\r\n onChanged(isFormInitialValuesChanged);\r\n isChanged.current = isFormInitialValuesChanged;\r\n }\r\n return () => {\r\n isChanged.current = false;\r\n } // eslint-disable-next-line\r\n }, [initialValues, values])\r\n return null;\r\n}\r\n\r\nexport const TradingLimitPanelContent: React.FC = ({ onCancel, onTrackChanges, company }) => {\r\n const dispatch = useDispatch();\r\n const errorMessage = errorMessages.shouldBeBetween(0, moneyUtils.money(constants.dailyTradingLimit.max));\r\n\r\n const requestStatusUpdateRequest = useSelector((s: AppState) => s.clientsCompanies.requestStatusUpdateRequest);\r\n\r\n const isSaving = company == null || isRequesting(requestStatusUpdateRequest[company.signatory?.id]);\r\n\r\n const defaultValuesByRating = useMemo(() => {\r\n const result: { [ket in Rating]?: number } = {};\r\n Ratings.forEach((r) => {\r\n result[r] = company?.dailyTradingLimit?.byRating[r] ?? 0\r\n })\r\n return result\r\n }, [company])\r\n\r\n\r\n if (company == null) return null;\r\n\r\n const handleSave = (data: FormParams) => {\r\n const requestData: UpdateSettlementAgentAgreementStatus = {\r\n bidderId: company.signatory.id,\r\n agreementStatus: SettlementAgreementStatus.confirmed,\r\n dailyTradingLimit: {\r\n common: data[TradingLimitType.Common] ? Number(data.commonLimit) : undefined,\r\n byRating: data[TradingLimitType.ByRating]\r\n ? data.byRating\r\n : apiUtils.normalize(Ratings, r => r, () => null)\r\n },\r\n };\r\n dispatch(clientsCompaniesActions.updateAgreementRequest(requestData));\r\n };\r\n\r\n const isByRating = !keys(company.dailyTradingLimit.byRating).every(key => company.dailyTradingLimit.byRating[key as Rating] === null);\r\n\r\n const defaultFormValues = {\r\n commonLimit: company.dailyTradingLimit.common ?? constants.defaultDailyTradingLimit,\r\n byRating: { ...defaultValuesByRating },\r\n [TradingLimitType.Common]: company.dailyTradingLimit.common != null,\r\n [TradingLimitType.ByRating]: isByRating,\r\n };\r\n\r\n const getYupRatingsRules = () => {\r\n const result: { [ket in Rating]?: any } = {};\r\n Ratings.forEach((r) =>\r\n result[r] =\r\n yup.number().transform(v => numericUtils.isNumber(v) ? v : null)\r\n .typeError(errorMessage).required(errorMessage)\r\n .max(constants.dailyTradingLimit.max, errorMessage)\r\n )\r\n return result\r\n }\r\n\r\n const validationSchema = yup.object().shape({\r\n commonLimit: yup.number().transform(v => numericUtils.isNumber(v) ? v : null)\r\n .when(String(TradingLimitType.Common), {\r\n is: (tradingLimitType: TradingLimitType) => tradingLimitType,\r\n then: () => yup.number().typeError(errorMessage).required(errorMessage)\r\n .max(constants.dailyTradingLimit.max, errorMessage),\r\n otherwise: () => yup.number().nullable()\r\n }),\r\n byRating: yup.object()\r\n .when(String(TradingLimitType.ByRating), {\r\n is: (tradingLimitType: TradingLimitType) => tradingLimitType,\r\n then: () => yup.object().shape({ ...getYupRatingsRules() }),\r\n }),\r\n });\r\n\r\n const renderRevertRatingButton = (currentValue: number | undefined, rating: Rating, setFieldValue: (key: string, value: number) => void) => {\r\n if (currentValue !== defaultValuesByRating[rating]) {\r\n return (\r\n setFieldValue(`byRating.${rating}`, defaultValuesByRating[rating] || 0)}\r\n />\r\n )\r\n }\r\n return null\r\n }\r\n\r\n return (\r\n \r\n {({ values, setFieldValue, errors }) => {\r\n const getColumns = () => {\r\n const columns: IColumnDefinition<{ rating: Rating, tradingLimit: number, disabled: boolean }>[] = [\r\n {\r\n columnKey: 'rating',\r\n renderColumnHeaderContent: () => 'Rtg',\r\n renderColumnContent: position => position.rating,\r\n headerClassName: 'data-list-rating',\r\n bodyClassName: 'data-list-rating',\r\n }, {\r\n columnKey: 'tradingLimit',\r\n renderColumnHeaderContent: () => (\r\n
Daily Trading Limit, USD*
\r\n ),\r\n renderColumnContent: position => (\r\n
\r\n \r\n {renderRevertRatingButton(position.tradingLimit, position.rating, setFieldValue)}\r\n
\r\n ),\r\n headerClassName: 'data-daily-trading-limit',\r\n bodyClassName: 'data-daily-trading-limit',\r\n }\r\n ];\r\n return columns.map(c => new ColumnBuilder(c));\r\n }\r\n\r\n return (\r\n
\r\n onTrackChanges(isChanged)}\r\n />\r\n \r\n
\r\n Set daily trading limit\r\n
\r\n
\r\n setFieldValue(String(TradingLimitType.Common), !values[TradingLimitType.Common])}\r\n checked={values[TradingLimitType.Common]}\r\n />\r\n \r\n
\r\n
\r\n setFieldValue(String(TradingLimitType.ByRating), !values[TradingLimitType.ByRating])}\r\n checked={values[TradingLimitType.ByRating]}\r\n />\r\n
If a zero limit is set, then the\r\n buyer will not be able to buy securities with the corresponding rating\r\n
\r\n ({\r\n rating: r,\r\n tradingLimit: values.byRating[r],\r\n disabled: !values[TradingLimitType.ByRating]\r\n }))}\r\n />\r\n
\r\n
\r\n \r\n Cancel\r\n \r\n \r\n Save\r\n \r\n
\r\n \r\n )\r\n }}\r\n \r\n )\r\n}\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { RightSideTabPanel } from '../../../controls/RightSideTabPanel';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { companyDetailsActions } from '../../../../actions/company-details.actions';\r\nimport Confirm from '../../../alerts/Confirm';\r\nimport { clientsCompaniesActions } from '../../../../actions/clients-companies.actions';\r\nimport { isRequesting } from '../../../../utils';\r\nimport { TradingLimitPanelContent } from './TradingLimitPanelContent';\r\nimport { CompanyDetailsPanelContent } from '../../../company-details/CompanyDetailsPanelContent';\r\nimport { RouteLeavingGuard } from '../../../routing';\r\nimport { useHistory } from 'react-router';\r\nimport { SettlementAgentClientAgreement } from '../../../../types/bid-as-dealer/SettlementAgentClientAgreement';\r\n\r\ninterface Props {\r\n agreement: SettlementAgentClientAgreement\r\n}\r\nexport const ClientsControlPanel: React.FC = ({ agreement }) => {\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const isTradingLimitChanged = useRef(false);\r\n\r\n const saveTradingLimitsRequestState = useSelector((s: AppState) => s.clientsCompanies.requestStatusUpdateRequest);\r\n const currentCompanyDetailsId = useSelector((state: AppState) => state.companyDetails.currentCompanyId);\r\n const company = useSelector((state: AppState) => state.companyDetails.companies[currentCompanyDetailsId]);\r\n\r\n const [visibleConfirmationPopup, setVisibleConfirmationPopup] = useState(false);\r\n\r\n const isSaving = isRequesting(saveTradingLimitsRequestState[Number(agreement?.signatory?.id)]);\r\n\r\n useEffect(() => {\r\n isTradingLimitChanged.current = false;\r\n // eslint-disable-next-line\r\n }, [agreement])\r\n\r\n const handleHideConfirmationPopup = () => {\r\n setVisibleConfirmationPopup(false);\r\n dispatch(clientsCompaniesActions.resetSelectedAgreement());\r\n dispatch(companyDetailsActions.hide());\r\n isTradingLimitChanged.current = false;\r\n };\r\n\r\n const handleShowConfirmationPopup = () => {\r\n if (!isSaving) {\r\n if (isTradingLimitChanged.current) {\r\n setVisibleConfirmationPopup(true)\r\n } else {\r\n handleHideConfirmationPopup();\r\n }\r\n }\r\n };\r\n\r\n const tabs = [\r\n {\r\n title: 'Trading Limit',\r\n active: !!agreement && !currentCompanyDetailsId,\r\n renderContent: () => (\r\n isTradingLimitChanged.current = isChanged}\r\n company={agreement}\r\n />\r\n ),\r\n onActivate: () => { },\r\n onDeactivate: () => { }\r\n },\r\n {\r\n title: 'Company',\r\n active: !!currentCompanyDetailsId,\r\n renderContent: () => <>{company != null && },\r\n onActivate: () => agreement && dispatch(companyDetailsActions.show(agreement.signatory, undefined, 0)),\r\n onDeactivate: () => dispatch(companyDetailsActions.hide())\r\n }\r\n ];\r\n\r\n return (\r\n <>\r\n \r\n {\r\n visibleConfirmationPopup &&\r\n setVisibleConfirmationPopup(false)}\r\n onConfirm={handleHideConfirmationPopup}\r\n title=\"Confirm changes discard?\"\r\n text=\"No changes will be saved. Discard changes?\"\r\n />\r\n }\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => isTradingLimitChanged.current}\r\n />\r\n \r\n )\r\n}\r\n","import * as React from 'react';\r\nimport { SettlementAgentClientAgreement } from '../../../types/bid-as-dealer/SettlementAgentClientAgreement';\r\nimport { SettlementAgreementStatus } from '../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { Popover } from '../../controls';\r\n\r\ninterface Props {\r\n entity: SettlementAgentClientAgreement\r\n}\r\n\r\nexport function BrokerDealerAgreementStatusLabel({ entity }: Props) {\r\n switch (entity.agreementStatus) {\r\n case SettlementAgreementStatus.pending:\r\n return Requested;\r\n case SettlementAgreementStatus.confirmed:\r\n return Approved;\r\n default:\r\n return (\r\n \r\n \r\n \r\n )}\r\n >\r\n
\r\n \r\n {entity.comment}\r\n
\r\n \r\n );\r\n }\r\n}\r\n","import * as React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { RejectReasonPopup } from '../../common/RejectReasonPopup';\r\nimport { SettlementAgreementStatus } from '../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { clientsCompaniesActions } from '../../../actions/clients-companies.actions';\r\nimport { UpdateSettlementAgentAgreementStatus } from '../../../types/bid-as-dealer/UpdateSettlementAgentAgreementStatus';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { Confirm } from \"../../alerts\";\r\nimport { FeatureButton } from '../../access/FeatureButton';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { isRequesting } from '../../../utils';\r\nimport { Relative, Preloader } from '../../common';\r\nimport { ClientsTableDataItem } from './ClientsTableDataItem';\r\n\r\ninterface Props {\r\n entity: ClientsTableDataItem\r\n}\r\n\r\nexport function AgreementActionButtons({ entity }: Props) {\r\n const dispatch = useDispatch();\r\n\r\n const [visibleEditReasonPopup, setVisibleEditReasonPopup] = React.useState(false);\r\n const [visibleUndoConfirmPopup, setVisibleUndoConfirmPopup] = React.useState(false);\r\n\r\n const isUpdatingRequestState = useSelector((state: AppState) => state.clientsCompanies.requestStatusUpdateRequest[entity.signatory.id]);\r\n\r\n const handleAffirm = () => {\r\n dispatch(clientsCompaniesActions.hideActivePanels());\r\n dispatch(clientsCompaniesActions.setSelectedAgreement(entity.signatory.id))\r\n };\r\n\r\n const handleReject = (message: string) => {\r\n const requestData: UpdateSettlementAgentAgreementStatus = {\r\n bidderId: entity.signatory.id,\r\n agreementStatus: SettlementAgreementStatus.rejected,\r\n comment: message\r\n };\r\n dispatch(clientsCompaniesActions.updateAgreementRequest(requestData));\r\n setVisibleEditReasonPopup(false);\r\n };\r\n\r\n const handleUndoConfirm = () => {\r\n const requestData: UpdateSettlementAgentAgreementStatus = {\r\n bidderId: entity.signatory.id,\r\n agreementStatus: SettlementAgreementStatus.pending,\r\n dailyTradingLimit: {\r\n common: 0,\r\n byRating: {}\r\n },\r\n };\r\n dispatch(clientsCompaniesActions.updateAgreementRequest(requestData));\r\n visibleUndoConfirmPopup && setVisibleUndoConfirmPopup(false);\r\n }\r\n\r\n const handleEdit = () => {\r\n dispatch(clientsCompaniesActions.hideActivePanels());\r\n dispatch(clientsCompaniesActions.setSelectedAgreement(entity.signatory.id));\r\n };\r\n\r\n const handleSetVisibleReasonPopup = () => {\r\n dispatch(clientsCompaniesActions.resetSelectedAgreement());\r\n setVisibleEditReasonPopup(true);\r\n };\r\n\r\n const renderContent = () => {\r\n if (entity.agreementStatus === SettlementAgreementStatus.pending) {\r\n return (\r\n
\r\n \r\n Approve\r\n \r\n \r\n Suspend\r\n \r\n
\r\n )\r\n } else if (entity.agreementStatus === SettlementAgreementStatus.confirmed) {\r\n return (\r\n
\r\n \r\n Edit Limit\r\n \r\n setVisibleUndoConfirmPopup(true)}>\r\n Undo\r\n \r\n
\r\n );\r\n } else if (entity.agreementStatus === SettlementAgreementStatus.rejected) {\r\n return (\r\n
\r\n \r\n Undo\r\n \r\n
\r\n );\r\n }\r\n return null;\r\n };\r\n\r\n return (\r\n \r\n \r\n {renderContent()}\r\n \r\n {\r\n visibleEditReasonPopup &&\r\n setVisibleEditReasonPopup(false)}\r\n onReject={handleReject}\r\n textareaPlaceholder=\"Enter the reason for suspending here\"\r\n comfirmButtonText=\"Suspend\"\r\n />\r\n }\r\n {\r\n visibleUndoConfirmPopup &&\r\n setVisibleUndoConfirmPopup(false)}\r\n onConfirm={handleUndoConfirm}\r\n />\r\n }\r\n \r\n )\r\n}\r\n","import React, { ChangeEvent, useEffect, useMemo, useState } from 'react';\r\nimport Popup from '../../controls/Popup';\r\nimport { PopupBody, PopupFooter } from '../../controls';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { isRequesting, isRequestNone } from '../../../utils';\r\nimport { clientsCompaniesActions } from '../../../actions/clients-companies.actions';\r\nimport { Currency } from '../../../types/enums/Currency';\r\nimport { CurrencyRate } from '../../../types/currency/CurrencyRate';\r\nimport { constants } from '../../../constants';\r\nimport { FeatureButton } from '../../access/FeatureButton';\r\nimport IconSVG from '../../../styles/svg-icons';\r\n\r\nexport const CurrencyConversion: React.FC = () => {\r\n const dispatch = useDispatch();\r\n\r\n const currencyRate = useSelector((s: AppState) => s.clientsCompanies.currencyRate);\r\n const visibleSetRatePopup = useSelector((s: AppState) => s.clientsCompanies.visibleSetRatePopup);\r\n const requestStateGetCurrencyRate = useSelector((s: AppState) => s.clientsCompanies.requestStateGetCurrencyRate);\r\n const requestStateUpdateCurrencyRate = useSelector((s: AppState) => s.clientsCompanies.requestStateUpdateCurrencyRate);\r\n const euroCurrency: CurrencyRate | undefined = useMemo(() => currencyRate.find(currency => currency.code === Currency.EUR), [currencyRate]);\r\n\r\n const [rate, setRate] = useState(euroCurrency?.usdRate || '');\r\n\r\n useEffect(() => {\r\n if (isRequestNone(requestStateGetCurrencyRate)) {\r\n dispatch(clientsCompaniesActions.getCurrencyRate());\r\n }\r\n }, [requestStateGetCurrencyRate, dispatch]);\r\n\r\n useEffect(() => {\r\n if (euroCurrency?.usdRate) {\r\n setRate(euroCurrency.usdRate);\r\n }\r\n }, [euroCurrency]);\r\n\r\n const handleSetValue = (e: ChangeEvent) => {\r\n e.stopPropagation();\r\n const value = Number(e.target.value);\r\n if (value === 0 || (value >= constants.currencyConversionRate.min && value <= constants.currencyConversionRate.max)) {\r\n setRate(e.target.value);\r\n }\r\n };\r\n\r\n const handleHidePopup = () => {\r\n dispatch(clientsCompaniesActions.setVisibleUpdateRatePopup(false));\r\n setRate('');\r\n };\r\n\r\n const handleShowPopup = () => {\r\n if (euroCurrency) {\r\n setRate(euroCurrency?.usdRate);\r\n }\r\n dispatch(clientsCompaniesActions.setVisibleUpdateRatePopup(true));\r\n };\r\n\r\n const handleApply = () => {\r\n if (euroCurrency) {\r\n euroCurrency.usdRate = Number(rate);\r\n dispatch(clientsCompaniesActions.updateCurrencyRate(euroCurrency))\r\n }\r\n };\r\n\r\n const renderPopup = () => visibleSetRatePopup && (\r\n \r\n \r\n
\r\n \r\n \r\n USD\r\n
\r\n
\r\n \r\n \r\n Cancel\r\n \r\n \r\n Apply\r\n \r\n \r\n
\r\n );\r\n\r\n return (\r\n
\r\n {renderPopup()}\r\n 1.00 Euro = {euroCurrency?.usdRate} USD\r\n \r\n \r\n \r\n
\r\n )\r\n};","import { SettlementAgreementStatus } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { UnrequestedAgreementStatus } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\n\r\nexport interface ClientsFilterOptions {\r\n settlementAccountExist: SettlementAccountExistType[];\r\n agreementStatus: (SettlementAgreementStatus | UnrequestedAgreementStatus)[];\r\n}\r\n\r\nexport enum SettlementAccountExistType {\r\n WithSettlementAccount,\r\n WithoutSettlementAccount\r\n}\r\n\r\nexport const SettlementAccountExistTypeTitle = {\r\n [SettlementAccountExistType.WithSettlementAccount]: 'Yes',\r\n [SettlementAccountExistType.WithoutSettlementAccount]: 'No',\r\n}\r\n\r\n","import * as React from 'react';\r\nimport * as _ from 'lodash';\r\nimport { SettlementAgreementStatus, settlementAgreementStatusTitle } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { ClientsFilterOptions, SettlementAccountExistType, SettlementAccountExistTypeTitle } from './ClientsFilterOptions';\r\nimport { UnrequestedAgreementStatus } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { FilterPanel } from '../../../filters/FilterPanel';\r\nimport { FilterClear } from '../../../filters/FilterClear';\r\nimport { FilterButton } from '../../../filters/FilterButton';\r\nimport { FilterSelect } from '../../../common/filters/FilterSelect';\r\nimport { useEffect } from 'react';\r\nimport { isEqual } from 'lodash';\r\n\r\nexport const defaultClientsFilter = {\r\n settlementAccountExist: [],\r\n agreementStatus: []\r\n};\r\n\r\ninterface Props {\r\n disabled: boolean;\r\n onChange: (filter: ClientsFilterOptions) => void;\r\n currentFilter: ClientsFilterOptions;\r\n}\r\n\r\nexport function ClientsFilter({ disabled, onChange, currentFilter }: Props) {\r\n const [lastAppliedFilter, setLastAppliedFilter] = React.useState({ ...currentFilter });\r\n const [filter, setFilter] = React.useState({ ...currentFilter });\r\n\r\n useEffect(() => {\r\n if (isEqual(currentFilter, defaultClientsFilter)) {\r\n setFilter({ ...defaultClientsFilter });\r\n setLastAppliedFilter({ ...defaultClientsFilter });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [currentFilter]);\r\n\r\n const selectSettlementAccountExistOption = (type: SettlementAccountExistType) => {\r\n setFilter({ ...filter, settlementAccountExist: [...filter.settlementAccountExist, type] })\r\n };\r\n\r\n const unselectSettlementAccountExistOption = (type: SettlementAccountExistType) => {\r\n setFilter({\r\n ...filter,\r\n settlementAccountExist: filter.settlementAccountExist.filter(x => x !== type)\r\n })\r\n };\r\n\r\n const selectAgeementStatus = (status: SettlementAgreementStatus | UnrequestedAgreementStatus) => {\r\n setFilter({ ...filter, agreementStatus: [...filter.agreementStatus, status] })\r\n }\r\n\r\n const unselectAgreementStatus = (status: SettlementAgreementStatus | UnrequestedAgreementStatus) => {\r\n setFilter({\r\n ...filter,\r\n agreementStatus: filter.agreementStatus.filter(x => x !== status)\r\n })\r\n };\r\n\r\n const handleClear = () => {\r\n const filter = { ...defaultClientsFilter };\r\n setFilter(filter);\r\n setLastAppliedFilter({ ...defaultClientsFilter })\r\n onChange(filter);\r\n };\r\n\r\n const handleApply = () => {\r\n setLastAppliedFilter({ ...filter });\r\n onChange(filter);\r\n };\r\n\r\n return (\r\n \r\n ({\r\n text: SettlementAccountExistTypeTitle[x],\r\n value: x,\r\n selected: filter.settlementAccountExist.some(e => e === x),\r\n visible: true,\r\n disabled: false\r\n }))\r\n }\r\n onChangeItemSelection={(item, checked) => checked\r\n ? selectSettlementAccountExistOption(item.value)\r\n : unselectSettlementAccountExistOption(item.value)\r\n }\r\n onClearAll={() => setFilter({ ...filter, settlementAccountExist: [] })}\r\n onSelectAll={() => setFilter({\r\n ...filter,\r\n settlementAccountExist: [\r\n SettlementAccountExistType.WithoutSettlementAccount,\r\n SettlementAccountExistType.WithSettlementAccount\r\n ]\r\n })}\r\n />\r\n ({\r\n text: x === UnrequestedAgreementStatus.Unrequested ? 'Unrequested' : settlementAgreementStatusTitle[x],\r\n value: x,\r\n selected: filter.agreementStatus.some(e => e === x),\r\n visible: true,\r\n disabled: false\r\n }))\r\n }\r\n onChangeItemSelection={(item, checked) => checked\r\n ? selectAgeementStatus(item.value)\r\n : unselectAgreementStatus(item.value)\r\n }\r\n onClearAll={() => setFilter({ ...filter, agreementStatus: [] })}\r\n onSelectAll={() => setFilter({\r\n ...filter,\r\n agreementStatus: [\r\n SettlementAgreementStatus.pending,\r\n SettlementAgreementStatus.confirmed,\r\n SettlementAgreementStatus.rejected,\r\n UnrequestedAgreementStatus.Unrequested\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\nimport { ClientsTableDataItem } from '../ClientsTableDataItem';\r\nimport { ClientsFilterOptions, SettlementAccountExistType } from './ClientsFilterOptions';\r\nimport { SettlementAgreementStatus } from '../../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { enumsUtils } from '../../../../utils/enums.utils';\r\n\r\nexport function useClientsFilter(agreements: ClientsTableDataItem[], filter: ClientsFilterOptions, searchString: string) {\r\n const [searchResult, setSearchResult] = React.useState(agreements);\r\n\r\n React.useEffect(() => {\r\n const search = searchString.toLowerCase();\r\n\r\n const matchSeatchString = (item: ClientsTableDataItem) =>\r\n !search || item.signatory.name.toLowerCase().includes(search);\r\n\r\n const matchSettlementAccountExist = (item: ClientsTableDataItem) => {\r\n if (!filter.settlementAccountExist.length ||\r\n enumsUtils.getKeys(SettlementAccountExistType).length === filter.settlementAccountExist.length) {\r\n // all options enabled\r\n return true;\r\n }\r\n\r\n return filter.settlementAccountExist.some(o => o === SettlementAccountExistType.WithoutSettlementAccount)\r\n ? !item.settlementAccountCount\r\n : !!item.settlementAccountCount;\r\n };\r\n\r\n const matchAgreementStatus = (item: ClientsTableDataItem) => {\r\n if (!filter.agreementStatus.length ||\r\n (enumsUtils.getKeys(SettlementAgreementStatus).length + 1) === filter.agreementStatus.length) { // + Unrequested\r\n // all options enabled\r\n return true;\r\n }\r\n\r\n return filter.agreementStatus.some(s => s === item.agreementStatus);\r\n }\r\n\r\n const filtered = agreements.filter(a =>\r\n matchSeatchString(a) &&\r\n matchSettlementAccountExist(a) &&\r\n matchAgreementStatus(a)\r\n );\r\n\r\n setSearchResult(filtered);\r\n\r\n }, [agreements, filter, searchString]);\r\n\r\n return searchResult;\r\n}\r\n\r\n","import React, { useEffect, useMemo } from 'react';\r\nimport moment from 'moment';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport classNames from 'classnames';\r\nimport { sumBy, values } from 'lodash';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { clientsCompaniesActions } from '../../../actions/clients-companies.actions';\r\nimport { Table } from '../../bidding/common/table';\r\nimport { EmptyPlaceholder, Preloader, SearchInput } from '../../common';\r\nimport { isRequesting, isRequestSuccess, shouldRequest } from '../../../utils';\r\nimport {\r\n SettlementAgentClientAgreement,\r\n SettlementAgentClientCompany\r\n} from '../../../types/bid-as-dealer/SettlementAgentClientAgreement';\r\nimport { ClientsControlPanel } from './control-panel/ClientsControlPanel';\r\nimport { IColumnDefinition } from '../../bidding/common/table/types/ColumnDefinition';\r\nimport { CompanyDetailsButton } from '../../company-details/CompanyDetailsButton';\r\nimport { BrokerDealerAgreementStatusLabel } from './BrokerDealerAgreementStatusLabel';\r\nimport { AgreementActionButtons } from './AgreementActionButtons';\r\nimport { ColumnBuilder } from '../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport {\r\n SettlementAgreementStatus,\r\n UnrequestedAgreementStatus\r\n} from '../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { companyRoles, constants, routes, SORT, SORTING_TYPE } from '../../../constants';\r\nimport { CurrencyConversion } from './CurrencyConversion';\r\nimport { ViewSettlementAgentCommission } from './ViewSettlementAgentCommission';\r\nimport { DailyTradingLimitDialog } from '../../common/DailyTradingLimitDialog';\r\nimport { useCurrentUserCompany } from '../../../effects/useCurrentUserCompany';\r\nimport { useSettlementAccounts } from '../../../effects/data-accessors/useSettlementAccounts';\r\nimport { ClientsFilter, defaultClientsFilter } from './clients-filter/ClientsFilter';\r\nimport { ClientsFilterOptions } from './clients-filter/ClientsFilterOptions';\r\nimport { useClientsFilter } from './clients-filter/useClientsFilter';\r\nimport { AgreementTableDataItem, ClientsTableDataItem, UnrequestedTableDataItem } from './ClientsTableDataItem';\r\nimport { useAssetManagers } from '../../../effects/data-accessors/useAssetManagers';\r\nimport { CompanyStatus } from '../../../types/company/CompanyStatus';\r\nimport { CompanyDetailsPanel } from '../../company-details/CompanyDetailsPanel';\r\nimport { settlementAccountActions } from '../../../actions/settlement-account.actions';\r\nimport { FeatureButton } from '../../access/FeatureButton';\r\nimport { companyDetailsActions } from '../../../actions/company-details.actions';\r\n\r\ninterface Props {\r\n onFilterChanged: (filter: ClientsFilterOptions) => void;\r\n filter: ClientsFilterOptions;\r\n}\r\n\r\nexport function Clients({ onFilterChanged, filter }: Props) {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const agreements = useSelector((s: AppState) => s.clientsCompanies.companiesList);\r\n const requestStateFetchClientsList = useSelector((s: AppState) => s.clientsCompanies.requestStateFetchClientsList);\r\n const searchString = useSelector((s: AppState) => s.clientsCompanies.searchString);\r\n const selectedCompanyId = useSelector((s: AppState) => s.clientsCompanies.selectedCompanyForAffirm);\r\n const selectedCompanyForAffirm = selectedCompanyId ? agreements.find(a => a.signatory.id === selectedCompanyId) : undefined;\r\n const companyDetailsPanelCompanyId = useSelector((state: AppState) => state.companyDetails.currentCompanyId);\r\n\r\n const { settlementAccountsRequestState, settlementAccounts } = useSettlementAccounts(false);\r\n const { assetManagers, assetManagersRequestState } = useAssetManagers();\r\n const [companyRequestState, company] = useCurrentUserCompany();\r\n\r\n const activeAssetManagers = useMemo(\r\n () => assetManagers.filter(x => x.status === CompanyStatus.active),\r\n [assetManagers]);\r\n const isLoading = isRequesting(requestStateFetchClientsList) ||\r\n isRequesting(companyRequestState) ||\r\n isRequesting(settlementAccountsRequestState) ||\r\n isRequesting(assetManagersRequestState);\r\n\r\n const tableDataItems: ClientsTableDataItem[] = useMemo(() => {\r\n const agreementTableItems = agreements.map(a => ({\r\n ...a,\r\n settlementAccountCount: settlementAccounts.filter(sa => sa.assetManager.id === a.signatory.id).length,\r\n totalDailyTradingLimit: a.agreementStatus === SettlementAgreementStatus.confirmed\r\n ? a.dailyTradingLimit.common\r\n ? a.dailyTradingLimit.common\r\n : sumBy(values(a.dailyTradingLimit.byRating), limit => Number(limit))\r\n : 0\r\n }));\r\n\r\n const unrequestedCompanies = activeAssetManagers.filter(c => !agreements.some(a => a.signatory.id === c.id));\r\n const unrequested: UnrequestedTableDataItem[] = unrequestedCompanies.map(c => ({\r\n signatory: c as SettlementAgentClientCompany,\r\n settlementAccountCount: settlementAccounts.filter(a => a.assetManager.id === c.id).length,\r\n agreementStatus: UnrequestedAgreementStatus.Unrequested,\r\n totalDailyTradingLimit: 0\r\n }));\r\n\r\n return [...agreementTableItems, ...unrequested];\r\n }, [agreements, settlementAccounts, activeAssetManagers]);\r\n\r\n const searchResults = useClientsFilter(tableDataItems, filter, searchString);\r\n\r\n useEffect(() => {\r\n if (shouldRequest(requestStateFetchClientsList)) {\r\n dispatch(clientsCompaniesActions.fetchListRequest());\r\n }\r\n }, [dispatch, requestStateFetchClientsList]);\r\n\r\n const handleSetSearchString = (string: string) => {\r\n dispatch(clientsCompaniesActions.setSearchString(string));\r\n dispatch(clientsCompaniesActions.hideActivePanels());\r\n };\r\n\r\n const handleFilterChange = (filter: ClientsFilterOptions) => onFilterChanged(filter);\r\n const handleViewSettlementAccountClick = () => {\r\n const sortedTableDataItems = [...tableDataItems]\r\n .sort((a, b) => a.signatory.name.localeCompare(b.signatory.name))\r\n\r\n const firstWithSettlementAccount = sortedTableDataItems.find(a => a.settlementAccountCount);\r\n const agreementToRedirect = firstWithSettlementAccount ?? sortedTableDataItems[0];\r\n history.push(routes.clientsSettlementAccountUrl(agreementToRedirect.signatory.id));\r\n }\r\n\r\n const handleCompanyDetailsButtonClick = (assetManagerId: number) => {\r\n if (companyDetailsPanelCompanyId && companyDetailsPanelCompanyId === assetManagerId) {\r\n dispatch(clientsCompaniesActions.resetSelectedAgreement());\r\n dispatch(companyDetailsActions.hide());\r\n } else {\r\n dispatch(clientsCompaniesActions.setSelectedAgreement(assetManagerId))\r\n }\r\n }\r\n\r\n const handleResetFilterAndSearch = () => {\r\n handleFilterChange(defaultClientsFilter);\r\n handleSetSearchString('');\r\n }\r\n\r\n const getColumns = (): IColumnDefinition[] => [\r\n {\r\n columnKey: 'client-company',\r\n renderColumnContent: entity => (\r\n handleCompanyDetailsButtonClick(entity.signatory.id)}\r\n />\r\n ),\r\n renderColumnHeaderContent: () => 'Client Company',\r\n headerClassName: 'data-list-cell-xxxl-flexible data-client-company',\r\n bodyClassName: 'data-list-cell-xxxl-flexible data-client-company',\r\n sortingField: 'signatory.name',\r\n sortingType: SORTING_TYPE.string,\r\n }, {\r\n columnKey: 'settlement-accounts',\r\n renderColumnContent: entity => renderSettlementAccountLink(entity),\r\n renderColumnHeaderContent: () => 'Settl. Accs',\r\n headerClassName: 'data-settl-accs',\r\n bodyClassName: 'data-settl-accs',\r\n sortingField: 'settlementAccountCount',\r\n sortingType: SORTING_TYPE.settlementAccounts,\r\n }, {\r\n columnKey: 'status',\r\n renderColumnContent: entity =>\r\n entity.agreementStatus === UnrequestedAgreementStatus.Unrequested\r\n ? Unrequested\r\n : \r\n ,\r\n renderColumnHeaderContent: () => 'Request Status',\r\n headerClassName: 'data-list-cell-sm data-agreement-status',\r\n bodyClassName: 'data-list-cell-sm data-agreement-status',\r\n sortingType: SORTING_TYPE.settlementRequestStatus,\r\n sortingField: 'agreementStatus'\r\n }, {\r\n columnKey: 'date',\r\n renderColumnContent: entity => (entity as AgreementTableDataItem).date\r\n ? moment((entity as AgreementTableDataItem).date).format(constants.dateFormat)\r\n : constants.emptyPlaceholder,\r\n renderColumnHeaderContent: () => 'Request Date',\r\n headerClassName: 'data-list-cell-sm data-date',\r\n bodyClassName: 'data-list-cell-sm data-date',\r\n sortingField: 'date',\r\n sortingType: SORTING_TYPE.date,\r\n }, {\r\n columnKey: 'daily-trading-limit',\r\n renderColumnContent: entity => (entity as AgreementTableDataItem).dailyTradingLimit\r\n ? \r\n : constants.emptyPlaceholder\r\n ,\r\n renderColumnHeaderContent: () => 'Daily Trd Lim (MM)',\r\n headerClassName: 'data-list-cell-lg data-daily-trading-limit text-right',\r\n bodyClassName: 'data-list-cell-lg data-daily-trading-limit text-right',\r\n sortingField: 'totalDailyTradingLimit',\r\n sortingType: SORTING_TYPE.number,\r\n }, {\r\n columnKey: 'action-buttons',\r\n renderColumnContent: entity => entity.agreementStatus === UnrequestedAgreementStatus.Unrequested\r\n ? null\r\n : ,\r\n renderColumnHeaderContent: () => 'Actions',\r\n headerClassName: 'data-list-cell-lg-02 data-agreement-action text-right',\r\n bodyClassName: 'data-list-cell-lg-02 data-agreement-action text-right',\r\n }\r\n ];\r\n\r\n const renderSettlementAccountLink = (agreement: ClientsTableDataItem) => {\r\n const handleClick = () => {\r\n dispatch(settlementAccountActions.reset()); // TO DO: Remove after Settlement Account push will be implemented\r\n history.push(routes.clientsSettlementAccountUrl(agreement.signatory.id));\r\n }\r\n if (agreement.signatory.role === companyRoles.BrokerDealer) {\r\n return constants.emptyPlaceholder;\r\n }\r\n if (agreement.settlementAccountCount) {\r\n return (\r\n \r\n )\r\n }\r\n return (\r\n \r\n add\r\n \r\n );\r\n };\r\n\r\n const renderContent = () => {\r\n if (isRequestSuccess(requestStateFetchClientsList) && !tableDataItems.length) {\r\n return ;\r\n }\r\n\r\n if (!searchResults.length) {\r\n return ;\r\n }\r\n\r\n return (\r\n <>\r\n new ColumnBuilder(c))}\r\n className=\"data-list-striped\"\r\n defaultSortBy=\"date\"\r\n defaultSortByDirection={SORT.DESC}\r\n dataItems={searchResults}\r\n createSecurityCustomClassName={\r\n (entity: SettlementAgentClientAgreement) =>\r\n classNames({\r\n 'active':\r\n entity.signatory.id === selectedCompanyForAffirm?.signatory.id ||\r\n entity.signatory.id === companyDetailsPanelCompanyId,\r\n 'pending-agreement': entity.agreementStatus === SettlementAgreementStatus.pending\r\n })\r\n }\r\n />\r\n {selectedCompanyForAffirm ? : }\r\n \r\n );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

Clients

\r\n handleSetSearchString('')}\r\n placeholder=\"Search by company name\"\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
\r\n
\r\n \r\n {renderContent()}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { Redirect, Route, Switch, useHistory, useParams } from 'react-router';\r\nimport { routes } from '../../../../constants';\r\nimport { SettlementAccountsView } from '../../../settlement/SettlementAccountsView';\r\nimport { SettlementAccountView } from '../../../settlement/view/SettlementAccountView';\r\nimport { SettlementAccountEdit } from '../../../settlement/edit/SettlementAcountEdit';\r\nimport { Breadcrumbs } from '../../../controls/breadcrumbs/Breadcrumbs';\r\nimport { BreadcrumbsItem } from '../../../controls/breadcrumbs/BreadcrumbsItem';\r\nimport { isRequesting, isRequestSuccess } from '../../../../utils/request-state.utils';\r\nimport { Preloader } from '../../../common';\r\nimport { useAssetManagers } from '../../../../effects/data-accessors/useAssetManagers'\r\nimport { useSettlementAccountDelete } from '../../../settlement/edit/useSettlementAccountDelete';\r\nimport { CompanyStatus } from '../../../../types/company/CompanyStatus';\r\nimport { Confirm } from '../../../alerts';\r\n\r\nexport function ClientsSettlementAccounts() {\r\n const history = useHistory();\r\n const { assetManagersRequestState, assetManagers } = useAssetManagers();\r\n const { companyId } = useParams<{ companyId?: string }>();\r\n const assetManagerCompanyId = Number(companyId);\r\n const isAssetManagersLoaded = isRequestSuccess(assetManagersRequestState);\r\n const activeAssetManagers = assetManagers.filter(a => a.status === CompanyStatus.active);\r\n const activeAssetManager = isAssetManagersLoaded\r\n ? activeAssetManagers.find(a => a.id === assetManagerCompanyId)\r\n : undefined;\r\n const [deletingAccountId, setDeletingAccountId] = React.useState(null)\r\n const { deleteAccountRequestState, onDelete } = useSettlementAccountDelete(assetManagerCompanyId);\r\n\r\n if (isAssetManagersLoaded && companyId && !activeAssetManager) {\r\n return ;\r\n }\r\n\r\n const renderSelectedAccountName = () => {\r\n const assetManager = activeAssetManagers.find(manager => manager.id === assetManagerCompanyId);\r\n return assetManager ? {assetManager.name} : null;\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

\r\n Create Settlement Account\r\n {activeAssetManager?.name}\r\n

\r\n
\r\n \r\n

Edit Settlement Account {renderSelectedAccountName()}

\r\n
\r\n \r\n

Settlement Accounts

\r\n history.push(routes.clientsSettlementAccountUrl(e.target.value))}\r\n >\r\n {activeAssetManagers.map(a => )}\r\n \r\n
\r\n
\r\n
\r\n
\r\n history.push(routes.createClientsSettlementAccountUrl(companyId))}\r\n onAccountChange={(account, replace) => {\r\n const path = routes.clientsSettlementAccountDetailsUrl(assetManagerCompanyId, account.id);\r\n replace ? history.replace(path) : history.push(path);\r\n }}\r\n >\r\n {\r\n activeSettlementAccount =>\r\n <>\r\n \r\n \r\n {\r\n activeSettlementAccount &&\r\n history.push(\r\n routes.editClientsSettlementAccountUrl(\r\n assetManagerCompanyId,\r\n activeSettlementAccount.id\r\n )\r\n )}\r\n onDelete={() => setDeletingAccountId(activeSettlementAccount.id)}\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 {deletingAccountId && (\r\n Would you like to remove {activeSettlementAccount?.accountName} account?}\r\n onConfirm={() => {\r\n onDelete(deletingAccountId);\r\n setDeletingAccountId(null);\r\n }}\r\n onCancel={() => setDeletingAccountId(null)}\r\n confirmButtonText=\"Confirm\"\r\n />\r\n )}\r\n \r\n }\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React, { useState } from 'react';\r\nimport { Redirect, Route, Switch } from 'react-router';\r\nimport { routes } from '../../../constants';\r\nimport { Clients } from './Clients';\r\nimport { ClientsSettlementAccounts } from './settlement-account/ClientsSettlementAccounts';\r\n\r\nimport { ClientsFilterOptions } from './clients-filter/ClientsFilterOptions';\r\nimport { defaultClientsFilter } from './clients-filter/ClientsFilter';\r\nimport { useSettlementAccounts } from '../../../effects/data-accessors/useSettlementAccounts';\r\n\r\nexport function ClientsView() {\r\n const [filter, setFilter] = useState(defaultClientsFilter);\r\n useSettlementAccounts();\r\n\r\n return (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n );\r\n}\r\n","import { routes } from \"../../constants\";\r\nimport { OnHoverTooltip } from \"../common\";\r\n\r\ninterface Props {\r\n referenceName: string\r\n legalName: string\r\n onClick?: () => void\r\n}\r\n\r\nexport function CloManagerLink({ referenceName, legalName, onClick }: Props) {\r\n return (\r\n \r\n \r\n {legalName}\r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from 'react';\r\nimport { Preloader } from './index';\r\n\r\ninterface Props {\r\n path: string;\r\n fallback?: React.ReactNode;\r\n}\r\n\r\nexport const ImageLoader:React.FC = ({ path, fallback }) => {\r\n const [loaded, setLoaded] = useState(false);\r\n const [error, seError] = useState(false);\r\n\r\n if (!path) {\r\n return null;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {!error &&\r\n setLoaded(true)}\r\n onError={() => {\r\n setLoaded(true);\r\n seError(true);\r\n }}\r\n />\r\n }\r\n {!!error && fallback}\r\n \r\n )\r\n};\r\n\r\nexport const FallbackImage = (\r\n \r\n);\r\n","import moment from \"moment\";\r\n\r\ninterface Props {\r\n inventoryLastTraded?: Date;\r\n bwicLastTradedDate?: Date;\r\n children: (isInventoryDate: boolean, date?: Date) => React.ReactNode;\r\n}\r\n\r\nexport function SecurityLastTradedDate({ inventoryLastTraded, bwicLastTradedDate, children }: Props) {\r\n const isInventoryDate = inventoryLastTraded !== null\r\n && (!bwicLastTradedDate || moment(inventoryLastTraded).isAfter(bwicLastTradedDate, 'day'));\r\n\r\n const lastTradedDate = isInventoryDate\r\n ? inventoryLastTraded\r\n : bwicLastTradedDate;\r\n\r\n return <>{children(isInventoryDate, lastTradedDate)};\r\n}\r\n","import React from 'react';\r\nimport { createPortal } from 'react-dom';\r\n\r\ninterface PortalProps {\r\n children: React.ReactNode;\r\n}\r\n\r\nexport const DocumentBodyPortal: React.FC = ({children}) => {\r\n return createPortal(children, document.body);\r\n}","import IconSVG from '../../styles/svg-icons';\r\n\r\ntype Props = {\r\n email: string;\r\n};\r\n\r\nconst FollowUp = ({ email }: Props) => {\r\n return (\r\n \r\n \r\n Follow up\r\n \r\n );\r\n};\r\n\r\nexport default FollowUp;\r\n","import * as React from 'react';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nexport function SupportInformation() {\r\n return (\r\n \r\n )\r\n}\r\n","import React from 'react';\r\nimport { BwicStatusLabel, BwicStatusLabelProps } from './BwicStatusLabel';\r\nimport { BiddingTimer, BiddingTimerProps } from '../bidding/common/BiddingTimer';\r\nimport { BwicStatus } from '../../types/enums/BwicStatus';\r\n\r\ntype Props = BwicStatusLabelProps & BiddingTimerProps & {\r\n renderEmpty?: () => JSX.Element;\r\n};\r\n\r\nexport function BwicStatusTimerLabel({ renderEmpty, ...props }: Props) {\r\n if (props.status === BwicStatus.bidding) {\r\n return (\r\n \r\n timer\r\n ? {timer}
}\r\n />\r\n : renderEmpty?.() ?? \r\n }\r\n />\r\n );\r\n }\r\n return \r\n}","import { FlexRow } from \"../../common/FlexRow\";\r\n\r\ninterface BwicRulesSectionRowProps {\r\n label?: string;\r\n visible?: boolean;\r\n children?: React.ReactNode;\r\n dataTestId?: string;\r\n}\r\n\r\nexport const BwicRulesSectionRow = ({ label, visible = true, children, dataTestId }: BwicRulesSectionRowProps) => {\r\n if (!visible) return null;\r\n return (\r\n \r\n {Boolean(label) &&
{label}
}\r\n
{children}
\r\n
\r\n )\r\n}\r\n","import React from 'react';\r\nimport moment from 'moment';\r\nimport { constants } from '../../../constants/constants';\r\nimport dateTimeUtils from '../../../utils/dateTime.utils';\r\nimport { SameDayBwicIcon } from '../../common/SameDayBwicIcon';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\nimport { GoodUntilTime } from '../../common/bidding/GoodUntilTime';\r\n\r\ninterface BwicRulesStartEndTimeProps {\r\n bidDueUtc: Date;\r\n goodUntilUtc: Date;\r\n isSameDayBwic: boolean;\r\n daysToSettle: number;\r\n}\r\n\r\nexport function BwicRulesStartEndTime({ bidDueUtc, goodUntilUtc, isSameDayBwic, daysToSettle }: BwicRulesStartEndTimeProps) {\r\n const bwicDate = moment().isSame(bidDueUtc, 'd') ?\r\n `Today, ${dateTimeUtils.utcToLocalString(bidDueUtc, constants.dateFormat)}` :\r\n dateTimeUtils.utcToLocalString(bidDueUtc, `ddd, ${constants.dateFormat}`);\r\n\r\n return (\r\n
\r\n
\r\n

BWIC Date

\r\n
\r\n {isSameDayBwic && }\r\n {bwicDate}\r\n
\r\n
\r\n
\r\n \r\n {dateTimeUtils.utcToLocalString(bidDueUtc, constants.timeFormat)}\r\n \r\n \r\n {dateTimeUtils.utcToLocalString(goodUntilUtc, constants.timeFormat)}\r\n \r\n \r\n \r\n \r\n \r\n {`T+${daysToSettle}`}\r\n \r\n
\r\n
\r\n )\r\n}\r\n","interface Props {\r\n title: string;\r\n visible?: boolean;\r\n children: React.ReactNode;\r\n}\r\nexport function BwicRulesSection({ title, visible = true, children }: Props) {\r\n if(!visible) return null;\r\n\r\n return (\r\n
\r\n
\r\n

{title}

\r\n
\r\n
\r\n {children}\r\n
\r\n
\r\n );\r\n}","import moment from 'moment';\r\nimport { BwicProcessType, Process } from '../../../types/models/Process';\r\nimport { BwicRulesStartEndTime } from '../sections/BwicRulesStartEndTime';\r\nimport { RequiredFeature } from '../../access/RequiredFeature';\r\nimport { SubscriptionFeature } from '../../../types/billing/SubscriptionFeature';\r\nimport { SubscribeLink } from '../../access/BlockedFeatureText';\r\nimport { ParsedBwicProcess, ParsedBwicTwoStageSettings } from '../../../types/models/ParsedBwicProcess';\r\nimport { BwicRulesSection } from '../BwicRulesSection';\r\nimport { BwicRulesSectionRow } from '../sections/BwicRulesSectionRow';\r\nimport { formatUtils } from '../../../utils/format.utils';\r\nimport { TimeSpan } from '../../controls/TimeSpan';\r\nimport { constants } from '../../../constants/constants';\r\nimport { getProcessSpecificSettings } from '../../../actions/edit.parsed.bwic.actions';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\n\r\ninterface BwicRulesParsedProps {\r\n process: Process;\r\n parsedProcess?: ParsedBwicProcess;\r\n bidsDueDate: Date;\r\n goodUntilDate: Date;\r\n isSameDayBwic: boolean;\r\n daysToSettle: number;\r\n}\r\n\r\nexport function BwicRulesParsed({ process, parsedProcess, bidsDueDate, goodUntilDate, isSameDayBwic, daysToSettle }: BwicRulesParsedProps) {\r\n if (!process) return null;\r\n\r\n const isGeneralSectionVisible =\r\n parsedProcess?.reserveLevelsApply !== null ||\r\n parsedProcess?.canTradeEarly != null ||\r\n parsedProcess.canBidEarly != null ||\r\n parsedProcess.partialBidsAccepted != null ||\r\n !!parsedProcess.bidsGoodFor;\r\n\r\n const settings = getProcessSpecificSettings(parsedProcess);\r\n const isTwoStage = (settings as ParsedBwicTwoStageSettings)?.hardCutOff === 2;\r\n const stage2EndDateUtc = (settings as ParsedBwicTwoStageSettings)?.stage2EndDateUtc;\r\n const stage2ImproverCount = (settings as ParsedBwicTwoStageSettings)?.improverCount;\r\n const processNameFormatted = parsedProcess?.processType\r\n ? formatUtils.formatBwicProcessTitle(parsedProcess.processType)\r\n : null;\r\n\r\n return (\r\n
\r\n Rules access is limited with your current plan. to unlock access to this feature.}\r\n >\r\n
\r\n \r\n
\r\n {\r\n (!isGeneralSectionVisible || !parsedProcess) &&\r\n
\r\n \r\n {\r\n !!process.rulesText\r\n ? {process.rulesText}\r\n :

No rules added.

\r\n }\r\n
\r\n
\r\n } {\r\n !!parsedProcess &&\r\n
\r\n \r\n \r\n {formatUtils.formatBoolean(parsedProcess.reserveLevelsApply)}\r\n \r\n \r\n {formatUtils.formatBoolean(parsedProcess.canTradeEarly)}\r\n \r\n \r\n {formatUtils.formatBoolean(parsedProcess.canBidEarly)}\r\n \r\n \r\n {formatUtils.formatBoolean(parsedProcess.partialBidsAccepted)}\r\n \r\n \r\n {!!parsedProcess.bidsGoodFor && }\r\n \r\n \r\n {process.rulesText}\r\n \r\n \r\n {\r\n !!processNameFormatted &&\r\n \r\n {\r\n isTwoStage &&\r\n
Stage 1 - Open bidding
\r\n }\r\n \r\n {moment.utc(settings?.stage1EndDateUtc).format(constants.timeFormat)}\r\n \r\n \r\n
\r\n Top {stage2ImproverCount} + ties\r\n \r\n
\r\n \r\n {\r\n isTwoStage &&\r\n
Stage 2 - {processNameFormatted} bidders have the ability to improve their bids
\r\n }\r\n \r\n {moment.utc(stage2EndDateUtc).format(constants.timeFormat)}\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\nimport dateTimeUtils from '../../../utils/dateTime.utils';\r\nimport { formatUtils } from '../../../utils/format.utils';\r\nimport { BwicProcessType, Process } from '../../../types/models/Process';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\n\r\ninterface BwicRulesSectionGeneralProps {\r\n process: Process;\r\n isMy: boolean;\r\n}\r\n\r\nexport function BwicRulesSectionGeneral({ process, isMy }: BwicRulesSectionGeneralProps) {\r\n return (\r\n
\r\n
\r\n

General

\r\n
\r\n
\r\n \r\n {formatUtils.formatBoolean(process.reserveLevelsApply)}\r\n \r\n \r\n {formatUtils.formatBoolean(process.earlyTrades)}\r\n \r\n {process.minBidIncrement && \r\n {formatUtils.formatBid(process.minBidIncrement)}\r\n }\r\n {\r\n (process.type === BwicProcessType.Standard ||\r\n process.type === BwicProcessType.BestFootForward) &&\r\n unlimited\r\n }\r\n {\r\n process.type === BwicProcessType.Standard &&\r\n auto/manual\r\n }\r\n {\r\n process.type === BwicProcessType.BestFootForward &&\r\n manual\r\n }\r\n {\r\n (process.type === BwicProcessType.Standard ||\r\n process.type === BwicProcessType.TopX ||\r\n process.type === BwicProcessType.JumpBall) &&\r\n Boolean(process?.autoFeedbackDelay) && isMy &&\r\n \r\n {` ${dateTimeUtils.parseTimeSpan(process?.autoFeedbackDelay).totalMinutes} minutes`}\r\n \r\n }\r\n {process.rulesText &&\r\n \r\n {process.rulesText}\r\n \r\n }\r\n
\r\n
\r\n );\r\n}\r\n","import * as React from 'react';\r\nimport dateTimeUtils from '../../utils/dateTime.utils';\r\nimport { BwicRulesSectionRow } from './sections/BwicRulesSectionRow';\r\nimport { Process } from '../../types/models/Process';\r\n\r\nexport function CutOffReminder({ process }: { process: Process }) {\r\n return (\r\n \r\n {dateTimeUtils.parseTimeSpan(process?.cutOffReminder).totalMinutes} minutes\r\n \r\n );\r\n}\r\n\r\n","interface BwicRulesStageProps {\r\n title: string;\r\n children: React.ReactNode;\r\n}\r\n\r\nexport const BwicRulesStage = ({ title, children }: BwicRulesStageProps) => {\r\n return (\r\n
\r\n
{title}
\r\n {children}\r\n
\r\n )\r\n}","import * as React from 'react';\r\nimport { Process } from '../../../types/models/Process';\r\nimport dateTimeUtils from '../../../utils/dateTime.utils';\r\nimport { BwicProcessType } from '../../../types/models/Process';\r\nimport { CutOffReminder } from '../CutOffReminder';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\nimport { BwicRulesStage } from './BwicRulesStage';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\n\r\ninterface BwicRulesSectionJumpBallProps {\r\n process: Process;\r\n}\r\n\r\nexport function BwicRulesSectionJumpBall({ process }: BwicRulesSectionJumpBallProps) {\r\n if (process.type === BwicProcessType.JumpBall) {\r\n const stage1Duration = process.jumpBall?.automaticStage1Deadline\r\n ? `${dateTimeUtils.parseTimeSpan(process.jumpBall.automaticStage1Deadline).totalMinutes} minutes`\r\n : 'Unspecified; Seller controls finish time';\r\n const stage2Duration = process.jumpBall?.improvementRound\r\n ? `${dateTimeUtils.parseTimeSpan(process.jumpBall.improvementRound).totalMinutes} minutes`\r\n : \"Unspecified; Seller controls finish time\"\r\n\r\n return (\r\n
\r\n \r\n \r\n {stage1Duration}\r\n \r\n {\r\n Boolean(process.jumpBall?.automaticStage1Deadline) &&\r\n \r\n }\r\n \r\n <>\r\n Top {process.jumpBall?.improverCount} + ties\r\n \r\n \r\n \r\n unlimited\r\n auto/manual\r\n \r\n \r\n
Bids from Stage 1 are carried to Stage 2 and bidders have one time to improve, if they choose. However, the seller is notified if the buyer is bidding over themselves and has the option to trade at the lower bid. Results are announced when all bidders submit bids in Stage 2 or when Seller closes BWIC via trading or DNT.
\r\n \r\n {stage2Duration}\r\n \r\n once\r\n manual\r\n \r\n
\r\n )\r\n } else return null;\r\n}\r\n","import { formatUtils } from '../../../utils/format.utils';\r\nimport { BwicProcessType, Process } from '../../../types/models/Process';\r\nimport { levelSpecifications } from '../../../constants/level.specifications';\r\nimport { Pluralize } from '../../common/Pluralize';\r\nimport { CutOffReminder } from '../CutOffReminder';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\nimport { BwicRulesStage } from './BwicRulesStage';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\n\r\ninterface BwicRulesSectionOpenBiddingProps {\r\n process: Process;\r\n}\r\n\r\nexport function BwicRulesSectionOpenBidding({ process }: BwicRulesSectionOpenBiddingProps) {\r\n if (process.type !== BwicProcessType.Live || process.liveBidding == null) {\r\n return null;\r\n }\r\n\r\n const levelSpecification = levelSpecifications.getByKey(process.liveBidding!.levelSpecificationType);\r\n const improverCount = `Top ${process.liveBidding?.openBiddingImproverCount}`;\r\n const stage1Deadline = Number(process.liveBidding!.stage1Deadline);\r\n const improvementRound = Number(process.liveBidding!.improvementRound);\r\n const minBidIncrement = formatUtils.formatBid(process.liveBidding!.minBidIncrement);\r\n\r\n return (\r\n
\r\n
Bidding is open for platform participants only
\r\n \r\n \r\n {stage1Deadline} \r\n \r\n \r\n \r\n <>\r\n {improverCount} + ties\r\n \r\n \r\n \r\n unlimited\r\n no\r\n \r\n \r\n \r\n {improvementRound} \r\n \r\n \r\n {minBidIncrement}\r\n \r\n \r\n {levelSpecification && levelSpecification.title}\r\n \r\n unlimited\r\n auto\r\n \r\n
\r\n );\r\n}\r\n","import * as React from 'react';\r\nimport { Process } from '../../../types/models/Process';\r\nimport dateTimeUtils from '../../../utils/dateTime.utils';\r\nimport { BwicProcessType } from '../../../types/models/Process';\r\nimport { CutOffReminder } from '../CutOffReminder';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\nimport { BwicRulesStage } from './BwicRulesStage';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\n\r\ninterface BwicRulesTopXProps {\r\n process: Process;\r\n}\r\n\r\nexport function BwicRulesTopX({ process }: BwicRulesTopXProps) {\r\n if (process.type === BwicProcessType.TopX) {\r\n const stage1Duration = process.topX?.automaticStage1Deadline\r\n ? `${dateTimeUtils.parseTimeSpan(process.topX.automaticStage1Deadline).totalMinutes} minutes`\r\n : 'Unspecified; Seller controls finish time';\r\n const stage2Duration = process.topX?.improvementRound\r\n ? `${dateTimeUtils.parseTimeSpan(process.topX?.improvementRound).totalMinutes} minutes`\r\n : 'Unspecified; Seller controls finish time';\r\n\r\n return (\r\n
\r\n \r\n \r\n {stage1Duration}\r\n \r\n {\r\n Boolean(process.topX?.automaticStage1Deadline) &&\r\n \r\n }\r\n \r\n
\r\n Top {process.topX?.improverCount} + ties\r\n \r\n
\r\n
\r\n unlimited\r\n auto/manual\r\n \r\n \r\n
\r\n Bids from Stage 1 are carried to Stage 2. However, the seller is notified if the bidder is bidding over themselves and has the option to trade at the lower bid. The seller can provide manual/auto feedback on bids. Results are announced when the Seller closes BWIC via trading or DNT.\r\n
\r\n \r\n {stage2Duration}\r\n \r\n unlimited\r\n auto/manual\r\n \r\n
\r\n )\r\n } else return null;\r\n}\r\n","import * as React from 'react';\r\nimport { Process } from '../../../types/models/Process';\r\nimport dateTimeUtils from '../../../utils/dateTime.utils';\r\nimport { BwicProcessType } from '../../../types/models/Process';\r\nimport { CutOffReminder } from '../CutOffReminder';\r\nimport { BwicRulesSectionRow } from './BwicRulesSectionRow';\r\nimport { BwicRulesStage } from './BwicRulesStage';\r\n\r\ninterface BwicRulesBestFootForwardProps {\r\n process: Process;\r\n}\r\n\r\nexport function BwicRulesBestFootForward({ process }: BwicRulesBestFootForwardProps) {\r\n if (process.type === BwicProcessType.BestFootForward) {\r\n return (\r\n
\r\n \r\n \r\n {dateTimeUtils.parseTimeSpan(process.bff?.stage1Deadline).totalMinutes} minutes\r\n \r\n \r\n \r\n
\r\n )\r\n } else return null;\r\n}\r\n","import * as React from 'react';\r\nimport { Process } from '../../../types/models/Process';\r\nimport { TradingProtocol } from '../../common/TradingProtocol';\r\nimport { BwicRulesSectionGeneral } from '../sections/BwicRulesSectionGeneral';\r\nimport { BwicRulesSectionJumpBall } from '../sections/BwicRulesSectionJumpBall';\r\nimport { BwicRulesSectionOpenBidding } from '../sections/BwicRulesSectionOpenBidding';\r\nimport { BwicRulesStartEndTime } from '../sections/BwicRulesStartEndTime';\r\nimport { formatUtils } from '../../../utils/format.utils';\r\nimport { BwicProcessType } from \"../../../types/models/Process\";\r\nimport { BwicRulesTopX } from '../sections/BwicRulesTopX';\r\nimport { BwicRulesBestFootForward } from '../sections/BwicRulesBestFootForward';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\n\r\ninterface BwicRulesMainProps {\r\n bidsDueDate: Date;\r\n goodUntilDate: Date;\r\n process: Process;\r\n isSameDayBwic: boolean;\r\n daysToSettle: number;\r\n isMy: boolean;\r\n isAllToAll: boolean;\r\n isDirectBidding: boolean;\r\n}\r\n\r\nexport function BwicRulesMain({ process, bidsDueDate, goodUntilDate, isSameDayBwic, daysToSettle, isMy, isAllToAll, isDirectBidding }: BwicRulesMainProps) {\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n
\r\n
\r\n

Bidding Process: {formatUtils.formatBwicProcessTitle(process.type)}

\r\n {process.type === BwicProcessType.Live &&\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","import * as React from 'react';\r\nimport { BwicRulesParsed } from './bwic-types/BwicRulesParsed';\r\nimport { Process } from '../../types/models/Process';\r\nimport { BwicRulesMain } from './bwic-types/BwicRulesMain';\r\nimport { ParsedBwicProcess } from '../../types/models/ParsedBwicProcess';\r\n\r\nexport interface BwicRulesProps {\r\n bidsDueDate: Date;\r\n process: Process;\r\n parsedProcess?: ParsedBwicProcess;\r\n isParsed?: boolean;\r\n goodUntilDate: Date;\r\n isSameDayBwic: boolean;\r\n daysToSettle: number;\r\n isMy: boolean\r\n isAllToAll: boolean;\r\n isDirectBidding: boolean;\r\n}\r\n\r\nexport function BwicRules({ process, parsedProcess, bidsDueDate, goodUntilDate, isParsed, isSameDayBwic, daysToSettle, isMy, isAllToAll, isDirectBidding }: BwicRulesProps) {\r\n if (!process) {\r\n return null;\r\n }\r\n\r\n if (isParsed) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { classnames } from '../../styles/classnames';\r\nimport { onBoardingTooltipConst, roles } from '../../constants';\r\nimport { onBoardingTooltipSetVisible } from '../../actions';\r\nimport { ShowFor } from '../access';\r\nimport { SalesRepresentativeList } from '../sales-representative/SalesRepresentativeList';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { OnHoverTooltip } from '../common';\r\nimport { Toggle } from '../controls';\r\n\r\nclass SupportMain extends Component {\r\n state = {\r\n visible: false\r\n };\r\n\r\n getCheckedOnBoardingTooltipToggle = () => {\r\n const { tooltipState } = this.props;\r\n const { pages } = tooltipState;\r\n for (const key in onBoardingTooltipConst.pages) {\r\n const pageKey = onBoardingTooltipConst.pages[key];\r\n if (!pages[pageKey]) {\r\n return false\r\n }\r\n if (!pages[pageKey].gotIt && pageKey !== onBoardingTooltipConst.pages.bwicOpenBidding) {\r\n return true\r\n }\r\n }\r\n return false\r\n };\r\n\r\n render = () => {\r\n const isShowSupport = classnames({\r\n 'navbar-support navbar-item-dropdown': true,\r\n 'is-show': this.state.visible\r\n });\r\n\r\n return (\r\n
this._dropdown = node} className={isShowSupport}>\r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.state.visible &&\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n this.props.dispatch(onBoardingTooltipSetVisible(e.target.checked))}\r\n >\r\n <>\r\n Show Training\r\n Toggle on for online training and learning content\r\n \r\n \r\n
\r\n
\r\n
\r\n }\r\n
\r\n );\r\n };\r\n\r\n show = () => {\r\n if (this.state.visible) {\r\n this.hide();\r\n } else {\r\n document.addEventListener('mousedown', this.handleClickOutside);\r\n this.setState({ visible: true });\r\n }\r\n };\r\n\r\n hide = () => {\r\n document.removeEventListener('mousedown', this.handleClickOutside);\r\n this.setState({ visible: false });\r\n };\r\n\r\n componentWillUnmount = () => document.removeEventListener('mousedown', this.handleClickOutside);\r\n\r\n handleClickOutside = e => {\r\n if (this._dropdown &&\r\n !this._dropdown.contains(e.target) &&\r\n this.state.visible) {\r\n this.hide();\r\n }\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({ onBoardingTooltip, salesRepresentative }) => ({\r\n tooltipState: onBoardingTooltip,\r\n salesRepresentatives: salesRepresentative.salesRepresentatives\r\n});\r\n\r\nconst Support = connect(mapStateToProps)(SupportMain);\r\n\r\nexport default Support\r\n","import classNames from 'classnames';\r\nimport { constants } from '../../../../constants';\r\nimport { chartUtils } from '../../../../utils';\r\nimport { OnHoverTooltip, Plot } from \"../../../common\";\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { PlotMouseEvent } from 'plotly.js';\r\nimport { ActionBlocker } from '../../../access/ActionBlocker';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { BlockedFeatureTooltipText } from '../../../access/BlockedFeatureText';\r\n\r\nconst layout = {\r\n height: 122,\r\n width: 122,\r\n showlegend: false,\r\n autosize: false,\r\n margin: {\r\n l: 0,\r\n r: 0,\r\n b: 0,\r\n t: 0,\r\n pad: 4,\r\n },\r\n};\r\n\r\nconst mainConfig = {\r\n responsive: true,\r\n displaylogo: false,\r\n doubleClickDelay: 1000,\r\n displayModeBar: false,\r\n showTips: false,\r\n};\r\n\r\ninterface StatisticsChartProps {\r\n title: string;\r\n onSectionClick: (section: T) => void;\r\n sections: [T, T];\r\n values: [number?, number?];\r\n labels: [string, string];\r\n colors: [string, string];\r\n features?: SubscriptionFeature[];\r\n}\r\n\r\nexport const StatisticsChart = ({\r\n title,\r\n onSectionClick,\r\n sections,\r\n values,\r\n labels,\r\n colors,\r\n features,\r\n}: StatisticsChartProps) => {\r\n const merged = values.map((value, index) => ({\r\n value,\r\n label: labels[index],\r\n color: colors[index],\r\n section: sections[index],\r\n })).filter(x => !!x.value);\r\n\r\n const isEmpty = !merged.length;\r\n\r\n const handlePlotClick = (e: PlotMouseEvent) => {\r\n if (!e.points || !e.points.length || isEmpty) {\r\n return;\r\n }\r\n\r\n const [clickedPoint] = e.points;\r\n\r\n const customData = (clickedPoint.customdata as unknown) as T[];\r\n\r\n if (!customData || !customData.length) {\r\n return;\r\n }\r\n\r\n const [clickedSection] = customData;\r\n\r\n onSectionClick(clickedSection);\r\n }\r\n\r\n const data = [\r\n {\r\n textinfo: \"none\",\r\n hoverinfo: \"text\",\r\n hole: 0.65,\r\n type: \"pie\",\r\n hoverlabel: {\r\n bgcolor: \"#4A4A4A\",\r\n bordercolor: \"#4A4A4A\",\r\n font: {\r\n size: 12,\r\n color: \"#fff\",\r\n },\r\n },\r\n direction: \"clockwise\",\r\n sort: false,\r\n values: isEmpty ? [100] : merged.map(x => x.value),\r\n text: merged.map(x => `${x.label}: ${x.value}`),\r\n customdata: merged.map(x => x.section),\r\n marker: {\r\n colors: isEmpty ? ['#F5F5F5'] : merged.map(x => x.color),\r\n line: {\r\n color: \"#fff\",\r\n width: 2,\r\n },\r\n },\r\n },\r\n ];\r\n\r\n const redirectButton = (section: T) => (disabled: boolean = false) => (\r\n : \"See on Issuance Monitor\"}\r\n >\r\n onSectionClick(section)}\r\n >\r\n \r\n \r\n \r\n );\r\n\r\n return (\r\n \r\n {blocked => (\r\n
\r\n
\r\n

{title}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n {labels.map((label, index) =>\r\n
\r\n {label}\r\n \r\n {values[index] || constants.emptyPlaceholder}\r\n {!!values[index] && redirectButton(sections[index])(blocked)}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n","import { RequestState } from '../../../constants/request-state';\r\nimport { Preloader } from '../Preloader';\r\nimport { CompanyMemberItem } from '../../../types/state/CompanyMembersState';\r\n\r\ninterface Props {\r\n companyMembers: CompanyMemberItem;\r\n}\r\n\r\nexport function MembersList({ companyMembers }: Props) {\r\n const isRequesting = () => {\r\n return companyMembers && companyMembers.requestState === RequestState.request;\r\n };\r\n\r\n const getMemberList = () => {\r\n if (!companyMembers) {\r\n return [];\r\n }\r\n const members = [...companyMembers.members || []];\r\n members.sort((a, b) => a.fullName.localeCompare(b.fullName));\r\n return members;\r\n };\r\n\r\n const renderMemberList = () => {\r\n return getMemberList().map((member, i) => {\r\n return (\r\n
  • \r\n {member.fullName || ''}\r\n {member.email}\r\n {member.phone}\r\n
  • \r\n )\r\n });\r\n };\r\n\r\n return (\r\n \r\n
    \r\n Name\r\n Email\r\n Phone Number\r\n
    \r\n
      \r\n {renderMemberList()}\r\n
    \r\n
    \r\n );\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { companyMembersActions } from '../../../actions/company-members.actions';\r\nimport { chartBoxHorizontal } from '../../../constants/dashboard';\r\nimport { MembersList } from './MembersList';\r\nimport { companyStatuses, constants } from '../../../constants';\r\nimport { Accordion, AccordionItem, AccordionItemHeader, AccordionItemBody } from '../accordion';\r\nimport { OnHoverTooltip, EmptyPlaceholder } from '../../common';\r\nimport { PxTalkNormalizationTable } from './PxTalkNormalizationTable'\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { isRequesting, shouldRequest } from '../../../utils/request-state.utils';\r\nimport { Preloader } from '../Preloader';\r\nimport { usePriceTalks } from '../../../effects/usePriceTalks';\r\nimport { ValueBlocker } from '../../access/ValueBlocker';\r\nimport { HorizontalBoxChart } from '../charts/horizontalBox/HorizontalBoxChart';\r\nimport { ChartRequiredFeature } from '../../access/ChartRequiredFeature';\r\nimport { SubscriptionFeature } from '../../../types/billing/SubscriptionFeature';\r\nimport { RequiredFeature } from '../../access/RequiredFeature';\r\nimport { EvalKTalkLabel } from './EvalKTalkLabel';\r\nimport { useAppSelector } from '../../../effects/useAppSelector';\r\nimport { CompanySlim } from '../../../types/company/CompanySlim';\r\nimport classNames from 'classnames';\r\nimport { BankLink } from '../../amrPipeline/common/BankLink';\r\n\r\nconst chartName = \"Price Talk Dispersion\";\r\n\r\ninterface PxTalkListProps {\r\n bwicReferenceName: string,\r\n isParsed: boolean,\r\n evalPriceTalkVisible?: boolean,\r\n evalPriceTalk?: string | null,\r\n normalizedEvalPriceTalk?: number | null\r\n}\r\n\r\nexport function PxTalkList({\r\n bwicReferenceName,\r\n isParsed,\r\n evalPriceTalkVisible = false,\r\n evalPriceTalk = null,\r\n normalizedEvalPriceTalk = null\r\n}: PxTalkListProps) {\r\n const dispatch = useDispatch();\r\n\r\n const companyMembers = useAppSelector(store => store.companyMembers);\r\n const visible = useAppSelector(store => store.pxTalkList.visible);\r\n const positionId = useAppSelector(store => store.pxTalkList.positionId);\r\n const priceTalksState = usePriceTalks(bwicReferenceName, positionId ?? 0);\r\n const priceTalks = positionId && visible ? priceTalksState.priceTalks : [];\r\n const [expandedCompanies, setExpandedCompanies] = useState([]);\r\n const companyIds = Object.keys(companyMembers).map(cm => Number(cm));\r\n const isExpandAll = companyIds.length === expandedCompanies.length;\r\n\r\n useEffect(() => {\r\n priceTalks.forEach((p) => {\r\n if (p.company) {\r\n const companyId = p.company.id;\r\n if (!companyMembers[companyId] || shouldRequest(companyMembers[companyId].requestState)) {\r\n dispatch(companyMembersActions.fetchCompanyMembers.request({ companyId }));\r\n }\r\n }\r\n })\r\n // eslint-disable-next-line\r\n }, [priceTalks, dispatch]);\r\n\r\n if (!visible || !positionId) {\r\n return null;\r\n }\r\n\r\n const handleCompanyExpanded = (company: CompanySlim | null, e: React.FormEvent) => {\r\n e.stopPropagation();\r\n\r\n if (!company || company?.id === undefined) {\r\n return;\r\n }\r\n\r\n if (company.status !== companyStatuses.active.statusCode) {\r\n return;\r\n }\r\n\r\n if (expandedCompanies.includes(company.id)) {\r\n setExpandedCompanies(expandedCompanies.filter(sm => sm !== company.id));\r\n } else {\r\n setExpandedCompanies([...expandedCompanies, company.id])\r\n }\r\n };\r\n\r\n const toggleExpandAll = () => {\r\n if (isExpandAll) {\r\n setExpandedCompanies([]);\r\n } else {\r\n setExpandedCompanies(companyIds);\r\n }\r\n }\r\n\r\n const renderEmptyList = () => {\r\n const placeholder = (\r\n
    \r\n \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n {\r\n isParsed ? (\r\n \r\n {placeholder}\r\n \r\n ) : placeholder\r\n }\r\n
    \r\n );\r\n };\r\n\r\n const renderChart = () => {\r\n const chart = ;\r\n\r\n return isParsed ? (\r\n \r\n {chart}\r\n \r\n ) : chart\r\n }\r\n\r\n const renderPriceTalkValue = (priceTalk: string | null | number) => isParsed ? (\r\n \r\n {priceTalk}\r\n \r\n ) : priceTalk\r\n\r\n const pxTalks = priceTalks\r\n .filter(pxTalk => pxTalk.talk && pxTalk.company)\r\n .sort((a, b) => (b.normalizedLevel ?? 0) - (a.normalizedLevel ?? 0));\r\n\r\n const renderEvalPxTalk = () => {\r\n if (!evalPriceTalkVisible) {\r\n return null;\r\n }\r\n return (\r\n \r\n null}\r\n showAdditionalIcon={false}\r\n isShowCollapsedIcon={false}\r\n >\r\n <>\r\n \r\n
    {evalPriceTalk || constants.emptyPlaceholder}
    \r\n
    {normalizedEvalPriceTalk || constants.emptyPlaceholder}
    \r\n \r\n \r\n
    \r\n );\r\n }\r\n\r\n const hasPxTalksToDisplay = (evalPriceTalkVisible && evalPriceTalk)\r\n || (pxTalks.length > 0 && pxTalks.some(p => p.normalizedLevel));\r\n\r\n return (\r\n \r\n {\r\n !isRequesting(priceTalksState.requestState) &&\r\n <>\r\n {\r\n hasPxTalksToDisplay &&\r\n
    e.stopPropagation()}>\r\n
    \r\n

    {chartName}

    \r\n
    \r\n
    \r\n {renderChart()}\r\n
    \r\n
    \r\n
    \r\n \r\n
    Сompanies
    \r\n
    \r\n Px Talk\r\n }\r\n >\r\n \r\n \r\n
    \r\n \r\n
    \r\n Digitized\r\n }\r\n >\r\n \r\n \r\n
    \r\n
    \r\n \r\n {renderEvalPxTalk()}\r\n {\r\n pxTalks\r\n .map((item) => {\r\n\r\n return (\r\n \r\n handleCompanyExpanded(item.company, e)}\r\n isShowCollapsedIcon={item.company.status === companyStatuses.active.statusCode}\r\n >\r\n <>\r\n
    \r\n \r\n
    \r\n
    \r\n {renderPriceTalkValue(item.talk)}\r\n
    \r\n
    \r\n {item.normalizedLevel ? renderPriceTalkValue(item.normalizedLevel) : constants.emptyPlaceholder}\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 {!hasPxTalksToDisplay && renderEmptyList()}\r\n \r\n }\r\n
    \r\n );\r\n}\r\n\r\nPxTalkList.defaultProps = {\r\n priceTalksPreloaded: undefined\r\n}\r\n","import * as React from 'react';\r\nimport classNames from 'classnames';\r\nimport { Tooltip, TooltipPlacement } from './Tooltip';\r\n\r\ninterface Props {\r\n disabled?: boolean;\r\n children?: any;\r\n wrapperClass?: string;\r\n placement?: string | TooltipPlacement;\r\n overlay?: React.ReactNode;\r\n overlayClassName?: string;\r\n}\r\n\r\nexport function OnHoverTooltip({ wrapperClass, overlay, disabled, placement, overlayClassName, children }: Props) {\r\n return (\r\n !!overlay && !disabled\r\n ? (\r\n \r\n
    {children}
    \r\n \r\n ) : <>{children}\r\n )\r\n}\r\n","import { Suspense, lazy, useMemo, useRef } from 'react';\r\nimport { user } from '../../user';\r\n\r\nconst JoditEditorComponent = lazy(() => import('jodit-react'));\r\n\r\ninterface EditorProps {\r\n value: string;\r\n uploadBaseUrl?: string;\r\n uploadPath: string;\r\n maxLength?: number;\r\n onChange: (value: string) => void;\r\n placeholder?: string;\r\n}\r\n\r\nexport const JoditEditor = ({ maxLength, value, uploadBaseUrl = `${process.env.REACT_APP_AMR_ENDPOINT}`, uploadPath, onChange, placeholder = \"Start writing…\" }: EditorProps) => {\r\n const editor = useRef(null);\r\n\r\n // `as any` is set on purpose, because of broken types.\r\n // `config` doesn't recognize `limitChars` property\r\n const config = useMemo(() => ({\r\n readonly: false,\r\n limitChars: maxLength,\r\n\r\n // Disable source editor to avoid loading ace.js\r\n sourceEditor: 'area',\r\n\r\n // Disable beautify HTML to avoid loading beautify-html\r\n beautifyHTML: false,\r\n uploader: {\r\n url: `${uploadBaseUrl}${uploadPath}`,\r\n withCredentials: true,\r\n format: 'json',\r\n headers: {\r\n authorization: `Bearer ${user.token()}`,\r\n },\r\n process: function (response: any) {\r\n if (!response) {\r\n return {\r\n files: [],\r\n baseurl: uploadBaseUrl,\r\n error: true,\r\n msg: 'Error uploading image',\r\n };\r\n }\r\n\r\n const [file] = response;\r\n\r\n return {\r\n files: [file.url],\r\n path: file.url,\r\n baseurl: uploadBaseUrl,\r\n error: false,\r\n msg: '',\r\n };\r\n },\r\n isSuccess: function (response: any) {\r\n return !!response;\r\n },\r\n getMessage: function (response: any) {\r\n return !!response ? 'Uploaded' : 'Error';\r\n },\r\n defaultHandlerSuccess: function (response: any) {\r\n if (!response?.files?.length) {\r\n return;\r\n }\r\n\r\n // Destroy type of this on purpose\r\n const that: any = this;\r\n\r\n response.files.forEach((filename: string) => {\r\n const element = that.createInside.element('img');\r\n const imageUrl = `${response.baseurl}${filename}`;\r\n element.setAttribute('src', imageUrl);\r\n that.s.insertImage(element as HTMLImageElement, null, that.o.imageDefaultWidth);\r\n });\r\n },\r\n defaultHandlerError: function (response: any) {\r\n // Destroy type of this on purpose\r\n const that: any = this;\r\n that.j.e.fire('errorMessage', 'Error uploading image');\r\n },\r\n },\r\n askBeforePasteHTML: false,\r\n toolbarAdaptive: false,\r\n buttons: 'bold,italic,underline,fontsize,brush,|,ul,ol,hr,eraser,|,paragraph,indent,outdent,|,left,center,right,justify,|,image,table,link,video,|,undo,redo,|,preview,fullsize',\r\n defaultActionOnPaste: 'insert_clear_html',\r\n placeholder\r\n } as any), [maxLength, uploadBaseUrl, uploadPath, placeholder]);\r\n\r\n return (\r\n Loading}>\r\n onChange(value)}\r\n />\r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport classNames from \"classnames\";\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { securityDetailsActions, controlPanelActions } from '../../actions';\r\n\r\nexport const TickerButton = ({ security, fetchAgencyRatings = false, onClick }) => {\r\n const dispatch = useDispatch();\r\n const selectedSecurity = useSelector(store => store.securityDetails.security);\r\n const id = security.id ?? security.securityId;\r\n const selectedId = selectedSecurity?.id ?? selectedSecurity?.securityId;\r\n const isActive = selectedSecurity && id === selectedId;\r\n\r\n const handleClick = e => {\r\n if (isActive) {\r\n onClick?.(e);\r\n dispatch(securityDetailsActions.securityDetailsReset());\r\n } else {\r\n onClick?.(e, security);\r\n dispatch(controlPanelActions.hide());\r\n dispatch(securityDetailsActions.securityDetailsInitRequest(security, fetchAgencyRatings));\r\n }\r\n\r\n e.stopPropagation();\r\n }\r\n\r\n\r\n return (\r\n \r\n {security.ticker}\r\n \r\n );\r\n};\r\n\r\nTickerButton.defaultProps = {\r\n onClick: null\r\n}\r\n","import { StatusMessageSectionType } from \"../../types/state/NotificationState\";\r\nimport { Popup, PopupBody, PopupFooter } from \"../controls\";\r\nimport { StatusMessageSection } from \"../status-message/StatusMessageSection\";\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { useSelector } from \"react-redux\";\r\nimport { AppState } from \"../../types/state/AppState\";\r\n\r\ninterface SecuritiesGridFlaggedPopupProps {\r\n onClose: () => void;\r\n}\r\n\r\nexport const SecuritiesGridFlaggedPopup = ({ onClose }: SecuritiesGridFlaggedPopupProps) => {\r\n const dataItems = useSelector((s: AppState) => s.grid.dataItems);\r\n const flaggedItemsLines = dataItems\r\n .map(({ ticker, isFlagged }, index) => isFlagged ?
  • {ticker} (line {index + 1})
  • : null)\r\n .filter(el => el)\r\n\r\n return (\r\n \r\n \r\n \r\n There are securities that were in the grid before the\r\n update, but do not exist in the uploaded file.
    \r\n These securties are marked with \r\n
      \r\n {flaggedItemsLines}\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\nimport moment from 'moment';\r\nimport classNames from 'classnames';\r\n\r\ninterface TimerProps {\r\n start: Date,\r\n durationSeconds: number,\r\n durationHighlightLimitSecods?: number\r\n onEllapsed: () => void,\r\n customFormat?: (remainingDuration: number) => string\r\n}\r\n\r\nexport function Timer({ start, durationSeconds, durationHighlightLimitSecods = 60, customFormat, onEllapsed }: TimerProps) {\r\n const [iteration, setIteration] = React.useState(0);\r\n const currentDuration = moment().diff(start, 's');\r\n const remainingDuration = durationSeconds - currentDuration;\r\n const shouldHighlight = durationHighlightLimitSecods && remainingDuration <= durationHighlightLimitSecods;\r\n const formatTime = (time: number) => time <= 0\r\n ? '00'\r\n : time.toLocaleString('en-US', { minimumIntegerDigits: 2, useGrouping: false });\r\n const format = (): string => {\r\n const hours = ~~(remainingDuration / 3600);\r\n const minutes = ~~((remainingDuration - hours * 3600) / 60);\r\n const seconds = remainingDuration - hours * 3600 - minutes * 60;\r\n\r\n return [!!hours && formatTime(hours), formatTime(minutes), formatTime(seconds)]\r\n .filter(part => !!part)\r\n .join(':');\r\n }\r\n\r\n React.useEffect(() => {\r\n let handle: number | undefined = undefined;\r\n if (remainingDuration > 0) {\r\n handle = window.setTimeout(() => setIteration(iteration + 1), 1000);\r\n } else {\r\n onEllapsed();\r\n }\r\n\r\n return () => {\r\n if (handle) {\r\n clearTimeout(handle);\r\n }\r\n } // eslint-disable-next-line\r\n }, [iteration, remainingDuration]);\r\n\r\n\r\n return (\r\n
    \r\n \r\n {customFormat == null ? format() : customFormat(remainingDuration)}\r\n
    \r\n );\r\n}\r\n","import React, { PureComponent } from 'react';\r\nimport sanitizeHtml from 'sanitize-html';\r\nimport PropTypes from 'prop-types';\r\nimport { ClickOutside } from './ClickOutside';\r\n\r\nexport class ClampLines extends PureComponent {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.element = null;\r\n this.original = props.text;\r\n this.watch = true;\r\n this.lineHeight = 0;\r\n this.start = 0;\r\n this.middle = 0;\r\n this.end = 0;\r\n this.uuid = props.id;\r\n this.state = {\r\n expanded: true,\r\n noClamp: false,\r\n text: props.text.substring(0, 20),\r\n };\r\n\r\n this.ssr = typeof window === 'undefined';\r\n\r\n this.action = this.action.bind(this);\r\n this.clickHandler = this.clickHandler.bind(this);\r\n\r\n if (!this.ssr) {\r\n this.debounced = this.debounce(this.action, props.delay);\r\n } else {\r\n this.state.text = props.text.substring(0, 20);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n if (this.props.text && !this.ssr) {\r\n this.lineHeight = this.element.clientHeight + 1;\r\n this.clampLines();\r\n if (this.watch) {\r\n window.addEventListener('resize', this.debounced);\r\n }\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n if (!this.ssr) {\r\n window.removeEventListener('resize', this.debounced);\r\n }\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n if (prevProps.text !== this.props.text) {\r\n this.original = this.props.text;\r\n this.clampLines();\r\n }\r\n }\r\n\r\n debounce(func, wait, immediate) {\r\n let timeout;\r\n\r\n return () => {\r\n let context = this,\r\n args = arguments;\r\n let later = () => {\r\n timeout = null;\r\n if (!immediate) func.apply(context, args);\r\n };\r\n let callNow = immediate && !timeout;\r\n clearTimeout(timeout);\r\n timeout = setTimeout(later, wait);\r\n if (callNow) func.apply(context, args);\r\n };\r\n }\r\n\r\n action() {\r\n if (this.watch) {\r\n this.setState({\r\n noClamp: false,\r\n });\r\n this.clampLines();\r\n this.setState({ expanded: !this.state.expanded });\r\n }\r\n }\r\n\r\n clampLines() {\r\n if (!this.element) return;\r\n\r\n this.setState({\r\n text: '',\r\n });\r\n\r\n let maxHeight = this.lineHeight * this.props.lines + 1;\r\n this.start = 0;\r\n this.middle = 0;\r\n this.end = this.original.length;\r\n\r\n while (this.start <= this.end) {\r\n this.middle = Math.floor((this.start + this.end) / 2);\r\n this.element.innerText = this.original.slice(0, this.middle);\r\n if (this.middle === this.original.length) {\r\n this.setState({\r\n text: this.original,\r\n noClamp: true,\r\n });\r\n return;\r\n }\r\n\r\n this.moveMarkers(maxHeight);\r\n }\r\n\r\n const innerText = this.props.lines ? this.original.slice(0, this.middle - 5) + this.getEllipsis() : '';\r\n this.element.innerText = innerText;\r\n this.setState({\r\n text: innerText,\r\n });\r\n }\r\n\r\n moveMarkers(maxHeight) {\r\n if (this.element.clientHeight <= maxHeight) {\r\n this.start = this.middle + 1;\r\n } else {\r\n this.end = this.middle - 1;\r\n }\r\n }\r\n\r\n getClassName() {\r\n let className = this.props.className || '';\r\n\r\n return `clamp-lines ${className}`;\r\n }\r\n\r\n getEllipsis() {\r\n return this.watch && !this.state.noClamp ? this.props.ellipsis : '';\r\n }\r\n\r\n getButton() {\r\n if (this.state.noClamp || !this.props.buttons) return;\r\n\r\n let buttonText = this.watch ? this.props.moreText : this.props.lessText;\r\n\r\n return (\r\n \r\n {buttonText}\r\n \r\n );\r\n }\r\n\r\n clickHandler(e) {\r\n const { stopPropagation } = this.props;\r\n\r\n e.preventDefault();\r\n stopPropagation && e.stopPropagation();\r\n\r\n this.watch = !this.watch;\r\n this.watch\r\n ? this.clampLines()\r\n : this.setState({\r\n text: this.original,\r\n });\r\n\r\n this.setState({ expanded: !this.state.expanded }, () => {\r\n this.props.onClick && this.props.onClick(!this.state.expanded)\r\n });\r\n }\r\n\r\n handleClickOutside = (e) => {\r\n if(!this.watch) {\r\n this.clickHandler(e)\r\n }\r\n };\r\n\r\n render() {\r\n if (!this.props.text) {\r\n return null;\r\n }\r\n\r\n const hasHtml = (text) => /<[a-z][\\s\\S]*>/i.test(text);\r\n\r\n const sanitizeText = (text) => sanitizeHtml(text, {\r\n allowedTags: [ 'br' ],\r\n allowedAttributes: {}\r\n });\r\n\r\n const innerClampElement = React.createElement(this.props.innerElement, {\r\n ref: e => {\r\n this.element = e;\r\n },\r\n id: `clamped-content-${this.uuid}`,\r\n 'aria-hidden': this.state.expanded,\r\n dangerouslySetInnerHTML:{__html: hasHtml(this.state.text) ? sanitizeText(this.state.text) : this.state.text}\r\n });\r\n\r\n return (\r\n \r\n {innerClampElement}\r\n {this.getButton()}\r\n \r\n );\r\n }\r\n}\r\n\r\nClampLines.propTypes = {\r\n text: PropTypes.string.isRequired,\r\n id: PropTypes.string.isRequired,\r\n lines: PropTypes.number,\r\n ellipsis: PropTypes.string,\r\n buttons: PropTypes.bool,\r\n moreText: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element\r\n ]),\r\n lessText: PropTypes.oneOfType([\r\n PropTypes.string,\r\n PropTypes.element\r\n ]),\r\n className: PropTypes.string,\r\n delay: PropTypes.number,\r\n stopPropagation: PropTypes.bool,\r\n innerElement: PropTypes.string,\r\n onClick: PropTypes.func,\r\n};\r\n\r\nClampLines.defaultProps = {\r\n lines: 3,\r\n ellipsis: '...',\r\n buttons: true,\r\n delay: 100,\r\n innerElement: 'div'\r\n};\r\n","import cn from 'classnames';\r\nimport React, { useState } from 'react';\r\n\r\ninterface Props {\r\n children: React.ReactNode;\r\n disabled?: boolean;\r\n}\r\n\r\nexport const BorderHighlightAnimation = ({ children, disabled = true }: Props) => {\r\n const [animate, setAnimate] = useState(false);\r\n\r\n React.useLayoutEffect(() => {\r\n if(!disabled){\r\n setAnimate(true);\r\n }\r\n // eslint-disable-next-line\r\n }, []);\r\n\r\n return
    {children}
    \r\n}\r\n","import * as React from 'react';\r\nimport IconSVG from \"../../styles/svg-icons\";\r\n\r\ninterface Props {\r\n onRevert: (e: React.MouseEvent) => void;\r\n}\r\n\r\nexport function RevertBidButton({ onRevert }: Props) {\r\n return (\r\n \r\n );\r\n}\r\n","import React, { PropsWithChildren, ReactNode } from 'react';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\ninterface Props {\r\n title?: string\r\n hint?: ReactNode;\r\n renderTitle?: () => ReactNode;\r\n}\r\n\r\nexport const CollapsablePanel: React.FC> = ({ children, title, renderTitle, hint }) => {\r\n const [collapsed, setCollapsed] = React.useState(true);\r\n const toogleCollapsed = () => setCollapsed(!collapsed);\r\n\r\n const renderDefaultTitle = () => (\r\n <>\r\n

    {title}

    \r\n {!collapsed && {hint}}\r\n \r\n )\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n {renderTitle ? renderTitle() : renderDefaultTitle()}\r\n
    \r\n
    \r\n
    \r\n {collapsed && children}\r\n
    \r\n
    \r\n )\r\n};\r\n","import React from 'react';\r\nimport classNames from 'classnames';\r\nimport { bwicStatuses } from '../../constants/bwic.statuses';\r\nimport { BwicStatus } from '../../types/enums/BwicStatus';\r\nimport { OnHoverTooltip } from './OnHoverTooltip';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { LiveBiddingTooltipContent } from './LiveBiddingTooltipContent';\r\n\r\nexport interface BwicStatusLabelProps {\r\n status: BwicStatus;\r\n liveBidding?: boolean;\r\n isParsed?: boolean;\r\n directBidding?: boolean;\r\n bwicTypeIconVisible?: boolean;\r\n isAllToAll?: boolean;\r\n tooltip?: string;\r\n render?: React.ReactNode;\r\n}\r\n\r\nexport function BwicStatusLabel({\r\n status,\r\n liveBidding = false,\r\n isParsed = false,\r\n directBidding = false,\r\n bwicTypeIconVisible = true,\r\n isAllToAll = false,\r\n tooltip,\r\n render }: BwicStatusLabelProps) {\r\n const bwicStatus = bwicStatuses.getByKey(status);\r\n\r\n if (bwicStatus == null) return null;\r\n\r\n const cssClass = classNames('label-status', {\r\n 'label-status-scheduled': status === BwicStatus.scheduled,\r\n 'label-status-bidding': status === BwicStatus.bidding,\r\n 'label-status-finished': status === BwicStatus.finished,\r\n 'label-status-canceled': status === BwicStatus.canceled\r\n });\r\n\r\n return (\r\n
    \r\n \r\n {render ??
    {bwicStatus.title}
    }\r\n
    \r\n {\r\n bwicTypeIconVisible &&\r\n \r\n \r\n \r\n }\r\n
    \r\n );\r\n}\r\n\r\ninterface BwicTypeProps {\r\n isParsed: boolean;\r\n directBidding: boolean;\r\n isAllToAll: boolean;\r\n liveBidding: boolean;\r\n}\r\n\r\nexport function BwicTypeLabel({ isParsed, directBidding, isAllToAll, liveBidding }: BwicTypeProps) {\r\n if (isParsed) return \r\n if (isAllToAll) return \r\n if (directBidding) return \r\n if (liveBidding) return \r\n\r\n return null;\r\n}\r\n\r\nfunction ParsedLabel() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction KtxLabel() {\r\n return (\r\n \r\n KTX\r\n \r\n )\r\n}\r\n\r\nfunction AllToAllLabel() {\r\n return (\r\n \r\n All-to-All\r\n \r\n );\r\n}\r\n\r\nfunction Live() {\r\n return (\r\n }>\r\n LIVE\r\n \r\n );\r\n}\r\n","import { useEffect, useRef, useState } from \"react\";\r\nimport cn from \"classnames\";\r\nimport IconSVG from \"../../styles/svg-icons\";\r\ninterface HorizontalScrollProps {\r\n children: React.ReactElement[];\r\n activeItemIndex: number;\r\n}\r\n\r\nexport const AdaptiveHorizontalSlider = ({\r\n children,\r\n activeItemIndex,\r\n}: HorizontalScrollProps) => {\r\n const [disabledSlider, setDisabledSlider] = useState(false);\r\n const [scrollTo, setScrollTo] = useState(activeItemIndex);\r\n\r\n const scrollContainer = useRef(null);\r\n const backButtonRef = useRef(null);\r\n const scrollData = useRef({\r\n left: 0,\r\n right: 0,\r\n });\r\n\r\n useEffect(() => {\r\n onResize();\r\n\r\n window.addEventListener(\"resize\", onResize);\r\n return () => window.removeEventListener(\"resize\", onResize);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n const setBackButtonDisabling = () => {\r\n if (scrollContainer.current && backButtonRef.current) {\r\n const { width: containerWidth, right: containerRight } =\r\n scrollContainer.current.getBoundingClientRect();\r\n const firstChildLeft =\r\n scrollContainer.current.children[0].getBoundingClientRect()\r\n .left;\r\n const selectedChildRight =\r\n scrollContainer.current.children[\r\n scrollTo\r\n ].getBoundingClientRect().right;\r\n\r\n if (\r\n containerRight - firstChildLeft > containerWidth ||\r\n selectedChildRight - firstChildLeft > containerWidth\r\n ) {\r\n backButtonRef.current.classList.remove(\"disabled\");\r\n } else {\r\n backButtonRef.current.classList.add(\"disabled\");\r\n }\r\n }\r\n };\r\n\r\n const onResize = () => {\r\n if (scrollContainer.current) {\r\n const childrenList = Array.from(scrollContainer.current.children);\r\n const parentRight =\r\n scrollContainer.current.getBoundingClientRect().right;\r\n const lastChildRight =\r\n childrenList[childrenList.length - 1].getBoundingClientRect()\r\n .right;\r\n setDisabledSlider(\r\n Math.trunc(parentRight) >= Math.trunc(lastChildRight)\r\n );\r\n scrollData.current.left = 0;\r\n scrollData.current.right = 0;\r\n\r\n handleSlide(activeItemIndex);\r\n setBackButtonDisabling();\r\n }\r\n };\r\n\r\n const handleSlide = (indexToScroll: number) => {\r\n if (scrollContainer.current?.children) {\r\n const items = Array.from(scrollContainer.current.children);\r\n items[indexToScroll].scrollIntoView({ behavior: \"smooth\" });\r\n setScrollTo(indexToScroll);\r\n }\r\n };\r\n\r\n const getLeftEdge = () => {\r\n if (!scrollContainer.current) {\r\n return 0;\r\n }\r\n\r\n const childrenList = Array.from(\r\n scrollContainer.current.children\r\n ).reverse();\r\n const { left: parentLeft } =\r\n scrollContainer.current.getBoundingClientRect();\r\n\r\n const index = childrenList.findIndex(\r\n (c) => c.getBoundingClientRect().left < parentLeft\r\n );\r\n\r\n return childrenList.length - 1 - index;\r\n };\r\n\r\n const getRightEdge = () => {\r\n if (!scrollContainer.current) {\r\n return 0;\r\n }\r\n const childrenList = Array.from(scrollContainer.current.children);\r\n const { right: parentRight } =\r\n scrollContainer.current.getBoundingClientRect();\r\n\r\n return childrenList.findIndex(\r\n (c) =>\r\n Math.trunc(c.getBoundingClientRect().right) >\r\n Math.trunc(parentRight)\r\n );\r\n };\r\n\r\n const handleScrollBack = () => {\r\n scrollData.current.right = 0;\r\n scrollData.current.left = scrollData.current.left\r\n ? scrollData.current.left - 1\r\n : getLeftEdge();\r\n\r\n handleSlide(scrollData.current.left);\r\n };\r\n\r\n const handleScrollForward = () => {\r\n backButtonRef.current?.classList.remove(\"disabled\");\r\n scrollData.current.left = 0;\r\n scrollData.current.right = scrollData.current.right\r\n ? scrollData.current.right + 1\r\n : getRightEdge();\r\n\r\n handleSlide(scrollData.current.right);\r\n };\r\n\r\n const leftArrowClassNames = cn(\r\n \"btn-link horizontal-slider-button horizontal-slider-button-prev\",\r\n { disabled: !scrollTo }\r\n );\r\n\r\n const rightArrowClassNames = cn(\r\n \"btn-link horizontal-slider-button horizontal-slider-button-next\",\r\n { disabled: scrollTo === children.length - 1 }\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n\r\n \r\n {children}\r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import * as React from 'react';\r\nimport classNames from 'classnames';\r\nimport { useSettlementAgentDefaultCommission } from '../../../effects/data-accessors/useSettlementAgentDefaultCommission';\r\nimport { user } from '../../../user';\r\nimport { isRequesting, isRequestNone } from '../../../utils';\r\nimport { ViewSettlementAgentCommissionPopup } from '../../management/companies/clearing-bank/ViewSettlementAgentComissionPopup';\r\nimport IconSVG from \"../../../styles/svg-icons\";\r\n\r\ninterface Props {\r\n companyId?: number;\r\n companyName: string;\r\n buttonIconVisible?: boolean;\r\n text?: string;\r\n}\r\n\r\nexport function ViewSettlementAgentCommission({ companyId, companyName, buttonIconVisible = true, text = \"Commission\" }: Props) {\r\n const [isPopupVisible, setPopupVisible] = React.useState(false);\r\n \r\n const settlementAgentCommissionState = useSettlementAgentDefaultCommission(companyId ?? user.current()!.companyId, !isPopupVisible);\r\n\r\n const handleClick = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n setPopupVisible(true);\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {buttonIconVisible && < IconSVG name=\"commission\" width={16} height={16} />}\r\n {text}\r\n \r\n {\r\n isPopupVisible &&\r\n setPopupVisible(false)}\r\n />\r\n }\r\n \r\n );\r\n}\r\n","import { TransactionStatus } from '../../../../types/amr-pipeline/enums/TransactionStatus';\r\nimport { TransactionType } from '../../../../types/amr-pipeline/enums/TransactionType';\r\n\r\nexport const StatisticsChartsTransactionStatuses = [\r\n TransactionStatus.Active,\r\n TransactionStatus.Priced,\r\n TransactionStatus.Closed,\r\n TransactionStatus.OnHold,\r\n];\r\n\r\nexport const ArrangersTrusteesChartsTransactionStatuses = [\r\n TransactionStatus.Priced,\r\n TransactionStatus.Closed,\r\n];\r\n\r\nexport const StatisticsChartsTransactionTypes = [\r\n TransactionType.newIssue,\r\n TransactionType.refi,\r\n TransactionType.reset\r\n];\r\n","import React from 'react';\r\nimport classNames from 'classnames';\r\n\r\nexport function Relative({ className = '', inline = false, children, ...props }) {\r\n return (\r\n
    \r\n {children}\r\n
    \r\n );\r\n}\r\n","import * as React from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { RightSidePanel } from '../controls';\r\nimport { textRulesPanelActions } from '../../actions/text-rules-panel.actions';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { BwicRules } from './BwicRules';\r\n\r\nexport function BwicTextRulesPanel() {\r\n const textRulesPanel = useSelector((state: AppState) => state.textRulesPanel);\r\n const dispatch = useDispatch();\r\n\r\n if (!textRulesPanel.visible || textRulesPanel.params === null) {\r\n return null;\r\n }\r\n\r\n const handleClose = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n dispatch(textRulesPanelActions.hide());\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","import { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../access/ActionBlocker';\r\nimport { AlertsButton } from '../common/AlertsButton';\r\n\r\ninterface Props {\r\n isAlertOn: boolean;\r\n label?: string;\r\n onClick: () => void;\r\n}\r\n\r\nexport const CloManagerAlertsButton = ({\r\n isAlertOn,\r\n label,\r\n onClick\r\n}: Props) => {\r\n return (\r\n \r\n {blocked => (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n","import IconSVG from '../../styles/svg-icons';\r\nimport { CloManager } from '../../types/clo-managers/CloManager';\r\nimport { OnHoverTooltip } from '../common';\r\nimport { useDispatch } from 'react-redux';\r\nimport { cloManagersActions } from '../../actions/clo-managers.actions';\r\nimport { CloManagerAlertsButton } from './CloManagerAlertsButton';\r\nimport classNames from 'classnames';\r\n\r\ninterface Props {\r\n manager: CloManager;\r\n isAlertOn?: boolean;\r\n showAlertSection?: boolean;\r\n onFavoriteClick?: React.MouseEventHandler;\r\n showFavoriteIcon?: boolean;\r\n}\r\n\r\nexport const CloManagerLabels = ({ manager, showAlertSection, isAlertOn = false, onFavoriteClick, showFavoriteIcon = false }: Props) => {\r\n const dispatch = useDispatch();\r\n\r\n const { hasActiveTransactions, hasAmrDeal, favorite } = manager;\r\n\r\n const renderFavoriteIcon = () => {\r\n const overlay = favorite\r\n ? 'Remove from favorite'\r\n : 'Add to favorite';\r\n\r\n const icon = favorite\r\n ? 'favorite-fill'\r\n : 'favorite';\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n };\r\n\r\n return (\r\n <>\r\n
    \r\n {hasActiveTransactions && (\r\n \r\n \r\n \r\n )}\r\n
    \r\n {hasAmrDeal && (\r\n
    \r\n \r\n AMR\r\n \r\n
    \r\n )}\r\n
    \r\n
    \r\n {showAlertSection && (\r\n \r\n dispatch(cloManagersActions.setManagerForAlertPopup(manager.referenceName))}\r\n />\r\n \r\n )}\r\n
    \r\n {showFavoriteIcon && renderFavoriteIcon()}\r\n
    \r\n \r\n );\r\n};\r\n","import classNames from \"classnames\";\r\nimport { OnHoverTooltip } from '../common';\r\nimport { forwardRef, useState } from 'react';\r\nimport Highlighter from '../amrPipeline/common/Highlighter';\r\nimport { CloManager } from \"../../types/clo-managers/CloManager\";\r\nimport { CloManagerLabels } from \"./CloManagerLabels\";\r\n\r\ninterface Props {\r\n selected: boolean;\r\n searchTerm: string;\r\n cloManager: CloManager;\r\n onClick: (referenceName: string) => void;\r\n onFavoriteClick: (referenceName: string, addToFavorite: boolean) => void;\r\n withAlert: boolean;\r\n}\r\n\r\nexport const CloManagersNavItem = forwardRef(function CloManagersNavItem({\r\n selected,\r\n searchTerm,\r\n cloManager,\r\n withAlert,\r\n onClick,\r\n onFavoriteClick,\r\n}: Props, ref: React.ForwardedRef) {\r\n const [hovered, setHovered] = useState(false);\r\n\r\n const {\r\n legalName,\r\n referenceName,\r\n favorite,\r\n isUserCompany\r\n } = cloManager;\r\n\r\n const handleFavoriteClick = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n onFavoriteClick(referenceName, !favorite);\r\n };\r\n\r\n return (\r\n onClick(referenceName)}\r\n onMouseEnter={() => setHovered(true)}\r\n onMouseLeave={() => setHovered(false)}\r\n >\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {isUserCompany && MY}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n );\r\n});\r\n","import { useEffect, useState, useMemo } from \"react\";\r\nimport { EmptyPlaceholder } from \"../common\";\r\nimport classnames from \"classnames\";\r\nimport { SelectionPanelSearch } from '../amrPipeline/common/SelectionPanelSearch';\r\nimport { CloManagersNavItem } from './CloManagersNavItem';\r\nimport { PipelineTabs, Tab } from '../amrPipeline/aggregated/PipelineTabs';\r\nimport { CloManager } from '../../types/clo-managers/CloManager';\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { AppState } from \"../../types/state/AppState\";\r\nimport { UserConfigState } from \"../../types/state/UserConfigState\";\r\nimport { AlertOption } from \"../../types/email-preferences/EmailPreferences\";\r\nimport { getAlertValues, isCollateralManagersOwnCompany } from \"../../utils/amr-pipeline.utils\";\r\nimport { user } from \"../../user/user\";\r\nimport { SubscriptionFeature } from \"../../types/billing/SubscriptionFeature\";\r\n\r\nenum SearchTab {\r\n All = 'All',\r\n Favourite = 'Favorite'\r\n}\r\n\r\ninterface Props {\r\n data: CloManager[];\r\n selectedReferenceName: string;\r\n onChange: (referenceName: string) => void;\r\n onFavoriteClick: (referenceName: string, favorite: boolean) => void;\r\n}\r\n\r\nconst searchManagers = (cloManagers: CloManager[], searchTerm: string) => {\r\n return cloManagers.filter(({ legalName }) =>\r\n legalName\r\n .toLocaleLowerCase()\r\n .includes(searchTerm.toLocaleLowerCase().trim())\r\n );\r\n};\r\n\r\nconst getFavorites = (cloManagers: CloManager[]) => {\r\n return cloManagers.filter(({ favorite }) => favorite);\r\n}\r\n\r\nexport const CloManagersSelectionPanel = ({\r\n data,\r\n selectedReferenceName,\r\n onChange,\r\n onFavoriteClick,\r\n}: Props) => {\r\n const [collapsed, setCollapsed] = useState(false);\r\n const [tab, setTab] = useState(SearchTab.All);\r\n const [tabSearchTerm, setTabSearchTerm] = useState({\r\n [SearchTab.All]: '',\r\n [SearchTab.Favourite]: '',\r\n });\r\n\r\n const userCompany = useSelector((state: AppState) => state.issuanceMonitor.amrPipelineCommon.userCompany);\r\n\r\n const alertConfigs = useSelector((state: AppState) => state.imUserConfig);\r\n\r\n const cloManagerAnalyticsConfig = getAlertValues(alertConfigs.cloManagerAnalyticsAlert.value);\r\n const cloManagerImConfig = getAlertValues(alertConfigs.cloManagerIssuanceMonitorAlert.value);\r\n const cloManagerApConfig = getAlertValues(alertConfigs.cloManagerArrangerPipelineAlert.value);\r\n const cloManagerBwicConfig = getAlertValues(alertConfigs.cloManagerBwicAlert.value);\r\n const cloManagerDealerInventoryConfig = getAlertValues(alertConfigs.cloManagerDealerInventoryAlert.value);\r\n\r\n const hasAlertAccess = user.hasAllFeatures(\r\n SubscriptionFeature.ManagerProfileManagerRelatedAlerts,\r\n SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts,\r\n );\r\n\r\n\r\n const selectedManagerRef = React.useRef(null);\r\n\r\n useEffect(() => {\r\n var customEvent = document.createEvent(\"Events\");\r\n customEvent.initEvent(\"resize\", true, true);\r\n window.dispatchEvent(customEvent);\r\n }, [collapsed]);\r\n\r\n useEffect(() => {\r\n if (selectedReferenceName) {\r\n selectedManagerRef.current?.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [tab]);\r\n\r\n const handleSearch = (search: string) => {\r\n setTabSearchTerm(prevValue => ({\r\n ...prevValue,\r\n [tab]: search,\r\n }));\r\n };\r\n\r\n const getManagers = () => {\r\n const searchTerm = tabSearchTerm[tab];\r\n\r\n if (tab === SearchTab.All) {\r\n return searchManagers(data, searchTerm);\r\n }\r\n\r\n return searchManagers(getFavorites(data), searchTerm);\r\n }\r\n\r\n const getEmptyText = () => {\r\n const searchTerm = tabSearchTerm[tab];\r\n\r\n if (searchTerm || tab === SearchTab.All) {\r\n return undefined;\r\n }\r\n\r\n return 'There are no favorite managers yet.';\r\n };\r\n\r\n const favoritesNumber = useMemo(\r\n () => searchManagers(getFavorites(data), \"\").length,\r\n [data]);\r\n\r\n const cloManagers = getManagers();\r\n\r\n const isEmpty = !cloManagers.length;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import React from 'react';\r\n\r\ninterface CloManagersContextProps {\r\n canEdit: boolean;\r\n canNavigateToIM: boolean;\r\n ownCollateralManagersCompany: boolean;\r\n ownCompany: boolean;\r\n hasAnalyticsAccess: boolean;\r\n}\r\n\r\nconst CloManagersContext = React.createContext({\r\n canEdit: false,\r\n canNavigateToIM: false,\r\n ownCollateralManagersCompany: false,\r\n ownCompany: false,\r\n hasAnalyticsAccess: false,\r\n});\r\n\r\nexport default CloManagersContext;\r\n","import { User } from '../../../types/account/User';\r\nimport { ColumnBuilder } from '../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../../bidding/common/table/types/ColumnDefinition';\r\n\r\nconst scheduleMeetingMailPreviewColumnsDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: 'name',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: user => `${user.firstName} ${user.lastName}`,\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'email',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: user => {user.email},\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'phone',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: user => user.publicPhone,\r\n className: 'data-list-cell-lg',\r\n },\r\n];\r\n\r\nexport const scheduleMeetingMailPreviewColumns = scheduleMeetingMailPreviewColumnsDefinition.map(c => {\r\n return new ColumnBuilder(c);\r\n});\r\n","import { Link } from 'react-router-dom';\r\nimport { Table } from '../../bidding/common/table';\r\nimport { user } from '../../../user';\r\nimport { scheduleMeetingMailPreviewColumns } from './columns';\r\nimport { routes } from '../../../constants';\r\n\r\n\r\ninterface Props {\r\n userCompanyName: string\r\n text: string;\r\n}\r\n\r\nexport function ScheduleMeetingMailPreview({ userCompanyName, text }: Props) {\r\n return (\r\n <>\r\n
    \r\n
    \r\n

    Hello,

    \r\n

    {userCompanyName} has requested a meeting. Please see the contact information below:

    \r\n
    \r\n \r\n {text && (\r\n
    \r\n {text}\r\n
    \r\n )}\r\n
    \r\n

    Regards,

    \r\n

    Team KopenTech

    \r\n
    \r\n
    \r\n
    \r\n This email (including any attachments) is confidential and, by accepting this email, you agree that you will\r\n treat it as such and act or refrain from acting in accordance with applicable law. It does not constitute investment\r\n advice, is only for the use of the intended recipient and copying, redistributing or acting upon such email by\r\n unintended recipients is unauthorized and may be unlawful. Receipt by anyone other than the intended recipient is not\r\n a waiver of any protections or work-product or attorney-client privilege. If you received this email in error, please\r\n notify KopenTech, LLC (\"KopenTech\") immediately. KopenTech makes no representation or warranty as to the accuracy or\r\n completeness of the email and its contents and is not obligated to update or revise any information. This email is not\r\n an official confirmation of any transaction and is not offer to sell or the solicitation for the purchase of any security,\r\n financial instrument or interest in an investment vehicle. Such offering shall be made only by a final confidential offering\r\n circular to eligible investors. Any comments or opinions expressed in this communication do not necessarily reflect those\r\n of KopenTech or its affiliates. Emails sent to and from this address may be monitored and stored in accordance with internal\r\n policy. This email and any attachments are confidential and may be privileged or otherwise protected from disclosure. If you\r\n are not the intended recipient, please telephone or email the sender and delete this message and any attachment from your\r\n system immediately. If you are not the intended recipient you must not copy this message or attachment or disclose the contents\r\n to any other person. For more details, see the \r\n Terms and Conditions and{' '}\r\n Privacy Policy\r\n
    \r\n \r\n );\r\n}\r\n","import { useState } from 'react';\r\nimport { validateEmail } from '../../../utils';\r\nimport { FlexRow, Preloader } from '../../common';\r\nimport { EmailChipList } from '../../common/EmailChipList';\r\nimport { Popup, PopupBody, PopupFooter } from '../../controls';\r\nimport { useRequestScheduleMeeting } from './useRequestScheduleMeeting';\r\nimport { ScheduleMeetingMailPreview } from './ScheduleMeetingPreview';\r\nimport { StatusMessageSection } from '../../status-message/StatusMessageSection';\r\nimport { StatusMessageSectionType } from '../../../types/state/NotificationState';\r\nimport { useDispatch } from 'react-redux';\r\nimport { notificationActions } from '../../../actions';\r\n\r\n\r\nconst emailMaxCount = 500;\r\n\r\ninterface Props {\r\n cloManagerReferenceName: string;\r\n cloManagerLegalName: string;\r\n userCompanyName: string;\r\n onClose: () => void;\r\n defaultEmailList?: string[];\r\n}\r\n\r\nexport function ScheduleMeetingPopup({\r\n onClose,\r\n defaultEmailList = [],\r\n cloManagerReferenceName,\r\n cloManagerLegalName,\r\n userCompanyName\r\n}: Props) {\r\n const dispatch = useDispatch();\r\n const [emailList, setEmailList] = useState(defaultEmailList);\r\n const [textContent, setTextContent] = useState('');\r\n const [sending, setSending] = useState(false);\r\n\r\n\r\n const handleClose = () => {\r\n if (!sending) {\r\n onClose();\r\n }\r\n };\r\n\r\n const onLoadSuccess = () => {\r\n onClose();\r\n dispatch(notificationActions.notificationAddInfo('Meeting request sent', `Your meeting request has been sent to ${cloManagerLegalName}`));\r\n }\r\n\r\n useRequestScheduleMeeting(cloManagerReferenceName, emailList, textContent, sending, setSending, onLoadSuccess);\r\n\r\n const isLimitExceeded = emailList.length > emailMaxCount;\r\n const isDataInvalid = emailList.some(e => !validateEmail(e));\r\n\r\n const renderInviteForm = () => (\r\n <>\r\n {(isDataInvalid || isLimitExceeded) ? (\r\n \r\n {isLimitExceeded\r\n ? `Max recipients count is ${emailMaxCount}`\r\n : 'Please fix invalid email addresses'}\r\n \r\n ) : (\r\n \r\n Email will be sent to contacts below\r\n \r\n )}\r\n setEmailList(list)}\r\n allowInvalid\r\n withClearAll\r\n placeholder=\"Enter recipients or Ctrl+C / Ctrl+V emails from Excel\"\r\n className=\"email-chips-list-with-clear\"\r\n />\r\n setTextContent(e.target.value)}\r\n className=\"form-control share-transaction-message\"\r\n placeholder=\"Enter message (optional)\"\r\n />\r\n \r\n );\r\n\r\n return (\r\n \r\n Schedule Meeting {cloManagerLegalName}\r\n \r\n }\r\n modalClass=\"modal-share-transaction modal-schedule-meeting\"\r\n onClose={handleClose}\r\n >\r\n \r\n
    \r\n
    {renderInviteForm()}
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {sending && }\r\n \r\n setSending(true)}\r\n disabled={isDataInvalid || !emailList.length || sending || isLimitExceeded}\r\n >\r\n Send request\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { notificationActions } from '../../../actions';\r\nimport { cloManagersService } from '../../../services/clo-managers.service';\r\n\r\nexport const useRequestScheduleMeeting = (\r\n cloManagerReferenceName: string,\r\n emailList: string[],\r\n message: string,\r\n sending: boolean,\r\n setSending: (isSending: boolean) => void,\r\n onLoadSuccess: () => void,\r\n) => {\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n const request = async () => {\r\n try {\r\n await cloManagersService.scheduleMeeting(\r\n cloManagerReferenceName,\r\n emailList,\r\n message,\r\n );\r\n onLoadSuccess();\r\n } catch (e) {\r\n dispatch(notificationActions.notificationAddErrorMessage('Error'));\r\n } finally {\r\n setSending(false);\r\n }\r\n };\r\n\r\n if (sending) {\r\n request();\r\n }\r\n // eslint-disable-next-line\r\n }, [sending]);\r\n};\r\n","import { first } from 'lodash';\r\nimport { useContext, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { cloManagersActions } from '../../actions/clo-managers.actions';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { CloManagersState } from '../../types/state/CloManagersState';\r\nimport { compareDatesDesc } from '../../utils/compare.utils';\r\nimport CloManagersContext from './cloManagersContext';\r\nimport { CloManager } from '../../types/clo-managers/CloManager';\r\nimport { CloManagerAlertsButton } from './CloManagerAlertsButton';\r\nimport { UserConfigState } from '../../types/state/UserConfigState';\r\nimport { CloManagerLabels } from './CloManagerLabels';\r\nimport { roles } from '../../constants';\r\nimport { ShowFor } from '../access';\r\nimport { ScheduleMeetingPopup } from './scheduleMeetingPopup/ScheduleMeetingPopup';\r\nimport { ActionBlocker } from '../access/ActionBlocker';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { withTurnedOnAlerts } from '../../utils/amr-pipeline.utils';\r\nimport { user } from '../../user';\r\nimport { Preloader } from '../common';\r\nimport { useDownloadDocument } from '../../effects/useDownloadDocument';\r\nimport { cloManagersService } from '../../services/clo-managers.service';\r\n\r\ninterface HeaderProps {\r\n company: CloManager;\r\n edit: boolean;\r\n onEdit?: () => void;\r\n onSave?: () => void;\r\n onCancel?: () => void;\r\n}\r\n\r\nconst Header = ({ company, edit, onEdit, onSave, onCancel }: HeaderProps) => {\r\n const dispatch = useDispatch();\r\n\r\n const [showScheduleMeetingPopup, setShowScheduleMeetingPopup] = useState(false);\r\n\r\n const { canEdit, ownCollateralManagersCompany } = useContext(CloManagersContext);\r\n const { isUpdating } = useSelector((state: AppState) => state.cloManagers);\r\n const { selectedManager, bwicCloManagers } = useSelector((state: AppState) => state.cloManagers);\r\n const userCompany = useSelector((state: AppState) => state.issuanceMonitor.amrPipelineCommon.userCompany);\r\n\r\n const hasAlertAccess = user.hasAllFeatures(SubscriptionFeature.ManagerProfileManagerRelatedAlerts, SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts);\r\n\r\n const investmentTeamMeetingContacts = selectedManager?.details?.investmentTeam.items\r\n ?.filter(c => c.meetingContact && c.email)\r\n .map(c => c.email) || [];\r\n\r\n const platformUsersMeetingContacts = bwicCloManagers?.filter(c => c.meetingContact && c.email).map(c => c.email) || [];\r\n\r\n const defaultEmailList = [...investmentTeamMeetingContacts, ...platformUsersMeetingContacts];\r\n\r\n const managerPresentationFile = first(\r\n selectedManager?.details?.managerPresentationFiles?.sort((a, b) =>\r\n compareDatesDesc(b.uploadTime, a.uploadTime),\r\n ),\r\n );\r\n\r\n const { handleDownload: downloadManagerPresentationFile, isDownloading: isManagerPresentationDownloading } = useDownloadDocument({\r\n downloadRequest: cloManagersService.downloadManagerPresentationFile,\r\n requestArgs: [company.referenceName, managerPresentationFile?.referenceName || ''],\r\n fileNameForSave: managerPresentationFile ? managerPresentationFile.name : null,\r\n });\r\n\r\n const alertConfigs = useSelector((state: AppState) => state.imUserConfig);\r\n\r\n const isAlertOn = withTurnedOnAlerts([\r\n ...(ownCollateralManagersCompany ? alertConfigs.cloManagerAnalyticsAlert.value : []),\r\n ...(hasAlertAccess ? alertConfigs.cloManagerIssuanceMonitorAlert.value : []),\r\n ...(hasAlertAccess ? alertConfigs.cloManagerArrangerPipelineAlert.value : []),\r\n ...alertConfigs.cloManagerBwicAlert.value,\r\n ...alertConfigs.cloManagerDealerInventoryAlert.value,\r\n ], selectedManager?.referenceName);\r\n\r\n const renderScheduleMeetingButton = () => {\r\n if (edit || ownCollateralManagersCompany) {\r\n return;\r\n }\r\n\r\n return (\r\n \r\n {blocked => (\r\n setShowScheduleMeetingPopup(true)}\r\n type=\"button\"\r\n className=\"btn btn-ghost btn-sm btn-schedule-meeting\"\r\n >\r\n \r\n Schedule Meeting\r\n \r\n )}\r\n \r\n );\r\n };\r\n\r\n const renderEditButtons = () => {\r\n if (edit) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n );\r\n };\r\n\r\n const renderManagerPresentationButton = (disabled: boolean = false) => {\r\n return (\r\n
    \r\n \r\n \r\n \r\n Manager Presentation\r\n \r\n \r\n
    \r\n );\r\n };\r\n\r\n const renderAlertsSection = () => {\r\n return (\r\n
    e.stopPropagation()} className=\"action-item\">\r\n dispatch(cloManagersActions.setManagerForAlertPopup(company.referenceName))}\r\n />\r\n
    \r\n );\r\n };\r\n\r\n const renderManagerPresentationFilesSection = () => {\r\n const noFiles = !selectedManager?.details?.numberOfManagerPresentationFiles;\r\n\r\n if (noFiles) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {blocked => renderManagerPresentationButton(blocked)}\r\n \r\n );\r\n };\r\n\r\n const defaultHeader =

    {company.legalName}

    ;\r\n const editHeader = (\r\n <>\r\n

    Edit Manager

    \r\n {company.legalName}\r\n \r\n );\r\n\r\n const spacer = (\r\n
    \r\n \r\n
    \r\n );\r\n\r\n const renderActions = () => {\r\n if (canEdit) {\r\n return (\r\n <>\r\n {!edit && renderAlertsSection()}\r\n {!edit && renderManagerPresentationFilesSection()}\r\n {!edit && spacer}\r\n {!edit && renderScheduleMeetingButton()}\r\n {renderEditButtons()}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n {renderAlertsSection()}\r\n {renderManagerPresentationFilesSection()}\r\n {spacer}\r\n {renderScheduleMeetingButton()}\r\n \r\n );\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n {company.isUserCompany &&
    MY
    }\r\n \r\n {edit ? editHeader : defaultHeader}\r\n
    {renderActions()}
    \r\n
    \r\n\r\n {showScheduleMeetingPopup && (\r\n setShowScheduleMeetingPopup(false)}\r\n userCompanyName={userCompany!.name}\r\n cloManagerReferenceName={selectedManager!.referenceName}\r\n cloManagerLegalName={selectedManager!.legalName}\r\n defaultEmailList={defaultEmailList}\r\n />\r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default Header;\r\n","import { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { TextField } from '../../common/form-fields/TextField';\r\nimport { NumberField } from '../../common/form-fields/NumberField';\r\nimport { SelectField } from '../../common/form-fields/SelectField';\r\nimport { CheckboxField } from '../../common/form-fields/CheckboxField';\r\nimport { MarkdownField } from '../../common/form-fields/MarkdownField';\r\nimport { InstitutionTypes } from '../../../types/clo-managers/InstitutionType';\r\n\r\nexport const AdditionalInformation = () => {\r\n return (\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 \r\n\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n );\r\n}\r\n","import { FormField } from '../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { CheckboxField } from '../../common/form-fields/CheckboxField';\r\nimport { DateField } from '../../common/form-fields/DateField';\r\nimport { MarkdownField } from '../../common/form-fields/MarkdownField';\r\nimport { TextField } from '../../common/form-fields/TextField';\r\n\r\nexport const ESGConsiderations = () => {\r\n return (\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 );\r\n}\r\n","import { memo, useEffect, useRef, useState } from 'react';\r\nimport saveAs from 'file-saver';\r\nimport cn from 'classnames';\r\nimport moment from 'moment';\r\nimport { useDispatch } from 'react-redux';\r\nimport { DragFileZone } from '../../common/DragFileZone';\r\nimport { Table } from '../../bidding/common/table';\r\nimport { ColumnBuilder } from '../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../../bidding/common/table/types/ColumnDefinition';\r\nimport { SORT, SORTING_TYPE } from '../../../constants';\r\nimport { ProgressCircle } from '../../controls';\r\nimport FileIcon from '../../controls/FileIcon';\r\nimport { isEqual } from 'lodash';\r\nimport { SelectFile } from '../../grid/SelectFile';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { EmptyPlaceholder, OnHoverTooltip } from '../../common';\r\nimport { errorActions } from '../../../actions';\r\nimport { constants, errorMessages } from '../../../constants';\r\nimport { AmrFile } from '../../../types/amr-pipeline/models/AmrFile';\r\nimport { amrPipelineService } from '../../../services/amr-pipeline.service';\r\nimport { cloManagersService } from '../../../services/clo-managers.service';\r\nimport { useParams } from 'react-router';\r\nimport { CLOManagerRouteParams } from '../CloManagers';\r\n\r\ninterface Props {\r\n documents: AmrFile[];\r\n acceptedExtensions?: string[];\r\n label?: string;\r\n onChange: (documents: AmrFile[]) => void;\r\n onUploading: (uploading: boolean) => void;\r\n}\r\n\r\nfunction DocumentListComponent({ documents, onChange, onUploading, acceptedExtensions, label }: Props) {\r\n const dispatch = useDispatch();\r\n const { referenceName: companyReferenceName } = useParams();\r\n const uploadedDocument = useRef();\r\n const [dragEnter, setDragEnter] = useState(false);\r\n const [uploadingFileName, setUploadingFileName] = useState();\r\n const [progress, setProgress] = useState<{[fileName: string]: number}>({});\r\n\r\n useEffect(() => {\r\n onUploading(!!uploadingFileName);\r\n }, [onUploading, uploadingFileName]);\r\n\r\n useEffect(() => {\r\n if (\r\n uploadedDocument.current\r\n && !uploadingFileName\r\n && !documents.some(({referenceName}) => referenceName === uploadedDocument.current?.referenceName)\r\n ) {\r\n onChange([\r\n {\r\n name: uploadedDocument.current.name,\r\n referenceName: uploadedDocument.current.referenceName,\r\n remove: false,\r\n } as AmrFile,\r\n ...documents,\r\n ]);\r\n }\r\n // eslint-disable-next-line\r\n }, [uploadedDocument, uploadingFileName])\r\n\r\n const downloadDocument = async (documentToDownload: AmrFile) => {\r\n try {\r\n const { referenceName, name } = documentToDownload;\r\n const document = await cloManagersService.downloadManagerPresentationFile(companyReferenceName, referenceName);\r\n\r\n saveAs(document.blob, name);\r\n } catch (e) {\r\n dispatch(errorActions.unexpectedError(e));\r\n }\r\n }\r\n\r\n const onUploadDocument = async (file: File) => {\r\n try {\r\n const response = await amrPipelineService.uploadDocument(\r\n file,\r\n (progressEvent: ProgressEvent) => setProgress((progress) => ({\r\n ...progress,\r\n [file.name]: Math.floor((progressEvent.loaded / progressEvent.total) * 100)\r\n })),\r\n );\r\n\r\n return response[0];\r\n } catch (e) {\r\n dispatch(errorActions.unexpectedError(e));\r\n }\r\n }\r\n\r\n const uploadFile = async (file: File) => {\r\n setUploadingFileName(file.name);\r\n const newDocument = await onUploadDocument(file);\r\n\r\n if (newDocument) {\r\n uploadedDocument.current = newDocument;\r\n }\r\n\r\n setUploadingFileName(undefined);\r\n }\r\n\r\n const handleDrop = (files: FileList) => {\r\n if (!files) {\r\n return;\r\n }\r\n\r\n [...files].forEach((file) => {\r\n const splitFile = file.name?.split('.');\r\n const fileExtension = splitFile[splitFile.length - 1];\r\n if (file.size > 1024 * 1024 * constants.documentMaxFilesizeInMb) {\r\n dispatch(errorActions.error(\r\n '',\r\n errorMessages.documentMaxFileSizeMessageText(constants.documentMaxFilesizeInMb),\r\n errorMessages.documentMaxFileSizeMessageTitle)\r\n );\r\n return;\r\n }\r\n if (acceptedExtensions && !acceptedExtensions.some(ext => ext.toLowerCase() === fileExtension.toLowerCase())) {\r\n dispatch(errorActions.error(\r\n '',\r\n errorMessages.documentInvalidFileTypeText(fileExtension, acceptedExtensions.map(ext => `.${ext}`).join(',')),\r\n errorMessages.documentInvalidFileTypeTitle)\r\n );\r\n return;\r\n }\r\n uploadFile(file);\r\n })\r\n }\r\n\r\n const handleDeleteFile = (documentReferenceName: string) => {\r\n let documentList = [];\r\n\r\n if(uploadedDocument.current?.referenceName === documentReferenceName) {\r\n documentList = documents.filter(d => d.referenceName !== documentReferenceName);\r\n uploadedDocument.current = undefined;\r\n } else {\r\n documentList = documents.map((file) =>\r\n file.referenceName === documentReferenceName\r\n ? {...file, remove: true}\r\n : file\r\n );\r\n }\r\n\r\n onChange(documentList);\r\n }\r\n\r\n const getTableColumns = () => {\r\n const columns: IColumnDefinition[] = [{\r\n columnKey: 'name',\r\n renderColumnContent: document => (\r\n \r\n
    downloadDocument(document)}>\r\n \r\n {document.name}\r\n
    \r\n
    \r\n ),\r\n renderColumnHeaderContent: () => 'Name',\r\n headerClassName: 'data-list-cell-xl-flexible',\r\n bodyClassName: 'data-list-cell-xl-flexible',\r\n }, {\r\n columnKey: 'date',\r\n renderColumnContent: document => {\r\n if (document.referenceName) {\r\n return moment(document.uploadTime).format(constants.dateFormatDoubleDay)\r\n }\r\n return ;\r\n },\r\n renderColumnHeaderContent: () => 'Date',\r\n headerClassName: 'data-list-cell-sm',\r\n bodyClassName: 'data-list-cell-sm',\r\n sortingType: SORTING_TYPE.date,\r\n }, {\r\n columnKey: 'download-action',\r\n renderColumnContent: document => (\r\n \r\n ),\r\n renderColumnHeaderContent: () => '',\r\n headerClassName: 'data-list-cell-xxs',\r\n bodyClassName: 'data-list-cell-xxs',\r\n }, {\r\n columnKey: 'delete-action',\r\n renderColumnContent: document => (\r\n \r\n ),\r\n renderColumnHeaderContent: () => '',\r\n headerClassName: 'data-list-cell-xxs',\r\n bodyClassName: 'data-list-cell-xxs',\r\n }]\r\n\r\n return columns.map(c => new ColumnBuilder(c));\r\n }\r\n\r\n const getTableData = (): AmrFile[] => {\r\n let documentsToDisplay;\r\n if (!uploadingFileName) {\r\n documentsToDisplay = documents;\r\n } else {\r\n documentsToDisplay = [\r\n {\r\n name: uploadingFileName,\r\n referenceName: '',\r\n uploadTime: new Date(),\r\n },\r\n ...documents,\r\n ] as AmrFile[];\r\n }\r\n\r\n return documentsToDisplay.filter(({ remove }) => !remove);\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n {label}\r\n
    \r\n
    \r\n
    \r\n {(uploadedDocument.current || uploadingFileName) ? (\r\n \r\n ) : (\r\n setDragEnter(true)}\r\n onDragLeave={() => setDragEnter(false)}\r\n className=\"component-file-upload\"\r\n >\r\n
    \r\n {dragEnter ?\r\n (<>Uploading...) :\r\n (<>\r\n \r\n
    \r\n
    \r\n Drag & Drop file here or \r\n `.${extension}`).join(',')}\r\n />\r\n
    \r\n Format: pdf, ppt, pptx\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\r\nexport const ManagerPresentationUpload = memo(\r\n DocumentListComponent,\r\n (prevProps: Props, nextProps: Props) =>\r\n isEqual(prevProps.documents, nextProps.documents)\r\n)\r\n","import { useField } from 'formik';\r\nimport { AmrFile } from '../../../types/amr-pipeline/models/AmrFile';\r\nimport { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { ManagerPresentationUpload } from './ManagerPresentationUpload';\r\nimport { useDispatch } from 'react-redux';\r\nimport { cloManagersActions } from '../../../actions/clo-managers.actions';\r\n\r\nconst AcceptedExtensions = ['pdf', 'ppt', 'pptx'];\r\n\r\nexport const ManagerPresentations = () => {\r\n const dispatch = useDispatch();\r\n const [managerPresentationField, , managerPresentationHelpers] = useField('managerPresentationFiles');\r\n\r\n const handleOnUploading = (uploading: boolean) => {\r\n dispatch(cloManagersActions.setCloManagerSaveState(uploading));\r\n }\r\n\r\n return (\r\n \r\n managerPresentationHelpers.setValue(documents)}\r\n acceptedExtensions={AcceptedExtensions}\r\n onUploading={handleOnUploading}\r\n />\r\n \r\n );\r\n}\r\n","import { FormikContextType, getIn, useField, useFormikContext } from 'formik';\r\nimport { useEffect, useMemo } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { addressActions } from '../../../actions/address.actions';\r\nimport { CloManagerSave } from '../../../types/clo-managers/CloManagerSave';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { AutoCompleteInput } from '../../controls';\r\nimport { TextField } from '../../common/form-fields/TextField';\r\nimport { SelectField } from '../../common/form-fields/SelectField';\r\nimport { InputField } from '../../common/form-fields/InputField';\r\nimport { constants } from '../../../constants';\r\n\r\nexport const ContactInformation = () => {\r\n const { setFieldValue } = useFormikContext();\r\n const [countryField] = useField('countryId');\r\n const [stateField] = useField('stateId');\r\n\r\n const dispatch = useDispatch();\r\n const { countries, states, cities } = useSelector((state: AppState) => state.address);\r\n const usaCountryId =\r\n useMemo(\r\n () => countries.data.find(x => x.twoCharsCode === constants.USCountryCode)?.id,\r\n [countries]\r\n );\r\n\r\n const selectedCountryId = parseInt(countryField.value);\r\n const isUSASelected = selectedCountryId === usaCountryId;\r\n\r\n useEffect(() => {\r\n if (!countries.isLoaded) {\r\n dispatch(addressActions.loadCountries());\r\n }\r\n }, [dispatch, countries.isLoaded]);\r\n\r\n useEffect(() => {\r\n if (isUSASelected) {\r\n dispatch(addressActions.loadStates(selectedCountryId));\r\n }\r\n }, [dispatch, selectedCountryId, isUSASelected]);\r\n\r\n useEffect(() => {\r\n if (selectedCountryId) {\r\n const stateId = parseInt(stateField.value) || undefined;\r\n dispatch(addressActions.loadCities(selectedCountryId, stateId));\r\n }\r\n }, [dispatch, selectedCountryId, stateField.value]);\r\n\r\n useEffect(() => {\r\n setFieldValue('isUSASelected', isUSASelected)\r\n }, [setFieldValue, isUSASelected]);\r\n\r\n const getCityName = (cityId: number, formik: FormikContextType) => {\r\n const selectedCity = cities.data.find(c => c.id === cityId);\r\n\r\n return selectedCity ? selectedCity.name : formik.getFieldMeta('newCity').value || '';\r\n }\r\n\r\n const citiesList = useMemo(() => cities.data.map(({ name }) => name), [cities.data]);\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {\r\n formik\r\n .getFieldHelpers('stateId')\r\n .setValue(null);\r\n formik\r\n .getFieldHelpers('cityId')\r\n .setValue(null);\r\n formik\r\n .getFieldHelpers('newCity')\r\n .setValue(null);\r\n }}\r\n required\r\n className=\"country-field\"\r\n />\r\n
    \r\n
    \r\n {isUSASelected && (\r\n {\r\n formik\r\n .getFieldHelpers('cityId')\r\n .setValue(null);\r\n\r\n formik\r\n .getFieldHelpers('newCity')\r\n .setValue(null);\r\n }}\r\n required\r\n />\r\n )}\r\n (\r\n
    \r\n {\r\n const selectedCity = cities.data.find(\r\n c => c.name.localeCompare(value, undefined, { sensitivity: 'accent' }) === 0,\r\n );\r\n\r\n const cityId = formik.getFieldHelpers('cityId');\r\n const cityName = formik.getFieldHelpers('newCity');\r\n\r\n if (selectedCity) {\r\n cityId.setValue(selectedCity.id);\r\n cityName.setValue(null);\r\n } else {\r\n cityId.setValue(null);\r\n cityName.setValue(value);\r\n }\r\n }}\r\n placeholder=\"City\"\r\n />\r\n {((meta.touched && meta.error) ||\r\n (getIn(formik.touched, 'newCity') && getIn(formik.errors, 'newCity'))) && (\r\n
    {meta.error || getIn(formik.errors, 'newCity')}
    \r\n )}\r\n
    \r\n )}\r\n required\r\n />\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import classNames from 'classnames';\r\nimport { constants } from '../../../../constants';\r\nimport { investmentTeamColumnsLabels } from '../../../../constants/cloManagers/investmentTeamColumnLabels';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { userStatusTitle } from '../../../../types/account/UserStatus';\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { InvestmentTeamMember } from '../../../../types/amr-pipeline/models/InvestmentTeamMember';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { OnHoverTooltip } from '../../../common/OnHoverTooltip';\r\nimport { InvestmentTeamColumn } from '../../types/InvestmentTeamColumn';\r\nimport { Checkbox } from '../../../controls';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { ValueBlocker } from '../../../access/ValueBlocker';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\n\r\nconst investmentTeamColumnDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: InvestmentTeamColumn.status,\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: ({ status }) => {\r\n if (!status) {\r\n return null;\r\n }\r\n\r\n const statusTitle = userStatusTitle[status];\r\n return (\r\n \r\n
    \r\n \r\n );\r\n },\r\n className: 'data-list-cell-symbol',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.fullName,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.fullName],\r\n renderColumnContent: member => member.fullName,\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.linkedIn,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.linkedIn],\r\n renderColumnContent: (member, { trackActivity }) =>\r\n member.linkedIn ? (\r\n trackActivity(CloManagerAccessType.CloTeamIn)}\r\n >\r\n \r\n \r\n ) : (\r\n constants.emptyPlaceholder\r\n ),\r\n className: 'data-list-cell-xxxs',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.title,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.title],\r\n renderColumnContent: member => member.title || constants.emptyPlaceholder,\r\n className: 'data-list-cell-xl-xxl',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.email,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.email],\r\n renderColumnContent: (member, context) =>\r\n \r\n {member.email ? {member.email} : constants.emptyPlaceholder}\r\n ,\r\n className: 'data-list-cell-xl-xxl',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.phoneNumber,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.phoneNumber],\r\n renderColumnContent: (member, context) =>\r\n \r\n {member.phoneNumber || constants.emptyPlaceholder}\r\n ,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: InvestmentTeamColumn.location,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.location],\r\n renderColumnContent: member => member.location || constants.emptyPlaceholder,\r\n className: 'data-list-cell-lg',\r\n },\r\n // AMR-8924 CLO Managers:: CLO Team:: Hide the 'Yrs at firm' and 'Yrs experience' fields in the table\r\n // {\r\n // columnKey: InvestmentTeamColumn.yrsAtCompany,\r\n // renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.yrsAtCompany],\r\n // renderColumnContent: member => member.yrsAtCompany ?? constants.emptyPlaceholder,\r\n // className: 'data-list-cell-xs text-right',\r\n // },\r\n // {\r\n // columnKey: InvestmentTeamColumn.yrsExperience,\r\n // renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.yrsExperience],\r\n // renderColumnContent: member => member.yrsExperience ?? constants.emptyPlaceholder,\r\n // className: 'data-list-cell-sm text-right',\r\n // },\r\n];\r\n\r\nconst meetingContact: IColumnDefinition = {\r\n columnKey: InvestmentTeamColumn.meetingContact,\r\n renderColumnHeaderContent: () => investmentTeamColumnsLabels[InvestmentTeamColumn.meetingContact],\r\n renderColumnContent: (member, { dispatch }) => (\r\n dispatch(cloManagersActions.editPlatformUsers(member.email!))}\r\n />\r\n ),\r\n className: 'data-list-cell-lg',\r\n };\r\n\r\nexport const investmentTeamColumns = investmentTeamColumnDefinition.map(c => new ColumnBuilder(c));\r\n\r\nexport const editInvestmentTeamColumns = [...investmentTeamColumns, new ColumnBuilder(meetingContact)];\r\n","import { useContext, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { gridActions } from '../../../actions';\r\nimport { constants, gridColumns } from '../../../constants';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { Grid } from '../../grid';\r\nimport { Table } from '../../bidding/common/table';\r\nimport { editInvestmentTeamColumns } from '../tabs/cloTeam/investment-team.columns';\r\nimport { StatusMessageSection } from '../../status-message/StatusMessageSection';\r\nimport { StatusMessageSectionType } from '../../../types/state/NotificationState';\r\nimport { cloManagersActions } from '../../../actions/clo-managers.actions';\r\nimport CloManagersContext from '../cloManagersContext';\r\nimport { useAppDispatch } from '../../../effects/useAppDispatch';\r\nimport { InvestmentTeamMember } from '../../../types/amr-pipeline/models/InvestmentTeamMember';\r\nimport { GridDataItem } from '../../../types/state/GridState';\r\nimport { RouteLeavingGuard } from '../../routing';\r\nimport { useHistory } from 'react-router';\r\nimport { CloManagerInvestmentTeamMember } from '../../../types/clo-managers/CloManagerInvestmentTeamMember';\r\n\r\nexport const Contacts = () => {\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n\r\n const { ownCompany } = useContext(CloManagersContext);\r\n const cloManager = useSelector((state: AppState) => state.cloManagers.editManager);\r\n const bwicCloManagers = useSelector((state: AppState) => state.cloManagers.editBwicCloManagers);\r\n\r\n const dataItems = useSelector((state: AppState) => state.grid.dataItems);\r\n const nonDraftDataItems = dataItems.filter(d => !d.draft);\r\n\r\n useEffect(() => {\r\n dispatch(gridActions.reset());\r\n dispatch(\r\n gridActions.init(\r\n cloManager?.investmentTeam || [],\r\n gridColumns.cloManagersInvestmentTeam(),\r\n constants.gridRowsLimit,\r\n 10,\r\n false,\r\n ),\r\n );\r\n\r\n return () => {\r\n dispatch(gridActions.reset());\r\n dispatch(cloManagersActions.resetEditPlatformUsers());\r\n };\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n const hasChanges = () => {\r\n const isChangedOrRemoved = (\r\n original: CloManagerInvestmentTeamMember,\r\n edit?: GridDataItem,\r\n ) => {\r\n if (!edit) return true;\r\n\r\n return (\r\n original.fullName !== edit.fullName ||\r\n original.linkedIn !== edit.linkedIn ||\r\n original.title !== edit.title ||\r\n original.email !== edit.email ||\r\n original.phoneNumber !== edit.phoneNumber ||\r\n original.location !== edit.location ||\r\n original.meetingContact !== edit.meetingContact\r\n );\r\n };\r\n\r\n return cloManager?.investmentTeam?.some(p =>\r\n isChangedOrRemoved(\r\n p,\r\n nonDraftDataItems.find(i => i.fullName === p.fullName),\r\n ),\r\n );\r\n };\r\n\r\n\r\n return (\r\n <>\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => hasChanges()}\r\n />\r\n \r\n Platform users cannot be edited here\r\n \r\n )\r\n }\r\n >\r\n ({ dispatch, ownCompany })}\r\n />\r\n \r\n \r\n \r\n );\r\n};\r\n","import { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { useField } from 'formik';\r\nimport { roles } from '../../../constants';\r\nimport { user } from '../../../user';\r\nimport { TextareaField } from '../../common/form-fields/TextareaField';\r\nimport { TextField } from '../../common/form-fields/TextField';\r\n\r\nexport const CompanyProfile = () => {\r\n const [descriptionField, , descriptionHelpers] = useField('description');\r\n const [generatedDescriptionField] = useField('generatedDescription');\r\n\r\n const resetDescriptionDisabled = generatedDescriptionField.value === descriptionField.value;\r\n\r\n const isAdminOrDataEntry = user.hasRoles(roles.Administrator, roles.DataEntry);\r\n\r\n const handleResetDescription = () => {\r\n descriptionHelpers.setValue(generatedDescriptionField.value);\r\n };\r\n\r\n return (\r\n \r\n \r\n Reset to auto-generated description\r\n \r\n }>\r\n \r\n {isAdminOrDataEntry && (\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 );\r\n};\r\n","import { SectionContent } from '../../amrPipeline/common/section/SectionContent';\r\nimport { MultiSelectDataItem } from '../../controls';\r\nimport MultiSelectField from '../../forms/MultiSelectField';\r\nimport { useFormikContext } from 'formik';\r\nimport { CloManagerSaveForm } from '../../../types/clo-managers/CloManagerSaveForm';\r\nimport { CloSystemInfrastructures, CloSystemInfrastructuresTypes } from '../../../types/clo-managers/CloSystemInfrastructures';\r\nimport { useCloSystemInfrastructure } from '../../../effects/data-accessors/useCloSystemInfrastructure';\r\nimport { RequestState } from '../../../constants/request-state';\r\nimport { Preloader } from '../../common';\r\nimport { groupCloSystemInfrastructure } from '../../../utils/clo-managers.utils';\r\nimport { useMemo } from 'react';\r\nimport { isEmpty } from 'lodash';\r\n\r\n\r\nexport const CloSystemInfrastructure = () => {\r\n const { values, touched, errors, setFieldValue, setFieldTouched } = useFormikContext();\r\n\r\n const { requestState, cloSystemInfrastructureItems } = useCloSystemInfrastructure();\r\n\r\n const cloSystemInfrastructuresValues = useMemo(\r\n () => groupCloSystemInfrastructure(values.cloSystemInfrastructures),\r\n [values],\r\n );\r\n\r\n const cloValuationServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloValuationServices) || [];\r\n const cloAnalyticsServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloAnalyticsServices) || [];\r\n const cloPortfolioManagementServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloPortfolioManagementServices) || [];\r\n const offshoreLegalServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.OffshoreLegalServices) || [];\r\n const offshoreFundAdminServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.OffshoreFundAdministrationServices) || [];\r\n const cloAccountingServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloAccountingServices) || [];\r\n const secondaryCloPlatform = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.SecondaryCLOPlatforms) || [];\r\n const cloDocsServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloDocsServices) || [];\r\n const usCloLawFirms = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.USCLOLawFirms) || [];\r\n const euCloLawFirms = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.EuropeanCLOLawFirms) || [];\r\n\r\n\r\n if (requestState === RequestState.request) {\r\n return \r\n }\r\n\r\n if (isEmpty(cloSystemInfrastructureItems)) {\r\n return null;\r\n }\r\n\r\n const handleSelect = (\r\n selectedValues: CloSystemInfrastructures[],\r\n type: CloSystemInfrastructuresTypes\r\n ) => {\r\n return (item: MultiSelectDataItem, selected: boolean) => {\r\n let updatedData: CloSystemInfrastructures[] = [...selectedValues];\r\n selected\r\n ? updatedData.push({ id: Number(item.value), name: item.text, type })\r\n : (updatedData = updatedData.filter(i => i.id !== item.value));\r\n setFieldValue('cloSystemInfrastructures', updatedData);\r\n setFieldTouched('cloSystemInfrastructures', true);\r\n };\r\n };\r\n\r\n const resetAll = (type: CloSystemInfrastructuresTypes) => (e: React.MouseEvent) => {\r\n const filteredData = values.cloSystemInfrastructures.filter(c => c.type !== type);\r\n\r\n setFieldValue('cloSystemInfrastructures', filteredData);\r\n }\r\n\r\n const convertToDataListItem = (cloSystemInfrastructuresItem: CloSystemInfrastructures[]) =>\r\n cloSystemInfrastructuresItem\r\n ? cloSystemInfrastructuresItem?.map(i => ({ ...i, text: i.name, value: i.id }))\r\n : [];\r\n\r\n const generateSelectedText = (selectedItems: MultiSelectDataItem[]) => {\r\n return selectedItems.length > 2 ? `${selectedItems.length} Selected` : selectedItems.map(s => s.text).join(', ');\r\n }\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n v.id)}\r\n label=\"CLO Valuation Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"cloValuation\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"CLO Analytics Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"cloAnalytics\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n\r\n />\r\n v.id)}\r\n label=\"CLO Portfolio Management Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"cloPortfolio\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"Offshore Legal Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"offshoreLegal\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"Offshore Fund Admin. Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"offshoreFundAdmin\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n
    \r\n
    \r\n v.id)}\r\n label=\"CLO Accounting Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"cloAccounting\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"Secondary CLO Platforms\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"secondaryClo\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"CLO Docs Services\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"cloDocs\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"US CLO Law Firms\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"usCloLaw\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n v.id)}\r\n label=\"European CLO Law Firms\"\r\n errorMessage={\r\n (touched.cloSystemInfrastructures && errors.cloSystemInfrastructures?.toString()) || ''\r\n }\r\n name=\"euCloLaw\"\r\n markRequired={false}\r\n placeholder=\"Select\"\r\n horizontalOrientation\r\n generateSelectedText={generateSelectedText}\r\n resetButtonText='Reset to default'\r\n />\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import { useFormikContext } from 'formik';\r\nimport { useContext, useEffect } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { Redirect, useHistory } from 'react-router';\r\nimport { routes } from '../../constants';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport CloManagersContext from './cloManagersContext';\r\nimport { AdditionalInformation } from './form/AdditionalInformation';\r\nimport { ESGConsiderations } from './form/ESGConsiderations';\r\nimport { ManagerPresentations } from './form/ManagerPresentations';\r\nimport { ContactInformation } from './form/ContactInformation';\r\nimport { Contacts } from './form/Contacts';\r\nimport { CompanyProfile } from './form/CompanyProfile';\r\nimport { CloManagerSave } from '../../types/clo-managers/CloManagerSave';\r\nimport { RouteLeavingGuard } from '../routing';\r\nimport { isEqual } from 'lodash';\r\nimport { CloManagerSaveForm } from '../../types/clo-managers/CloManagerSaveForm';\r\nimport { CloSystemInfrastructure } from './form/CloSystemInfrastructure';\r\n\r\ninterface CloManagersEditProps {\r\n setSubmitHandler: (fn: () => Promise) => void;\r\n}\r\n\r\nexport const CloManagersEdit = ({ setSubmitHandler }: CloManagersEditProps) => {\r\n const history = useHistory();\r\n const { submitForm, initialValues, values } = useFormikContext();\r\n const { canEdit } = useContext(CloManagersContext);\r\n const { editManager } = useSelector((state: AppState) => state.cloManagers);\r\n\r\n useEffect(() => {\r\n setSubmitHandler(submitForm);\r\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\r\n\r\n if (!canEdit || !editManager) {\r\n return ;\r\n }\r\n\r\n const hasChanges = () => {\r\n return !isEqual({...initialValues as CloManagerSave, isUSASelected: (values as CloManagerSaveForm).isUSASelected}, values);\r\n }\r\n\r\n return (\r\n
    \r\n history.push(pathname)}\r\n shouldBlockNavigation={() => hasChanges()}\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 { isNil } from 'lodash';\r\nimport * as Yup from \"yup\";\r\n\r\nconst RequiredMessage = 'Required';\r\n\r\nexport const CloManagerValidationSchema = Yup.object().shape({\r\n unpriSignatorySince: Yup\r\n .date()\r\n .when('unpriSignatory', {\r\n is: (unpriSignatory: string) => !!unpriSignatory,\r\n then: () => Yup\r\n .date()\r\n .typeError('UNPRI Signatory Since is required')\r\n .required('UNPRI Signatory Since is required'),\r\n otherwise: () => Yup\r\n .date()\r\n .optional()\r\n .nullable(),\r\n }),\r\n\r\n unpriSignatory: Yup\r\n .string()\r\n .when('unpriSignatorySince', {\r\n is: (unpriSignatorySince?: Date) => !!unpriSignatorySince,\r\n then: () => Yup\r\n .string()\r\n .typeError('UNPRI Signatory is required')\r\n .required('UNPRI Signatory is required'),\r\n otherwise: () => Yup\r\n .string()\r\n .optional()\r\n .nullable(),\r\n }),\r\n\r\n countryId: Yup\r\n .number()\r\n .typeError(RequiredMessage)\r\n .required(RequiredMessage),\r\n\r\n stateId: Yup\r\n .number()\r\n .when('isUSASelected', {\r\n is: (isUSASelected: boolean) => isUSASelected,\r\n then: () => Yup\r\n .number()\r\n .typeError(RequiredMessage)\r\n .required(RequiredMessage),\r\n otherwise: () => Yup\r\n .number()\r\n .optional()\r\n .nullable(),\r\n }),\r\n\r\n newCity: Yup\r\n .string()\r\n .when('cityId', {\r\n is: (cityId?: number) => isNil(cityId),\r\n then: () => Yup\r\n .string()\r\n .trim()\r\n .typeError(RequiredMessage)\r\n .required(RequiredMessage),\r\n otherwise: () => Yup\r\n .string()\r\n .optional()\r\n .nullable(),\r\n }),\r\n\r\n zipCode: Yup\r\n .string()\r\n .trim()\r\n .typeError(RequiredMessage)\r\n .required(RequiredMessage),\r\n\r\n address: Yup\r\n .string()\r\n .trim()\r\n .typeError(RequiredMessage)\r\n .required(RequiredMessage),\r\n\r\n}, [\r\n ['unpriSignatory', 'unpriSignatorySince'],\r\n ['unpriSignatorySince', 'unpriSignatory'],\r\n]);\r\n","import { AumStatisticsItem } from './AumStatisticsItem'\r\nimport { StatisticsItem } from './StatisticsItem'\r\nimport { TotalStatisticsItem } from './TotalStatisticsItem'\r\nimport { routes } from '../../../../constants';\r\nimport { TransactionStatus } from '../../../../types/amr-pipeline/enums/TransactionStatus';\r\nimport { QueryStringArgumentSerializer } from '../../../../utils/filtering/serializers/QueryStringArgumentSerializer';\r\nimport { amr, collateralManagers, collateralTypes, imPipelineTab, multipleCurrencies, transactionStatuses, transactionTypes } from '../../../../utils/filtering/serializers/serializer.definitions';\r\nimport { queryStringSerializer } from '../../../../utils/filtering';\r\nimport { IssuanceMonitorTab } from '../../../amrPipeline/types/PipelineTabTypes';\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { useDispatch } from 'react-redux';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { StatisticsChartsTransactionStatuses, StatisticsChartsTransactionTypes } from './constants';\r\nimport { Currency } from '../../../../types/enums/Currency';\r\nimport { CollateralType } from '../../../../types/amr-pipeline/enums/CollateralType';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { user } from '../../../../user';\r\nimport { CompanyStats } from '../../../../types/amr-pipeline/models/CompanyStats';\r\n\r\ninterface StatisticsProps {\r\n companyReferenceName: string;\r\n stats?: CompanyStats;\r\n}\r\n\r\nexport const Statistics = ({ companyReferenceName, stats }: StatisticsProps) => {\r\n const dispatch = useDispatch();\r\n\r\n if (!stats) {\r\n return null;\r\n }\r\n\r\n const redirectToIssuanceMonitor = (qsBuilder: (...params: any) => string, cloManagerAccessType?: CloManagerAccessType, ) => (...params: any) => {\r\n const queryString = qsBuilder(...params);\r\n\r\n if (cloManagerAccessType) {\r\n dispatch(cloManagersActions.logUserActivity(companyReferenceName, cloManagerAccessType));\r\n }\r\n\r\n window.open(`${window.location.origin}${routes.AMRPipeline}/?${queryString}`);\r\n };\r\n\r\n const redirectToArrangerPipeline = redirectToIssuanceMonitor(() => {\r\n const searchParams = {\r\n collateralManagers: [companyReferenceName],\r\n imPipelineTab: IssuanceMonitorTab.ArrangerPipeline,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n imPipelineTab(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewUpcomingDeals);\r\n\r\n const redirectToAmrDeals = redirectToIssuanceMonitor(() => {\r\n const searchParams = {\r\n collateralManagers: [companyReferenceName],\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n amr: true,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n amr(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewAmrDeal);\r\n\r\n const redirectToTotalTransactions = redirectToIssuanceMonitor(() => {\r\n const hasImAccess = user.hasFeatures(SubscriptionFeature.IssuanceMonitorDealUpdateEmailAlerts);\r\n\r\n const searchParams = {\r\n collateralManagers: [companyReferenceName],\r\n // Generate different links for subscribed and unsubscribed users\r\n // to show `see N more deals` placeholder in particular case\r\n transactionStatuses: hasImAccess ? StatisticsChartsTransactionStatuses : undefined,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewTotalTransactions);\r\n\r\n const redirectToActiveTransactions = redirectToIssuanceMonitor(() => {\r\n const searchParams = {\r\n collateralManagers: [companyReferenceName],\r\n transactionStatuses: [TransactionStatus.Active],\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n });\r\n\r\n const redirectToVolume = (currency: Currency, collateralType: CollateralType, accessType: CloManagerAccessType) =>\r\n redirectToIssuanceMonitor(() => {\r\n const hasImAccess = user.hasFeatures(SubscriptionFeature.IssuanceMonitorDealUpdateEmailAlerts);\r\n\r\n const searchParams = {\r\n collateralManagers: [companyReferenceName],\r\n // Generate different links for subscribed and unsubscribed users\r\n // to show `see N more deals` placeholder in particular case\r\n transactionStatuses: hasImAccess ? StatisticsChartsTransactionStatuses : undefined,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n currency: [currency],\r\n collateralTypes: [collateralType],\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n multipleCurrencies(),\r\n collateralTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, accessType);\r\n\r\n return (\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 \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 );\r\n}\r\n","import { useMemo } from 'react';\r\nimport { constants } from '../../../../../constants';\r\nimport { ChartGrouping, ChartTypes } from '../../../../../types/dashboard/AmrChart';\r\nimport { Currency } from '../../../../../types/enums/Currency';\r\nimport { DropDownList, DropDownListItem } from '../../../../controls/DropDownList';\r\nimport { FilterPanel, FilterSection } from '../../../../filters';\r\nimport { ShortLongDatedDealsChartFilter, ShortLongDatedDealsChartFilterProps } from '../../../../dashboard/shortLongDatedDeals/ShortLongDatedDealsFilter';\r\n\r\nexport function ShortLongDatedDealsFilter({\r\n onChange,\r\n ...values\r\n}: ShortLongDatedDealsChartFilterProps) {\r\n const handleValueChange = (prop: keyof ShortLongDatedDealsChartFilter) => (value: any) => {\r\n onChange({\r\n ...values,\r\n [prop]: value,\r\n });\r\n };\r\n\r\n const handleCurrencyChange = (value: any) => {\r\n onChange({\r\n ...values,\r\n currencyCode: value === constants.allListItem ? undefined : value as Currency,\r\n });\r\n };\r\n\r\n const chartCurrencies = useMemo(() => {\r\n const all = {\r\n value: constants.allListItem,\r\n text: 'All',\r\n selected: values.currencyCode === undefined,\r\n };\r\n\r\n const options = [Currency.USD, Currency.EUR].map(value => ({\r\n value,\r\n text: value,\r\n selected: values.currencyCode === value,\r\n }));\r\n\r\n return [\r\n all,\r\n ...options,\r\n ];\r\n }, [values.currencyCode]);\r\n\r\n const chartGroupings = [\r\n {\r\n text: ChartGrouping.M,\r\n value: ChartGrouping.M,\r\n payload: 'Month',\r\n },\r\n {\r\n text: ChartGrouping.Q,\r\n value: ChartGrouping.Q,\r\n payload: 'Quarter',\r\n },\r\n {\r\n text: ChartGrouping.Y,\r\n value: ChartGrouping.Y,\r\n payload: 'Year',\r\n }\r\n ];\r\n\r\n const chartTypes = useMemo(() => {\r\n const all = {\r\n value: constants.allListItem,\r\n text: 'All',\r\n selected: values.transactionType === constants.allListItem,\r\n };\r\n\r\n return [\r\n all,\r\n ...ChartTypes.map(({ value, text }) => ({\r\n value,\r\n text,\r\n selected: values.transactionType === value,\r\n })),\r\n ];\r\n }, [values.transactionType]);\r\n\r\n const renderListItemWithDescription = (item: DropDownListItem) => (\r\n
    \r\n {item.text}\r\n {item.payload}\r\n
    \r\n );\r\n\r\n return (\r\n \r\n \r\n handleValueChange('transactionType')(value)}\r\n className=\"custom-drop-down-ghost\"\r\n defaultSortingEnabled={false}\r\n prefix=\"Type: \"\r\n />\r\n \r\n \r\n ({ ...x, selected: values.grouping === x.value }))}\r\n onChange={({ value }) => handleValueChange('grouping')(value)}\r\n className=\"custom-drop-down-ghost custom-drop-down-period\"\r\n defaultSortingEnabled={false}\r\n prefix=\"Period: \"\r\n renderItemContentCallback={renderListItemWithDescription}\r\n />\r\n \r\n \r\n handleCurrencyChange(value)}\r\n className=\"custom-drop-down-ghost\"\r\n defaultSortingEnabled={false}\r\n prefix=\"Ccy: \"\r\n />\r\n \r\n \r\n );\r\n}\r\n","import { useMemo } from 'react';\r\nimport { PlotMouseEvent } from 'plotly.js';\r\nimport { cloManagersChartBar } from '../../../../../constants/cloManagers/chartBar';\r\nimport { mainConfig, Plot } from '../../../../common';\r\nimport { arrayUtils, chartUtils } from '../../../../../utils';\r\nimport { constants } from '../../../../../constants';\r\nimport { ChartView } from '../../../../../types/dashboard/AmrChart';\r\nimport { CloManagerDealStats } from '../../../../../types/clo-managers/CloManagerDealStats';\r\nimport { TransactionType } from '../../../../../types/amr-pipeline/enums/TransactionType';\r\n\r\ninterface Props {\r\n chartDiv?: string;\r\n data: CloManagerDealStats[];\r\n onClick?: (comoanyReferenceName: string, transactionType: string) => void;\r\n}\r\n\r\nconst RequiredTransactionTypes = [\r\n TransactionType.newIssue,\r\n TransactionType.refi,\r\n TransactionType.reset,\r\n] as const;\r\n\r\ntype NewIssueRefiReset = typeof RequiredTransactionTypes[number];\r\n\r\nconst ChartLegends = [\r\n 'New Issue',\r\n 'Refinancing',\r\n 'Reset',\r\n];\r\n\r\ntype ByTransactionTypeGroup = Record;\r\ntype TransactionTypeCompanyCodeGroup = {\r\n transactionType: TransactionType;\r\n companyCode: string | null;\r\n elements: CloManagerDealStats[];\r\n};\r\n\r\nexport function CloManagerArrangerStatsBarChart({\r\n chartDiv,\r\n data,\r\n onClick,\r\n}: Props) {\r\n const { label, tickColor, tickFont, zeroLineColor, margin, fontSize, barColors } = cloManagersChartBar;\r\n\r\n const groupedByTransactionType = useMemo(() => {\r\n // Filter out data that can influence on sorting\r\n const withoutAmrDeals = data.filter(x => !!x.transactionType && x.transactionType !== TransactionType.amr)\r\n\r\n const groupedByCompanyCode = arrayUtils.groupBy(\r\n withoutAmrDeals,\r\n (row: CloManagerDealStats) => row.companyCode\r\n );\r\n\r\n // Sort by sum of all deals and get ordered list of company codes\r\n const sortedCompanies = Array.from(groupedByCompanyCode.values())\r\n .sort((a, b) => arrayUtils.sum(b, value => value.numberOfDeals) - arrayUtils.sum(a, value => value.numberOfDeals))\r\n .map(([x]) => x.companyCode);\r\n\r\n // Go through each company and collect groups aggregated by company code and transaction type\r\n const groupedByCompanyCodeAndType = sortedCompanies.reduce((acc: TransactionTypeCompanyCodeGroup[], companyCode) => {\r\n // Iterate through exactly all required transaction types here to\r\n // accumulate empty arrays, when there is no data for particular transaction\r\n // type of a current company. Otherwise it may cause `shifted` bars with a\r\n // higher summary. Plotly doesn't give a shit about missing transaction types in some places,\r\n // and shifts them further in chart.\r\n const groups = RequiredTransactionTypes.map(transactionType => {\r\n return {\r\n transactionType,\r\n companyCode,\r\n elements: withoutAmrDeals.filter(x =>\r\n x.companyCode === companyCode\r\n && x.transactionType === transactionType\r\n )\r\n };\r\n });\r\n\r\n return [...acc, ...groups];\r\n }, []);\r\n\r\n return groupedByCompanyCodeAndType.reduce((acc: ByTransactionTypeGroup, group) => {\r\n const { transactionType, companyCode, elements } = group;\r\n const [firstElement] = elements;\r\n\r\n // Still need this to preserve types integrity\r\n if (!transactionType || transactionType === TransactionType.amr) {\r\n return acc;\r\n }\r\n\r\n const {\r\n x = [],\r\n y = [],\r\n customdata = []\r\n } = acc[transactionType];\r\n\r\n // For empty arrays return zero - it won't render, but bar will\r\n // be placed in correct place\r\n if (!firstElement) {\r\n return {\r\n ...acc,\r\n [transactionType]: {\r\n x: [...x, companyCode || constants.emptyPlaceholder],\r\n y: [...y, 0],\r\n customdata: [...customdata, undefined],\r\n },\r\n };\r\n }\r\n\r\n const { companyReferenceName } = firstElement;\r\n\r\n const numberOfDeals = arrayUtils.sum(elements, (value: CloManagerDealStats) => value.numberOfDeals);\r\n\r\n return {\r\n ...acc,\r\n [transactionType]: {\r\n x: [...x, companyCode || constants.emptyPlaceholder],\r\n y: [...y, numberOfDeals],\r\n customdata: [...customdata, {\r\n companyReferenceName,\r\n transactionType,\r\n }],\r\n },\r\n };\r\n }, {\r\n [TransactionType.newIssue]: {},\r\n [TransactionType.refi]: {},\r\n [TransactionType.reset]: {},\r\n });\r\n }, [data]);\r\n\r\n const onBarClick = (e: PlotMouseEvent) => {\r\n if (!onClick) {\r\n return;\r\n }\r\n\r\n const point = e && e.points && e.points[0];\r\n\r\n if (!point) {\r\n return;\r\n }\r\n\r\n const {\r\n companyReferenceName,\r\n transactionType,\r\n } = point.customdata as any;\r\n\r\n onClick(companyReferenceName, transactionType);\r\n };\r\n\r\n const getChartData = () => {\r\n return Object.values(groupedByTransactionType).map(({ x, y, customdata }, index) => ({\r\n x,\r\n y,\r\n type: 'bar',\r\n hoverinfo: 'text',\r\n textposition: 'none',\r\n name: ChartLegends[index],\r\n customdata,\r\n text: y?.map((value: number) => `${ChartLegends[index]}: ${value}`),\r\n marker: { color: barColors[index] },\r\n }));\r\n };\r\n\r\n const chartLayout = {\r\n showlegend: false,\r\n barmode: ChartView.Stacked,\r\n autosize: true,\r\n hovermode: 'closest',\r\n hoverlabel: {\r\n bordercolor: label.bordercolor,\r\n bgcolor: label.bgColor,\r\n font: {\r\n color: label.fontColor,\r\n family: label.fontFamily,\r\n size: label.size,\r\n },\r\n },\r\n font: { size: fontSize },\r\n margin,\r\n xaxis: {\r\n type: 'category',\r\n zeroline: false,\r\n fixedrange: true,\r\n tickangle: 'auto',\r\n autotickangles: [0, -45],\r\n ticklen: 0,\r\n },\r\n yaxis: {\r\n showgrid: true,\r\n mirror: 'ticks',\r\n fixedrange: true,\r\n showtickprefix: 'none',\r\n zerolinecolor: zeroLineColor,\r\n gridcolor: tickColor,\r\n ticks: 'inside',\r\n tickcolor: tickColor,\r\n tickfont: tickFont,\r\n },\r\n };\r\n\r\n const chartData = getChartData();\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n
    {ChartLegends[0]}
    \r\n
    {ChartLegends[1]}
    \r\n
    {ChartLegends[2]}
    \r\n
    \r\n
    All statistics are calculated based on the transaction pricing date.
    \r\n \r\n );\r\n}\r\n\r\nCloManagerArrangerStatsBarChart.defaultProps = {\r\n chartDiv: 'clo-manager-bars-chart',\r\n};\r\n","import { useMemo } from 'react';\r\nimport { DashboardNoSelectedFilters } from '../../../../dashboard/DashboardNoSelectedFilters';\r\nimport { CloManagerArrangerStatsBarChart } from './CloManagerArrangerStatsBarChart';\r\nimport { CloManagerStats } from '../../../../../types/clo-managers/CloManagerStats';\r\nimport { user } from '../../../../../user';\r\nimport { SubscriptionFeature } from '../../../../../types/billing/SubscriptionFeature';\r\n\r\ninterface CloManagerArrangerStatsWidgetProps {\r\n stats: CloManagerStats;\r\n onChartClick?: (companyReferenceName: string, transactionType: string) => void;\r\n}\r\n\r\nexport function CloManagerArrangerStatsWidget({ stats, onChartClick }: CloManagerArrangerStatsWidgetProps) {\r\n const hasImAccess = user.hasFeatures(SubscriptionFeature.IssuanceMonitorFullAccess);\r\n\r\n const chart = useMemo(() => {\r\n return \r\n }, [stats.arrangersDeals, onChartClick, hasImAccess]);\r\n\r\n return (\r\n
    \r\n
    \r\n

    \r\n ArrangersDeal Count\r\n

    \r\n
    \r\n {!!stats.arrangersDeals.length ? chart : }\r\n
    \r\n );\r\n}\r\n","import { PlotMouseEvent } from 'plotly.js';\r\nimport { cloManagersChartBar, trusteeBarColor } from '../../../../../constants/cloManagers/chartBar';\r\nimport { mainConfig, Plot } from '../../../../common';\r\nimport { chartUtils } from '../../../../../utils';\r\nimport { CloManagerDealStats } from '../../../../../types/clo-managers/CloManagerDealStats';\r\nimport { constants } from '../../../../../constants';\r\n\r\ninterface Props {\r\n chartDiv?: string;\r\n data: CloManagerDealStats[];\r\n onClick?: (comoanyReferenceName: string) => void;\r\n}\r\n\r\nexport function CloManagerTrusteeStatsBarChart({ chartDiv, data, onClick }: Props) {\r\n const onBarClick = (e: PlotMouseEvent) => {\r\n if (!onClick) {\r\n return;\r\n }\r\n\r\n const point = e && e.points && e.points[0];\r\n\r\n if (!point) {\r\n return;\r\n }\r\n\r\n const companyReferenceName = point.customdata as string;\r\n\r\n onClick(companyReferenceName);\r\n };\r\n\r\n const formatCompanyShortName = (shortName?: string) => {\r\n if (!shortName || !shortName.trim()) return constants.emptyPlaceholder\r\n\r\n const maxSingleLineSymbols = 10\r\n const trimmed = shortName.trim();\r\n\r\n if (trimmed.length <= maxSingleLineSymbols) return trimmed;\r\n\r\n const words = trimmed.split(' ');\r\n if (words.length === 1) return trimmed;\r\n if (words.length === 2) return words.join('
    ')\r\n\r\n // 3 or 4 words\r\n const [first, second, ...other] = words;\r\n return `${first} ${second}
    ${other.join(\" \")}`;\r\n\r\n }\r\n\r\n const getChartData = () =>\r\n data.map(d => ({\r\n x: [formatCompanyShortName(d.companyShortName)],\r\n y: [d.numberOfDeals],\r\n type: 'bar',\r\n hoverinfo: 'text',\r\n textposition: 'none',\r\n name: d.companyReferenceName,\r\n customdata: [d.companyReferenceName],\r\n text: `${d.companyShortName || constants.emptyPlaceholder}: ${d.numberOfDeals}` || [],\r\n marker: { color: trusteeBarColor },\r\n }));\r\n\r\n const chartData = getChartData();\r\n\r\n const { label, tickColor, tickFont, zeroLineColor, margin, fontSize } = cloManagersChartBar;\r\n const customMargin = { ...margin, b: 60 };\r\n\r\n const layout = {\r\n showlegend: false,\r\n barmode: 'group',\r\n autosize: true,\r\n hovermode: 'closest',\r\n hoverlabel: {\r\n bordercolor: label.bordercolor,\r\n bgcolor: label.bgColor,\r\n font: {\r\n color: label.fontColor,\r\n family: label.fontFamily,\r\n size: label.size,\r\n },\r\n },\r\n font: { size: fontSize },\r\n margin: customMargin,\r\n xaxis: {\r\n type: 'category',\r\n zeroline: false,\r\n fixedrange: true,\r\n \r\n tickangle: 'auto',\r\n autotickangles: [0, -45],\r\n ticklen: 0,\r\n },\r\n yaxis: {\r\n showgrid: true,\r\n mirror: 'ticks',\r\n fixedrange: true,\r\n showtickprefix: 'none',\r\n zerolinecolor: zeroLineColor,\r\n gridcolor: tickColor,\r\n ticks: 'inside',\r\n tickcolor: tickColor,\r\n tickfont: tickFont,\r\n },\r\n };\r\n\r\n return (\r\n <>\r\n \r\n
    All statistics are calculated based on the transaction pricing date.
    \r\n \r\n );\r\n}\r\n\r\nCloManagerTrusteeStatsBarChart.defaultProps = {\r\n chartDiv: 'clo-manager-bars-chart',\r\n};\r\n","import { useMemo } from 'react';\r\nimport { CloManagerTrusteeStatsBarChart } from './CloManagerTrusteeStatsBarChart';\r\nimport { DashboardNoSelectedFilters } from '../../../../dashboard/DashboardNoSelectedFilters';\r\nimport { CloManagerStats } from '../../../../../types/clo-managers/CloManagerStats';\r\n\r\ninterface CloManagerTrusteeStatsWidgetProps {\r\n stats: CloManagerStats;\r\n onChartClick?: (companyReferenceName: string) => void;\r\n}\r\n\r\nexport function CloManagerTrusteeStatsWidget({ stats, onChartClick }: CloManagerTrusteeStatsWidgetProps) {\r\n const chart = useMemo(() => {\r\n const data = stats.trusteesDeals.sort((a, b) => b.numberOfDeals - a.numberOfDeals);\r\n\r\n return ;\r\n }, [stats, onChartClick]);\r\n\r\n return (\r\n
    \r\n
    \r\n

    \r\n TrusteesDeal Count\r\n

    \r\n
    \r\n {!!stats.trusteesDeals.length ? chart : }\r\n
    \r\n );\r\n}\r\n","import { isNil, noop } from 'lodash';\r\nimport { constants, pipelineRequestCriteria, routes } from '../../../../constants';\r\nimport { Currency } from '../../../../types/enums/Currency';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { CloManagersState } from '../../../../types/state/CloManagersState';\r\nimport { Statistics } from './Statistics';\r\nimport { StatisticsChart } from './StatisticsChart';\r\nimport { IssuanceSpreadWidget } from '../../../dashboard/issuanceSpread/IssuanceSpreadWidget';\r\nimport { ChartGrouping, ChartUnits, Term } from '../../../../types/dashboard/AmrChart';\r\nimport { ShortLongDatedDealsWidget } from '../../../dashboard/shortLongDatedDeals/ShortLongDatedDealsWidget';\r\nimport { ShortLongDatedDealsFilter } from './charts/ShortLongDatedDealsFilter';\r\nimport { ShortLongChartClickHandlerParams } from '../../../dashboard/shortLongDatedDeals/types';\r\nimport { ShortOrLongDated } from '../../../../types/amr-pipeline/enums/ShortOrLongDated';\r\nimport { CloManagerArrangerStatsWidget } from './charts/CloManagerArrangerStatsWidget';\r\nimport { CloManagerTrusteeStatsWidget } from './charts/CloManagerTrusteeStatsWidget';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { QueryStringArgumentSerializer } from '../../../../utils/filtering/serializers/QueryStringArgumentSerializer';\r\nimport { IssuanceSpreadsChartClickHandlerParams } from '../../../dashboard/issuanceSpread/types';\r\nimport { queryStringSerializer } from '../../../../utils/filtering';\r\nimport {\r\n arrangers,\r\n collateralManagers,\r\n coupon,\r\n multipleCurrencies,\r\n nonCallEndFrom,\r\n nonCallEndTo,\r\n pricingDateFrom,\r\n pricingDateTo,\r\n ratings,\r\n reinvestmentEndFrom,\r\n reinvestmentEndTo,\r\n transactionTypes,\r\n trustees,\r\n esg,\r\n euCompliance,\r\n staticDeals,\r\n transactionStatuses,\r\n collateralTypes,\r\n outOfNC,\r\n outOfRI,\r\n} from '../../../../utils/filtering/serializers/serializer.definitions';\r\nimport { useContext } from 'react';\r\nimport CloManagersContext from '../../cloManagersContext';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { ArrangersTrusteesChartsTransactionStatuses, StatisticsChartsTransactionStatuses, StatisticsChartsTransactionTypes } from './constants';\r\nimport { Player } from '../../../common/Player';\r\nimport { stringUtils } from '../../../../utils';\r\nimport { RequiredFeature } from '../../../access/RequiredFeature';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../../../access/ActionBlocker';\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../access/BlockedFeatureText';\r\nimport { user } from '../../../../user';\r\n\r\nexport const Overview = () => {\r\n const dispatch = useDispatch();\r\n const { selectedManager } = useSelector((state: AppState) => state.cloManagers);\r\n const { ownCompany } = useContext(CloManagersContext);\r\n\r\n if (!selectedManager) {\r\n return null;\r\n }\r\n\r\n const { details } = selectedManager;\r\n\r\n const renderActionButton = () => (\r\n
    \r\n {details?.webSite && (\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, CloManagerAccessType.CloTeamWebsite))}\r\n >\r\n \r\n Website\r\n \r\n )}\r\n {details?.linkedIn && (\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, CloManagerAccessType.CloTeamIn))}\r\n >\r\n \r\n LinkedIn\r\n \r\n )}\r\n
    \r\n );\r\n\r\n const redirectToIssuanceMonitor = (qsBuilder: (...params: any) => string, cloManagerAccessType: CloManagerAccessType) => (...params: any) => {\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, cloManagerAccessType));\r\n\r\n const queryString = qsBuilder(...params);\r\n\r\n window.open(`${window.location.origin}${routes.AMRPipeline}/?${queryString}`);\r\n };\r\n\r\n const redirectToIMWithCurrency = redirectToIssuanceMonitor((currency: Currency) => {\r\n const hasImAccess = user.hasFeatures(SubscriptionFeature.IssuanceMonitorDealUpdateEmailAlerts);\r\n\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n currency: [currency],\r\n // Generate different links for subscribed and unsubscribed users\r\n // to show `see N more deals` placeholder in particular case\r\n transactionStatuses: hasImAccess ? StatisticsChartsTransactionStatuses : undefined,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n multipleCurrencies(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewGeographicMix);\r\n\r\n const redirectToIMWithESG = redirectToIssuanceMonitor((esgDeals: boolean) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n esg: esgDeals,\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n esg(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewEsgDeals);\r\n\r\n const redirectToIMWithEUCompliance = redirectToIssuanceMonitor((euComplianceDeals: boolean) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n euCompliance: euComplianceDeals,\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n euCompliance(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewEuCompliant);\r\n\r\n const redirectToIMWithStaticDeals = redirectToIssuanceMonitor((staticDeal: boolean) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n staticDeals: staticDeal,\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n staticDeals(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewStaticDeals);\r\n\r\n const redirectToIMWithOutOfNC = redirectToIssuanceMonitor((isOutOfNC: boolean) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n outOfNC: isOutOfNC,\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n outOfNC(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewOutOfNCDoor);\r\n\r\n const redirectToIMWithOutOfRI = redirectToIssuanceMonitor((isOutOfRI: boolean) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n outOfRI: isOutOfRI,\r\n transactionStatuses: StatisticsChartsTransactionStatuses,\r\n transactionTypes: StatisticsChartsTransactionTypes,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n outOfRI(),\r\n transactionStatuses(),\r\n transactionTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewOutOfRIDoor);\r\n\r\n const handleArrangersChartClick = redirectToIssuanceMonitor((companyReferenceName: string, transactionType: string) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n arrangers: [companyReferenceName],\r\n transactionTypes: [transactionType],\r\n transactionStatuses: ArrangersTrusteesChartsTransactionStatuses,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n arrangers(),\r\n transactionTypes(),\r\n transactionStatuses(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewArrangers);\r\n\r\n const handleTrusteesChartClick = redirectToIssuanceMonitor((companyReferenceName: string) => {\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n trustees: [companyReferenceName],\r\n transactionStatuses: ArrangersTrusteesChartsTransactionStatuses,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n trustees(),\r\n transactionStatuses(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewTrustees);\r\n\r\n const handleIssuanceSpreadClick = redirectToIssuanceMonitor((params: IssuanceSpreadsChartClickHandlerParams) => {\r\n const termRiEndCriteria = {\r\n [Term.Short]: pipelineRequestCriteria.issuanceSpread.shortTerm.reinvestmentPeriodEndYears,\r\n [Term.Long]: pipelineRequestCriteria.issuanceSpread.longTerm.reinvestmentPeriodEndYears,\r\n };\r\n\r\n const termNcEndCriteria = {\r\n [Term.Short]: pipelineRequestCriteria.issuanceSpread.shortTerm.nonCallPeriodEndYears,\r\n [Term.Long]: pipelineRequestCriteria.issuanceSpread.longTerm.nonCallPeriodEndYears,\r\n };\r\n\r\n const [riEndFrom, riEndTo] = params.term ? termRiEndCriteria[params.term] : [];\r\n const [ncEndFrom, ncEndTo] = params.term ? termNcEndCriteria[params.term] : [];\r\n\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n collateralTypes: [params.collateralType],\r\n transactionTypes: params.transactionType\r\n ? [params.transactionType]\r\n : StatisticsChartsTransactionTypes,\r\n transactionStatuses: ArrangersTrusteesChartsTransactionStatuses,\r\n currency: [params.currencyCode],\r\n ...(isNil(riEndFrom) ? undefined : { reinvestmentEndFrom: riEndFrom }),\r\n ...(isNil(riEndTo) ? undefined : { reinvestmentEndTo: riEndTo }),\r\n ...(isNil(ncEndFrom) ? undefined : { nonCallEndFrom: ncEndFrom }),\r\n ...(isNil(ncEndTo) ? undefined : { nonCallEndTo: ncEndTo }),\r\n pricingDateFrom: params.startPeriod,\r\n pricingDateTo: params.endPeriod,\r\n coupon: params.floaterIndex,\r\n ratings: [params.rating],\r\n staticDeals: false,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionTypes(),\r\n multipleCurrencies(),\r\n pricingDateFrom(),\r\n pricingDateTo(),\r\n reinvestmentEndFrom(),\r\n reinvestmentEndTo(),\r\n nonCallEndFrom(),\r\n nonCallEndTo(),\r\n ratings(),\r\n coupon(),\r\n transactionStatuses(),\r\n staticDeals(),\r\n collateralTypes(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewIssuanceSpreads);\r\n\r\n const handleShortLongDatedDealsClick = redirectToIssuanceMonitor((params: ShortLongChartClickHandlerParams) => {\r\n const [riEndFrom, riEndTo] = params.shortOrLongDated === ShortOrLongDated.Short\r\n ? pipelineRequestCriteria.shortLongDatedDeals.reinvestmentPeriodEndYearsShort\r\n : pipelineRequestCriteria.shortLongDatedDeals.reinvestmentPeriodEndYearsLong;\r\n\r\n const [ncEndFrom, ncEndTo] = params.shortOrLongDated === ShortOrLongDated.Short\r\n ? pipelineRequestCriteria.shortLongDatedDeals.nonCallPeriodEndYearsShort\r\n : pipelineRequestCriteria.shortLongDatedDeals.nonCallPeriodEndYearsLong;\r\n\r\n const searchParams = {\r\n collateralManagers: [selectedManager.referenceName],\r\n transactionTypes: params.transactionType\r\n ? [params.transactionType]\r\n : StatisticsChartsTransactionTypes,\r\n transactionStatuses: ArrangersTrusteesChartsTransactionStatuses,\r\n currency: [params.currencyCode],\r\n reinvestmentEndFrom: riEndFrom,\r\n reinvestmentEndTo: riEndTo,\r\n nonCallEndFrom: ncEndFrom,\r\n nonCallEndTo: ncEndTo,\r\n pricingDateFrom: params.startPeriod,\r\n pricingDateTo: params.endPeriod,\r\n };\r\n\r\n const serializer: QueryStringArgumentSerializer[] = [\r\n collateralManagers(),\r\n transactionTypes(),\r\n multipleCurrencies(),\r\n pricingDateFrom(),\r\n pricingDateTo(),\r\n reinvestmentEndFrom(),\r\n reinvestmentEndTo(),\r\n nonCallEndFrom(),\r\n nonCallEndTo(),\r\n transactionStatuses(),\r\n ];\r\n\r\n return queryStringSerializer.serialize(searchParams, serializer);\r\n }, CloManagerAccessType.OverviewShortLongDatedDeals);\r\n\r\n const withVideoColumn = details?.webinarVideo || details?.platformOverview;\r\n const showWebinarVideo = (!!details?.webinarVideo && stringUtils.isValidUrl(details.webinarVideo)) || !!details?.webinarVideoExists;\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n {details?.description && (\r\n

    \r\n {details.description}\r\n

    \r\n )}\r\n {withVideoColumn && (\r\n
    \r\n {details?.platformOverview &&\r\n stringUtils.isValidUrl(\r\n details.platformOverview\r\n ) && (\r\n
    \r\n

    Platform Overview

    \r\n \r\n
    \r\n )}\r\n {showWebinarVideo && (\r\n
    \r\n

    Webinars

    \r\n (\r\n to unlock access to Webinars.}\r\n className=\"empty-placeholder\"\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 \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n {details &&\r\n \r\n }\r\n {details &&\r\n \r\n {blocked => (\r\n \r\n )}\r\n \r\n }\r\n \r\n {blocked => (\r\n \r\n )}\r\n \r\n \r\n {blocked => (\r\n \r\n )}\r\n \r\n
    \r\n
    \r\n {\r\n // Hid section in scope https://kopentech.atlassian.net/browse/AMR-8551\r\n /*\r\n \r\n
    \r\n \r\n {details?.cloTeamStructureRegions}\r\n \r\n \r\n {isNil(details?.cloPortfolioManagers) ? constants.emptyPlaceholder : details?.cloPortfolioManagers}\r\n \r\n \r\n {details?.pmAverageExperience}\r\n \r\n \r\n {details?.analystTeamAverageExperience}\r\n \r\n \r\n {details?.loanTermCreditsPerAnalyst}\r\n \r\n \r\n {details?.approxNoOfInvestedCredits}\r\n \r\n
    \r\n
    \r\n Loan Analysts with:\r\n 20 Years’ Credit Experience\">\r\n {isNil(details?.loanAnalystsWithOver20yCreditExperience) ? constants.emptyPlaceholder : details?.loanAnalystsWithOver20yCreditExperience}\r\n \r\n \r\n {isNil(details?.loanAnalystsWith10To20yCreditExperience) ? constants.emptyPlaceholder : details?.loanAnalystsWith10To20yCreditExperience}\r\n \r\n \r\n {isNil(details?.loanAnalystsWithLessThan10yCreditExperience) ? constants.emptyPlaceholder : details?.loanAnalystsWithLessThan10yCreditExperience}\r\n \r\n \r\n {isNil(details?.distressedCreditSpecialists) ? constants.emptyPlaceholder : details?.distressedCreditSpecialists}\r\n \r\n \r\n {isNil(details?.avgExperience) ? constants.emptyPlaceholder : details?.avgExperience}\r\n \r\n
    \r\n
    \r\n */\r\n }\r\n \r\n );\r\n}\r\n","import { useSelector } from 'react-redux';\r\nimport { controlPanelActions, pxTalkListActions, rulesActions, securityDetailsActions } from '../../../../actions';\r\nimport { useAppSelector } from '../../../../effects/useAppSelector';\r\nimport { BwicPositionBase } from '../../../../types/bwic/BwicPositionBase';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { BwicRules } from '../../../bwic-rules/BwicRules';\r\nimport { PxTalkList } from '../../../common';\r\nimport { BwicViewLink } from '../../../common/BwicViewLink';\r\nimport { RightSideTabPanel } from '../../../controls/RightSideTabPanel';\r\nimport { SecurityDetails, SecurityDetailsPanel } from '../../../security-details';\r\nimport SecurityDetailsOptions from '../../../security-details/SecurityDetailsOptions';\r\nimport { BWICLog } from '../../../security-details/bwic-log/BWICLog';\r\nimport { bwicLogActions } from '../../../../actions/bwic-log.actions';\r\nimport { useAppDispatch } from '../../../../effects/useAppDispatch';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\n\r\nexport const DealsControlPanel = () => {\r\n const dispatch = useAppDispatch();\r\n\r\n const security = useAppSelector(s => s.cloManagers.selectedSecurity);\r\n const securityDetails = useAppSelector(s => s.securityDetails);\r\n const bwicLog = useAppSelector(s => s.bwicLog);\r\n const pxTalkListVisible = useAppSelector(s => s.pxTalkList.visible);\r\n const rules = useSelector((s: AppState) => s.rules);\r\n\r\n if (!security) return null;\r\n\r\n const currentBwic = security?.currentBwic;\r\n\r\n const clearSelectedSecurity = () => dispatch(cloManagersActions.selectedSecurityChange());\r\n\r\n if (!currentBwic) return ;\r\n\r\n const tabs = [\r\n {\r\n title: 'Px Talk',\r\n active: pxTalkListVisible,\r\n renderContent: () => \r\n ,\r\n onActivate: () => dispatch(pxTalkListActions.show(currentBwic.positionId)),\r\n onDeactivate: () => dispatch(pxTalkListActions.hide())\r\n },\r\n {\r\n title: 'Security',\r\n active: !!securityDetails.security,\r\n renderContent: () => ,\r\n onActivate: () => { security && dispatch(securityDetailsActions.securityDetailsInitRequest(security as BwicPositionBase, true)) },\r\n onDeactivate: () => { dispatch(securityDetailsActions.securityDetailsReset()) }\r\n },\r\n {\r\n title: 'BWIC Log',\r\n active: !!bwicLog.security,\r\n renderContent: () => ,\r\n onActivate: () => { security && dispatch(bwicLogActions.bwicLogInitRequest(security as BwicPositionBase)) },\r\n onDeactivate: () => dispatch(bwicLogActions.bwicLogReset())\r\n },\r\n {\r\n title: 'Rules',\r\n active: rules.show,\r\n renderContent: () =>\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    ,\r\n onActivate: () => dispatch(rulesActions.show(currentBwic.positionId)),\r\n onDeactivate: () => dispatch(rulesActions.hide())\r\n }\r\n ];\r\n\r\n return (\r\n \r\n <>{security?.ticker}\r\n {security && (\r\n \r\n )}\r\n \r\n }\r\n items={tabs}\r\n onClose={() => {\r\n dispatch(controlPanelActions.hide());\r\n clearSelectedSecurity();\r\n }}\r\n />\r\n )\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport cn from 'classnames';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { isRequestFailed, isRequestSuccess, isRequesting } from '../../../../utils';\r\nimport { EmptyPlaceholder, Preloader } from '../../../common';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { DealsControlPanel } from './DealsControlPanel';\r\nimport { useDealSecurityStatistics, useLatestDealTransactions } from './hooks';\r\nimport { DealSecurityTableItem, convertToDealSecurityTableItem, convertToTableItem, dealColumns, securityColumns } from './columns';\r\nimport { Transaction } from '../../../../types/amr-pipeline/models/Transaction';\r\nimport { useAppSelector } from '../../../../effects/useAppSelector';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { OriginatingTransaction } from '../../../../types/amr-pipeline/models/OriginatingTransaction';\r\nimport { TableColumnStickType } from '../../../bidding/common/table/types/TableColumnStickType';\r\nimport { LazyLoad } from '../../../common/LazyLoad';\r\nimport { SORT, constants } from '../../../../constants';\r\nimport { DealSecurityStatistics } from '../../../../types/security/DealSecurityStatistics';\r\nimport { controlPanelActions } from '../../../../actions';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport IntexPopup from '../../../amrPipeline/detailed/IntexPopup';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { ShowFor } from '../../../access';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { Link } from 'react-router-dom';\r\nimport { getTransactionDetailsUrl } from '../../../../utils/amr-pipeline.utils';\r\nimport { useAppDispatch } from '../../../../effects/useAppDispatch';\r\n\r\nexport const Deals = () => {\r\n const dispatch = useAppDispatch();\r\n const cloManager = useAppSelector(s => s.cloManagers.selectedManager);\r\n const transactionsState = useLatestDealTransactions(cloManager?.referenceName);\r\n\r\n const [transactionForIntex, setTransactionForIntex] = useState();\r\n const selectedSecurity = useAppSelector(s => s.cloManagers.selectedSecurity);\r\n const { userCompany } = useSelector((state: AppState) => state.issuanceMonitor.amrPipelineCommon);\r\n\r\n const securitiesState = useDealSecurityStatistics(\r\n // Pass non-empty deal tickers\r\n transactionsState.transactions.filter(t => t.dealTicker).map(t => t.dealTicker!),\r\n // Wait until deal transactions request is done\r\n !isRequestSuccess(transactionsState.requestState)\r\n );\r\n\r\n useEffect(() => {\r\n //Reset panels state\r\n return () => {\r\n dispatch(controlPanelActions.hide());\r\n }\r\n }, [dispatch]);\r\n\r\n if (!cloManager?.details) return null;\r\n\r\n const getDataItems = () =>\r\n transactionsState.transactions.map(t =>\r\n convertToTableItem({\r\n ...t,\r\n hasDocuments:\r\n isRequestSuccess(securitiesState.requestState) &&\r\n securitiesState.statistics.find(\r\n s =>\r\n t.dealTicker?.localeCompare(s.ticker, undefined, {\r\n sensitivity: 'accent',\r\n }) === 0,\r\n )?.hasDocuments,\r\n }),\r\n );\r\n\r\n const trackDoorClick = () => dispatch(\r\n cloManagersActions.logUserActivity(\r\n cloManager.referenceName,\r\n CloManagerAccessType.DealDoor)\r\n )\r\n\r\n const trackIntexClick = () => dispatch(\r\n cloManagersActions.logUserActivity(\r\n cloManager.referenceName,\r\n CloManagerAccessType.DealIntex)\r\n );\r\n\r\n\r\n const context = {\r\n trackDoorClick,\r\n trackIntexClick,\r\n setTransactionForIntex,\r\n userCompany,\r\n securities: securitiesState.statistics,\r\n };\r\n\r\n const renderPlaceholder = (verticalPlaces: number) =>\r\n \r\n\r\n const renderDealSecurities = (\r\n transaction: OriginatingTransaction,\r\n statistics: DealSecurityStatistics,\r\n columnType: TableColumnStickType) =>\r\n convertToDealSecurityTableItem(c, transaction))}\r\n createSecurityCustomArgs={() => ({ context })}\r\n createRowCustomKey={(s: DealSecurityTableItem) => `${transaction.referenceName}-${s.securityId}`}\r\n createSecurityCustomClassName={(item: DealSecurityTableItem) => cn({\r\n highlighted: item.securityId === selectedSecurity?.securityId\r\n })}\r\n />\r\n\r\n const renderCollapsibleItem = (\r\n transaction: OriginatingTransaction,\r\n columnType: TableColumnStickType) => {\r\n if (isRequesting(securitiesState.requestState) || isRequestFailed(securitiesState.requestState)) {\r\n // Show preloader in table middle section while requesting deal securities\r\n return columnType === TableColumnStickType.Middle\r\n ? \r\n :
    ;\r\n }\r\n\r\n const statistics = securitiesState.statistics.find(s =>\r\n transaction.dealTicker?.localeCompare(s.ticker, undefined, { sensitivity: \"accent\" }) === 0\r\n );\r\n\r\n if (statistics?.classes.length) {\r\n return (\r\n \r\n {\r\n visible => visible\r\n ? renderDealSecurities(transaction, statistics, columnType)\r\n : renderPlaceholder(statistics.classes.length)\r\n }\r\n \r\n );\r\n }\r\n\r\n // Show emply placeholder in table middle section\r\n return columnType === TableColumnStickType.Middle ? (\r\n \r\n There are no secondary data to display yet.{' '}\r\n \r\n {\r\n e.stopPropagation();\r\n context.trackDoorClick();\r\n }}\r\n >\r\n Click here\r\n {' '}\r\n or hit button in the right panel to\r\n see deal details.\r\n \r\n \r\n }\r\n textViewRow\r\n />\r\n ) : (\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n {isRequestSuccess(transactionsState.requestState) && (\r\n <>\r\n t.referenceName}\r\n createSecurityCustomArgs={() => context}\r\n renderCollapsibleItem={renderCollapsibleItem}\r\n />\r\n \r\n \r\n )}\r\n \r\n \r\n {transactionForIntex && (\r\n setTransactionForIntex(undefined)} />\r\n )}\r\n \r\n );\r\n};\r\n","import { useDispatch, useSelector } from \"react-redux\";\r\nimport { constants } from \"../../../../constants\";\r\nimport IconSVG from \"../../../../styles/svg-icons\";\r\nimport { AppState } from \"../../../../types/state/AppState\";\r\nimport { CloManagersState } from \"../../../../types/state/CloManagersState\";\r\nimport { FormField } from \"../../../amrPipeline/common/FormField\";\r\nimport { SectionContent } from \"../../../amrPipeline/common/section/SectionContent\";\r\nimport { Table } from \"../../../bidding/common/table\";\r\nimport { investmentTeamColumns } from \"./investment-team.columns\";\r\nimport { EmptyPlaceholder } from \"../../../common\";\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../access/BlockedFeatureText';\r\nimport { ActionBlocker } from '../../../access/ActionBlocker';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { useContext } from 'react';\r\nimport CloManagersContext from '../../cloManagersContext';\r\n\r\nexport const CloTeam = () => {\r\n const dispatch = useDispatch();\r\n const { ownCompany } = useContext(CloManagersContext);\r\n const { selectedManager, bwicCloManagers } = useSelector(\r\n (state: AppState) => state.cloManagers\r\n );\r\n\r\n if (!selectedManager?.details) {\r\n return null;\r\n }\r\n\r\n const {\r\n address,\r\n city,\r\n state,\r\n zipCode,\r\n country,\r\n webSite,\r\n linkedIn,\r\n phone,\r\n investmentTeam,\r\n } = selectedManager.details;\r\n\r\n const cityAndState = city?.name && state?.name\r\n ? `${city?.name}, ${state?.name}`\r\n : city?.name || state?.name || constants.emptyPlaceholder;\r\n\r\n const zipCodeAndCountry = zipCode && country?.name\r\n ? `${zipCode}, ${country?.name}`\r\n : zipCode || country?.name || constants.emptyPlaceholder;\r\n\r\n const allAddressFieldsEmpty =\r\n !address\r\n && !city?.name\r\n && !state?.name\r\n && !zipCode\r\n && !country?.name;\r\n\r\n const trackActivity = (accessType: CloManagerAccessType) => {\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, accessType))\r\n };\r\n\r\n const contactItems = [\r\n ...(bwicCloManagers || []),\r\n ...(investmentTeam.items || []),\r\n ];\r\n\r\n const hiddenContacts = contactItems.length + investmentTeam.numberOfHiddenItems - 1;\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n trackActivity(CloManagerAccessType.CloTeamWebsite)}\r\n >\r\n {webSite}\r\n \r\n ) : (\r\n constants.emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n trackActivity(CloManagerAccessType.CloTeamIn)}\r\n >\r\n \r\n \r\n ) : (\r\n constants.emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n \r\n
    \r\n
    \r\n \r\n {address &&

    {address || constants.emptyPlaceholder}

    }\r\n {cityAndState &&

    {cityAndState}

    }\r\n {zipCodeAndCountry &&

    {zipCodeAndCountry}

    }\r\n \r\n )\r\n }\r\n />\r\n
    \r\n \r\n \r\n {contactItems.length ? (\r\n \r\n {blocked => (\r\n <>\r\n ({ trackActivity, ownCompany })}\r\n />\r\n {blocked && hiddenContacts > 0 && (\r\n to see {hiddenContacts} more contact(s).}\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","import { useSelector, useDispatch } from \"react-redux\";\r\nimport { capitalize } from \"lodash\";\r\nimport moment from \"moment\";\r\nimport { AppState } from \"../../../../types/state/AppState\";\r\nimport { CloManagersState } from \"../../../../types/state/CloManagersState\";\r\nimport { SectionContent } from \"../../../amrPipeline/common/section/SectionContent\";\r\nimport { FormField } from \"../../../amrPipeline/common/FormField\";\r\nimport { constants } from \"../../../../constants\";\r\nimport { MarkdownViewer } from \"../../../common/markdown-editor\";\r\nimport { formatUtils } from \"../../../../utils\";\r\nimport { cloManagersActions } from \"../../../../actions/clo-managers.actions\";\r\nimport { CloManagerAccessType } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\n\r\nexport const ESGConsiderations = () => {\r\n const dispatch = useDispatch();\r\n const { selectedManager } = useSelector(\r\n (state: AppState) => state.cloManagers\r\n );\r\n\r\n if (!selectedManager?.details) {\r\n return null;\r\n }\r\n\r\n const { details } = selectedManager;\r\n\r\n const unpriSignatoryValue = details?.unpriSignatorySince\r\n ? moment(details?.unpriSignatorySince).format(constants.dateFormat)\r\n : constants.emptyPlaceholder;\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n \r\n {capitalize(\r\n formatUtils.formatBoolean(details?.esgFormalPolicy)\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n {details?.unpriSignatory ? (\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, CloManagerAccessType.AdditionalInformationUnpri))}\r\n target=\"_blank\"\r\n rel=\"noreferrer\"\r\n >\r\n {unpriSignatoryValue}\r\n \r\n ) : (\r\n unpriSignatoryValue\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n {details?.esgStrategy ? : constants.emptyPlaceholder}\r\n \r\n \r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { CloManagersState } from '../../../../types/state/CloManagersState';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\nimport { AmrFile } from '../../../../types/amr-pipeline/models/AmrFile';\r\nimport DownloadDocument from '../../../amrPipeline/common/documents/DownloadDocument';\r\nimport { FileIcon } from '../../../controls';\r\nimport { ShowMore } from '../../../amrPipeline/common/ShowMore';\r\nimport { compareDatesDesc } from '../../../../utils/compare.utils';\r\nimport { RequiredFeature } from '../../../access/RequiredFeature';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { useContext } from 'react';\r\nimport CloManagersContext from '../../cloManagersContext';\r\nimport { EmptyPlaceholder } from '../../../common';\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../access/BlockedFeatureText';\r\nimport { cloManagersService } from '../../../../services/clo-managers.service';\r\nimport useDownloadDocumentList from '../../../../effects/useDownloadDocumentList';\r\n\r\nexport const ManagerPresentations = () => {\r\n const { ownCompany } = useContext(CloManagersContext);\r\n const { selectedManager } = useSelector((state: AppState) => state.cloManagers);\r\n\r\n const details = selectedManager?.details;\r\n\r\n const managerPresentationFiles = details?.managerPresentationFiles?.sort((a, b) =>\r\n compareDatesDesc(b.uploadTime, a.uploadTime),\r\n );\r\n\r\n const withManagerPresentations = !!managerPresentationFiles?.length;\r\n\r\n const { loadHandler, loadingState } = useDownloadDocumentList({\r\n documents: managerPresentationFiles ?? [],\r\n downloadRequest: (referenceName: string) =>\r\n cloManagersService.downloadManagerPresentationFile(selectedManager?.referenceName || '', referenceName),\r\n });\r\n\r\n if (!details || !selectedManager) {\r\n return null;\r\n }\r\n\r\n const renderFileList = (files: AmrFile[]) =>\r\n files.map(file => (\r\n
    \r\n loadHandler(file.referenceName, file.name)}\r\n isLoading={loadingState[file.referenceName]}\r\n document={file}\r\n loadingText\r\n secondary\r\n >\r\n \r\n {file.name}\r\n \r\n
    \r\n ));\r\n\r\n const managerPresentationFilesList = (files: AmrFile[]) => {\r\n if (files?.length < 4) {\r\n return renderFileList(files);\r\n }\r\n\r\n return (\r\n renderFileList(files)}\r\n renderLess={() => renderFileList(files.slice(0, 3))}\r\n className=\"btn-link show-more-documents\"\r\n />\r\n );\r\n };\r\n\r\n const renderManagerPresentation = () => {\r\n return (\r\n (\r\n \r\n \r\n to see Manager Presentations.\r\n \r\n }\r\n />\r\n \r\n )}\r\n >\r\n {withManagerPresentations ? (\r\n {managerPresentationFilesList(managerPresentationFiles)}\r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n };\r\n\r\n return (\r\n \r\n {renderManagerPresentation()}\r\n \r\n );\r\n};\r\n","import { useSelector } from \"react-redux\";\r\nimport { AppState } from \"../../../../types/state/AppState\";\r\nimport { CloManagersState } from \"../../../../types/state/CloManagersState\";\r\nimport { SectionContent } from \"../../../amrPipeline/common/section/SectionContent\";\r\nimport { FormField } from \"../../../amrPipeline/common/FormField\";\r\nimport { constants } from \"../../../../constants\";\r\nimport { capitalize, isNil } from \"lodash\";\r\nimport { MarkdownViewer } from \"../../../common/markdown-editor\";\r\nimport { formatUtils } from \"../../../../utils\";\r\nimport { OnHoverTooltip } from \"../../../common\";\r\nimport { InstitutionTypeTitles } from '../../../../types/clo-managers/InstitutionType';\r\n\r\nexport const KeyConsiderations = () => {\r\n const { selectedManager } = useSelector(\r\n (state: AppState) => state.cloManagers\r\n );\r\n\r\n if (!selectedManager?.details) {\r\n return null;\r\n }\r\n\r\n const { details } = selectedManager;\r\n\r\n const getOperationsRegions = () => {\r\n const { usdDeals, eurDeals } = details?.stats;\r\n\r\n if (usdDeals && eurDeals) {\r\n return 'USA / Europe';\r\n }\r\n\r\n if (usdDeals) {\r\n return 'USA';\r\n }\r\n\r\n if (eurDeals) {\r\n return 'Europe';\r\n }\r\n\r\n return constants.emptyPlaceholder;\r\n };\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n
    \r\n \r\n {getOperationsRegions()}\r\n \r\n \r\n {details?.location || constants.emptyPlaceholder}\r\n \r\n \r\n {isNil(details?.cloIssuanceSince)\r\n ? constants.emptyPlaceholder\r\n : details?.cloIssuanceSince}\r\n \r\n \r\n {isNil(details?.foundedIn)\r\n ? constants.emptyPlaceholder\r\n : details.foundedIn}\r\n \r\n \r\n {details.founder ? (\r\n \r\n
    {details.founder}
    \r\n
    \r\n ) : (\r\n constants.emptyPlaceholder\r\n )}\r\n
    \r\n \r\n {details.parent ? (\r\n \r\n
    {details.parent}
    \r\n
    \r\n ) : (\r\n constants.emptyPlaceholder\r\n )}\r\n
    \r\n \r\n {details.institutionType ? (\r\n InstitutionTypeTitles[details.institutionType]\r\n ) : (\r\n constants.emptyPlaceholder\r\n )}\r\n \r\n
    \r\n
    \r\n \r\n {isNil(details?.totalParentAumUsd)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatToBillions(details.totalParentAumUsd, 2, true)}\r\n \r\n \r\n {isNil(details?.totalParentAumEur)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatToBillions(details.totalParentAumEur, 2, true)}\r\n \r\n \r\n {isNil(details?.leveragedLoanAumUsd)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatToBillions(details.leveragedLoanAumUsd, 2, true)}\r\n \r\n \r\n {isNil(details?.leveragedLoanAumEur)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatToBillions(details.leveragedLoanAumEur, 2, true)}\r\n \r\n \r\n {capitalize(formatUtils.formatBoolean(details?.ownEquity))}\r\n \r\n \r\n {capitalize(formatUtils.formatBoolean(details?.proprietaryAnalyticalTools))}\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {details?.investmentPhilosophy ? (\r\n \r\n ) : (\r\n constants.emptyPlaceholder\r\n )}\r\n \r\n \r\n {details?.investmentModel ? (\r\n \r\n ) : (\r\n constants.emptyPlaceholder\r\n )}\r\n \r\n
    \r\n \r\n \r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { CloManagersState } from '../../../../types/state/CloManagersState';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\nimport {\r\n getCloSystemInfrastructureNamesList,\r\n groupCloSystemInfrastructure,\r\n} from '../../../../utils/clo-managers.utils';\r\nimport { constants } from '../../../../constants';\r\nimport { CloSystemInfrastructuresTypes } from '../../../../types/clo-managers/CloSystemInfrastructures';\r\n\r\nexport const CloSystemInfrastructure = () => {\r\n const { selectedManager } = useSelector((state: AppState) => state.cloManagers);\r\n\r\n if (!selectedManager?.details) {\r\n return null;\r\n }\r\n\r\n const {\r\n details: { cloSystemInfrastructures },\r\n } = selectedManager;\r\n\r\n const cloSystemInfrastructuresValues = groupCloSystemInfrastructure(cloSystemInfrastructures);\r\n\r\n const cloValuationServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloValuationServices);\r\n const cloAnalyticsServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloAnalyticsServices);\r\n const cloPortfolioManagementServices = cloSystemInfrastructuresValues.get(\r\n CloSystemInfrastructuresTypes.CloPortfolioManagementServices,\r\n );\r\n const offshoreLegalServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.OffshoreLegalServices);\r\n const offshoreFundAdminServices = cloSystemInfrastructuresValues.get(\r\n CloSystemInfrastructuresTypes.OffshoreFundAdministrationServices,\r\n );\r\n const cloAccountingServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloAccountingServices);\r\n const secondaryCloPlatform = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.SecondaryCLOPlatforms);\r\n const cloDocsServices = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.CloDocsServices);\r\n const usCloLawFirms = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.USCLOLawFirms);\r\n const euCloLawFirms = cloSystemInfrastructuresValues.get(CloSystemInfrastructuresTypes.EuropeanCLOLawFirms);\r\n\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n \r\n {cloValuationServices?.length ? getCloSystemInfrastructureNamesList(cloValuationServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {cloAnalyticsServices?.length ? getCloSystemInfrastructureNamesList(cloAnalyticsServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {cloPortfolioManagementServices?.length ? getCloSystemInfrastructureNamesList(cloPortfolioManagementServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {offshoreLegalServices?.length ? getCloSystemInfrastructureNamesList(offshoreLegalServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {offshoreFundAdminServices?.length ? getCloSystemInfrastructureNamesList(offshoreFundAdminServices) : constants.emptyPlaceholder}\r\n \r\n
    \r\n
    \r\n \r\n {cloAccountingServices?.length ? getCloSystemInfrastructureNamesList(cloAccountingServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {secondaryCloPlatform?.length ? getCloSystemInfrastructureNamesList(secondaryCloPlatform) : constants.emptyPlaceholder}\r\n \r\n \r\n {cloDocsServices?.length ? getCloSystemInfrastructureNamesList(cloDocsServices) : constants.emptyPlaceholder}\r\n \r\n \r\n {usCloLawFirms?.length ? getCloSystemInfrastructureNamesList(usCloLawFirms) : constants.emptyPlaceholder}\r\n \r\n \r\n {euCloLawFirms?.length ? getCloSystemInfrastructureNamesList(euCloLawFirms) : constants.emptyPlaceholder}\r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import { ESGConsiderations } from './sections/ESGConsiderations';\r\nimport { ManagerPresentations } from './sections/ManagerPresentations';\r\nimport { KeyConsiderations } from './sections/KeyConsiderations';\r\nimport { ShowFor } from '../../access';\r\nimport { roles } from '../../../constants';\r\nimport { CloSystemInfrastructure } from './sections/CloSystemInrastructure';\r\n\r\nexport const AdditionalInformation = () => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { constants } from '../../../../constants'\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { CloManagerAnalytics } from '../../../../types/clo-managers/CloManagerAnalytics'\r\nimport { FormField } from '../../../amrPipeline/common/FormField'\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent'\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../access/BlockedFeatureText';\r\nimport { RequiredFeature } from '../../../access/RequiredFeature';\r\n\r\ninterface GeneralProps {\r\n data: CloManagerAnalytics;\r\n}\r\n\r\nexport const General = ({ data }: GeneralProps) => {\r\n return (\r\n \r\n
    \r\n \r\n {data.recentProfileViews || constants.emptyPlaceholder}\r\n \r\n \r\n \r\n

    See total profile views, deal views, presentation downloads

    \r\n \r\n \r\n }\r\n />\r\n }>\r\n \r\n {data.totalProfileViews || constants.emptyPlaceholder}\r\n \r\n \r\n {data.dealViews || constants.emptyPlaceholder}\r\n \r\n \r\n {data.presentationDownloads || constants.emptyPlaceholder}\r\n \r\n
    \r\n
    \r\n \r\n );\r\n}\r\n","import { pick, sum, values } from 'lodash';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent'\r\nimport { PercentageBar } from '../../../amrPipeline/detailed/new-issue/analytics/PercentageBar';\r\nimport { CloManagerAnalytics } from '../../../../types/clo-managers/CloManagerAnalytics';\r\nimport { RequiredFeature } from '../../../access/RequiredFeature';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../access/BlockedFeatureText';\r\n\r\ninterface ViewedTabsProps {\r\n data: CloManagerAnalytics;\r\n}\r\n\r\nexport const ViewedTabs = ({ data }: ViewedTabsProps) => {\r\n const totalViews = sum(values(pick(data, [\r\n 'viewedTabsOverview',\r\n 'viewedTabsDeals',\r\n 'viewedTabsCloTeam',\r\n 'viewedTabsAdditionalInformation'\r\n ])));\r\n\r\n return (\r\n \r\n \r\n
    \r\n \r\n \r\n

    See more tabs viewed by clients

    \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
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n","import { useCallback, useMemo } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../../types/state/AppState';\r\nimport { SubscriptionFeature } from '../../../../../types/billing/SubscriptionFeature';\r\nimport { AnalyticsWidget } from '../../../../amrPipeline/common/analytics/AnalyticsWidget';\r\nimport { CloManagerAnalyticsFilter } from '../../../../../types/analytics/AnalyticsFilter';\r\nimport { CloManagerAccessType } from '../../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { cloManagersActions } from '../../../../../actions/clo-managers.actions';\r\nimport { ChartRequiredFeature } from '../../../../access/ChartRequiredFeature';\r\nimport { BaseAnalyticsComponentProps, GetAction, withAnalyticsRequest } from '../../../../common/manager-analytics/withAnalyticsRequest';\r\nimport { ClientsActivityChart } from '../../../../common/manager-analytics/ClientsActivityChart';\r\n\r\nconst selector = (state: AppState) => state.cloManagers.analytics;\r\n\r\nconst getAction = (companyReferenceName: string, filter: CloManagerAnalyticsFilter) => {\r\n return cloManagersActions.clientsActivityRequest(\r\n companyReferenceName,\r\n filter.date.dateFrom || undefined,\r\n filter.date.dateTo || undefined,\r\n );\r\n};\r\n\r\nfunction ClientsActivityWidgetComponent({ companyReferenceName, isLoaded, users, accessTypes }: BaseAnalyticsComponentProps) {\r\n const dispatch = useDispatch();\r\n const state = useSelector(selector);\r\n\r\n const { clientsActivity } = state;\r\n const { filter, data } = clientsActivity;\r\n\r\n const handleFilterChange = useCallback((filter: CloManagerAnalyticsFilter) => {\r\n dispatch(cloManagersActions.clientsActivityFilterChange(filter));\r\n }, [dispatch]);\r\n\r\n const handleBarClick = useCallback((accessType: CloManagerAccessType, date: Date) => {\r\n dispatch(\r\n cloManagersActions.profileViewHistoryFilterByBar(\r\n companyReferenceName,\r\n accessType,\r\n date\r\n )\r\n );\r\n }, [dispatch, companyReferenceName]);\r\n\r\n const filteredClientsActivity = useMemo(() => data\r\n .filter(row => {\r\n if (filter.users.length && !filter.users.includes(row.userEmail)) {\r\n return false;\r\n }\r\n\r\n if (filter.tabs.length && !filter.tabs.some(x => x === row.accessType)) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }), [data, filter.users, filter.tabs]);\r\n\r\n const chart = useMemo(() => , [handleBarClick, filter, filteredClientsActivity]);\r\n\r\n return (\r\n \r\n \r\n {chart}\r\n \r\n \r\n );\r\n}\r\n\r\nexport const ClientsActivityWidget = withAnalyticsRequest(\r\n getAction as GetAction,\r\n selector,\r\n (state) => state.clientsActivity,\r\n)(ClientsActivityWidgetComponent);\r\n","export enum ProfileViewHistoryTabs {\r\n Overview,\r\n PresDownloaded,\r\n Contacts,\r\n}\r\n","import { constants } from \"../../../../../constants\";\r\nimport { CloManagerAccessType, CloManagerAccessTypes } from \"../../../../../types/amr-pipeline/enums/CloManagerAccessType\";\r\nimport { FormField } from \"../../../../amrPipeline/common/FormField\";\r\n\r\ninterface Props {\r\n views: Record;\r\n}\r\n\r\nexport function OverviewTab({ views }: Props) {\r\n return (\r\n \r\n {views &&\r\n CloManagerAccessTypes.map((type) => (\r\n
  • \r\n \r\n {type.text}\r\n \r\n {views[type.value]\r\n ? `${views[type.value]} view(s)`\r\n : constants.emptyPlaceholder}\r\n
  • \r\n ))}\r\n \r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n );\r\n}\r\n","import { constants } from \"../../../../../constants\";\r\nimport { CloManagerProfileView } from '../../../../../types/amr-pipeline/models/CloManagerSession';\r\nimport { FormField } from \"../../../../amrPipeline/common/FormField\";\r\nimport { OnHoverTooltip } from \"../../../../common\";\r\n\r\ninterface Props {\r\n userSession: CloManagerProfileView;\r\n}\r\n\r\nexport function ContactsTab({ userSession }: Props) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n {userSession.userEmail}\r\n \r\n \r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md data-item-row-email\"\r\n />\r\n \r\n \r\n );\r\n}\r\n","import { OriginatingTransactionDocument } from \"../../../../../types/amr-pipeline/models/OriginatingTransactionDocument\";\r\nimport { EmptyPlaceholder } from \"../../../../common\";\r\nimport { DownloadedDocument } from \"../../../../../types/amr-pipeline/models/AnalyticsSession\";\r\nimport DownloadDocument from \"../../../../amrPipeline/common/documents/DownloadDocument\";\r\nimport useDownloadDocumentList from \"../../../../../effects/useDownloadDocumentList\";\r\nimport { cloManagersService } from \"../../../../../services/clo-managers.service\";\r\nimport { useMemo } from \"react\";\r\nimport { getUniqueDocsWithDownloadsCount } from \"../../../../../utils/analytics.utils\";\r\n\r\ninterface Props {\r\n companyReferenceName: string;\r\n documents: DownloadedDocument[];\r\n}\r\n\r\nexport function PresDownloadedTab({ companyReferenceName, documents }: Props) {\r\n const uniqueDocuments = useMemo(() => getUniqueDocsWithDownloadsCount(documents), [documents]);\r\n\r\n const { loadHandler, loadingState } = useDownloadDocumentList({\r\n documents: uniqueDocuments,\r\n downloadRequest: (referenceName: string) =>\r\n cloManagersService.downloadManagerPresentationFile(companyReferenceName, referenceName),\r\n });\r\n\r\n const getDocumentDownloadLink = (document: DownloadedDocument) =>\r\n loadHandler(document.referenceName, document.name);\r\n\r\n if (!uniqueDocuments.length) {\r\n return ;\r\n }\r\n\r\n return (\r\n
      \r\n {uniqueDocuments.map(d => (\r\n
    • \r\n {d.isDeleted ? (\r\n d.name\r\n ) : (\r\n <>\r\n getDocumentDownloadLink(d)}\r\n isLoading={loadingState[d.referenceName]}\r\n loadingText\r\n secondary\r\n >\r\n {d.name}\r\n \r\n {d.downloadCount > 1 && !loadingState[d.referenceName] && ` — ${d.downloadCount} downloads`}\r\n \r\n )}\r\n
    • \r\n ))}\r\n
    \r\n );\r\n}\r\n","import { ProfileViewHistoryTabs } from \"./ProfileViewHistoryTabs\";\r\nimport { useState } from \"react\";\r\nimport { OverviewTab } from \"./OverviewTab\";\r\nimport { ContactsTab } from \"./ContactsTab\";\r\nimport { PresDownloadedTab } from \"./PresDownloadedTab\";\r\nimport { CloManagerProfileView } from '../../../../../types/amr-pipeline/models/CloManagerSession';\r\nimport { OnHoverTooltip } from \"../../../../common\";\r\nimport { dateTimeUtils } from \"../../../../../utils\";\r\nimport { Popover } from \"../../../../controls\";\r\nimport { TabItem, TabList } from \"../../../../bidding/common/tab-list\";\r\nimport { TabContent } from \"../../../../amrPipeline/common/tabs/TabContent\";\r\nimport { SubscriptionFeature } from \"../../../../../types/billing/SubscriptionFeature\";\r\nimport { RequiredFeature } from \"../../../../access/RequiredFeature\";\r\n\r\ninterface Props {\r\n userSession: CloManagerProfileView;\r\n children?: React.ReactNode;\r\n defaultTab?: ProfileViewHistoryTabs;\r\n companyReferenceName: string;\r\n}\r\n\r\nexport function ProfileViewHistoryPopover({\r\n userSession,\r\n children,\r\n defaultTab = ProfileViewHistoryTabs.Overview,\r\n companyReferenceName,\r\n}: Props) {\r\n const [activeTab, setActiveTab] = useState(defaultTab);\r\n const formattedActionDate = dateTimeUtils.utcToLocalString(\r\n userSession.accessDateTime\r\n );\r\n\r\n const PseudoLink = (\r\n \r\n {children || formattedActionDate}\r\n \r\n );\r\n\r\n const setDefaultTab = () => setActiveTab(defaultTab);\r\n\r\n const renderActiveTab = () => {\r\n switch (activeTab) {\r\n case ProfileViewHistoryTabs.PresDownloaded:\r\n return (\r\n \r\n );\r\n case ProfileViewHistoryTabs.Contacts:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n };\r\n\r\n return (\r\n (\r\n {children || formattedActionDate}\r\n )}\r\n >\r\n {userSession.userFullName}\r\n }\r\n actionButton={PseudoLink}\r\n onOpen={setDefaultTab}\r\n showCloseButton={true}\r\n >\r\n \r\n \r\n setActiveTab(ProfileViewHistoryTabs.Overview)\r\n }\r\n />\r\n \r\n setActiveTab(ProfileViewHistoryTabs.PresDownloaded)\r\n }\r\n />\r\n \r\n setActiveTab(ProfileViewHistoryTabs.Contacts)\r\n }\r\n />\r\n \r\n {renderActiveTab()}\r\n \r\n \r\n );\r\n}\r\n","import { constants, SORTING_TYPE } from '../../../../../constants';\r\nimport { ColumnBuilder } from '../../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../../../../bidding/common/table/types/ColumnDefinition';\r\nimport { CloManagerProfileView } from '../../../../../types/amr-pipeline/models/CloManagerSession';\r\nimport { ProportionBar } from '../../../../amrPipeline/ProportionBar';\r\nimport { CloManagerAccessTypes } from '../../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { dateTimeUtils } from '../../../../../utils';\r\nimport { OnHoverTooltip, Pluralize } from '../../../../common';\r\nimport FollowUp from '../../../../common/FollowUp';\r\nimport { ProfileViewHistoryPopover } from '../ProfileViewHistoryPopover/ProfileViewHistoryPopover';\r\nimport { ProfileViewHistoryTabs } from '../ProfileViewHistoryPopover/ProfileViewHistoryTabs';\r\n\r\nconst profileViewHistoryColumnsDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: 'profileViews',\r\n renderColumnHeaderContent: () => 'Profile Views',\r\n renderColumnContent: (userSession, { companyReferenceName }) => (\r\n \r\n {dateTimeUtils.utcToLocalString(userSession.accessDateTime)}\r\n \r\n ),\r\n sortingField: 'accessDateTime',\r\n className: 'data-list-cell-lg',\r\n sortingType: SORTING_TYPE.date,\r\n },\r\n {\r\n columnKey: 'tabsViewed',\r\n renderColumnHeaderContent: () => 'Tabs Viewed',\r\n renderColumnContent: profileSession => {\r\n const views = profileSession.views;\r\n\r\n return (\r\n ({\r\n title: t.text,\r\n value: views && profileSession.views[t.value],\r\n color: t.color\r\n }))}\r\n />\r\n );\r\n },\r\n className: 'data-list-cell-lg-02',\r\n },\r\n {\r\n columnKey: 'docsDownloadedSize',\r\n renderColumnHeaderContent: () => 'Presentation',\r\n renderColumnContent: (profileSession, { companyReferenceName }) => {\r\n const downloads = profileSession.documents.length;\r\n\r\n if (!downloads) {\r\n return constants.emptyPlaceholder;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n },\r\n },\r\n {\r\n columnKey: 'fullName',\r\n renderColumnHeaderContent: () => 'Full Name',\r\n renderColumnContent: (profileSession, { companyReferenceName }) => (\r\n \r\n {profileSession.userFullName}\r\n \r\n ),\r\n sortingField: 'userFullName',\r\n className: 'data-list-cell-xl',\r\n sortingType: SORTING_TYPE.string,\r\n },\r\n {\r\n columnKey: 'companyLegalName',\r\n renderColumnHeaderContent: () => 'Company',\r\n renderColumnContent: ({ companyLegalName }) => (\r\n \r\n {companyLegalName}\r\n \r\n ),\r\n sortingField: 'companyLegalName',\r\n className: 'data-list-cell-xl-xxl',\r\n sortingType: SORTING_TYPE.string,\r\n },\r\n {\r\n columnKey: 'follow-up',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: (profileSession) => ,\r\n className: 'data-list-cell-md-flexible',\r\n }\r\n];\r\n\r\nexport const profileViewHistoryColumns = () => profileViewHistoryColumnsDefinition.map(c => new ColumnBuilder(c));\r\n\r\n","import { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../../types/state/AppState';\r\nimport { CloManagerAnalyticsFilter } from '../../../../../types/analytics/AnalyticsFilter';\r\nimport { TreeSelectOption } from '../../../../controls/TreeSelect';\r\nimport { AnalyticsWidget } from '../../../../amrPipeline/common/analytics/AnalyticsWidget';\r\nimport { cloManagersActions } from '../../../../../actions/clo-managers.actions';\r\nimport { CloManagerAccessTypes } from '../../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { SubscriptionFeature } from '../../../../../types/billing/SubscriptionFeature';\r\nimport { ProfileViewHistoryTable } from '../../../../common/manager-analytics/ProfileViewHistoryTable';\r\nimport { profileViewHistoryColumns } from './profileViewHistory.columns';\r\nimport { GetAction, withAnalyticsRequest } from '../../../../common/manager-analytics/withAnalyticsRequest';\r\n\r\ninterface ProfileViewHistoryWidgetProps {\r\n companyReferenceName: string;\r\n isLoaded: boolean;\r\n users: TreeSelectOption[];\r\n}\r\n\r\nconst selector = (state: AppState) => state.cloManagers.analytics;\r\n\r\nconst getAction = (companyReferenceName: string, filter: CloManagerAnalyticsFilter) => {\r\n return cloManagersActions.profileViewHistoryRequest(\r\n companyReferenceName,\r\n filter.date.dateFrom || undefined,\r\n filter.date.dateTo || undefined,\r\n );\r\n};\r\n\r\nfunction ProfileViewHistoryWidgetComponent({ companyReferenceName, isLoaded, users }: ProfileViewHistoryWidgetProps) {\r\n const dispatch = useDispatch();\r\n const state = useSelector(selector);\r\n\r\n const { profileHistoryViews } = state;\r\n const { filter, data, numberOfHiddenItems } = profileHistoryViews;\r\n\r\n const handleFilterChange = (filter: CloManagerAnalyticsFilter) => {\r\n dispatch(cloManagersActions.profileViewHistoryFilterChange(filter));\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport const ProfileViewHistoryWidget = withAnalyticsRequest(\r\n getAction as GetAction,\r\n selector,\r\n (state) => state.profileHistoryViews,\r\n)(ProfileViewHistoryWidgetComponent);\r\n","import { AppState } from '../../../../types/state/AppState';\r\nimport { CloManagersState } from '../../../../types/state/CloManagersState';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { General } from './General';\r\nimport { ViewedTabs } from './ViewedTabs';\r\nimport { useContext, useEffect } from 'react';\r\nimport CloManagersContext from '../../cloManagersContext';\r\nimport { ClientsActivityWidget } from './clientsActivity/ClientsActivityWidget';\r\nimport { ProfileViewHistoryWidget } from './profileViewHistory/ProfileViewHistoryWidget';\r\nimport { cloManagersActions } from '../../../../actions/clo-managers.actions';\r\nimport { EmptyPlaceholder, Preloader } from '../../../common';\r\nimport { TransactionViewHistoryWidget } from '../../../common/manager-analytics/transactionViewHistory/TransactionViewHistoryWidget';\r\nimport { DownloadedPresentationsWidget } from '../../../common/manager-analytics/downloadedPresentations/DownloadedPresentationsWidget';\r\nimport { CloManagerAccessTypes } from '../../../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { SubscriptionFeature } from '../../../../types/billing/SubscriptionFeature';\r\n\r\nexport const Analytics = () => {\r\n const dispatch = useDispatch();\r\n const { hasAnalyticsAccess } = useContext(CloManagersContext);\r\n const { analytics: { general, isLoading, profileHistoryViews }, selectedManager } = useSelector((state: AppState) => state.cloManagers);\r\n\r\n useEffect(() => {\r\n if (!selectedManager?.referenceName) {\r\n return;\r\n }\r\n\r\n dispatch(cloManagersActions.analyticsInit(selectedManager.referenceName));\r\n\r\n return () => {\r\n dispatch(cloManagersActions.analyticsReset());\r\n };\r\n }, [selectedManager?.referenceName, dispatch]);\r\n\r\n if (isLoading) {\r\n return ;\r\n }\r\n\r\n if (!general || !selectedManager || !hasAnalyticsAccess) {\r\n return null;\r\n }\r\n\r\n const isAnalyticsEmpty =\r\n !general.dealViews\r\n && !general.presentationDownloads\r\n && !general.totalProfileViews\r\n && !general.transactionViewHistory.items.length\r\n // Also check these in case user has no access to CLO Managers prouct\r\n && !profileHistoryViews.data.length\r\n && !general.recentProfileViews\r\n && !general.viewedTabsOverview;\r\n\r\n if (isAnalyticsEmpty) {\r\n return ;\r\n }\r\n\r\n return (\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 \r\n
    \r\n );\r\n}\r\n","import { useContext, useEffect, useMemo, useRef } from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport cn from 'classnames';\r\nimport { routes } from \"../../constants\";\r\nimport { AppState } from \"../../types/state/AppState\";\r\nimport { useHistory, useParams } from \"react-router\";\r\nimport Header from './Header';\r\nimport { CloManagerTabTypes, CloManagersTabType } from '../../types/clo-managers/CloManagersTabType';\r\nimport { cloManagersActions } from '../../actions/clo-managers.actions';\r\nimport { CloManagersEdit } from './CloManagersEdit';\r\nimport { Formik } from 'formik';\r\nimport { gridActions } from '../../actions';\r\nimport { CloManagerValidationSchema } from './CloManagerValidationSchema';\r\nimport { CloManager } from '../../types/clo-managers/CloManager';\r\nimport { TabList, TabItem } from '../bidding/common/tab-list';\r\nimport { TabContent } from '../amrPipeline/common/tabs/TabContent';\r\nimport { Overview } from './tabs/overview/Overview';\r\nimport { Deals } from './tabs/deals/Deals';\r\nimport { CloTeam } from './tabs/cloTeam/CloTeam';\r\nimport { AdditionalInformation } from './tabs/AdditionalInformation';\r\nimport { Preloader } from '../common';\r\nimport { TabBody } from '../amrPipeline/common/tabs/TabBody';\r\nimport { CloManagerAccessType } from '../../types/amr-pipeline/enums/CloManagerAccessType';\r\nimport { CloManagerSaveForm } from \"../../types/clo-managers/CloManagerSaveForm\";\r\nimport { Analytics } from './tabs/analytics/Analytics';\r\nimport CloManagersContext from './cloManagersContext';\r\nimport { useAppDispatch } from \"../../effects/useAppDispatch\";\r\n\r\nconst EditTab = 'edit';\r\n\r\ninterface CLOManagerRouteParams {\r\n referenceName: string;\r\n tab?: CloManagersTabType | typeof EditTab;\r\n}\r\n\r\ninterface CloManagersDetailedProps {\r\n selectedManager: CloManager;\r\n}\r\n\r\nconst TabTypeToAccessType = {\r\n [CloManagersTabType.AdditionalInformation]: CloManagerAccessType.AdditionalInformationTab,\r\n [CloManagersTabType.CloTeam]: CloManagerAccessType.CloTeamTab,\r\n [CloManagersTabType.Deals]: CloManagerAccessType.DealTab,\r\n [CloManagersTabType.Overview]: CloManagerAccessType.OverviewTab,\r\n};\r\n\r\nexport const CloManagersDetails = ({ selectedManager }: CloManagersDetailedProps) => {\r\n const { hasAnalyticsAccess } = useContext(CloManagersContext);\r\n const { referenceName, tab } = useParams();\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const submitHandler = useRef<() => Promise>();\r\n\r\n const isLoading = useSelector((state: AppState) => state.cloManagers.isLoading);\r\n const editManager = useSelector((state: AppState) => state.cloManagers.editManager);\r\n\r\n const selectedTab = tab || CloManagersTabType.Overview;\r\n\r\n useEffect(() => {\r\n // This is to prevent double logging, when switching between\r\n // managers and selected tab is not Overview\r\n if (selectedManager.referenceName !== referenceName) {\r\n return;\r\n }\r\n\r\n if (selectedTab === EditTab || selectedTab === CloManagersTabType.Analytics) {\r\n return;\r\n }\r\n\r\n dispatch(cloManagersActions.logUserActivity(selectedManager.referenceName, TabTypeToAccessType[selectedTab]));\r\n }, [dispatch, referenceName, selectedManager.referenceName, selectedTab]);\r\n\r\n const accessibleTabs = useMemo(() => CloManagerTabTypes.filter(tabType =>\r\n tabType.value === CloManagersTabType.Analytics ? hasAnalyticsAccess : true\r\n ), [hasAnalyticsAccess]);\r\n\r\n const renderActiveTab = () => {\r\n switch (tab) {\r\n case CloManagersTabType.Deals:\r\n return ;\r\n case CloManagersTabType.CloTeam:\r\n return ;\r\n case CloManagersTabType.AdditionalInformation:\r\n return ;\r\n case CloManagersTabType.Analytics:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n };\r\n\r\n const handleTabChange = (tab: CloManagersTabType) => {\r\n return history.replace(routes.manageCloManagerUrl(referenceName, tab));\r\n };\r\n\r\n const handleEdit = () => {\r\n return history.replace(routes.manageCloManagerUrl(referenceName, EditTab));\r\n };\r\n\r\n const handleCancel = () => {\r\n return history.replace(routes.manageCloManagerUrl(referenceName, CloManagersTabType.Overview));\r\n };\r\n\r\n const handleSave = () => {\r\n if (submitHandler.current) {\r\n submitHandler.current();\r\n }\r\n };\r\n\r\n const handleSubmit = (cloManagerForm: CloManagerSaveForm) => {\r\n const { isUSASelected, ...cloManager} = cloManagerForm;\r\n\r\n dispatch(gridActions.validate());\r\n dispatch(cloManagersActions.createOrUpdateCloManager(referenceName, cloManager));\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {selectedTab === EditTab && editManager &&\r\n \r\n submitHandler.current = handler}\r\n />\r\n \r\n }\r\n {selectedTab !== EditTab &&\r\n <>\r\n \r\n {accessibleTabs.map(({ value, text }) => (\r\n handleTabChange(value)}\r\n />\r\n ))}\r\n \r\n \r\n \r\n {isLoading ? : renderActiveTab()}\r\n \r\n \r\n \r\n }\r\n \r\n );\r\n};\r\n","import { useState, useEffect } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport {\r\n alertOptionTooltipText,\r\n alertOptions,\r\n analyticAlertOptions,\r\n secondaryStatsAlertOptions,\r\n} from '../../constants/amr-pipeline/alertOptions';\r\nimport { AlertOption } from '../../types/email-preferences/EmailPreferences';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { CompanyAlertsConfig, SecondaryStatsAlertsConfig } from '../../types/user-config/UserConfig';\r\nimport { Preloader } from '../common';\r\nimport { Popup, PopupBody, PopupFooter } from '../controls';\r\nimport { CloManager } from '../../types/clo-managers/CloManager';\r\nimport { EmailPreferencesRadioGroup } from '../profile/tabs/email-preferences/tabs/EmailPreferencesRadioGroup';\r\nimport { UserConfigType } from '../../types/user-config/UserConfigType';\r\nimport { imUserConfigActions } from '../../actions';\r\nimport { Link } from 'react-router-dom';\r\nimport { routes } from '../../constants';\r\nimport { EmailPreferencesTab } from '../profile/tabs/email-preferences/EmailPreferencesContent';\r\nimport { alertDescriptions } from '../../constants/cloManagers/alertDescriptions';\r\nimport { isCollateralManagersOwnCompany } from '../../utils/amr-pipeline.utils';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { user } from '../../user';\r\n\r\ninterface Props {\r\n selectedManager: CloManager;\r\n onClose: () => void;\r\n}\r\n\r\nexport const CloManagerAlertsPopup = ({ selectedManager, onClose }: Props) => {\r\n const dispatch = useDispatch();\r\n const userCompany = useSelector((state: AppState) => state.issuanceMonitor.amrPipelineCommon.userCompany);\r\n\r\n const isSellerCollateralManager = isCollateralManagersOwnCompany(selectedManager, userCompany);\r\n\r\n const { isUpdating: isUserConfigUpdating, isDeleting: isUserConfigDeleting } = useSelector(\r\n (state: AppState) => state.imUserConfig,\r\n );\r\n\r\n const cloManagerAnalyticsConfig = useSelector(\r\n (state: AppState) => state.imUserConfig.cloManagerAnalyticsAlert,\r\n ).value.find(c => c.companyReferenceName === selectedManager?.referenceName);\r\n\r\n const cloManagerImConfig = useSelector(\r\n (state: AppState) => state.imUserConfig.cloManagerIssuanceMonitorAlert,\r\n ).value.find(c => c.companyReferenceName === selectedManager?.referenceName);\r\n\r\n const cloManagerApConfig = useSelector(\r\n (state: AppState) => state.imUserConfig.cloManagerArrangerPipelineAlert,\r\n ).value.find(c => c.companyReferenceName === selectedManager?.referenceName);\r\n\r\n const cloManagerBwicConfig = useSelector(\r\n (state: AppState) => state.imUserConfig.cloManagerBwicAlert,\r\n ).value.find(c => c.companyReferenceName === selectedManager?.referenceName);\r\n\r\n const cloManagerDealerInventoryConfig = useSelector(\r\n (state: AppState) => state.imUserConfig.cloManagerDealerInventoryAlert,\r\n ).value.find(c => c.companyReferenceName === selectedManager?.referenceName);\r\n\r\n const [editCloManagerAnalyticsConfig, setEditCloManagerAnalyticsConfig] = useState(cloManagerAnalyticsConfig);\r\n const [editCloManagerImConfig, setEditCloManagerImConfig] = useState(cloManagerImConfig);\r\n const [editCloManagerApConfig, setEditCloManagerApConfig] = useState(cloManagerApConfig);\r\n const [editCloManagerBwicConfig, setEditCloManagerBwicConfig] = useState(cloManagerBwicConfig);\r\n const [editCloManagerDiConfig, setEditCloManagerDiConfig] = useState(cloManagerDealerInventoryConfig);\r\n\r\n const cloManagerAnalyticsAlert = cloManagerAnalyticsConfig?.alertOption || AlertOption.Never;\r\n const cloManagerImAlert = cloManagerImConfig?.alertOption || AlertOption.Never;\r\n const cloManagerApAlert = cloManagerApConfig?.alertOption || AlertOption.Never;\r\n const cloManagerBwicAlert = cloManagerBwicConfig?.alertOption || AlertOption.Never;\r\n const cloManagerDiAlert = cloManagerDealerInventoryConfig?.alertOption || AlertOption.Never;\r\n\r\n const selectedCloManagerAnalyticsAlert = editCloManagerAnalyticsConfig?.alertOption || AlertOption.Never;\r\n const selectedCloManagerImAlert = editCloManagerImConfig?.alertOption || AlertOption.Never;\r\n const selectedCloManagerApAlert = editCloManagerApConfig?.alertOption || AlertOption.Never;\r\n const selectedCloManagerBwicAlert = editCloManagerBwicConfig?.alertOption || AlertOption.Never;\r\n const selectedCloManagerDiAlert = editCloManagerDiConfig?.alertOption || AlertOption.Never;\r\n\r\n const isAlertsInProgress = isUserConfigUpdating || isUserConfigDeleting;\r\n const isInitialAlertsState =\r\n cloManagerAnalyticsAlert === selectedCloManagerAnalyticsAlert &&\r\n cloManagerImAlert === selectedCloManagerImAlert &&\r\n cloManagerApAlert === selectedCloManagerApAlert &&\r\n cloManagerBwicAlert === selectedCloManagerBwicAlert &&\r\n cloManagerDiAlert === selectedCloManagerDiAlert;\r\n const isSaveDisabled = isInitialAlertsState || isAlertsInProgress;\r\n\r\n const [saving, setSaving] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!isAlertsInProgress && saving) {\r\n onClose();\r\n setSaving(false);\r\n }\r\n }, [isAlertsInProgress, saving, onClose]);\r\n\r\n useEffect(() => {\r\n setEditCloManagerAnalyticsConfig(cloManagerAnalyticsConfig);\r\n setEditCloManagerImConfig(cloManagerImConfig);\r\n setEditCloManagerApConfig(cloManagerApConfig);\r\n setEditCloManagerBwicConfig(cloManagerBwicConfig);\r\n setEditCloManagerDiConfig(cloManagerDealerInventoryConfig);\r\n }, [\r\n cloManagerAnalyticsConfig,\r\n cloManagerImConfig,\r\n cloManagerApConfig,\r\n cloManagerBwicConfig,\r\n cloManagerDealerInventoryConfig,\r\n ]);\r\n\r\n const handleSave = () => {\r\n setSaving(true);\r\n\r\n const configs = [\r\n ...(isSellerCollateralManager && editCloManagerAnalyticsConfig && user.hasAllFeatures(SubscriptionFeature.ManagerProfileManagerRelatedAlerts)\r\n ? [{ type: UserConfigType.cloManagerAnalyticsAlert, value: editCloManagerAnalyticsConfig }]\r\n : []),\r\n ...(editCloManagerApConfig && user.hasAllFeatures(SubscriptionFeature.ManagerProfileManagerRelatedAlerts, SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts)\r\n ? [{ type: UserConfigType.cloManagerArrangerPipelineAlert, value: editCloManagerApConfig }]\r\n : []),\r\n ...(editCloManagerImConfig && user.hasAllFeatures(SubscriptionFeature.ManagerProfileManagerRelatedAlerts, SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts)\r\n ? [{ type: UserConfigType.cloManagerIssuanceMonitorAlert, value: editCloManagerImConfig }]\r\n : []),\r\n ...(editCloManagerBwicConfig && user.hasAllFeatures(SubscriptionFeature.BwicMonitorAlerts)\r\n ? [{ type: UserConfigType.cloManagerBwicAlert, value: editCloManagerBwicConfig }]\r\n : []),\r\n ...(editCloManagerDiConfig && user.hasAllFeatures(SubscriptionFeature.BwicMonitorAlerts)\r\n ? [{ type: UserConfigType.cloManagerDealerInventoryAlert, value: editCloManagerDiConfig }]\r\n : []),\r\n ];\r\n\r\n dispatch(imUserConfigActions.saveCompanyAlerts(configs));\r\n };\r\n\r\n const renderAlertSection = (\r\n groupNameIndentifier: string,\r\n title: string,\r\n alertOptions: AlertOption[],\r\n selectedOption: AlertOption,\r\n onChange: (a: AlertOption) => void,\r\n description: string,\r\n requiredFeatures?: SubscriptionFeature[],\r\n alertOptionInfo?: { [key: string]: string },\r\n ) => (\r\n
    \r\n \r\n
    \r\n );\r\n\r\n return (\r\n \r\n Manager Alerts\r\n {selectedManager.legalName}\r\n \r\n }\r\n onClose={onClose}\r\n modalClass=\"modal-email-preferences\"\r\n >\r\n \r\n {isSellerCollateralManager &&\r\n renderAlertSection(\r\n 'analytics',\r\n 'Analytics',\r\n analyticAlertOptions,\r\n selectedCloManagerAnalyticsAlert,\r\n a =>\r\n setEditCloManagerAnalyticsConfig({\r\n ...editCloManagerAnalyticsConfig!,\r\n companyReferenceName: selectedManager.referenceName,\r\n alertOption: (a as AlertOption.Daily) || AlertOption.Never,\r\n }),\r\n alertDescriptions.analytics,\r\n [SubscriptionFeature.ManagerProfileManagerRelatedAlerts],\r\n {\r\n [AlertOption.Daily]: 'Alerts are sent at 5 AM EST every business day excluding holidays',\r\n },\r\n )}\r\n {renderAlertSection(\r\n 'clo-manager-ap',\r\n 'Arranger Pipeline',\r\n alertOptions,\r\n selectedCloManagerApAlert,\r\n a =>\r\n setEditCloManagerApConfig({\r\n ...editCloManagerApConfig!,\r\n companyReferenceName: selectedManager.referenceName,\r\n alertOption: (a as AlertOption.Daily) || AlertOption.Never,\r\n }),\r\n alertDescriptions.arrangersPipeline,\r\n [SubscriptionFeature.ManagerProfileManagerRelatedAlerts, SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts],\r\n {\r\n [AlertOption.Daily]: alertOptionTooltipText.Daily,\r\n [AlertOption.Instant]:\r\n 'Alerts are sent once manager’s upcoming transactions are published on Arranger Pipeline',\r\n },\r\n )}\r\n {renderAlertSection(\r\n 'clo-manager-im',\r\n 'Issuance Monitor',\r\n alertOptions,\r\n selectedCloManagerImAlert,\r\n a =>\r\n setEditCloManagerImConfig({\r\n ...editCloManagerImConfig!,\r\n companyReferenceName: selectedManager.referenceName,\r\n alertOption: (a as AlertOption.Daily) || AlertOption.Never,\r\n }),\r\n alertDescriptions.issuanceMonitor,\r\n [SubscriptionFeature.ManagerProfileManagerRelatedAlerts, SubscriptionFeature.IssuanceMonitorFiltersEmailAlerts],\r\n {\r\n [AlertOption.Daily]:\r\n 'Alerts are sent at 5 PM EST every business day excluding holidays if manager’s transactions are published or updated',\r\n [AlertOption.Instant]: 'Alerts are sent once manager’s transactions are published or updated',\r\n },\r\n )}\r\n {renderAlertSection(\r\n 'clo-manager-bwic',\r\n 'BWIC',\r\n secondaryStatsAlertOptions,\r\n selectedCloManagerBwicAlert,\r\n a =>\r\n setEditCloManagerBwicConfig({\r\n ...editCloManagerBwicConfig!,\r\n companyReferenceName: selectedManager.referenceName,\r\n alertOption: (a as AlertOption.Instant) || AlertOption.Never,\r\n }),\r\n alertDescriptions.bwic,\r\n [SubscriptionFeature.BwicMonitorAlerts],\r\n {\r\n [AlertOption.Instant]:\r\n \"Alerts are sent once the BWIC is posted/Post-BWIC color is added on manager's security.\",\r\n },\r\n )}\r\n {renderAlertSection(\r\n 'clo-manager-dealer-inventory',\r\n 'Dealer Inventory',\r\n secondaryStatsAlertOptions,\r\n selectedCloManagerDiAlert,\r\n a =>\r\n setEditCloManagerDiConfig({\r\n ...editCloManagerDiConfig!,\r\n companyReferenceName: selectedManager.referenceName,\r\n alertOption: (a as AlertOption.Instant) || AlertOption.Never,\r\n }),\r\n alertDescriptions.dealerInventory,\r\n [SubscriptionFeature.BwicMonitorAlerts],\r\n {\r\n [AlertOption.Instant]:\r\n \"Alerts are sent once manager's security was added/updated/marked as traded on the Dealer Inventory.\",\r\n },\r\n )}\r\n \r\n \r\n \r\n Manage Alerts\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useCallback, useEffect } from \"react\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport { head, isNil } from \"lodash\";\r\nimport { Preloader } from \"../common\";\r\nimport { routes } from \"../../constants\";\r\nimport { AppState } from \"../../types/state/AppState\";\r\nimport { Redirect, useHistory, useParams } from \"react-router\";\r\nimport { CloManagersTabType } from '../../types/clo-managers/CloManagersTabType';\r\nimport { CloManagersSelectionPanel } from './CloManagersSelectionPanel';\r\nimport { cloManagersActions } from '../../actions/clo-managers.actions';\r\nimport CloManagersContext from './cloManagersContext';\r\nimport { canEditCloManager, hasCloManagerAnalyticsAccess, isCollateralManagersOwnCompany } from '../../utils/amr-pipeline.utils';\r\nimport { CloManagersDetails } from './CloManagersDetails';\r\nimport { user } from '../../user';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { imUserConfigActions } from \"../../actions\";\r\nimport { CloManagerAlertsPopup } from \"./CloManagerAlertsPopup\";\r\n\r\nconst EditTab = 'edit';\r\n\r\nexport interface CLOManagerRouteParams {\r\n referenceName: string;\r\n tab?: CloManagersTabType | typeof EditTab;\r\n}\r\n\r\nexport const CloManagers = () => {\r\n const { referenceName, tab } = useParams();\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n\r\n const {\r\n isLoading,\r\n isDetailsLoading,\r\n data,\r\n selectedManager,\r\n managerReferenceNameForAlert\r\n } = useSelector((state: AppState) => state.cloManagers);\r\n const userCompany = useSelector((state: AppState) => state.issuanceMonitor.amrPipelineCommon.userCompany);\r\n\r\n const managerForAlerts = managerReferenceNameForAlert ? data?.find(m => m.referenceName === managerReferenceNameForAlert) : null;\r\n\r\n const isUserCompany = selectedManager?.isUserCompany;\r\n const managersLoaded = !isNil(data);\r\n const contextValue = {\r\n canEdit: canEditCloManager(selectedManager, userCompany),\r\n canNavigateToIM: user.hasFeatures(SubscriptionFeature.IssuanceMonitorFullAccess),\r\n ownCollateralManagersCompany: isCollateralManagersOwnCompany(selectedManager, userCompany),\r\n ownCompany: selectedManager?.referenceName === userCompany?.referenceName,\r\n hasAnalyticsAccess: hasCloManagerAnalyticsAccess(!!isUserCompany),\r\n };\r\n\r\n const navigateToFirstManager = useCallback((tab: CloManagersTabType) => {\r\n const firstManager = head(data);\r\n\r\n if (firstManager) {\r\n history.replace(routes.manageCloManagerUrl(firstManager.referenceName, tab || CloManagersTabType.Overview));\r\n }\r\n }, [history, data]);\r\n\r\n useEffect(() => {\r\n if (data) {\r\n return;\r\n }\r\n\r\n dispatch(cloManagersActions.getCloManagers(userCompany?.referenceName));\r\n }, [dispatch, data, userCompany?.referenceName]);\r\n\r\n useEffect(() => {\r\n if (!referenceName || !managersLoaded) {\r\n return;\r\n }\r\n\r\n dispatch(cloManagersActions.getCloManager(referenceName));\r\n }, [dispatch, referenceName, managersLoaded]);\r\n\r\n useEffect(() => {\r\n if (referenceName || selectedManager) {\r\n return;\r\n }\r\n\r\n navigateToFirstManager(tab as CloManagersTabType);\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [data, referenceName, history, selectedManager]);\r\n\r\n useEffect(() => {\r\n if (!tab && referenceName) {\r\n history.replace(routes.manageCloManagerUrl(referenceName, CloManagersTabType.Overview));\r\n }\r\n\r\n if (!tab && !referenceName && data) {\r\n navigateToFirstManager(CloManagersTabType.Overview);\r\n }\r\n }, [history, tab, referenceName, data, navigateToFirstManager]);\r\n\r\n useEffect(() => {\r\n dispatch(imUserConfigActions.getUserConfig());\r\n\r\n return () => {\r\n dispatch(cloManagersActions.reset());\r\n };\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n if (selectedManager?.legalName) {\r\n document.title = `${selectedManager?.legalName} - KTX ATS Platform`;\r\n }\r\n },[selectedManager?.legalName, tab]);\r\n\r\n const handleViewCloManager = (referenceName: string) => {\r\n history.replace(routes.manageCloManagerUrl(referenceName, CloManagersTabType.Overview));\r\n };\r\n\r\n const handleFavoriteClick = (referenceName: string, favorite: boolean) => {\r\n dispatch(cloManagersActions.switchFavoriteRequest(referenceName, favorite));\r\n };\r\n\r\n if (!data && !isLoading) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n {selectedManager && }\r\n \r\n
    \r\n
    \r\n
    \r\n {managerForAlerts && dispatch(cloManagersActions.setManagerForAlertPopup(undefined))} />}\r\n
    \r\n
    \r\n );\r\n};\r\n"],"names":["TradingProtocol","_ref","isDirectBidding","isAllToAll","infoTooltipVisible","text","tooltip","_jsxs","_Fragment","children","_jsx","InfoTooltip","Sortable","list","dragOverClassName","onChange","_useState","useState","_useState2","_slicedToArray","internalList","setInternalList","_useState3","_useState4","dragging","setDragging","transformToInternal","map","item","nodeIndex","useEffect","lastAppliedList","current","dragItem","useRef","dragItemNode","handleDragEnd","e","preventDefault","undefined","removeEventListener","newList","_ref2","draggable","_objectWithoutProperties","_excluded","getStyles","itemIndex","wrapChild","child","React","props","onDragOver","onDragStart","target","addEventListener","setTimeout","handletDragStart","onDragEnter","targetIndex","oldList","results","slice","firstItem","handleDragEnter","className","toArray","FormControlLoader","inProgress","Preloader","fullScreen","small","TotalStatisticsItem","count","constants","emptyPlaceholder","DragFileZone","onFile","onFiles","onDragLeave","_ref$className","dragEnterCount","onDrop","dataTransfer","files","TooltipTriggerType","TooltipPlacement","adjustmentMap","_adjustmentMap","_defineProperty","Top","x","BottomRight","y","TopLeft","TopRight","BottomLeft","Bottom","Left","Right","CenterTop","CenterBottom","CenterRight","CenterLeft","defaultCoords","Tooltip","overlay","placement","disabled","indent","overlayClassName","delay","trigger","_ref$hideOnAnyAction","hideOnAnyAction","onVisibleChange","timeout","childrenRef","overlayWrapperRef","visible","setVisible","coordinates","setCoordinates","_useState5","_useState6","placementClassName","setPlacementClassName","showTooltip","timeDelay","Click","handleSetCoordinates","hideTooltip","useCallback","onMouseWheel","a","_overlayWrapperRef$cu","contains","window","_childrenRef$current","overlayWidth","arguments","length","overlayHeight","adjustmentIteration","adjusted","_adjusted","margin","element","result","t","r","b","l","styles","getComputedStyle","Number","getPropertyValue","replace","getMargin","_childrenRef$current$","getBoundingClientRect","width","left","top","bottom","clientWith","document","documentElement","clientWidth","scrollLeft","clientHeight","scrollTop","targetLeft","targetTop","coords","maxCountOfSideAdjust","overlayCallback","node","_node$getBoundingClie","height","handleMouseEnter","Hover","handleMouseLeave","clearTimeout","handleClick","handleClickOutside","_overlayWrapperRef$cu2","childrenWithProps","ref","onMouseEnter","onMouseLeave","onClick","ClickOutside","style","position","concat","cn","createPortal","body","renderOverlay","defaultProps","StatisticsItem","label","redirectRequiredFeatures","showLink","onLinkClick","redirectButton","IconSVG","name","OnHoverTooltip","ActionBlocker","requireAllFeatures","features","renderRedirectButton","InfiniteScrollLoader","isNextPageRequesting","RejectReasonPopup","_ref$title","title","textareaPlaceholder","comfirmButtonText","onReject","onClose","dispatch","useDispatch","rejectReason","setRejectReason","formsActions","reset","handleRejectReasonCustomValidate","reason","nonWhitespace","test","Popup","renderTitle","modalClass","renderInBody","Form","onSubmit","onCustomValidate","PopupBody","FormFieldLabel","required","maxLength","value","placeholder","ValidationMessage","for","PopupFooter","type","trim","stopPropagation","AlertsButton","isSelected","IntroCarousel","_Component","_classCallCheck","_callSuper","_inherits","_createClass","key","carouselItem","introCarousel","i","img","newFeature","src","alt","j","Slider","_objectSpread","arrows","dots","infinite","autoplay","autoplaySpeed","slidesToShow","slidesToScroll","Component","FlexRow","LazyLoad","_ref$disabled","_ref$enabledUnloading","enabledUnloading","_React$useState","_React$useState2","inViewport","setInViewport","targetRef","observer","IntersectionObserver","entries","entry","isIntersecting","intersectionRatio","intersected","disconnect","observe","MyBwicIcon","_user$current","bwic","user","isClearingBank","isMy","isParticipant","PxTalkNormalizationTable","colSpan","UploadFileButton","buttonText","acceptedFormats","fileInputRef","accept","join","hidden","file","classNames","click","Badge","classes","wrapperClass","PxTalkRow","_this","_len","args","Array","_key","state","changed","render","_this$props","index","pxTalk","company","error","talk","autoComplete","handleTalkChange","onBlur","handleTalkBlur","normalizedLevel","ButtonSwitch","sourceItems","pxTalkLevelTypes","price","DM","selectedValue","levelType","onSelectionChange","actions","levelTypeChange","id","deletePxTalk","_this$props2","setState","talkChange","_this$props3","normalizeTalk","connectedPxTalkRow","connect","ChangePxTalk","saveButtonText","onSave","onCancel","useAppDispatch","useSelector","s","changePxTalk","existingPriceTalks","pxTalks","ticker","bwicReferenceName","positionId","hasEmptyCompany","some","p","pxTalksState","usePriceTalks","brokerDealersState","useBrokerDealers","validationSchema","yup","shape","companyName","errorMessages","invalidValue","items","filter","c","n","localeCompare","String","sensitivity","handleCancel","stringUtils","isNullOrEmpty","isRequesting","requestState","Formik","initialValues","validateOnBlur","values","formHelpers","find","add","setFieldValue","setTouched","errors","touched","AutoCompleteInput","isInvalid","FormError","message","waitNormalizing","AumStatisticsItem","formatUtils","formatToBillions","PxTalkListButton","requiredFeature","activePositionId","store","pxTalkList","pxTalkRangeText","formatPxTalk","ValueBlocker","feature","FeatureButton","pxTalkListActions","hide","show","SearchInput","_ref$onClear","onClear","_ref$placeholder","_ref$maxLengthValue","maxLengthValue","_ref$small","refInput","currentValue","setCurrentValue","inputFocus","setInputFocus","changedValue","onFocus","focus","overlayText","_ref$inProgress","_ref$text","_ref$fullScreen","_ref$textOnly","textOnly","renderLoaderBox","loaderImage","renderText","content","renderFullScreen","isIE","viewBox","preserveAspectRatio","cx","cy","stroke","fill","SortDropdown","DropDownList","Color","color","traded","formatColor","LiveBiddingTooltipContent","Direction","HorizontalSlider","itemsPerView","activeItemIndex","lastDirection","setLastDirection","lastIndexToScroll","setLastIndexToScroll","lastActiveIndex","setLastActiveIndex","scrollContainer","_getRangeOfView","from","sort","getRangeOfView","_getRangeOfView2","to","handleSlide","direction","proceedItems","intendedIndexToScroll","handleSlideTo","_scrollContainer$curr","indexToScroll","scrollIntoView","behavior","leftArrowClassNames","rightArrowClassNames","BLOOMBERG_FUNCTIONS","BloombergLink","identifiers","identifier","placeholderIfEmpty","secondaryPlaceholderColor","_ref$textLink","textLink","blockedFromOutside","useContext","BlockedFeatureContext","identifierForLink","ticker144A","tickerAccdInvCertif","tickerRegS","getBloombergIdentifier","handleVisibilityChange","getMenuItems","functionName","link","ContextMenuItem","logger","trace","open","SubscriptionFeature","IntegrationsBloomberg","blocked","DailyTradingLimitDialog","agreement","valueLabel","amountToMM","dailyTradingLimit","agreementStatus","popupVisible","setPopupVisible","total","useTotalDailyTradingLimit","handleClosePopup","SettlementAgreementStatus","confirmed","Boolean","moneyUtils","money","SettlementAgentDailyTraidingLimit","EmptyPlaceholder","_ref$children","_ref$textView","textView","_ref$textViewRow","textViewRow","onResetClick","INITIAL_INPUT_WIDTH","MIN_INPUT_WIDTH","INPUT_INDENT","EmailChipList","_ref$allowInvalid","allowInvalid","_ref$withClearAll","withClearAll","_ref$defaultItems","defaultItems","refInterval","refInvalidEmailInput","refInvalidEmailSpan","setItems","selectedItem","setSelectedItem","setValue","_useState7","_useState8","inputBgOpacity","setInputBgOpacity","_useState9","_useState10","inputWidth","setInputWidth","displayClearAll","isValidEmail","validateEmail","clearInterval","resetInputWidth","_refInvalidEmailInput","el","isEditing","Math","max","scrollWidth","setFocus","addItem","_toConsumableArray","toLowerCase","removeItem","addToChipList","setInterval","opacity","switchEditMode","handleEditClick","_refInvalidEmailInput2","_refInvalidEmailSpan$","isValid","Chip","selected","onDelete","handleDeleteItem","offsetWidth","prevValues","handleEdit","onKeyDown","handleEditKeydown","onDoubleClick","rows","split","added","search","email","isNavEnabled","selectionStart","selectionEnd","FavoriteButton","companyId","_ref$hideWhenNotFavor","hideWhenNotFavorite","isFavorite","favoriteBrokerDealers","favorites","isUpdatingFavorite","RoleActionBlocker","roles","SellerTrader","favoriteBrokerDealersActions","updateFavoriteBrokerDealerRequest","handleToggleFavorite","UserStatusDetails","_userStatuses$getBySt","_userStatuses$getBySt2","_userStatuses$getBySt3","blockReason","status","hasBlockedReason","UserStatus","Blocked","statusClasses","userStatuses","getByStatusCode","Popover","actionButton","CopyToClipboard","_ref$stateDescription","stateDescription","_ref$duration","duration","copyed","setCopyed","navigator","clipboard","writeText","clipboardData","setData","InvestmentTeamColumn","TradedPositionsCountBadge","tradedPositionsCount","hideCount","Pluralize","singular","ParsedBwicLabel","isParsed","BwicRulesPanel","process","parsedProcess","bidsDueDate","goodUntilDate","isSameDayBwic","daysToSettle","rules","RightSidePanel","rulesActions","BwicRules","BwicViewLink","emptyPlaceholderText","referenceName","useAgreement","isSeller","hasRoles","apply","seller","isAdmin","Administrator","isBd","bd","isParsedHidden","isAllToAllHidden","isSellerHidden","isHiddenForSettlementAgent","isScheduled","BwicStatus","scheduled","isBidding","bidding","hasSignedAgreement","isBdBuyer","canSubmitBid","BrokerDealerTrader","appearance","bid","getAppearance","disabledByRole","DirectBiddingDesclaimerLink","path","routes","biddingUrl","disclaimerDisabled","SlideDownPanel","onHide","_ref$timeout","internalVisible","setInternalVisible","panelClassNames","ReactPlayer","lazy","Player","url","_ref$controls","controls","isReady","setIsReady","Suspense","fallback","onReady","SelectBrokerDealerPopup","onSelected","_useBrokerDealers","setCompanyName","_React$useState3","_React$useState4","errorMessage","setErrorMessage","validate","empty","isRequestNone","validationResult","_validate","SameDayBwicIcon","ChangeColor","formControlClasses","classnames","level","tradedChange","levelSpecifications","best","cover","levelSpecificationType","levelSpecification","levelSpecificationChange","handleLevelChange","handleLevelBlur","dm","handleDmChange","isNew","bind","handleSave","levelChange","setDm","_this$props4","normalizeLevel","connectedChangeColor","changeColor","useLatestDealTransactions","companyReferenceName","RequestState","none","setRequestState","transactions","setTransactions","doRequest","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_transactions","wrap","_context","prev","next","request","amrPipelineService","getLatestTransactions","sent","success","t0","failure","stop","useDealSecurityStatistics","dealTickers","statistics","setStatistics","resetFlag","JSON","stringify","_callee2","_statistics","sorted","_context2","bwicDealsService","getDealSecurityStatistics","_s$classes","compareEmpty","closingDate","compareDates","compareClassName","DealsTickerButton","security","TickerButton","fetchAgencyRatings","cloManagersActions","selectedSecurityChange","convertToDealSecurityTableItem","transaction","dealReferenceName","dealLegalName","legalNameOnDeal","isinCusip","createIsinCusip","convertToTableItem","_t$arranger$code","_t$arranger","_t$arranger2","arrangerText","arranger","code","legalName","ncEndYears","dateTimeUtils","yrsLeftToDateFrom","nonCallPeriodEnd","riEndYears","reinvestmentPeriodEnd","isNewColumn","columnKey","PipelineColumn","renderColumnHeaderContent","renderColumnContent","NewDebutAmrLabel","ignoreDebut","createLastUpdatedColumn","lastUpdated","pipelineColumnLabels","onLastUpdatedClick","onVersionHistoryClick","DealUpdatesPopover","version","dealUpdates","onOpen","sortingField","sortingType","SORTING_TYPE","date","dealNameColumn","string","dealTickerColumn","dealTicker","transactionStatusColumn","transactionStatus","StatusLabel","transactionStatusTitles","transactionTypeColumn","transactionType","startCase","transactionCollateralTypeColumn","collateralType","formatCollateralType","transactionCurrencyColumn","currency","_transaction$currency","transactionCurrency","arrangerColumn","BankLink","transactionSizeColumn","transactionSize","dealSize","dealBalance","number","pricingDateColumn","pricingDate","moment","format","dateFormat","closingDateColumn","nonCallPeriodEndColumn","_ref3","dateFormatDoubleDay","nonCallPeriodEndYrsColumn","nonCallPeriodEndYears","pipelineTooltipText","_ref4","outOfNcColumn","outOfNC","_ref5","isNil","formatBoolean","booleanAndNull","reinvestmentPeriodEndColumn","_ref6","reinvestmentPeriodEndYrsColumn","reinvestmentPeriodEndYears","_ref7","outOfRiColumn","outOfRI","_ref8","downloadDocumentsColumn","context","hasDocuments","securities","firstSecurity","isinCusipValue","ViewDealDocumentsButton","BwicMonitorHistoricalData","boolean","dealIntexColumn","IntexButton","userCompany","setTransactionForIntex","onClickLink","trackIntexClick","stickRight","createRelatedTransactionsColumn","numberOfDealPublishedTransactions","Link","AMRPipeline","headerClassName","bodyClassName","createGoToColumn","overrideRequiredFeatures","TransactionStatus","Active","getTransactionDetailsUrl","trackDoorClick","dealOptionsColumn","dealColumns","ManagerProfileDeals","IssuanceMonitorHistoricalData","collapseStickRightColumn","IssuanceMonitorMarketingHistory","ColumnBuilder","intex","IntexLink","bloomberg","valitana","ValitanaLink","securityColumns","middle","currentBwic","_security$currentBwic","_security$currentBwic2","BwicStatusLabel","liveBidding","BwicProcessType","Live","directBidding","isClearingBankParticipant","bwicTypeIconVisible","BwicMonitorLookupLink","utcToLocalString","bidsDueUtc","_security$lastTraded","SecurityLastTradedDate","inventoryLastTraded","inventoryLastTradeDate","bwicLastTradedDate","lastTraded","isInventoryDate","lastTradeDate","_security$lastTraded2","_security$lastTraded3","_security$lastTraded4","right","overrideRequiredFeature","IntegrationsIntex","href","generateIntexLink","BwicRulesPseudoLink","_ref$withIcon","withIcon","_ref$showLabel","showLabel","processType","btnTypeClassName","Unknown","formatBwicProcessTitle","ScrollIntoView","containerRef","useLayoutEffect","block","inline","EvalKTalkLabel","_ref$withInfoButton","withInfoButton","tooltipOverlay","plural","_ref$template","template","renderString","BwicMonitorSecuritySearch","FeatureLink","allBWICs","IntersectionObserverContext","createContext","IntersectionObserverProvider","options","observerRef","forEach","_observableHandlers$c","observableHandlers","get","Map","Provider","onVisibilityChange","Error","set","unobserve","delete","useIntersectionObserver","elementRef","ioContext","idRef","uuid","TradingLimitDescription","isCommon","isByRating","StatusMessageSection","StatusMessageSectionType","Info","TradingLimitType","TrackFormChanges","onChanged","isChanged","isFormInitialValuesChanged","isEqual","byRating","commonLimit","TradingLimitPanelContent","_company$signatory","_company$dailyTrading3","onTrackChanges","shouldBeBetween","requestStatusUpdateRequest","clientsCompanies","isSaving","signatory","defaultValuesByRating","useMemo","Ratings","_company$dailyTrading","_company$dailyTrading2","keys","every","defaultFormValues","common","defaultDailyTradingLimit","Common","ByRating","transform","v","numericUtils","isNumber","when","is","tradingLimitType","then","typeError","otherwise","nullable","getYupRatingsRules","renderRevertRatingButton","rating","RevertBidButton","onRevert","enableReinitialize","validateOnChange","data","requestData","bidderId","apiUtils","normalize","clientsCompaniesActions","updateAgreementRequest","Checkbox","checked","CurrencyInputField","markRequired","loading","defaultValue","Table","columns","isValueChanged","tradingLimit","dataItems","ClientsControlPanel","_agreement$signatory","history","useHistory","isTradingLimitChanged","saveTradingLimitsRequestState","currentCompanyDetailsId","companyDetails","currentCompanyId","companies","visibleConfirmationPopup","setVisibleConfirmationPopup","handleHideConfirmationPopup","resetSelectedAgreement","companyDetailsActions","handleShowConfirmationPopup","tabs","active","renderContent","onActivate","onDeactivate","CompanyDetailsPanelContent","RightSideTabPanel","Confirm","confirmButtonText","onConfirm","RouteLeavingGuard","navigate","pathname","push","shouldBlockNavigation","BrokerDealerAgreementStatusLabel","entity","pending","comment","AgreementActionButtons","visibleEditReasonPopup","setVisibleEditReasonPopup","visibleUndoConfirmPopup","setVisibleUndoConfirmPopup","isUpdatingRequestState","handleAffirm","hideActivePanels","setSelectedAgreement","handleUndoConfirm","handleSetVisibleReasonPopup","Relative","rejected","CurrencyConversion","currencyRate","visibleSetRatePopup","requestStateGetCurrencyRate","requestStateUpdateCurrencyRate","euroCurrency","Currency","EUR","usdRate","rate","setRate","getCurrencyRate","handleSetValue","currencyConversionRate","min","handleHidePopup","setVisibleUpdateRatePopup","handleApply","updateCurrencyRate","SettlementAccountExistType","SettlementAccountExistTypeTitle","WithSettlementAccount","WithoutSettlementAccount","defaultClientsFilter","settlementAccountExist","ClientsFilter","currentFilter","lastAppliedFilter","setLastAppliedFilter","setFilter","FilterPanel","FilterSelect","multiply","isApplied","onChangeItemSelection","unselectSettlementAccountExistOption","onClearAll","onSelectAll","UnrequestedAgreementStatus","Unrequested","settlementAgreementStatusTitle","unselectAgreementStatus","FilterButton","caption","_","FilterClear","isShown","isDisabled","useClientsFilter","agreements","searchString","searchResult","setSearchResult","filtered","includes","enumsUtils","getKeys","o","settlementAccountCount","matchSettlementAccountExist","matchAgreementStatus","Clients","_company$name","onFilterChanged","companiesList","requestStateFetchClientsList","selectedCompanyId","selectedCompanyForAffirm","companyDetailsPanelCompanyId","_useSettlementAccount","useSettlementAccounts","settlementAccountsRequestState","settlementAccounts","_useAssetManagers","useAssetManagers","assetManagers","assetManagersRequestState","_useCurrentUserCompan","useCurrentUserCompany","_useCurrentUserCompan2","companyRequestState","activeAssetManagers","CompanyStatus","isLoading","tableDataItems","agreementTableItems","sa","assetManager","totalDailyTradingLimit","sumBy","limit","unrequested","searchResults","shouldRequest","fetchListRequest","handleSetSearchString","setSearchString","handleFilterChange","handleResetFilterAndSearch","getColumns","CompanyDetailsButton","rowKey","assetManagerId","renderSettlementAccountLink","settlementRequestStatus","settlementAccountActions","clientsSettlementAccountUrl","role","companyRoles","BrokerDealer","ViewSettlementAgentCommission","sortedTableDataItems","firstWithSettlementAccount","agreementToRedirect","isRequestSuccess","defaultSortBy","defaultSortByDirection","SORT","DESC","createSecurityCustomClassName","CompanyDetailsPanel","ClientsSettlementAccounts","useParams","assetManagerCompanyId","isAssetManagersLoaded","activeAssetManager","deletingAccountId","setDeletingAccountId","useSettlementAccountDelete","deleteAccountRequestState","Redirect","notFound","Breadcrumbs","BreadcrumbsItem","route","clients","Switch","Route","exact","createClientsSettlementAccount","editClientsSettlementAccount","manager","renderSelectedAccountName","SettlementAccountsView","onAccountCreate","createClientsSettlementAccountUrl","onAccountChange","account","clientsSettlementAccountDetailsUrl","activeSettlementAccount","clientsSettlementAccount","SettlementAccountView","settlementAccount","onEdit","editClientsSettlementAccountUrl","SettlementAccountEdit","accountName","ClientsView","component","CloManagerLink","manageCloManagerUrl","rel","ImageLoader","loaded","setLoaded","seError","onLoad","onError","FallbackImage","isAfter","lastTradedDate","DocumentBodyPortal","SupportInformation","BwicStatusTimerLabel","renderEmpty","BiddingTimer","timer","_renderEmpty","BwicRulesSectionRow","_ref$visible","dataTestId","BwicRulesStartEndTime","bidDueUtc","goodUntilUtc","bwicDate","isSame","timeFormat","GoodUntilTime","BwicRulesSection","BwicRulesParsed","isGeneralSectionVisible","reserveLevelsApply","canTradeEarly","canBidEarly","partialBidsAccepted","bidsGoodFor","settings","getProcessSpecificSettings","isTwoStage","hardCutOff","stage2EndDateUtc","stage2ImproverCount","improverCount","processNameFormatted","RequiredFeature","BwicMonitorBwicsData","SubscribeLink","rulesText","TimeSpan","stage1EndDateUtc","BwicRulesSectionGeneral","earlyTrades","minBidIncrement","formatBid","Standard","BestFootForward","TopX","JumpBall","autoFeedbackDelay","parseTimeSpan","totalMinutes","CutOffReminder","cutOffReminder","BwicRulesStage","BwicRulesSectionJumpBall","_process$jumpBall","_process$jumpBall2","_process$jumpBall3","_process$jumpBall4","_process$jumpBall5","stage1Duration","jumpBall","automaticStage1Deadline","stage2Duration","improvementRound","BwicRulesSectionOpenBidding","_process$liveBidding","getByKey","openBiddingImproverCount","stage1Deadline","BwicRulesTopX","_process$topX","_process$topX2","_process$topX3","_process$topX4","_process$topX5","_process$topX6","topX","BwicRulesBestFootForward","_process$bff","bff","BwicRulesMain","SupportMain","getCheckedOnBoardingTooltipToggle","pages","tooltipState","onBoardingTooltipConst","pageKey","gotIt","bwicOpenBidding","isShowSupport","_dropdown","ShowFor","salesRepresentativesSupported","SalesRepresentativeList","salesRepresentatives","Viewer","Toggle","onBoardingTooltipSetVisible","componentWillUnmount","Support","onBoardingTooltip","salesRepresentative","layout","showlegend","autosize","pad","mainConfig","responsive","displaylogo","doubleClickDelay","displayModeBar","showTips","StatisticsChart","onSectionClick","sections","labels","colors","merged","section","isEmpty","handlePlotClick","points","customData","customdata","clickedSection","textinfo","hoverinfo","hole","hoverlabel","bgcolor","bordercolor","font","size","marker","line","noTooltip","Plot","config","onHover","chartUtils","setCursor","onUnhover","replaceAll","BlockedFeatureTooltipText","MembersList","companyMembers","members","fullName","getMemberList","member","phone","chartName","PxTalkList","_ref$evalPriceTalkVis","evalPriceTalkVisible","_ref$evalPriceTalk","evalPriceTalk","_ref$normalizedEvalPr","normalizedEvalPriceTalk","useAppSelector","priceTalksState","priceTalks","expandedCompanies","setExpandedCompanies","companyIds","Object","cm","isExpandAll","companyMembersActions","fetchCompanyMembers","renderPriceTalkValue","priceTalk","_b$normalizedLevel","_a$normalizedLevel","hasPxTalksToDisplay","chart","HorizontalBoxChart","chartBoxHorizontal","ChartRequiredFeature","blockedClassName","renderChart","Accordion","AccordionItem","AccordionItemHeader","onItemHeaderClick","showAdditionalIcon","isShowCollapsedIcon","companyStatuses","statusCode","sm","handleCompanyExpanded","AccordionItemBody","renderEmptyList","priceTalksPreloaded","JoditEditorComponent","JoditEditor","_ref$uploadBaseUrl","uploadBaseUrl","uploadPath","editor","readonly","limitChars","sourceEditor","beautifyHTML","uploader","withCredentials","headers","authorization","token","response","baseurl","msg","isSuccess","getMessage","defaultHandlerSuccess","_response$files","that","this","filename","createInside","imageUrl","setAttribute","insertImage","imageDefaultWidth","defaultHandlerError","fire","askBeforePasteHTML","toolbarAdaptive","buttons","defaultActionOnPaste","_security$id","_selectedSecurity$id","_ref$fetchAgencyRatin","selectedSecurity","securityDetails","securityId","selectedId","isActive","securityDetailsActions","securityDetailsReset","controlPanelActions","securityDetailsInitRequest","SecuritiesGridFlaggedPopup","flaggedItemsLines","grid","isFlagged","Alert","Timer","start","durationSeconds","_ref$durationHighligh","durationHighlightLimitSecods","customFormat","onEllapsed","iteration","setIteration","remainingDuration","diff","shouldHighlight","formatTime","time","toLocaleString","minimumIntegerDigits","useGrouping","handle","hours","minutes","seconds","part","ClampLines","_PureComponent","watch","clickHandler","original","lineHeight","end","expanded","noClamp","substring","ssr","action","debounced","debounce","clampLines","prevProps","func","wait","immediate","_arguments","_this2","callNow","maxHeight","lines","floor","innerText","moveMarkers","getEllipsis","ellipsis","moreText","lessText","_this3","_this4","innerClampElement","innerElement","dangerouslySetInnerHTML","__html","sanitizeHtml","allowedTags","allowedAttributes","sanitizeText","getClassName","getButton","PureComponent","BorderHighlightAnimation","animate","setAnimate","highlight","CollapsablePanel","hint","collapsed","setCollapsed","_ref$liveBidding","_ref$isParsed","_ref$directBidding","_ref$bwicTypeIconVisi","_ref$isAllToAll","bwicStatus","bwicStatuses","cssClass","finished","canceled","BwicTypeLabel","ParsedLabel","AllToAllLabel","KtxLabel","AdaptiveHorizontalSlider","disabledSlider","setDisabledSlider","scrollTo","setScrollTo","backButtonRef","scrollData","onResize","childrenList","parentRight","lastChildRight","trunc","containerWidth","containerRight","firstChildLeft","selectedChildRight","classList","remove","setBackButtonDisabling","_scrollContainer$curr2","slider","reverse","parentLeft","findIndex","getLeftEdge","_backButtonRef$curren","getRightEdge","_ref$buttonIconVisibl","buttonIconVisible","isPopupVisible","settlementAgentCommissionState","useSettlementAgentDefaultCommission","ViewSettlementAgentCommissionPopup","commission","StatisticsChartsTransactionStatuses","Priced","Closed","OnHold","ArrangersTrusteesChartsTransactionStatuses","StatisticsChartsTransactionTypes","TransactionType","newIssue","refi","_ref$inline","BwicTextRulesPanel","textRulesPanel","params","textRulesPanelActions","CloManagerAlertsButton","isAlertOn","ManagerProfileManagerRelatedAlerts","IssuanceMonitorDealUpdateEmailAlerts","BwicMonitorAlerts","CloManagerLabels","showAlertSection","_ref$isAlertOn","onFavoriteClick","_ref$showFavoriteIcon","showFavoriteIcon","hasActiveTransactions","hasAmrDeal","favorite","setManagerForAlertPopup","icon","renderFavoriteIcon","CloManagersNavItem","forwardRef","searchTerm","cloManager","withAlert","hovered","setHovered","isUserCompany","Highlighter","searchWords","autoEscape","textToHighlight","SearchTab","searchManagers","cloManagers","toLocaleLowerCase","getFavorites","CloManagersSelectionPanel","selectedReferenceName","All","tab","setTab","Favourite","tabSearchTerm","setTabSearchTerm","issuanceMonitor","amrPipelineCommon","alertConfigs","imUserConfig","cloManagerAnalyticsConfig","getAlertValues","cloManagerAnalyticsAlert","cloManagerImConfig","cloManagerIssuanceMonitorAlert","cloManagerApConfig","cloManagerArrangerPipelineAlert","cloManagerBwicConfig","cloManagerBwicAlert","cloManagerDealerInventoryConfig","cloManagerDealerInventoryAlert","hasAlertAccess","hasAllFeatures","IssuanceMonitorFiltersEmailAlerts","selectedManagerRef","customEvent","createEvent","initEvent","dispatchEvent","_selectedManagerRef$c","favoritesNumber","getManagers","SelectionPanelSearch","onCollapseClick","onSearch","prevValue","PipelineTabs","Tab","getEmptyText","_cloManagerAnalyticsC","_cloManagerImConfig$g","_cloManagerApConfig$g","_cloManagerBwicConfig","_cloManagerDealerInve","isOwnCompany","isCollateralManagersOwnCompany","selectedCloManagerAnalyticsAlert","alertOption","imAlertOption","AlertOption","Never","apAlertOption","bwicAlertOption","dealerInventoryAlertOption","alert","canEdit","canNavigateToIM","ownCollateralManagersCompany","ownCompany","hasAnalyticsAccess","scheduleMeetingMailPreviewColumnsDefinition","firstName","lastName","publicPhone","scheduleMeetingMailPreviewColumns","ScheduleMeetingMailPreview","userCompanyName","termsAndConditions","privacyPolicy","ScheduleMeetingPopup","_ref$defaultEmailList","defaultEmailList","cloManagerReferenceName","cloManagerLegalName","emailList","setEmailList","textContent","setTextContent","sending","setSending","handleClose","onLoadSuccess","cloManagersService","scheduleMeeting","notificationActions","notificationAddErrorMessage","finish","useRequestScheduleMeeting","notificationAddInfo","isLimitExceeded","isDataInvalid","_selectedManager$deta","_selectedManager$deta2","_selectedManager$deta3","_selectedManager$deta4","edit","showScheduleMeetingPopup","setShowScheduleMeetingPopup","_useContext","CloManagersContext","isUpdating","_useSelector2","selectedManager","bwicCloManagers","investmentTeamMeetingContacts","details","investmentTeam","meetingContact","platformUsersMeetingContacts","managerPresentationFile","first","managerPresentationFiles","compareDatesDesc","uploadTime","_useDownloadDocument","useDownloadDocument","downloadRequest","downloadManagerPresentationFile","requestArgs","fileNameForSave","handleDownload","isManagerPresentationDownloading","isDownloading","withTurnedOnAlerts","renderScheduleMeetingButton","ManagerProfileScheduleMeeting","renderAlertsSection","renderManagerPresentationFilesSection","_selectedManager$deta6","numberOfManagerPresentationFiles","ManagerProfilePresentations","_selectedManager$deta5","renderManagerPresentationButton","defaultHeader","editHeader","spacer","getAllRolesExclude","Media","AdditionalInformation","SectionContent","TextField","NumberField","includeThousandsSeparator","SelectField","withEmptyValue","InstitutionTypes","optionLabelProp","optionKeyProp","CheckboxField","MarkdownField","wrapperClassName","ESGConsiderations","DateField","maximumDate","Date","FormField","DocumentListComponent","documents","onUploading","acceptedExtensions","uploadedDocument","dragEnter","setDragEnter","uploadingFileName","setUploadingFileName","progress","setProgress","_uploadedDocument$cur","downloadDocument","documentToDownload","saveAs","blob","errorActions","unexpectedError","_x","onUploadDocument","uploadDocument","progressEvent","abrupt","_x2","uploadFile","_callee3","newDocument","_context3","_x3","handleDrop","_file$name","splitFile","fileExtension","documentMaxFilesizeInMb","documentMaxFileSizeMessageText","documentMaxFileSizeMessageTitle","ext","documentInvalidFileTypeText","documentInvalidFileTypeTitle","SelectFile","extension","FileIcon","ProgressCircle","documentReferenceName","_uploadedDocument$cur2","documentList","d","handleDeleteFile","ManagerPresentationUpload","memo","nextProps","AcceptedExtensions","ManagerPresentations","_useField","useField","_useField2","managerPresentationField","managerPresentationHelpers","uploading","setCloManagerSaveState","ContactInformation","useFormikContext","countryField","_useField3","stateField","_useSelector","address","countries","states","cities","usaCountryId","_countries$data$find","twoCharsCode","USCountryCode","selectedCountryId","parseInt","isUSASelected","isLoaded","addressActions","loadCountries","loadStates","stateId","loadCities","getCityName","cityId","formik","selectedCity","getFieldMeta","citiesList","onSelect","getFieldHelpers","InputField","renderElement","field","meta","getIn","cityName","investmentTeamColumnDefinition","statusTitle","userStatusTitle","investmentTeamColumnsLabels","linkedIn","trackActivity","CloManagerAccessType","CloTeamIn","ManagerProfileContacts","phoneNumber","location","editPlatformUsers","investmentTeamColumns","editInvestmentTeamColumns","Contacts","editManager","editBwicCloManagers","nonDraftDataItems","draft","gridActions","init","gridColumns","cloManagersInvestmentTeam","gridRowsLimit","resetEditPlatformUsers","_cloManager$investmen","hasChanges","actionBtn","createSecurityCustomArgs","Grid","dataUploadDisabled","CompanyProfile","descriptionField","descriptionHelpers","generatedDescriptionField","resetDescriptionDisabled","isAdminOrDataEntry","DataEntry","TextareaField","CloSystemInfrastructure","_errors$cloSystemInfr","_errors$cloSystemInfr2","_errors$cloSystemInfr3","_errors$cloSystemInfr4","_errors$cloSystemInfr5","_errors$cloSystemInfr6","_errors$cloSystemInfr7","_errors$cloSystemInfr8","_errors$cloSystemInfr9","_errors$cloSystemInfr10","_useFormikContext","setFieldTouched","_useCloSystemInfrastr","useCloSystemInfrastructure","cloSystemInfrastructureItems","cloSystemInfrastructuresValues","groupCloSystemInfrastructure","cloSystemInfrastructures","cloValuationServices","CloSystemInfrastructuresTypes","CloValuationServices","cloAnalyticsServices","CloAnalyticsServices","cloPortfolioManagementServices","CloPortfolioManagementServices","offshoreLegalServices","OffshoreLegalServices","offshoreFundAdminServices","OffshoreFundAdministrationServices","cloAccountingServices","CloAccountingServices","secondaryCloPlatform","SecondaryCLOPlatforms","cloDocsServices","CloDocsServices","usCloLawFirms","USCLOLawFirms","euCloLawFirms","EuropeanCLOLawFirms","handleSelect","selectedValues","updatedData","resetAll","filteredData","convertToDataListItem","cloSystemInfrastructuresItem","generateSelectedText","selectedItems","MultiSelectField","onResetAll","toString","horizontalOrientation","resetButtonText","CloManagersEdit","setSubmitHandler","submitForm","RequiredMessage","CloManagerValidationSchema","Yup","unpriSignatorySince","unpriSignatory","optional","countryId","newCity","zipCode","Statistics","stats","redirectToIssuanceMonitor","qsBuilder","cloManagerAccessType","queryString","logUserActivity","origin","redirectToArrangerPipeline","searchParams","collateralManagers","imPipelineTab","IssuanceMonitorTab","ArrangerPipeline","serializer","queryStringSerializer","serialize","OverviewUpcomingDeals","redirectToAmrDeals","transactionStatuses","transactionTypes","amr","OverviewAmrDeal","redirectToTotalTransactions","hasImAccess","hasFeatures","OverviewTotalTransactions","redirectToActiveTransactions","redirectToVolume","accessType","collateralTypes","multipleCurrencies","ManagerProfilePrimaryMarketData","usdBslCount","USD","CollateralType","broadlySyndicated","VolUsdBslDoor","usdBslVolume","usdMmCount","middleMarket","VolUsdMmDoor","usdMmVolume","eurBslCount","VolEurBslDoor","eurBslVolume","eurMmCount","VolEurMmDoor","eurMmVolume","activeTransactions","totalTransactions","totalDeals","totalPipelines","numberOfAmrTransactions","ShortLongDatedDealsFilter","handleValueChange","prop","handleCurrencyChange","currencyCode","allListItem","chartCurrencies","all","chartGroupings","ChartGrouping","M","payload","Q","Y","chartTypes","ChartTypes","FilterSection","defaultSortingEnabled","prefix","grouping","renderItemContentCallback","RequiredTransactionTypes","ChartLegends","CloManagerArrangerStatsBarChart","chartDiv","cloManagersChartBar","tickColor","tickFont","zeroLineColor","fontSize","barColors","groupedByTransactionType","withoutAmrDeals","groupedByCompanyCode","arrayUtils","groupBy","row","companyCode","sum","numberOfDeals","reduce","acc","groups","elements","group","firstElement","_acc$transactionType","_acc$transactionType$","_acc$transactionType$2","_acc$transactionType$3","chartLayout","barmode","ChartView","Stacked","hovermode","bgColor","fontColor","family","fontFamily","xaxis","zeroline","fixedrange","tickangle","autotickangles","ticklen","yaxis","showgrid","mirror","showtickprefix","zerolinecolor","gridcolor","ticks","tickcolor","tickfont","chartData","textposition","onInitialized","setCursorByDiv","divId","point","CloManagerArrangerStatsWidget","onChartClick","IssuanceMonitorFullAccess","arrangersDeals","DashboardNoSelectedFilters","CloManagerTrusteeStatsBarChart","formatCompanyShortName","shortName","trimmed","words","_words","_toArray","second","other","companyShortName","trusteeBarColor","customMargin","CloManagerTrusteeStatsWidget","trusteesDeals","Overview","redirectToIMWithCurrency","OverviewGeographicMix","redirectToIMWithESG","esgDeals","esg","OverviewEsgDeals","redirectToIMWithEUCompliance","euComplianceDeals","euCompliance","OverviewEuCompliant","redirectToIMWithStaticDeals","staticDeal","staticDeals","OverviewStaticDeals","redirectToIMWithOutOfNC","isOutOfNC","OverviewOutOfNCDoor","redirectToIMWithOutOfRI","isOutOfRI","OverviewOutOfRIDoor","handleArrangersChartClick","arrangers","OverviewArrangers","handleTrusteesChartClick","trustees","OverviewTrustees","handleIssuanceSpreadClick","termRiEndCriteria","Term","Short","pipelineRequestCriteria","issuanceSpread","shortTerm","Long","longTerm","termNcEndCriteria","term","riEndFrom","riEndTo","ncEndFrom","ncEndTo","reinvestmentEndFrom","reinvestmentEndTo","nonCallEndFrom","nonCallEndTo","pricingDateFrom","startPeriod","pricingDateTo","endPeriod","coupon","floaterIndex","ratings","OverviewIssuanceSpreads","handleShortLongDatedDealsClick","shortOrLongDated","ShortOrLongDated","shortLongDatedDeals","reinvestmentPeriodEndYearsShort","reinvestmentPeriodEndYearsLong","nonCallPeriodEndYearsShort","nonCallPeriodEndYearsLong","OverviewShortLongDatedDeals","withVideoColumn","webinarVideo","platformOverview","showWebinarVideo","isValidUrl","webinarVideoExists","webSite","CloTeamWebsite","description","ManagerProfileWebinarVideo","renderBlockedContent","BlockedFeatureContent","usdDeals","eurDeals","nonEsgDeals","euCompliantDeals","nonEuCompliantDeals","nonStaticDeals","notOutOfNC","notOutOfRI","noop","ManagerProfileIssuanceSpreadsGraph","IssuanceSpreadWidget","availableGroupings","defaultFilter","managerReferenceName","startDate","startDateCloManagers","withSlider","withAllTermsOption","ManagerProfileDealsGraph","ShortLongDatedDealsWidget","subtitle","units","ChartUnits","Count","filterComponent","DealsControlPanel","bwicLog","pxTalkListVisible","clearSelectedSecurity","SecurityDetailsPanel","SecurityDetails","BWICLog","bwicLogActions","bwicLogInitRequest","bwicLogReset","SecurityDetailsOptions","optionsExclude","Deals","transactionsState","transactionForIntex","securitiesState","DealDoor","DealIntex","collapsible","sticky","_securitiesState$stat","_t$dealTicker","createRowCustomKey","renderCollapsibleItem","columnType","isRequestFailed","TableColumnStickType","Middle","_transaction$dealTick","tableKey","highlighted","renderDealSecurities","verticalPlaces","tableRowHeight","tableHeaderHeight","IntexPopup","onCloseClick","CloTeam","city","country","cityAndState","zipCodeAndCountry","allAddressFieldsEmpty","contactItems","hiddenContacts","numberOfHiddenItems","unpriSignatoryValue","capitalize","esgFormalPolicy","AdditionalInformationUnpri","esgStrategy","MarkdownViewer","_details$managerPrese","withManagerPresentations","_useDownloadDocumentL","useDownloadDocumentList","loadHandler","loadingState","renderFileList","DownloadDocument","loadingText","secondary","ShowMore","renderMore","renderLess","renderManagerPresentation","KeyConsiderations","_details$stats","getOperationsRegions","cloIssuanceSince","foundedIn","founder","parent","institutionType","InstitutionTypeTitles","totalParentAumUsd","totalParentAumEur","leveragedLoanAumUsd","leveragedLoanAumEur","ownEquity","proprietaryAnalyticalTools","investmentPhilosophy","investmentModel","getCloSystemInfrastructureNamesList","General","infoTooltip","recentProfileViews","ManagerProfileAnalytics","totalProfileViews","dealViews","presentationDownloads","ViewedTabs","totalViews","pick","PercentageBar","maxValue","viewedTabsOverview","viewedTabsDeals","viewedTabsCloTeam","viewedTabsAdditionalInformation","selector","analytics","ClientsActivityWidget","withAnalyticsRequest","clientsActivityRequest","dateFrom","dateTo","clientsActivity","users","accessTypes","clientsActivityFilterChange","handleBarClick","profileViewHistoryFilterByBar","filteredClientsActivity","userEmail","ClientsActivityChart","onBarClick","AnalyticsWidget","onFilterChange","tabDefinitions","ProfileViewHistoryTabs","OverviewTab","views","CloManagerAccessTypes","ContactsTab","userSession","userFullName","companyLegalName","userPhoneNumber","PresDownloadedTab","uniqueDocuments","getUniqueDocsWithDownloadsCount","isDeleted","getDocumentDownloadLink","downloadCount","ProfileViewHistoryPopover","_ref$defaultTab","defaultTab","activeTab","setActiveTab","formattedActionDate","accessDateTime","PseudoLink","showCloseButton","TabList","TabItem","PresDownloaded","TabContent","renderActiveTab","profileViewHistoryColumnsDefinition","profileSession","ProportionBar","downloads","FollowUp","ProfileViewHistoryWidget","profileViewHistoryRequest","profileHistoryViews","profileViewHistoryFilterChange","ProfileViewHistoryTable","Analytics","_useSelector$analytic","general","analyticsInit","analyticsReset","transactionViewHistory","TransactionViewHistoryWidget","DownloadedPresentationsWidget","EditTab","TabTypeToAccessType","CloManagersTabType","AdditionalInformationTab","CloTeamTab","DealTab","CloManagersDetails","_useParams","submitHandler","selectedTab","accessibleTabs","CloManagerTabTypes","tabType","Header","cloManagerForm","createOrUpdateCloManager","initialTouched","handler","handleTabChange","TabBody","CloManagerAlertsPopup","isSellerCollateralManager","isUserConfigUpdating","isUserConfigDeleting","isDeleting","editCloManagerAnalyticsConfig","setEditCloManagerAnalyticsConfig","editCloManagerImConfig","setEditCloManagerImConfig","editCloManagerApConfig","setEditCloManagerApConfig","editCloManagerBwicConfig","setEditCloManagerBwicConfig","editCloManagerDiConfig","setEditCloManagerDiConfig","cloManagerImAlert","cloManagerApAlert","cloManagerDiAlert","selectedCloManagerImAlert","selectedCloManagerApAlert","selectedCloManagerBwicAlert","selectedCloManagerDiAlert","isAlertsInProgress","isSaveDisabled","_useState11","_useState12","saving","setSaving","renderAlertSection","groupNameIndentifier","alertOptions","selectedOption","requiredFeatures","alertOptionInfo","EmailPreferencesRadioGroup","analyticAlertOptions","alertDescriptions","Daily","arrangersPipeline","alertOptionTooltipText","Instant","secondaryStatsAlertOptions","dealerInventory","profileNotificationsTab","EmailPreferencesTab","CloManagers","configs","UserConfigType","imUserConfigActions","saveCompanyAlerts","isDetailsLoading","managerReferenceNameForAlert","managerForAlerts","m","managersLoaded","contextValue","canEditCloManager","hasCloManagerAnalyticsAccess","navigateToFirstManager","firstManager","head","getCloManagers","getCloManager","getUserConfig","switchFavoriteRequest"],"sourceRoot":""}