{"version":3,"file":"static/js/main-49dc4117.1a0ef742.js","mappings":"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","sources":["components/newBWIC/steps/Summary.tsx","components/news/news-list/NewsListContext.ts","components/news/news-list/TruncateHtml.tsx","components/news/news-list/NewsItem.tsx","components/newBWIC/steps/Securities.jsx","components/newBWIC/steps/Process.jsx","components/newBWIC/steps/Documents.jsx","components/newBWIC/steps/Submit.tsx","components/newBWIC/WizardHeader.js","components/newBWIC/SelectPlatformDealersPopup.tsx","components/newBWIC/TradingProtocolPopup.tsx","components/newBWIC/steps/NewBwicDealers.tsx","components/newBWIC/Wizard.jsx","components/newBWIC/ProgressBar.jsx","components/news/news-list/TimeLabel.tsx","components/news/news-list/EventWidget.tsx","components/news/news-list/EventsSection.tsx","components/news/news-list/charts/PrimaryMarketHighlights.tsx","components/news/news-list/charts/BwicsVolumeAndPrice.tsx","components/news/news-list/NewsList.tsx","components/news/news-page/NewsPage.tsx","components/news/News.tsx"],"sourcesContent":["import React from 'react';\r\nimport { Pluralize } from '../../common';\r\nimport { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { dealersSelector } from '../../../selectors/dealers.selector';\r\nimport { user } from '../../../user';\r\nimport { roles } from '../../../constants';\r\n\r\nexport const Summary = () => {\r\n const selectedDealers = useSelector((state: AppState) => state.newBwicDealers.selectedDealers);\r\n const brokerDealerContacts = useSelector((state: AppState) => state.entities.brokerDealerContactList.items);\r\n const brokerDealerUsers = useSelector((state: AppState) => state.entities.brokerDealerUserList.items);\r\n const isAllToAll = useSelector((state: AppState) => state.process.isAllToAll);\r\n const dealersList = useSelector(dealersSelector);\r\n const selectedCompanies = dealersList.filter(c => selectedDealers[c.id]);\r\n const selectedCompanyCount = selectedCompanies.length;\r\n const selectedParticipantCount = selectedCompanies\r\n .map(dealer => {\r\n const contacts = brokerDealerContacts.filter(c => c.companyId === dealer.id);\r\n const users = brokerDealerUsers.filter(u => u.companyId === dealer.id);\r\n const totalContacts = contacts.length + users.length;\r\n return dealer.headOfTrading == null ? totalContacts : totalContacts + 1\r\n })\r\n .reduce((a, b) => a + b, 0);\r\n const selectedDistributionListCount = selectedCompanies\r\n .map((c) => c.distributionList ? 1 : 0)\r\n .reduce((a, b) => (a + b), 0);\r\n\r\n const distributionListText =\r\n ;\r\n const participantText = ;\r\n const companyText =\r\n ;\r\n\r\n const renderLabel = () => {\r\n if (user.hasRoles(roles.BrokerDealerTrader) || isAllToAll) {\r\n return (\r\n
\r\n BWIC will be sent anonymously to all platform members.\r\n
\r\n );\r\n }\r\n else if (!selectedParticipantCount) {\r\n return (\r\n
\r\n BWIC will be sent to {selectedDistributionListCount} {distributionListText} from {selectedCompanyCount} {companyText}\r\n
\r\n );\r\n } else if (!!selectedDistributionListCount) {\r\n return (\r\n
\r\n BWIC will be sent to {selectedDistributionListCount} {distributionListText} and to {selectedParticipantCount} {participantText} from {selectedCompanyCount} {companyText}\r\n
\r\n );\r\n } else {\r\n return (\r\n
\r\n BWIC will be sent to {selectedParticipantCount} {participantText} from {selectedCompanyCount} {companyText}\r\n
\r\n );\r\n }\r\n };\r\n return (\r\n <>{!!selectedCompanyCount && renderLabel()}\r\n );\r\n};\r\n","import React from 'react';\r\n\r\ninterface NewsListContextProps {\r\n canEdit: boolean;\r\n}\r\n\r\nconst NewsListContext = React.createContext({\r\n canEdit: false,\r\n});\r\n\r\nexport default NewsListContext;\r\n\r\n","import { trim } from 'lodash';\r\nimport sanitizeHTML from 'sanitize-html';\r\n\r\ninterface Props {\r\n html: string;\r\n maxLength: number;\r\n readMoreLink?: React.ReactNode;\r\n initiallyTruncated?: boolean;\r\n}\r\n\r\nexport const TruncateHtml = ({ html, maxLength, readMoreLink, initiallyTruncated }: Props) => {\r\n const sanitizedText = trim(sanitizeHTML(html, {\r\n allowedTags: [],\r\n allowedAttributes: {}\r\n }));\r\n\r\n const sanitizedWithImages = trim(sanitizeHTML(html, {\r\n allowedTags: ['img'],\r\n allowedAttributes: {}\r\n }));\r\n\r\n if (sanitizedText.length > maxLength) {\r\n let truncatedText = sanitizedText.slice(0, maxLength);\r\n const lastSpaceIndex = truncatedText.lastIndexOf(' ');\r\n\r\n if (lastSpaceIndex !== -1) {\r\n truncatedText = truncatedText.slice(0, lastSpaceIndex);\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {readMoreLink}\r\n \r\n );\r\n }\r\n\r\n if (!sanitizedText.length && sanitizedWithImages.length) {\r\n return <>{readMoreLink};\r\n }\r\n\r\n if (initiallyTruncated) {\r\n return (\r\n <>\r\n \r\n {readMoreLink}\r\n \r\n );\r\n }\r\n\r\n return ;\r\n};\r\n","import qs from 'query-string';\r\nimport { News } from '../../../types/news/News';\r\nimport { TruncateHtml } from './TruncateHtml';\r\nimport { routes } from '../../../constants';\r\nimport { TimeLabel } from './TimeLabel';\r\nimport { EditNewsTabType } from '../../../types/news/enums/EditNewsTabType';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { NewsPageRouteQuery } from '../news-page/NewsPage';\r\nimport { NewsCategory, newsCategoryTitles } from '../../../types/news/enums/NewsCategory';\r\nimport { NewsLabel, newsLabelTitles } from '../../../types/news/enums/NewsLabel';\r\nimport { NewsProvider, newsProviderLogos, newsProviderTitles } from '../../../types/news/enums/NewsProvider';\r\nimport { forwardRef, useContext } from 'react';\r\nimport NewsListContext from './NewsListContext';\r\nimport classNames from 'classnames';\r\nimport { useDispatch } from 'react-redux';\r\nimport { newsActions } from '../../../actions/news.actions';\r\nimport { NewsAccessType } from '../../../types/amr-pipeline/enums/NewsAccessType';\r\nimport { useHistory } from 'react-router';\r\nimport { RequiredFeature } from '../../access/RequiredFeature';\r\nimport { SubscriptionFeature } from '../../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../../access/ActionBlocker';\r\nimport { FeatureButton } from '../../access/FeatureButton';\r\nimport { BlockedFeatureContent, SubscribeLink } from '../../../components/access/BlockedFeatureText';\r\nimport { useDownloadDocument } from '../../../effects/useDownloadDocument';\r\nimport { newsService } from '../../../services';\r\nimport { Preloader } from '../../common';\r\n\r\ninterface NewsProps {\r\n newsItem: News;\r\n}\r\n\r\ninterface NewsTopSectionProps extends NewsProps {\r\n onDeleting?: (newsItem: News) => void;\r\n}\r\n\r\ninterface NewsItemProps extends NewsTopSectionProps {\r\n currentCategory?: NewsCategory;\r\n currentPage: number;\r\n}\r\n\r\nconst NewsTopSection = ({ newsItem, onDeleting }: NewsTopSectionProps) => {\r\n const { canEdit } = useContext(NewsListContext);\r\n const isDraft = canEdit && !newsItem.published;\r\n\r\n return (\r\n
\r\n {isDraft && (\r\n
\r\n
draft
\r\n
\r\n )}\r\n {newsItem.category !== NewsCategory.None && (\r\n
\r\n \r\n {newsCategoryTitles[newsItem.category]}\r\n
\r\n
\r\n )}\r\n\r\n {newsItem.provider && newsItem.provider !== NewsProvider.None && (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n Provided by {newsProviderTitles[newsItem.provider]}\r\n \r\n
\r\n \r\n )}\r\n\r\n {newsItem.label !== NewsLabel.None && (\r\n
\r\n
{newsLabelTitles[newsItem.label]}
\r\n
\r\n )}\r\n\r\n {canEdit && (\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 NewsAdditionalSection = ({ newsItem }: NewsProps) => {\r\n const { externalSourceLink, transactionLink, cloManagerReferenceName, arrangerReferenceName, newsDocuments } =\r\n newsItem;\r\n const dispatch = useDispatch();\r\n\r\n const { handleDownload, isDownloading } = useDownloadDocument({\r\n downloadRequest:\r\n newsItem.newsDocuments?.length === 1 ? newsService.downloadDocument : newsService.downloadDocuments,\r\n requestArgs:\r\n newsItem.newsDocuments?.length === 1\r\n ? [newsItem.referenceName, newsItem.newsDocuments[0].referenceName]\r\n : [newsItem.referenceName, ''],\r\n fileNameForSave: newsItem.newsDocuments?.length === 1 ? newsItem.newsDocuments[0].name || null : null,\r\n });\r\n\r\n const handleDownloadFilesClick = () => {\r\n if (!newsItem.newsDocuments?.length) {\r\n return;\r\n }\r\n\r\n handleDownload();\r\n\r\n dispatch(newsActions.logUserActivity(NewsAccessType.newsAllDocuments));\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n {!!externalSourceLink && (\r\n
\r\n dispatch(newsActions.logUserActivity(NewsAccessType.externalSource))}\r\n href={externalSourceLink}\r\n target=\"_blank\"\r\n rel=\"noreferrer\"\r\n >\r\n External Source\r\n \r\n
\r\n )}\r\n {!!transactionLink && (\r\n
\r\n \r\n {blocked => (\r\n dispatch(newsActions.logUserActivity(NewsAccessType.dealDetails))}\r\n target=\"_blank\"\r\n href={transactionLink}\r\n rel=\"noreferrer\"\r\n className={classNames({ disabled: blocked })}\r\n >\r\n Deal Details\r\n \r\n )}\r\n \r\n
\r\n )}\r\n {!!cloManagerReferenceName && (\r\n
\r\n dispatch(newsActions.logUserActivity(NewsAccessType.managerProfile))}\r\n href={routes.manageCloManagerUrl(cloManagerReferenceName)}\r\n target=\"_blank\"\r\n rel=\"noreferrer\"\r\n >\r\n Manager Profile\r\n \r\n
\r\n )}\r\n {!!arrangerReferenceName && (\r\n
\r\n dispatch(newsActions.logUserActivity(NewsAccessType.arranger))}\r\n href={routes.manageBanksUrl(arrangerReferenceName)}\r\n target=\"_blank\"\r\n rel=\"noreferrer\"\r\n >\r\n Arranger\r\n \r\n
\r\n )}\r\n {!!newsDocuments?.length && (\r\n \r\n
\r\n {isDownloading ? (\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 NewsItem = forwardRef(\r\n (\r\n { newsItem, currentCategory, currentPage, onDeleting }: NewsItemProps,\r\n ref: React.ForwardedRef,\r\n ) => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n\r\n const getNewsPageUrl = (referenceName: string) => {\r\n const query: NewsPageRouteQuery = {\r\n category: currentCategory,\r\n };\r\n\r\n const queryString = qs.stringify(query);\r\n\r\n return `${routes.newsUrl(referenceName)}?${queryString}`;\r\n };\r\n\r\n const handleDetailsClick = () => {\r\n dispatch(newsActions.logUserActivity(NewsAccessType.readMore));\r\n\r\n const queryString = qs.stringify({\r\n search: newsItem.referenceName,\r\n category: currentCategory,\r\n page: currentPage,\r\n });\r\n\r\n history.replace(`${routes.newsUrl()}?${queryString}`); // saving previous page query for scroll after click on browser back button\r\n history.push(getNewsPageUrl(newsItem.referenceName));\r\n };\r\n\r\n const readMoreButton = () => (\r\n (\r\n \r\n to read more\r\n \r\n }\r\n />\r\n )}\r\n >\r\n \r\n Read more\r\n \r\n \r\n );\r\n\r\n return (\r\n
\r\n \r\n

\r\n \r\n {blocked => (\r\n \r\n {newsItem.title}\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 React, { Component } from 'react'\r\nimport { withRouter } from 'react-router';\r\nimport { connect } from 'react-redux';\r\nimport { Grid } from '../../grid';\r\nimport { WizardHeader } from '../';\r\nimport { securitiesActions, gridActions } from '../../../actions';\r\nimport { uploadStatus } from '../../../constants';\r\nimport { Preloader } from '../../common';\r\nimport { BwicDates } from '../../process/BwicDates';\r\nimport { isRequesting } from '../../../utils';\r\nimport { DownloadTemplateButton } from '../../common/download-template/DownloadTemplateButton';\r\nimport { DeleteRowsWithErrorButton } from '../../grid/DeleteRowsWithErrorButton';\r\n\r\nclass Securities extends Component {\r\n componentDidMount = () => {\r\n const { dispatch, bwic, location } = this.props;\r\n const { securities } = bwic || location.state || {};\r\n const queryParams = new URLSearchParams(this.props.location.search);\r\n dispatch(securitiesActions.init(securities, undefined, undefined, true, queryParams));\r\n };\r\n\r\n render = () => {\r\n const {\r\n hasSecuritiesErrors,\r\n hasNonDraftItems,\r\n securitiesTotalCount,\r\n isInitializing,\r\n isClipboardDataProcessing,\r\n isSecuritiesFileUploading,\r\n dispatch,\r\n isGridUploading,\r\n isDateValid,\r\n isValidatingTradeLimits\r\n } = this.props;\r\n\r\n if (isInitializing) {\r\n return ;\r\n }\r\n\r\n if (securitiesTotalCount === 0) {\r\n return null;\r\n }\r\n\r\n const nextButtonEnabled = (\r\n hasNonDraftItems &&\r\n !isClipboardDataProcessing &&\r\n !isSecuritiesFileUploading &&\r\n !isGridUploading &&\r\n !hasSecuritiesErrors &&\r\n isDateValid &&\r\n !isValidatingTradeLimits);\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 dispatch(securitiesActions.uploadSecurities(file))}\r\n onDataItemsPaste={clipboardText => dispatch(securitiesActions.handleClipboardData(clipboardText))}\r\n onFileSelected={file => dispatch(securitiesActions.uploadSecurities(file))}\r\n helpPopoverTitle=\"You can add your securities in the following ways\"\r\n />\r\n \r\n \r\n );\r\n };\r\n\r\n handleDeleteInvalidSecurities = () => this.props.dispatch(gridActions.deleteDataItemsWithErrors());\r\n}\r\n\r\nconst mapStateToProps = ({ newBWIC, grid, securities, process }) => {\r\n const hasNonDraftItems = grid.dataItems.some(c => !c.draft)\r\n return {\r\n bwic: newBWIC.bwic,\r\n activeStep: newBWIC.activeStep,\r\n hasNonDraftItems,\r\n hasSecuritiesErrors: hasNonDraftItems && grid.dataItems.some(i => !i.draft && i.errors?.length),\r\n isClipboardDataProcessing: grid.isDataProcessing,\r\n isSecuritiesFileUploading: grid.upload.status === uploadStatus.uploading,\r\n securitiesTotalCount: grid.dataItems.length,\r\n isInitializing: securities.isInitializing,\r\n isGridUploading: grid.upload.status === uploadStatus.uploading,\r\n isDateValid: process.isDateValid,\r\n isValidatingTradeLimits: isRequesting(securities.validateTradeLimitsRequestState)\r\n }\r\n};\r\n\r\nconst connectedSecurities = withRouter(connect(mapStateToProps)(Securities));\r\nexport { connectedSecurities as Securities };\r\n","import React, { useEffect } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { WizardHeader } from '../';\r\nimport { TemplateList, TemplateDetails } from '../../process';\r\nimport { processActions as actions } from '../../../actions';\r\nimport { Preloader } from '../../common';\r\nimport { newBwicDealersActions } from '../../../actions/new-bwic-dealers.actions';\r\n\r\nexport function Process() {\r\n const dispatch = useDispatch();\r\n\r\n const templates = useSelector(state => state.process.templates.all);\r\n const isTemplateProcessing = useSelector(state => state.process.isTemplateProcessing);\r\n const isValid = useSelector(state => state.process.isValid);\r\n\r\n useEffect(() => {\r\n dispatch(actions.init());\r\n dispatch(newBwicDealersActions.resetSelectedByDefaultFlag());\r\n }, [dispatch]);\r\n\r\n const nextButtonEnabled = !isTemplateProcessing && isValid;\r\n\r\n return (\r\n \r\n {\r\n !!templates &&\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 React, { Component } from 'react'\r\nimport { connect } from 'react-redux';\r\nimport { WizardHeader } from '../';\r\nimport { documentsActions as actions, uploadDocumentsActions } from '../../../actions';\r\nimport { ManageDealDocuments } from '../../documents/ManageDealDocuments';\r\n\r\nclass Documents extends Component {\r\n componentDidMount = () => {\r\n const { dispatch, bwic } = this.props;\r\n\r\n dispatch(actions.init(bwic));\r\n this.interval = setInterval(() => dispatch(uploadDocumentsActions.refresh()), 20000);\r\n }\r\n\r\n componentWillUnmount = () => clearInterval(this.interval);\r\n\r\n render = () => {\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({ newBWIC, uploadDocuments }) => ({\r\n bwic: newBWIC.bwic,\r\n isUploading: uploadDocuments.isUploading\r\n});\r\n\r\nconst connectedDocuments = connect(mapStateToProps)(Documents);\r\nexport { connectedDocuments as Documents };\r\n","import * as React from 'react'\r\nimport { useSelector } from 'react-redux';\r\nimport { WizardHeader } from '../';\r\nimport { newBWICActions, submitActions as actions } from '../../../actions';\r\nimport { roles } from '../../../constants';\r\nimport { RequestState } from '../../../constants/request-state';\r\nimport { useSettlementAgentAgreements } from '../../../effects/useSettlementAgentAgreements';\r\nimport { UserSlimWithRoles } from '../../../types/account/UserSlimWithRoles';\r\nimport { SettlementAgreementStatus } from '../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { Company } from '../../../types/company/Company';\r\nimport { BwicProcessType } from '../../../types/models/Process';\r\nimport { Security } from '../../../types/security/Security';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { GridDataItem } from '../../../types/state/GridState';\r\nimport { user } from '../../../user';\r\nimport { formatUtils, isRequesting, isRequestSuccess } from '../../../utils';\r\nimport { Confirm } from '../../alerts';\r\nimport { Preloader } from '../../common';\r\nimport { TradingProtocol } from '../../common/TradingProtocol';\r\nimport { Disclaimer, Participants, Rules, Securities } from '../../submit';\r\nimport { BwicDateTime } from '../../submit/BwicDateTime';\r\nimport { useAppDispatch } from '../../../effects/useAppDispatch';\r\n\r\nexport function Submit() {\r\n const dispatch = useAppDispatch();\r\n const [directBwicConfirmationVisible, setDirectBwicConfirmationVisible] = React.useState(false);\r\n const agreementsState = useSettlementAgentAgreements();\r\n const isDirectBwic = useSelector((s: AppState) =>\r\n isRequestSuccess(agreementsState.requestState) &&\r\n s.entities.brokerDealerList.items.some(d =>\r\n d.isClearingBank &&\r\n s.newBwicDealers.selectedDealers[d.id] &&\r\n agreementsState.items.some(a => a.settlementAgent.id === d.id && a.agreementStatus === SettlementAgreementStatus.confirmed))\r\n );\r\n const dataItems = useSelector((s: AppState) => s.grid.dataItems);\r\n const positions: GridDataItem[] = dataItems.filter((i: GridDataItem) => !i.draft);\r\n const userCompany: Company = useSelector((s: AppState) => s.submit.userCompany);\r\n const submitState: RequestState = useSelector((s: AppState) => s.submit.submitState);\r\n const process: any = useSelector((s: AppState) => s.process);\r\n const template = useSelector((s: AppState) => s.process.templates.current);\r\n const isAllToAll =\r\n useSelector((state: AppState) => state.process.isAllToAll) ||\r\n user.hasRoles(roles.BrokerDealerTrader);\r\n\r\n const seller = user.current()!;\r\n const isLoading = isRequesting(submitState) || !userCompany;\r\n\r\n React.useEffect(() => {\r\n dispatch(actions.init());\r\n }, [dispatch]);\r\n\r\n const handleSubmit = () => {\r\n if (isDirectBwic) {\r\n setDirectBwicConfirmationVisible(true);\r\n } else {\r\n dispatch(newBWICActions.submit());\r\n }\r\n }\r\n\r\n const handleSubmitConfirmed = () => {\r\n setDirectBwicConfirmationVisible(false);\r\n dispatch(newBWICActions.submit());\r\n }\r\n\r\n const formatTitle = () => {\r\n const amount = positions.reduce((a, b) => +a + +b.size, 0);\r\n\r\n return formatUtils.formatBwicTitle(\r\n amount,\r\n positions.map(s => s.currency),\r\n positions.map(s => s.rating));\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n\r\n
\r\n {!isRequestSuccess(submitState) && (\r\n \r\n {\r\n !isLoading &&\r\n <>\r\n
\r\n \r\n
\r\n
\r\n

Email Preview

\r\n
\r\n
\r\n \r\n {!isAllToAll &&

{userCompany.name}

}\r\n

\r\n <>\r\n {template?.type === BwicProcessType.Live && <>LiveBidding™ }\r\n New BWIC: {formatTitle()} due\r\n \r\n \r\n

\r\n \r\n {\r\n (isAllToAll || isDirectBwic) &&\r\n

\r\n \r\n

\r\n }\r\n \r\n

\r\n Regards,\r\n {\r\n isAllToAll\r\n ? 'Team KopenTech'\r\n : `${seller.firstName} ${seller.lastName}`\r\n }\r\n

\r\n

Powered by:

\r\n \r\n \r\n
\r\n
\r\n
\r\n {\r\n directBwicConfirmationVisible &&\r\n setDirectBwicConfirmationVisible(false)}\r\n onConfirm={handleSubmitConfirmed}\r\n />\r\n }\r\n \r\n }\r\n
\r\n )}\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction EmailDisclaimer({ users, isAllToAll }: { users: UserSlimWithRoles[], isAllToAll: boolean | null }) {\r\n if (user.hasRoles(roles.BrokerDealerTrader) || isAllToAll) {\r\n return
\r\n

This is an auto-generated message sent by the KTX ATS Platform.

\r\n

Please do not reply. To bid, login to the platform.

\r\n
\r\n\r\n } else {\r\n return
\r\n

This is an auto-generated message sent by the KTX ATS Platform.

\r\n

Please do not reply.

\r\n

To bid, login to the platform or contact the seller:

\r\n \r\n \r\n {\r\n users.filter(u => u.roles.some(r => r === roles.SellerTrader)).map(m => (\r\n \r\n \r\n \r\n \r\n ))\r\n }\r\n \r\n
{m.firstName} {m.lastName}{m.email}
\r\n
\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { ProgressBar } from './';\r\nimport { newBWICSteps as steps } from '../../constants';\r\nimport { newBWICActions as actions } from '../../actions';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { StatusMessageSection } from \"../status-message/StatusMessageSection\";\r\nimport { StatusMessageSectionType } from \"../../types/state/NotificationState\";\r\nimport { BwicProcessType } from '../../types/models/Process';\r\nimport { isRequesting, isRequestSuccess } from '../../utils';\r\n\r\nclass WizardHeader extends Component {\r\n renderSendButton = () => (\r\n \r\n );\r\n\r\n renderPreviousButton = () => {\r\n if (\r\n this.props.isCompleted || this.props.activeStep === steps.securities || (\r\n this.props.activeStep === steps.submit && this.props.isStepNavigationDisabled)) {\r\n return null;\r\n } else {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n };\r\n\r\n renderNextButton = () => (\r\n \r\n next \r\n \r\n );\r\n\r\n render = () => {\r\n const { activeStep, hasError, process, isSubmited, isSavingBWIC } = this.props;\r\n const isOptional = activeStep === steps.documents;\r\n const participateNotification =\r\n (activeStep === steps.process || activeStep === steps.submit) &&\r\n process?.type === BwicProcessType.Live &&\r\n !isSubmited\r\n\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n {isOptional &&\r\n \r\n This step is optional. You may skip it.\r\n \r\n }\r\n {participateNotification && !isSavingBWIC &&\r\n \r\n Bidding is open for platform participants only\r\n \r\n }\r\n {this.renderPreviousButton()}\r\n {activeStep !== steps.submit && !this.props.isCompleted && this.renderNextButton()}\r\n {activeStep === steps.submit && !this.props.isStepNavigationDisabled && this.renderSendButton()}\r\n
\r\n
\r\n\r\n {this.props.children}\r\n \r\n );\r\n }\r\n\r\n handleNextClick = () => this.props.dispatch(actions.nextStep());\r\n handlePreviousClick = () => this.props.dispatch(actions.previousStep());\r\n handleSubmit = () => this.props.onSubmit && this.props.onSubmit();\r\n}\r\n\r\nconst mapStateToProps = ({ newBWIC, process, submit }) => ({\r\n activeStep: newBWIC.activeStep,\r\n process: process.templates.current,\r\n isSubmited: isRequestSuccess(submit.submitState),\r\n isSavingBWIC: isRequesting(submit.submitState)\r\n});\r\n\r\nWizardHeader.defaultProps = {\r\n isStepNavigationDisabled: false,\r\n nextButtonEnabled: true,\r\n};\r\n\r\nconst connectedWizardHeader = connect(mapStateToProps)(WizardHeader);\r\nexport { connectedWizardHeader as WizardHeader };\r\n\r\n","import React from \"react\";\r\nimport { FlexRow } from \"../common\";\r\nimport { newBWICActions as actions } from '../../actions';\r\nimport { Checkbox, Popup, PopupBody, PopupFooter } from \"../controls\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { newBwicDealersActions } from \"../../actions/new-bwic-dealers.actions\";\r\nimport { apiUtils } from \"../../utils\";\r\nimport { AppState } from \"../../types/state/AppState\";\r\nimport { useState } from \"react\";\r\nimport { BrokerDealerCompanySlim } from \"../../types/company/BrokerDealerCompanySlim\";\r\nimport { StatusMessageSectionType } from \"../../types/state/NotificationState\";\r\nimport { StatusMessageSection } from \"../status-message/StatusMessageSection\";\r\nimport { CompanyStatus } from \"../../types/company/CompanyStatus\";\r\nimport { newBwicDealersSelector } from \"../../selectors/new-bwic-dealers.selector\";\r\nimport { useAppDispatch } from \"../../effects/useAppDispatch\";\r\n\r\n\r\nexport default function SelectPlatformDealersPopup() {\r\n const dispatch = useAppDispatch()\r\n const newBwicDealerList = useSelector(newBwicDealersSelector);\r\n const selectedDealers = useSelector((state: AppState) => state.newBwicDealers.selectedDealers);\r\n const notSelectedPlatformDealers = newBwicDealerList.filter(c => !selectedDealers[c.id] && c.status === CompanyStatus.active);\r\n\r\n const [dealersList] = useState(notSelectedPlatformDealers)\r\n\r\n const handleSelect = (e: React.ChangeEvent) => {\r\n const updatedSelectedDealers = {\r\n ...selectedDealers,\r\n ...apiUtils.normalize(dealersList, d => d.id, () => e.target.checked),\r\n };\r\n dispatch(newBwicDealersActions.selectDealers(updatedSelectedDealers));\r\n };\r\n\r\n const handleClosePopup = () => dispatch(newBwicDealersActions.setSelectPlatformDealersPopupVisible(false));\r\n\r\n return (\r\n \r\n \r\n \r\n We recommend adding the following banks to your BWIC: \r\n \r\n {dealersList.map((d: BrokerDealerCompanySlim) => {d.name})}\r\n \r\n \r\n They are registered platform members, able to stream prices electronically online. Adding platform banks might improve your BWIC experience.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Cancel\r\n \r\n {\r\n dispatch(actions.nextStep())\r\n handleClosePopup();\r\n }}\r\n >\r\n Next step\r\n \r\n \r\n \r\n \r\n )\r\n\r\n};\r\n","import { useState } from \"react\";\r\nimport { FlexRow } from \"../common\";\r\nimport { Popup, PopupBody, PopupFooter, RadioButton } from \"../controls\";\r\nimport { newBWICActions, processActions } from '../../actions';\r\nimport IconSVG from \"../../styles/svg-icons\";\r\nimport { useAppDispatch } from \"../../effects/useAppDispatch\";\r\n\r\n\r\ninterface Props {\r\n isAllToAllDefault?: boolean | null\r\n}\r\nexport default function TradingProtocolPopup({ isAllToAllDefault }: Props) {\r\n const dispatch = useAppDispatch()\r\n\r\n const [visible, setVisible] = useState(true);\r\n const [isAllToAll, setIsAllToAll] = useState(isAllToAllDefault);\r\n\r\n\r\n if (!visible) return null;\r\n\r\n const handleClosePopup = () => dispatch(newBWICActions.previousStep());\r\n\r\n return (\r\n \r\n \r\n

Select one Trading Protocol from the list below:

\r\n
\r\n setIsAllToAll(false)}\r\n />\r\n

Prefer transparency and relationship-driven execution? Opt for DirectBidding™ to disclose your identity to broker-dealer while still sending anonymous BWICs to the buy-side.

\r\n setIsAllToAll(true)}\r\n />\r\n

Looking for privacy and anonymity in trade execution? Send anonymous BWICs to both buy-side and sell-side platform members with our All-to-All trading protocol.

\r\n
\r\n
\r\n \r\n \r\n \r\n Cancel\r\n \r\n {\r\n setVisible(false);\r\n dispatch(processActions.setAllToAllProtocol(isAllToAll));\r\n }}\r\n >\r\n Next \r\n \r\n \r\n \r\n \r\n )\r\n\r\n};\r\n","import React, { useCallback, useEffect, useMemo } from 'react';\r\nimport { some } from 'lodash';\r\nimport { brokerDealerContactListActions } from '../../../actions/broker-dealer-contact-list.actions';\r\nimport { brokerDealerUserListActions } from '../../../actions/broker-dealer-user-list.actions';\r\nimport { newBwicDealersActions } from '../../../actions/new-bwic-dealers.actions';\r\nimport { useSelector } from 'react-redux';\r\nimport { newBwicDealersSelector } from '../../../selectors/new-bwic-dealers.selector';\r\nimport { FlexRow, Preloader, SearchInput } from '../../common';\r\nimport { processActions } from \"../../../actions\";\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { WizardHeader } from '../WizardHeader';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { isRequestSuccess, shouldRequest, apiUtils } from '../../../utils';\r\nimport { DealerList } from '../../dealer-list/DealerList';\r\nimport { useDealersFilter } from '../../../effects/useDealersFilter';\r\nimport { dealerListActions } from '../../../actions/dealer-list.actions';\r\nimport { DealerListFilter } from '../../dealer-list/DealerListFilter';\r\nimport { CompanyStatus } from '../../../types/company/CompanyStatus';\r\nimport { getClearingBankConfirmedAgreementsByDealer } from '../../../utils/direct-bidding.utils';\r\nimport { DealerListFilterOption } from '../../../types/state/DealerListState';\r\nimport { useBrokerDealers } from '../../../effects/useBrokerDealers';\r\nimport { useSettlementAgentAgreements } from '../../../effects/useSettlementAgentAgreements';\r\nimport { BwicProcessType } from '../../../types/models/Process';\r\nimport SelectPlatformDealersPopup from '../SelectPlatformDealersPopup';\r\nimport { user } from '../../../user/user';\r\nimport { roles } from '../../../constants/roles';\r\nimport { RadioButton } from '../../controls';\r\nimport TradingProtocolPopup from '../TradingProtocolPopup';\r\nimport { InfoTooltip } from \"../../common/InfoTooltip\";\r\nimport { useAgreement } from '../../seller-buyside/useAgreement';\r\nimport { SettlementAgreementStatus } from '../../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { appConfig } from '../../../app-config';\r\nimport { useAppDispatch } from '../../../effects/useAppDispatch';\r\n\r\nexport const NewBwicDealers: React.FC = () => {\r\n const dispatch = useAppDispatch();\r\n\r\n const brokerDealerListState = useBrokerDealers();\r\n const agreementsState = useSettlementAgentAgreements();\r\n\r\n const selectedDealers = useSelector((state: AppState) => state.newBwicDealers.selectedDealers);\r\n const favoriteDealers = useSelector((state: AppState) => state.favoriteBrokerDealers.favorites);\r\n const selectedByDefault = useSelector((state: AppState) => state.newBwicDealers.selectedByDefault);\r\n const brokerDealerContactsState = useSelector((state: AppState) => state.entities.brokerDealerContactList);\r\n const brokerDealerUsersState = useSelector((state: AppState) => state.entities.brokerDealerUserList);\r\n const searchTerm = useSelector((state: AppState) => state.newBwicDealers.filter.searchTerm);\r\n const filterOptions = useSelector((state: AppState) => state.newBwicDealers.filter.filterOptions);\r\n const liveBidding = useSelector((state: AppState) => state.process.templates.current?.type === BwicProcessType.Live);\r\n const selectPlatformDealersPopupVisible = useSelector((state: AppState) => state.newBwicDealers.selectPlatformDealersPopupVisible);\r\n const isAllToAll = useSelector((state: AppState) => state.process.isAllToAll);\r\n const { agreement } = useAgreement();\r\n const agreementStatusConfirmed = agreement?.agreementStatus === SettlementAgreementStatus.confirmed\r\n\r\n const dealerList = useSelector(newBwicDealersSelector);\r\n const isLoadingFinished = isRequestSuccess(\r\n brokerDealerListState.requestState,\r\n brokerDealerContactsState.requestState,\r\n brokerDealerUsersState.requestState,\r\n agreementsState.requestState\r\n );\r\n\r\n useEffect(() => {\r\n if (shouldRequest(brokerDealerContactsState.requestState)) {\r\n dispatch(brokerDealerUserListActions.request());\r\n dispatch(brokerDealerContactListActions.request());\r\n }\r\n }, [brokerDealerListState.requestState, brokerDealerContactsState.requestState, agreementsState.requestState, dispatch]);\r\n\r\n const { dealers } = useDealersFilter(\r\n dealerList,\r\n brokerDealerContactsState.items,\r\n brokerDealerUsersState.items,\r\n searchTerm,\r\n filterOptions,\r\n favoriteDealers,\r\n agreementsState.items,\r\n !isLoadingFinished\r\n );\r\n\r\n const agreementsByDealer = useMemo(() => getClearingBankConfirmedAgreementsByDealer(agreementsState.items),\r\n [agreementsState.items]\r\n );\r\n\r\n const isSelectAllCheckboxDisabled = useCallback(() =>\r\n dealers.every(d => d.isClearingBank && agreementsByDealer[d.id]) ||\r\n (liveBidding && dealers.every(d => d.status !== CompanyStatus.active)), // Bidding type is Live and all companies are off-platform\r\n [liveBidding, dealers, agreementsByDealer]\r\n );\r\n\r\n const allSelected = isLoadingFinished && dealers.every(d => selectedDealers[d.id]);\r\n\r\n useEffect(() => {\r\n if (isLoadingFinished && dealers.length && !selectedByDefault) {\r\n dispatch(newBwicDealersActions.selectDealersByDefault(dealers));\r\n }\r\n }, [isLoadingFinished, dealers, selectedByDefault, liveBidding, dispatch]);\r\n\r\n const selectAllConfirmedClearingBank = () => {\r\n const selectedClearingBank: { [dealerId: number]: boolean } = {};\r\n dealerList.forEach(d => {\r\n if (d.isClearingBank && d.status === CompanyStatus.active && agreementsByDealer[d.id]) {\r\n selectedClearingBank[d.id] = true\r\n }\r\n });\r\n return selectedClearingBank;\r\n };\r\n\r\n // Reset selected state for off-platform companies if live bidding\r\n const selectAllLiveBidding = () => {\r\n if (liveBidding) {\r\n const offPlatformCompanies = dealerList.filter(d => d.status !== CompanyStatus.active);\r\n return apiUtils.normalize(offPlatformCompanies, c => c.id, () => false);\r\n };\r\n\r\n return {};\r\n }\r\n\r\n const handleSelectAllChange = () => {\r\n const allDealersSelectedLiveBidding = liveBidding && dealers.every(d => selectedDealers[d.id] || d.status !== CompanyStatus.active);\r\n\r\n const updatedSelectedDealers = {\r\n ...selectedDealers,\r\n ...apiUtils.normalize(dealers, d => d.id, () => liveBidding ? !allDealersSelectedLiveBidding : !allSelected),\r\n ...selectAllConfirmedClearingBank(),\r\n ...selectAllLiveBidding()\r\n };\r\n dispatch(newBwicDealersActions.selectDealers(updatedSelectedDealers));\r\n };\r\n\r\n const handleAddContact = () => {\r\n dispatch(dealerListActions.setEditableContact({\r\n id: 0,\r\n companyId: 0,\r\n firstName: '',\r\n lastName: '',\r\n role: '',\r\n email: '',\r\n phone: '',\r\n readonly: false,\r\n deleted: false,\r\n invitationSent: false\r\n }, '')\r\n )\r\n };\r\n\r\n const handleFilterChange = (option: DealerListFilterOption) => {\r\n dispatch(newBwicDealersActions.updateFilterOptions(option));\r\n dispatch(dealerListActions.expandDealers({}, true))\r\n };\r\n\r\n const handleTradingProtocolChange = (isAllToAll: boolean) => {\r\n dispatch(newBwicDealersActions.setSearchTerm(''));\r\n dispatch(newBwicDealersActions.clearFilterOptions());\r\n dispatch(processActions.setAllToAllProtocol(isAllToAll))\r\n };\r\n\r\n const resetFilterAndSearch = () => {\r\n dispatch(newBwicDealersActions.clearFilterOptions());\r\n dispatch(newBwicDealersActions.setSearchTerm(''));\r\n };\r\n\r\n const nextButtonEnabled = dealers.length && some(selectedDealers, d => d);\r\n\r\n return (\r\n <>\r\n
\r\n \r\n {\r\n user.hasRoles(...roles.seller()) &&\r\n
\r\n
\r\n {\r\n appConfig.createAllToAllBySeller &&\r\n agreementStatusConfirmed &&\r\n
\r\n
\r\n \r\n
\r\n \r\n handleTradingProtocolChange(false)}\r\n />\r\n \r\n \r\n \r\n handleTradingProtocolChange(true)}\r\n />\r\n \r\n \r\n
\r\n
\r\n
\r\n }\r\n
\r\n dispatch(newBwicDealersActions.setSearchTerm(value))}\r\n onClear={() => dispatch(newBwicDealersActions.setSearchTerm(''))}\r\n disabled={!dealerList.length || !!isAllToAll}\r\n small\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 isLoadingFinished &&\r\n dispatch(newBwicDealersActions.selectDealer(dealerId))}\r\n agreements={agreementsState.items}\r\n noResultsFoundMessage={!dealerList.length ? 'There are no broker-dealer companies.' : undefined}\r\n onResetClick={dealerList.length ? resetFilterAndSearch : undefined}\r\n selectAllCheckboxDisabled={isSelectAllCheckboxDisabled()}\r\n liveBidding={liveBidding}\r\n />\r\n }\r\n \r\n {selectPlatformDealersPopupVisible && }\r\n {\r\n appConfig.createAllToAllBySeller &&\r\n user.hasRoles(roles.SellerTrader) &&\r\n agreementStatusConfirmed && \r\n }\r\n \r\n )\r\n};\r\n","import React, { Component } from 'react'\r\nimport { connect } from 'react-redux';\r\nimport { Securities, Documents, Process } from './steps';\r\nimport { Submit } from './steps/Submit';\r\nimport { NewBwicDealers } from './steps/NewBwicDealers';\r\nimport { newBWICSteps as steps } from '../../constants';\r\nimport { newBWICActions as actions } from '../../actions';\r\nimport { RouteLeavingGuard } from '../routing';\r\nimport { DirectBiddingDisclaimerContentBlocker } from '../direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerContentBlocker';\r\nimport { bwicChangedFlagSelector } from '../../selectors/bwic-changed-flag.selector';\r\nimport { isRequesting, isRequestSuccess } from '../../utils';\r\n\r\nclass Wizard extends Component {\r\n componentDidMount = () => this.props.dispatch(actions.init(this.props.match.params.referenceName));\r\n\r\n componentWillUnmount = () => this.props.dispatch(actions.reset());\r\n\r\n render = () => {\r\n const { activeStep, history, isBwicChanged } = this.props;\r\n const step = this.getActiveStep(activeStep);\r\n\r\n return (\r\n \r\n
\r\n {step}\r\n
\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => isBwicChanged}\r\n />\r\n
\r\n );\r\n }\r\n\r\n getActiveStep = (activeStep) => {\r\n switch (activeStep) {\r\n case steps.securities: return ;\r\n case steps.process: return ;\r\n case steps.participants: return ;\r\n case steps.documents: return ;\r\n case steps.submit: return ;\r\n default: return null;\r\n };\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({ newBWIC, submit, grid, process, securities }) => ({\r\n activeStep: newBWIC.activeStep,\r\n isBwicChanged: bwicChangedFlagSelector({\r\n isInitializing: securities.isInitializing,\r\n activeStep: newBWIC.activeStep,\r\n submitted: isRequestSuccess(submit.submitState) || isRequesting(submit.submitState),\r\n hasBwicPositions: grid.dataItems.filter(i => !i.draft).length > 0,\r\n process\r\n })\r\n});\r\n\r\nconst connectedWizard = connect(mapStateToProps)(Wizard);\r\nexport { connectedWizard as Wizard };\r\n","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { newBWICSteps as steps } from '../../constants';\r\nimport { classnames } from '../../styles/classnames';\r\n\r\nclass ProgressBar extends Component {\r\n render = () => {\r\n const { activeStep = steps.securities, stepHasError, isCompleted } = this.props;\r\n let activeStepIndex = -1;\r\n\r\n const items = Object.keys(steps).map((key, index) => {\r\n const step = steps[key];\r\n const isActive = step === activeStep;\r\n\r\n if (isActive) {\r\n activeStepIndex = index;\r\n }\r\n\r\n const css = classnames({\r\n 'is-active': isActive,\r\n 'warning': steps[key] === stepHasError,\r\n passed: activeStepIndex < 0 || activeStepIndex > index || isCompleted,\r\n });\r\n\r\n return (\r\n
  • \r\n {step}\r\n
  • );\r\n });\r\n\r\n return (\r\n
      \r\n {items}\r\n
    \r\n )\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({ newBWIC }) => ({\r\n activeStep: newBWIC.activeStep\r\n});\r\n\r\nconst connectedProgressBar = connect(mapStateToProps)(ProgressBar);\r\nexport { connectedProgressBar as ProgressBar };\r\n","import moment from 'moment';\r\nimport { constants } from '../../../constants';\r\n\r\ninterface Props {\r\n publishingDate: Date;\r\n}\r\n\r\nconst renderTimeLabel = (publishingDate: Date) => {\r\n const now = moment();\r\n const newsDate = moment(publishingDate);\r\n\r\n const hoursPassed = Math.floor(moment.duration(now.diff(newsDate)).asHours());\r\n\r\n if (hoursPassed >= 24 || hoursPassed < 0) {\r\n return newsDate.utc().format(constants.dateFormatDoubleDay);\r\n }\r\n\r\n // ¯\\_(ツ)_/¯\r\n if (hoursPassed <= 1) {\r\n return `1 hour ago`;\r\n }\r\n\r\n return `${hoursPassed} hours ago`;\r\n};\r\n\r\nexport const TimeLabel = ({ publishingDate }: Props) => (\r\n \r\n);\r\n","import { capitalize } from 'lodash';\r\nimport { useHistory } from 'react-router';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { MarketingEvent } from '../../../types/marketing/MarketingEvent';\r\nimport { MarketingEventType, ReleaseItemType } from '../../../types/marketing/Release';\r\nimport { FallbackImage, ImageLoader } from '../../common/ImageLoader';\r\nimport classNames from 'classnames';\r\nimport { NewsAccessType } from '../../../types/amr-pipeline/enums/NewsAccessType';\r\nimport { useDispatch } from 'react-redux';\r\nimport { newsActions } from '../../../actions/news.actions';\r\nimport { OnHoverTooltip } from '../../common';\r\nimport { LocationState, LocationStateBuilder, PopupType } from '../../../types/state/ui/LocationState';\r\nimport { TWhatsNewPopupPayload } from '../../whats-new-popup/WhatsNewPopup';\r\n\r\ninterface EventWidgetProps {\r\n event: MarketingEvent;\r\n className?: string;\r\n}\r\n\r\nconst EventTypeImagePath = {\r\n [MarketingEventType.Release]: 'release-image',\r\n [MarketingEventType.Webinar]: 'webinar-image',\r\n [MarketingEventType.Conference]: 'conference-image',\r\n};\r\n\r\nconst ReleaseItemTypeToAccess: Partial> = {\r\n [ReleaseItemType.NewFeature]: NewsAccessType.newFeatures,\r\n [ReleaseItemType.Improvement]: NewsAccessType.improvements,\r\n};\r\n\r\nconst MarketingEventTypeToAccess: Partial> = {\r\n [MarketingEventType.Conference]: NewsAccessType.conference,\r\n [MarketingEventType.Webinar]: NewsAccessType.webinars,\r\n};\r\n\r\nconst ImageFallback = (
    {FallbackImage}
    );\r\n\r\nexport const EventWidget = ({ event, className }: EventWidgetProps) => {\r\n const dispatch = useDispatch();\r\n const history = useHistory>();\r\n\r\n const renderItemTitle = (item: MarketingEvent) => {\r\n if (item.type === MarketingEventType.Release) {\r\n const iconName = item.releaseItemType === ReleaseItemType.NewFeature\r\n ? 'favorite'\r\n : 'idea';\r\n\r\n return (\r\n <>\r\n \r\n {item.title}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {capitalize(item.type)}\r\n \r\n );\r\n };\r\n\r\n const renderItemDescription = (item: MarketingEvent) => {\r\n if (item.type === MarketingEventType.Webinar) {\r\n if (item.speakerName && item.speakerTitle) {\r\n return (\r\n <>\r\n Speaker: \r\n \r\n {item.speakerName}, {item.speakerTitle}\r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n {item.description}\r\n \r\n \r\n );\r\n };\r\n\r\n const onEventClick = (marketingEvent: MarketingEvent) => (event: React.MouseEvent) => {\r\n let accessType: NewsAccessType | undefined = MarketingEventTypeToAccess[marketingEvent.type];\r\n\r\n if (marketingEvent.type === MarketingEventType.Release) {\r\n event.preventDefault();\r\n\r\n const { releaseItemType } = marketingEvent;\r\n\r\n accessType = ReleaseItemTypeToAccess[releaseItemType!];\r\n\r\n history.replace({\r\n ...history.location,\r\n state: new LocationStateBuilder(history.location.state)\r\n .popup(PopupType.WhatsNewPopup, { releasesVisible: true, webinarVisible: false })\r\n .result()\r\n });\r\n }\r\n\r\n accessType && dispatch(newsActions.logUserActivity(accessType));\r\n }\r\n\r\n const renderImage = () => {\r\n if (!event.imageReferenceName) {\r\n return ImageFallback;\r\n }\r\n\r\n return (\r\n \r\n );\r\n };\r\n\r\n const composeLink = () => event.type === MarketingEventType.Release ? '#' : event.link;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import { MarketingEvent } from '../../../types/marketing/MarketingEvent';\r\nimport { Preloader } from '../../common';\r\nimport { FallbackImage } from '../../common/ImageLoader';\r\nimport { EventWidget } from './EventWidget';\r\n\r\ninterface EventsSectionProps {\r\n events: MarketingEvent[];\r\n isLoading: boolean;\r\n}\r\n\r\nexport const EventsSection = ({ events, isLoading }: EventsSectionProps) => {\r\n if (isLoading) {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n }\r\n\r\n const renderFallback = () => (\r\n
    \r\n
    \r\n
    \r\n {FallbackImage}\r\n

    Webinars, Conferences, New Features, and Improvements are not available for display at the moment.

    \r\n
    \r\n
    \r\n
    \r\n );\r\n\r\n return (\r\n
    \r\n
    \r\n {events.length\r\n ? events.map((event, index) => (\r\n \r\n ))\r\n : renderFallback()\r\n }\r\n
    \r\n
    \r\n );\r\n};\r\n","import { useDispatch } from 'react-redux';\r\nimport { UsBslNewIssueDsWidget } from '../../../dashboard/usBslNewIssueSpreads/UsBslNewIssueDsWidget';\r\nimport { IssueTransactionVolumeWidget } from '../../../dashboard/issueTransactionVolume/IssueTransactionVolumeWidget';\r\nimport { ShortLongDatedDealsWidget } from '../../../dashboard/shortLongDatedDeals/ShortLongDatedDealsWidget';\r\nimport { pipelineRequestCriteria, routes } from '../../../../constants';\r\nimport { UsBslNewIssueWasWidget } from '../../../dashboard/usBslNewIssueSpreads/UsBslNewIssueWasWidget';\r\nimport { UsBslNewIssueWarfWidget } from '../../../dashboard/usBslNewIssueSpreads/UsBslNewIssueWarfWidget';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { ChartGrouping, ChartUnits } from '../../../../types/dashboard/AmrChart';\r\nimport { newsActions } from '../../../../actions/news.actions';\r\nimport { NewsAccessType } from '../../../../types/amr-pipeline/enums/NewsAccessType';\r\nimport { hasWidgetsAccess } from '../../../../utils/amr-pipeline.utils';\r\nimport { useEffect } from 'react';\r\nimport { dashboarNewIssuedWeeklySpreadsRequest } from '../../../../actions/dashboard.actions';\r\nimport { TransactionType } from '../../../../types/amr-pipeline/enums/TransactionType';\r\nimport { useHistory } from 'react-router';\r\n\r\nexport const PrimaryMarketHighlights = () => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const hasAccess = hasWidgetsAccess();\r\n\r\n useEffect(() => {\r\n hasAccess && dispatch(dashboarNewIssuedWeeklySpreadsRequest());\r\n }, [hasAccess, dispatch]);\r\n\r\n const handleGotoGraphs = () => {\r\n history.replace(`${routes.dashboard}#issuance-monitor`);\r\n dispatch(newsActions.logUserActivity(NewsAccessType.allGraphs));\r\n };\r\n\r\n return (\r\n \r\n \r\n All graphs\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 { BarScheduledBwicsWidget } from '../../../dashboard/barScheduledBwics/BarScheduledBwicsWidget';\r\nimport { DailyTradingStatsWidget } from '../../../dashboard/dailyTradingStats/DailyTradingStatsWidget';\r\nimport { HeatMapScheduledBwicsWidget } from '../../../dashboard/heatmapScheduledBwics/HeatmapScheduledBwicsWidget';\r\nimport { PriceLevelWidget } from '../../../dashboard/priceLevel/PriceLevelWidget';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { routes } from '../../../../constants';\r\nimport { useHistory } from 'react-router';\r\n\r\nexport const BwicsVolumeAndPrice = () => {\r\n const history = useHistory();\r\n\r\n const handleGotoGraphs = () => {\r\n history.replace(`${routes.dashboard}#bwics-volume-and-price`);\r\n };\r\n\r\n return (\r\n \r\n \r\n All graphs\r\n \r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { EventsSection } from './EventsSection';\r\nimport { newsActions } from '../../../actions/news.actions';\r\nimport { Preloader } from '../../common';\r\nimport { PrimaryMarketHighlights } from './charts/PrimaryMarketHighlights';\r\nimport { BwicsVolumeAndPrice } from './charts/BwicsVolumeAndPrice';\r\n// import { MyPortfolio } from './charts/MyPortfolio';\r\nimport { TabItem, TabList } from '../../bidding/common/tab-list';\r\nimport { Pagination } from '../../dashboard/tables/Pagination';\r\nimport { News } from '../../../types/news/News';\r\nimport { NewsItem } from './NewsItem';\r\nimport { constants, routes } from '../../../constants';\r\nimport { NewsCategory, NewsTabToCategory, newsCategoryTitles } from '../../../types/news/enums/NewsCategory';\r\nimport Confirm from '../../alerts/Confirm';\r\nimport { NewsTabCategory } from '../../../types/news/enums/NewsTabCategory';\r\nimport NewsListContext from './NewsListContext';\r\nimport { NewsAccessType, newsAccessTypeByTab } from '../../../types/amr-pipeline/enums/NewsAccessType';\r\nimport { canEditNews } from '../../../utils/news.utils';\r\nimport { Link, useHistory } from 'react-router-dom';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { useQuery } from '../../../effects/useQuery';\r\n\r\nconst NewsTabs = [\r\n { text: 'All', value: NewsTabCategory.All },\r\n { text: newsCategoryTitles[NewsCategory.Primary], value: NewsTabCategory.Primary },\r\n { text: newsCategoryTitles[NewsCategory.Secondary], value: NewsTabCategory.Secondary },\r\n { text: newsCategoryTitles[NewsCategory.Research], value: NewsTabCategory.Research },\r\n // TODO: Will be implemented in the next iteration\r\n // { text: newsCategoryTitles[NewsCategory.MyPortfolio] value: NewsCategory.MyPortfolio },\r\n];\r\n\r\ninterface NewsListRouteQuery {\r\n page?: number;\r\n search?: string;\r\n category?: NewsTabCategory;\r\n}\r\n\r\nconst defaultPages = {\r\n [NewsTabCategory.All]: 1,\r\n [NewsTabCategory.Primary]: 1,\r\n [NewsTabCategory.Secondary]: 1,\r\n [NewsTabCategory.Research]: 1,\r\n};\r\n\r\nexport const NewsList = () => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const { search, category, page } = useQuery();\r\n const withQuery = !!(search || category || page);\r\n\r\n const [activeTab, setActiveTab] = useState(category || NewsTabCategory.All);\r\n\r\n const [currentPage, setCurrentPage] = useState({\r\n ...defaultPages,\r\n ...(page && { [category || NewsTabCategory.All]: Number(page) }),\r\n });\r\n\r\n const newsRef = useRef(null);\r\n\r\n const [newsForDeleting, setNewsForDeleting] = useState();\r\n\r\n const { events, isMarketingEventsLoading, isNewsLoading, news, totalNews } = useSelector((state: AppState) => state.news);\r\n\r\n const currentNews = news[activeTab].get(currentPage[activeTab]);\r\n\r\n const contextValue = {\r\n canEdit: canEditNews()\r\n };\r\n\r\n useEffect(() => {\r\n dispatch(newsActions.fetchMarketingEventsRequest());\r\n dispatch(newsActions.logUserActivity(NewsAccessType.news));\r\n\r\n }, [dispatch, currentNews, activeTab, currentPage]);\r\n\r\n useEffect(() => {\r\n const accessType = newsAccessTypeByTab[activeTab];\r\n\r\n dispatch(newsActions.logUserActivity(accessType));\r\n }, [activeTab, dispatch]);\r\n\r\n useEffect(() => {\r\n if (!newsRef.current) {\r\n return;\r\n }\r\n\r\n var bounding = newsRef.current.getBoundingClientRect();\r\n\r\n if (bounding.top < 0 || bounding.left < 0 || bounding.right > window.innerWidth || bounding.bottom > window.innerHeight) {\r\n newsRef.current.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n }\r\n }, [currentNews]);\r\n\r\n useEffect(() => {\r\n if (!currentNews) {\r\n dispatch(newsActions.fetchNewsRequest(currentPage[activeTab], activeTab));\r\n dispatch(newsActions.fetchTotalNewsCountRequest());\r\n }\r\n }, [dispatch, currentNews, activeTab, currentPage]);\r\n\r\n const resetSearchQuery = () => {\r\n if(withQuery) {\r\n history.replace(routes.newsUrl());\r\n }\r\n }\r\n\r\n const renderNewsSection = () => {\r\n if (isNewsLoading) {\r\n return ;\r\n }\r\n\r\n return (\r\n {\r\n resetSearchQuery();\r\n setCurrentPage({\r\n ...currentPage,\r\n [activeTab]: page,\r\n })\r\n }}\r\n list={currentNews}\r\n >\r\n
    \r\n {currentNews?.map((item, index) => (\r\n setNewsForDeleting(newsItem)}\r\n key={item.referenceName}\r\n newsItem={item}\r\n currentPage={currentPage[activeTab]}\r\n />\r\n ))}\r\n
    \r\n \r\n );\r\n };\r\n\r\n const renderChartsSection = (tab: NewsTabCategory) => {\r\n switch (tab) {\r\n case NewsTabCategory.Primary:\r\n return ;\r\n case NewsTabCategory.Secondary:\r\n return ;\r\n // case NewsCategory.MyPortfolio:\r\n // return ;\r\n default:\r\n return [\r\n ,\r\n ,\r\n // ,\r\n ];\r\n }\r\n };\r\n\r\n const handleDeleteNews = () => {\r\n dispatch(newsActions.deleteNews(newsForDeleting!.referenceName, currentPage[activeTab], activeTab));\r\n setNewsForDeleting(undefined);\r\n }\r\n\r\n const handleChangeTab = (value: NewsTabCategory) => {\r\n resetSearchQuery();\r\n setActiveTab(value);\r\n }\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n

    K-Watch News

    \r\n {contextValue.canEdit && (\r\n
    \r\n \r\n \r\n news\r\n \r\n
    \r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {NewsTabs.map(({ text, value }) => (\r\n handleChangeTab(value)}\r\n active={activeTab === value}\r\n title={text}\r\n />\r\n ))}\r\n \r\n
    \r\n
    \r\n
    {renderNewsSection()}
    \r\n
    \r\n
    {renderChartsSection(activeTab)}
    \r\n
    \r\n
    \r\n {newsForDeleting && (\r\n \r\n Are you sure you want to remove {newsForDeleting.title} news?\r\n \r\n }\r\n onConfirm={handleDeleteNews}\r\n onCancel={() => setNewsForDeleting(undefined)}\r\n />\r\n )}\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n","import qs from 'query-string';\r\nimport { useCallback, useEffect, useState } from 'react';\r\nimport { useHistory, useParams } from 'react-router';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { routes } from '../../../constants';\r\nimport { Breadcrumbs } from '../../controls/breadcrumbs/Breadcrumbs';\r\nimport { BreadcrumbsItem } from '../../controls/breadcrumbs/BreadcrumbsItem';\r\nimport IconSVG from '../../../styles/svg-icons';\r\nimport { newsActions } from '../../../actions/news.actions';\r\nimport { AppState } from '../../../types/state/AppState';\r\nimport { Preloader } from '../../common';\r\nimport { NewsNavigation } from '../../../types/news/News';\r\nimport { NewsCategory, newsCategoryTitles } from '../../../types/news/enums/NewsCategory';\r\nimport { NewsProvider, newsProviderLogos, newsProviderTitles } from '../../../types/news/enums/NewsProvider';\r\nimport { useQuery } from '../../../effects/useQuery';\r\nimport { TimeLabel } from '../news-list/TimeLabel';\r\nimport { NewsLabel, newsLabelTitles } from '../../../types/news/enums/NewsLabel';\r\nimport { ImSubscriptionActionBlocker } from '../../amrPipeline/subscription/ImSubscriptionActionBlocker';\r\nimport classNames from 'classnames';\r\nimport { EditNewsTabType } from '../../../types/news/enums/EditNewsTabType';\r\nimport { Confirm } from '../../alerts';\r\nimport { canEditNews } from '../../../utils/news.utils';\r\nimport { NewsAccessType } from '../../../types/amr-pipeline/enums/NewsAccessType';\r\nimport DownloadDocument from '../../amrPipeline/common/documents/DownloadDocument';\r\nimport { FileIcon } from '../../controls';\r\nimport { AmrFile } from '../../../types/amr-pipeline/models/AmrFile';\r\nimport useDownloadDocumentList from '../../../effects/useDownloadDocumentList';\r\nimport { newsService } from '../../../services';\r\n\r\ninterface NewsPageRouteParams {\r\n newsReferenceName: string;\r\n}\r\n\r\nexport interface NewsPageRouteQuery {\r\n search?: string;\r\n category?: NewsCategory;\r\n}\r\n\r\nexport const NewsPage = () => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n\r\n const { newsReferenceName } = useParams();\r\n const { search, category } = useQuery();\r\n\r\n const [showDeletePopup, setShowDeletePopup] = useState(false);\r\n\r\n const canEdit = canEditNews();\r\n\r\n const { currentNews, isNewsLoading } = useSelector((state: AppState) => state.news);\r\n\r\n const files = currentNews?.newsDocuments;\r\n\r\n const getQueryParams = useCallback(() => ({\r\n searchTerm: search,\r\n categories: category ? [category] : undefined\r\n }), [search, category]);\r\n\r\n const { loadHandler, loadingState } = useDownloadDocumentList({\r\n documents: files ?? [],\r\n downloadRequest: (referenceName) => newsService.downloadDocument(newsReferenceName, referenceName),\r\n });\r\n\r\n useEffect(() => {\r\n dispatch(newsActions.fetchNewsDetails(newsReferenceName, getQueryParams()));\r\n\r\n return () => {\r\n dispatch(newsActions.reset());\r\n };\r\n }, [dispatch, getQueryParams, newsReferenceName]);\r\n\r\n useEffect(() => {\r\n if (currentNews?.title) {\r\n document.title = `${currentNews.title} - KTX ATS Platform`;\r\n }\r\n }, [currentNews?.title]);\r\n\r\n const navigate = (newsReferenceName: string) => () => {\r\n const query: NewsPageRouteQuery = { search, category };\r\n\r\n const queryString = qs.stringify(query);\r\n\r\n history.push(`${routes.newsUrl(newsReferenceName)}?${queryString}`);\r\n };\r\n\r\n const handleDeleteNews = () => {\r\n dispatch(newsActions.deleteSingleNews(currentNews!.referenceName));\r\n };\r\n\r\n const handleDownloadFile = (file: AmrFile) => {\r\n loadHandler(file.referenceName, file.name);\r\n dispatch(newsActions.logUserActivity(NewsAccessType.newsDocument));\r\n };\r\n\r\n const renderFiles = () => {\r\n if (!files?.length) {\r\n return null;\r\n }\r\n\r\n return (\r\n
    \r\n {files.map((file) => (\r\n
    \r\n handleDownloadFile(file)}\r\n document={file}\r\n isLoading={loadingState[file.referenceName]}\r\n loadingText\r\n secondary\r\n >\r\n \r\n {file.name}\r\n \r\n
    \r\n ))}\r\n
    \r\n );\r\n };\r\n\r\n const renderNews = (news: NewsNavigation) => {\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n {news.category !== NewsCategory.None && (\r\n
    \r\n
    \r\n {newsCategoryTitles[news.category]}\r\n
    \r\n
    \r\n )}\r\n {news.provider && news.provider !== NewsProvider.None && (\r\n
    \r\n
    \r\n
    \r\n {newsProviderTitles[news.provider]}\r\n
    \r\n Provided by {newsProviderTitles[news.provider]}\r\n
    \r\n
    \r\n )}\r\n {news.label !== NewsLabel.None &&\r\n
    \r\n
    \r\n {newsLabelTitles[news.label]}\r\n
    \r\n
    \r\n }\r\n {canEdit && (\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n setShowDeletePopup(true)}\r\n >\r\n \r\n \r\n
    \r\n
    \r\n )}\r\n
    \r\n

    {news.title}

    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n {!!news.externalSourceLink &&\r\n
    \r\n dispatch(newsActions.logUserActivity(NewsAccessType.externalSource))}\r\n href={news.externalSourceLink}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n >\r\n External Source\r\n \r\n
    \r\n }\r\n {!!news.transactionLink &&\r\n
    \r\n \r\n {blocked =>\r\n dispatch(newsActions.logUserActivity(NewsAccessType.dealDetails))}\r\n href={news.transactionLink}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n className={classNames({ 'disabled': blocked })}\r\n >\r\n Deal Details\r\n \r\n }\r\n \r\n
    \r\n }\r\n {!!news.cloManagerReferenceName &&\r\n
    \r\n dispatch(newsActions.logUserActivity(NewsAccessType.managerProfile))}\r\n href={routes.manageCloManagerUrl(news.cloManagerReferenceName)}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n >\r\n Manager Profile\r\n \r\n
    \r\n }\r\n {!!news.arrangerReferenceName &&\r\n
    \r\n \r\n {blocked =>\r\n \r\n dispatch(newsActions.logUserActivity(NewsAccessType.arranger))\r\n }\r\n className={classNames({ disabled: blocked })}\r\n href={routes.manageBanksUrl(news.arrangerReferenceName)}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n >\r\n Arranger\r\n \r\n }\r\n \r\n
    \r\n }\r\n
    \r\n
    \r\n
    \r\n {renderFiles()}\r\n
    \r\n
    \r\n {news.previousReferenceName && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n {news.nextReferenceName && (\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 return (\r\n <>\r\n {currentNews && renderNews(currentNews)}\r\n\r\n {showDeletePopup && currentNews && (\r\n \r\n Are you sure you want to remove {currentNews.title} news?\r\n \r\n }\r\n onConfirm={handleDeleteNews}\r\n onCancel={() => setShowDeletePopup(false)}\r\n />\r\n )}\r\n \r\n );\r\n};\r\n","import { Route, Switch } from 'react-router';\r\nimport { routes } from '../../constants';\r\nimport { NewsList } from './news-list/NewsList';\r\nimport { useEffect } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { newsActions } from '../../actions/news.actions';\r\nimport { NewsPage } from './news-page/NewsPage';\r\nimport { useScheduledBwics } from '../dashboard/hooks/useScheduledBwics';\r\n\r\nexport const News = () => {\r\n const dispatch = useDispatch();\r\n useScheduledBwics(false);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(newsActions.reset());\r\n }\r\n }, [dispatch]);\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n"],"names":["Summary","selectedDealers","useSelector","state","newBwicDealers","brokerDealerContacts","entities","brokerDealerContactList","items","brokerDealerUsers","brokerDealerUserList","isAllToAll","process","selectedCompanies","dealersSelector","filter","c","id","selectedCompanyCount","length","selectedParticipantCount","map","dealer","contacts","companyId","users","u","totalContacts","headOfTrading","reduce","a","b","selectedDistributionListCount","distributionList","distributionListText","_jsx","Pluralize","count","singular","plural","template","participantText","companyText","_Fragment","children","user","hasRoles","roles","BrokerDealerTrader","className","_jsxs","NewsListContext","React","canEdit","TruncateHtml","_ref","html","maxLength","readMoreLink","initiallyTruncated","sanitizedText","trim","sanitizeHTML","allowedTags","allowedAttributes","sanitizedWithImages","truncatedText","slice","lastSpaceIndex","lastIndexOf","dangerouslySetInnerHTML","__html","NewsTopSection","newsItem","onDeleting","useContext","isDraft","published","category","NewsCategory","None","classNames","concat","newsCategoryTitles","toLowerCase","replace","provider","NewsProvider","LondonStockExchangeGroup","CLOResearchGroup","src","newsProviderLogos","alt","newsProviderTitles","label","NewsLabel","newsLabelTitles","href","routes","manageNewsUrl","referenceName","EditNewsTabType","edit","IconSVG","name","width","height","onClick","NewsAdditionalSection","_ref2","_newsItem$newsDocumen","_newsItem$newsDocumen2","_newsItem$newsDocumen3","externalSourceLink","transactionLink","cloManagerReferenceName","arrangerReferenceName","newsDocuments","dispatch","useDispatch","_useDownloadDocument","useDownloadDocument","downloadRequest","newsService","downloadDocument","downloadDocuments","requestArgs","fileNameForSave","handleDownload","isDownloading","TimeLabel","publishingDate","newsDateTime","newsActions","logUserActivity","NewsAccessType","externalSource","target","rel","ActionBlocker","feature","SubscriptionFeature","IssuanceMonitorFullAccess","blocked","dealDetails","disabled","managerProfile","manageCloManagerUrl","arranger","manageBanksUrl","KWatchNews","Preloader","inProgress","text","small","fullScreen","FeatureButton","_newsItem$newsDocumen4","newsAllDocuments","NewsItem","forwardRef","_ref3","ref","currentCategory","currentPage","history","useHistory","handleDetailsClick","readMore","queryString","qs","search","page","newsUrl","push","query","getNewsPageUrl","noTooltip","title","description","isTruncated","RequiredFeature","renderBlockedContent","BlockedFeatureContent","inline","SubscribeLink","Securities","_Component","_this","_classCallCheck","_len","arguments","args","Array","_key","_callSuper","componentDidMount","_this$props","props","bwic","location","securities","queryParams","URLSearchParams","securitiesActions","init","undefined","render","_this$props2","hasSecuritiesErrors","hasNonDraftItems","securitiesTotalCount","isInitializing","isClipboardDataProcessing","isSecuritiesFileUploading","isGridUploading","isDateValid","isValidatingTradeLimits","nextButtonEnabled","WizardHeader","hasError","BwicDates","DeleteRowsWithErrorButton","DownloadTemplateButton","templateType","Grid","onDataItemsUpload","file","uploadSecurities","onDataItemsPaste","clipboardText","handleClipboardData","onFileSelected","helpPopoverTitle","handleDeleteInvalidSecurities","gridActions","deleteDataItemsWithErrors","_inherits","_createClass","Component","connectedSecurities","withRouter","connect","newBWIC","grid","dataItems","some","draft","activeStep","i","_i$errors","errors","isDataProcessing","upload","status","uploadStatus","uploading","isRequesting","validateTradeLimitsRequestState","Process","templates","all","isTemplateProcessing","isValid","useEffect","actions","newBwicDealersActions","resetSelectedByDefaultFlag","TemplateList","TemplateDetails","Documents","interval","setInterval","uploadDocumentsActions","refresh","componentWillUnmount","clearInterval","isStepNavigationDisabled","isUploading","ManageDealDocuments","connectedDocuments","uploadDocuments","Submit","useAppDispatch","_React$useState","_React$useState2","_slicedToArray","directBwicConfirmationVisible","setDirectBwicConfirmationVisible","agreementsState","useSettlementAgentAgreements","isDirectBwic","s","isRequestSuccess","requestState","brokerDealerList","d","isClearingBank","settlementAgent","agreementStatus","SettlementAgreementStatus","confirmed","positions","userCompany","submit","submitState","current","seller","isLoading","onSubmit","newBWICActions","Participants","EmailDisclaimer","type","BwicProcessType","Live","amount","size","formatUtils","formatBwicTitle","currency","rating","formatTitle","BwicDateTime","bidsDue","date","timeZone","TradingProtocol","isDirectBidding","Rules","firstName","lastName","Disclaimer","Confirm","onCancel","onConfirm","r","SellerTrader","m","email","renderSendButton","handleSubmit","renderPreviousButton","isCompleted","steps","handlePreviousClick","renderNextButton","handleNextClick","isSubmited","isSavingBWIC","isOptional","documents","participateNotification","ProgressBar","stepHasError","StatusMessageSection","StatusMessageSectionType","Info","nextStep","previousStep","defaultProps","connectedWizardHeader","SelectPlatformDealersPopup","newBwicDealerList","newBwicDealersSelector","notSelectedPlatformDealers","CompanyStatus","active","_useState","useState","dealersList","handleClosePopup","setSelectPlatformDealersPopupVisible","Popup","modalClass","onClose","renderInBody","PopupBody","Alert","Checkbox","onChange","e","updatedSelectedDealers","_objectSpread","apiUtils","normalize","checked","selectDealers","PopupFooter","FlexRow","TradingProtocolPopup","isAllToAllDefault","_useState2","visible","setVisible","_useState3","_useState4","setIsAllToAll","RadioButton","processActions","setAllToAllProtocol","NewBwicDealers","brokerDealerListState","useBrokerDealers","favoriteDealers","favoriteBrokerDealers","favorites","selectedByDefault","brokerDealerContactsState","brokerDealerUsersState","searchTerm","filterOptions","liveBidding","_state$process$templa","selectPlatformDealersPopupVisible","agreement","useAgreement","agreementStatusConfirmed","dealerList","isLoadingFinished","shouldRequest","brokerDealerUserListActions","request","brokerDealerContactListActions","dealers","useDealersFilter","agreementsByDealer","useMemo","getClearingBankConfirmedAgreementsByDealer","isSelectAllCheckboxDisabled","useCallback","every","allSelected","selectDealersByDefault","handleTradingProtocolChange","setSearchTerm","clearFilterOptions","apply","_toConsumableArray","appConfig","createAllToAllBySeller","InfoTooltip","SearchInput","value","placeholder","onClear","DealerListFilter","onFilterChange","option","updateFilterOptions","dealerListActions","expandDealers","setEditableContact","role","phone","readonly","deleted","invitationSent","DealerList","enableContactOptions","selectEnabled","favoriteButtonDisabled","onSelectAllChange","allDealersSelectedLiveBidding","selectedClearingBank","forEach","selectAllConfirmedClearingBank","offPlatformCompanies","selectAllLiveBidding","onSelectChange","dealerId","selectDealer","agreements","noResultsFoundMessage","onResetClick","selectAllCheckboxDisabled","Wizard","match","params","reset","isBwicChanged","step","getActiveStep","DirectBiddingDisclaimerContentBlocker","RouteLeavingGuard","navigate","pathname","shouldBlockNavigation","participants","connectedWizard","bwicChangedFlagSelector","submitted","hasBwicPositions","_this$props$activeSte","activeStepIndex","Object","keys","key","index","isActive","css","classnames","passed","connectedProgressBar","renderTimeLabel","now","moment","newsDate","hoursPassed","Math","floor","diff","asHours","utc","format","constants","dateFormatDoubleDay","EventTypeImagePath","_defineProperty","MarketingEventType","Release","Webinar","Conference","ReleaseItemTypeToAccess","ReleaseItemType","NewFeature","newFeatures","Improvement","improvements","MarketingEventTypeToAccess","conference","webinars","ImageFallback","FallbackImage","EventWidget","item","marketingEvent","event","link","accessType","preventDefault","releaseItemType","LocationStateBuilder","popup","PopupType","WhatsNewPopup","releasesVisible","webinarVisible","result","imageReferenceName","ImageLoader","path","fallback","iconName","capitalize","renderItemTitle","speakerName","speakerTitle","OnHoverTooltip","overlay","linkName","EventsSection","events","PrimaryMarketHighlights","hasAccess","hasWidgetsAccess","dashboarNewIssuedWeeklySpreadsRequest","SectionContent","actionBtn","dashboard","allGraphs","IssueTransactionVolumeWidget","defaultFilter","transactionType","TransactionType","newIssue","grouping","ChartGrouping","M","units","ChartUnits","Count","withFilter","ShortLongDatedDealsWidget","periodsCount","startDate","pipelineRequestCriteria","shortLongDatedDeals","startDateDashboard","UsBslNewIssueWasWidget","UsBslNewIssueWarfWidget","UsBslNewIssueDsWidget","BwicsVolumeAndPrice","BarScheduledBwicsWidget","HeatMapScheduledBwicsWidget","PriceLevelWidget","DailyTradingStatsWidget","collapsibleDescription","NewsTabs","NewsTabCategory","All","Primary","Secondary","Research","defaultPages","NewsList","_useQuery","useQuery","withQuery","activeTab","setActiveTab","Number","setCurrentPage","newsRef","useRef","_useState5","_useState6","newsForDeleting","setNewsForDeleting","_useSelector","news","isMarketingEventsLoading","isNewsLoading","totalNews","currentNews","get","contextValue","canEditNews","fetchMarketingEventsRequest","newsAccessTypeByTab","bounding","getBoundingClientRect","top","left","right","window","innerWidth","bottom","innerHeight","scrollIntoView","behavior","block","fetchNewsRequest","fetchTotalNewsCountRequest","resetSearchQuery","Provider","Link","to","manageCreateNews","TabList","TabItem","handleChangeTab","Pagination","itemsOnPage","newsOnPage","total","withGoToPageNavigation","onPageChanged","list","NewsTabToCategory","tab","renderChartsSection","deleteNews","NewsPage","newsReferenceName","useParams","showDeletePopup","setShowDeletePopup","files","getQueryParams","categories","_useDownloadDocumentL","useDownloadDocumentList","loadHandler","loadingState","fetchNewsDetails","document","renderFiles","DownloadDocument","newsDocument","handleDownloadFile","loadingText","secondary","FileIcon","filename","Breadcrumbs","BreadcrumbsItem","route","ImSubscriptionActionBlocker","previousReferenceName","previousTitle","nextReferenceName","nextTitle","deleteSingleNews","News","useScheduledBwics","Switch","Route","exact","component"],"sourceRoot":""}