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