{"version":3,"file":"static/js/main-e54d10b4.deb3d088.js","mappings":"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","sources":["components/deals/DealItem.tsx","components/deals/DealsSelectionPanel.tsx","components/deals/tabs/overview/sections/ClassInfo.tsx","components/deals/tabs/overview/sections/Information.tsx","components/deals/tabs/overview/sections/Dates.tsx","components/deals/DealsContext.ts","components/deals/tabs/overview/sections/Parties.tsx","components/deals/DealsHeaderBase.tsx","components/deals/ClassSelect.tsx","components/deals/DealIntexLink.tsx","components/deals/DealsClassHeader.tsx","components/deals/useFirstClassNavigation.tsx","components/deals/tabs/overview/Overview.tsx","components/deals/CompanyPopup/tabs/Company.tsx","components/deals/CompanyPopup/tabs/Members.tsx","components/deals/CompanyPopup/CompanyPopup.tsx","components/deals/tabs/dealDetails/sections/Additional Information.tsx","components/deals/tabs/dealDetails/sections/ManagementFee.tsx","components/deals/tabs/dealDetails/sections/AdministrativeFee.tsx","components/deals/tabs/dealDetails/sections/DealAmendmentDetails.tsx","components/deals/DealsDefaultHeader.tsx","components/deals/tabs/dealDetails/DealDetails.tsx","components/deals/DealsSaveHeader.tsx","components/deals/tabs/dealDetails/edit/DealValidationSchema.ts","components/deals/tabs/dealDetails/edit/EditDealDetails.tsx","components/deals/tabs/class-detail/sections/ClassSecondaryInfo.tsx","components/deals/tabs/class-detail/ClassDetails.tsx","components/deals/tabs/amrInfo/AmrInfo.tsx","components/deals/tabs/amrInfo/AmrInfoHeader.tsx","components/deals/tabs/amrInfo/amr-classes.columns.tsx","components/deals/tabs/documents/DocumentsList.tsx","components/deals/tabs/amrInfo/edit/SettlementInsctructionsPopup.tsx","components/deals/tabs/amrInfo/edit/EditDealersPopup.tsx","components/deals/tabs/amrInfo/AmrInfoDetails.tsx","components/deals/tabs/all-classes/all-classes.columns.tsx","components/deals/tabs/all-classes/AllClassesView.tsx","components/deals/tabs/all-classes/AllClassesEdit.tsx","components/deals/tabs/all-classes/AllClasses.tsx","components/deals/tabs/documents/Documents.tsx","components/deals/tabs/documents/edit/EditDocumentsList.tsx","components/deals/tabs/documents/edit/EditDocumentsSection.tsx","components/deals/tabs/documents/edit/EditDocuments.tsx","components/deals/tabs/amrInfo/edit/AmrInfoEdit.tsx","components/deals/tabs/amrInfo/AmrClassDetails.tsx","components/deals/Deals.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimer.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerActionBlocker.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerContentBlocker.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerContext.ts","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerLink.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerPopupText.tsx","components/direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerPopup.tsx"],"sourcesContent":["import { forwardRef, useEffect, useState } from 'react';\r\nimport { DealShortInfo } from '../../types/amr-pipeline/models/Deal';\r\nimport classNames from 'classnames';\r\nimport { Link, useHistory, useParams } from 'react-router-dom';\r\nimport { roles, routes } from '../../constants';\r\nimport { DealsTabType, DealsTabTypes } from '../../types/deals/DealsTabType';\r\nimport { DealsRouteParams } from './Deals';\r\nimport Highlighter from '../amrPipeline/common/Highlighter';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { user } from '../../user';\r\nimport { OnHoverTooltip } from '../common';\r\n\r\ninterface DealItemProps {\r\n deal: DealShortInfo;\r\n searchTerm: string;\r\n}\r\n\r\nexport const DealItem = forwardRef(({ deal, searchTerm }: DealItemProps, ref: React.ForwardedRef) => {\r\n const history = useHistory();\r\n const { referenceName } = deal;\r\n const { tab: activeTab, dealReferenceName: selectedDealReferenceName } = useParams();\r\n\r\n const isAdminOrDataEntry = user.hasRoles(roles.Administrator, roles.DataEntry);\r\n const withDocumentsAccess = isAdminOrDataEntry || user.hasRoles(...roles.seller());\r\n const isDealSelected = referenceName === selectedDealReferenceName;\r\n const isTabActive = (tab: DealsTabType) => tab === activeTab && isDealSelected;\r\n\r\n const [isCollapsed, setIsCollapsed] = useState(!isDealSelected);\r\n\r\n useEffect(() => {\r\n if (activeTab && isTabActive(activeTab)) {\r\n setIsCollapsed(false);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [selectedDealReferenceName]);\r\n\r\n useEffect(() => {\r\n setIsCollapsed(!isDealSelected);\r\n }, [isDealSelected, selectedDealReferenceName]);\r\n\r\n const handleDealClick = () => {\r\n setIsCollapsed(!isCollapsed);\r\n\r\n if (!isDealSelected) {\r\n history.push(routes.dealsUrl(referenceName, DealsTabType.Overview, undefined));\r\n }\r\n };\r\n\r\n const renderTabs = () => {\r\n let availableTabs = DealsTabTypes;\r\n\r\n if (!deal.hasClosedTransactions) {\r\n availableTabs = isAdminOrDataEntry ? availableTabs.filter(t => t.value === DealsTabType.DealDetail) : [];\r\n }\r\n\r\n if (!withDocumentsAccess) {\r\n availableTabs = availableTabs.filter(t => t.value !== DealsTabType.Documents);\r\n }\r\n\r\n return availableTabs.map(tab => {\r\n const { value, text } = tab;\r\n const isActive = isTabActive(value);\r\n\r\n if (value === DealsTabType.AmrInfo && !deal.hasAmrTransactions) {\r\n return null;\r\n }\r\n\r\n return (\r\n {\r\n isActive && e.preventDefault();\r\n e.stopPropagation();\r\n }}\r\n >\r\n \r\n {text}\r\n \r\n \r\n );\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n {/* */}\r\n {(deal.hasClosedTransactions || isAdminOrDataEntry) && (\r\n \r\n )}\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {!isCollapsed &&
{renderTabs()}
}\r\n \r\n );\r\n});\r\n","import classnames from 'classnames';\r\nimport { SelectionPanelSearch } from '../amrPipeline/common/SelectionPanelSearch';\r\nimport { EmptyPlaceholder, Preloader } from '../common';\r\nimport { DealShortInfo } from '../../types/amr-pipeline/models/Deal';\r\nimport { useEffect, useLayoutEffect, useRef, useState } from 'react';\r\nimport { DealItem } from './DealItem';\r\nimport { useAppDispatch } from '../../effects/useAppDispatch';\r\nimport { dealsActions } from '../../actions/deals.actions';\r\nimport { useDebounce } from '../../effects/useDebounce';\r\n\r\ninterface Props {\r\n data: DealShortInfo[];\r\n selectedReferenceName: string;\r\n isLoading: boolean;\r\n}\r\n\r\nexport const DealsSelectionPanel = ({ data, selectedReferenceName, isLoading }: Props) => {\r\n const dispatch = useAppDispatch();\r\n const [collapsed, setCollapsed] = useState(false);\r\n const [searchTerm, setSearchTerm] = useState('');\r\n const selectedDealRef = useRef(null);\r\n\r\n const debouncedSearch = useDebounce(searchTerm, 500);\r\n\r\n useEffect(() => {\r\n var customEvent = document.createEvent('Events');\r\n customEvent.initEvent('resize', true, true);\r\n window.dispatchEvent(customEvent);\r\n }, [collapsed]);\r\n\r\n useLayoutEffect(() => {\r\n if (selectedReferenceName) {\r\n selectedDealRef.current?.scrollIntoView({ behavior: 'auto', block: 'start' });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [data]);\r\n\r\n useEffect(() => {\r\n if (debouncedSearch.length > 2 || debouncedSearch.length === 0) {\r\n dispatch(dealsActions.getDeals(debouncedSearch));\r\n }\r\n }, [debouncedSearch, dispatch]);\r\n\r\n const handleSearchTermChange = (value: string) => {\r\n setSearchTerm(value);\r\n };\r\n\r\n const renderDeals = () =>\r\n data.map(deal => {\r\n return ;\r\n });\r\n\r\n const renderEmptyPlaceholder = () => ;\r\n\r\n return (\r\n \r\n );\r\n};\r\n","import { constants, roles } from '../../../../../constants';\r\nimport { Tranche } from '../../../../../types/amr-pipeline/models/Tranche';\r\nimport { amrFormatUtils, formatUtils, moneyUtils } from '../../../../../utils';\r\nimport { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Currency } from '../../../../../types/enums/Currency';\r\nimport { ShowFor } from '../../../../access';\r\n\r\ninterface ClassInfoProps {\r\n selectedClass: Tranche;\r\n dealCurrency?: Currency;\r\n closingDate?: Date;\r\n}\r\n\r\nconst { emptyPlaceholder } = constants;\r\n\r\nexport const ClassInfo = ({ selectedClass, dealCurrency, closingDate }: ClassInfoProps) => {\r\n const {\r\n ticker144A,\r\n cusip144A,\r\n isin144A,\r\n tickerRegS,\r\n cusipRegS,\r\n isinRegS,\r\n commonCodeRegS,\r\n tickerAccdInvCertif,\r\n cusipAccdInvCertif,\r\n isinAccdInvCertif,\r\n originalBalance,\r\n balance,\r\n originalMargin,\r\n margin,\r\n floaterIndex,\r\n minimumDenomination,\r\n factor,\r\n type,\r\n equity,\r\n redeemed,\r\n amr,\r\n nonAmrPeriod,\r\n nonAmrPeriodEnd,\r\n originalRatingMoodys,\r\n originalRatingSnP,\r\n originalRatingFitch,\r\n originalRatingKbra,\r\n originalRatingDbrs,\r\n ratingMoodys,\r\n ratingSnP,\r\n ratingFitch,\r\n ratingKbra,\r\n ratingDbrs,\r\n pariPassuTranches,\r\n trancheSupported,\r\n status,\r\n transactionReferenceName,\r\n name,\r\n linkedOtcName ,\r\n } = selectedClass;\r\n\r\n const { formatDate } = formatUtils;\r\n\r\n return (\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { collateralTypesAbbr } from '../../../../../constants/collateral-types';\r\nimport { constants, roles } from '../../../../../constants';\r\nimport { formatUtils, moneyUtils } from '../../../../../utils';\r\nimport { ShowFor } from '../../../../access';\r\n\r\nconst { emptyPlaceholder } = constants;\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nexport const Information = ({ deal }: Props) => {\r\n const {\r\n legalName,\r\n ticker,\r\n collateralType,\r\n currencyCode,\r\n originalBalance,\r\n currentBalance,\r\n factor,\r\n status,\r\n redeemed,\r\n } = deal;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { formatUtils } from '../../../../../utils';\r\nimport moment from 'moment';\r\nimport { constants } from '../../../../../constants';\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nexport const Dates = ({ deal }: Props) => {\r\n const {\r\n closingDate,\r\n nonCallPeriodEnd,\r\n reinvestmentPeriodEnd,\r\n lastRefinancingDate,\r\n finalMaturity,\r\n firstPaymentDate,\r\n secondPaymentDate,\r\n quarterlyDay,\r\n quarterlyMonths,\r\n vintage,\r\n redemptionDate,\r\n } = deal;\r\n const { formatDate } = formatUtils;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\n\r\ninterface DealsContextProps {\r\n companyForPopup: string | null;\r\n setCompanyForPopup: (referenceName: string) => void;\r\n showDeleteConfirmationPopup: boolean;\r\n setShowDeleteConfirmationPopup: (show: boolean) => void;\r\n}\r\n\r\nconst DealsContext = React.createContext({\r\n companyForPopup: null,\r\n setCompanyForPopup: () => null,\r\n showDeleteConfirmationPopup: false,\r\n setShowDeleteConfirmationPopup: () => null,\r\n});\r\n\r\nexport default DealsContext;\r\n","import { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { constants, routes } from '../../../../../constants';\r\nimport { useContext } from 'react';\r\nimport DealsContext from '../../../DealsContext';\r\nimport { Link } from 'react-router-dom';\r\nimport { CompanyStatus } from '../../../../../types/amr-pipeline/enums/CompanyStatus';\r\nimport { OnHoverTooltip } from '../../../../common/OnHoverTooltip';\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nconst { emptyPlaceholder } = constants;\r\n\r\nexport const Parties = ({ deal }: Props) => {\r\n const { setCompanyForPopup } = useContext(DealsContext);\r\n const {\r\n collateralManager,\r\n majorityEquity,\r\n trustee,\r\n amrAgent,\r\n originalArranger,\r\n currentArranger\r\n } = deal;\r\n\r\n return (\r\n \r\n \r\n {originalArranger.legalName}\r\n \r\n ) : (\r\n emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n \r\n {currentArranger.legalName}\r\n \r\n ) : (\r\n emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n setCompanyForPopup(trustee.referenceName)}>\r\n {trustee.legalName}\r\n \r\n ) : (\r\n deal.trustee?.legalName ? (\r\n \r\n {deal.trustee?.legalName}\r\n \r\n ) : emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n \r\n {collateralManager?.legalName}\r\n \r\n ) : (\r\n emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n setCompanyForPopup(majorityEquity.referenceName)}\r\n >\r\n {majorityEquity.legalName}\r\n \r\n ) : (\r\n majorityEquity?.legalName ? (\r\n \r\n {majorityEquity?.legalName}\r\n \r\n ) : emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n setCompanyForPopup(amrAgent.referenceName)}>\r\n {amrAgent.legalName}\r\n \r\n ) : (\r\n amrAgent?.legalName ? (\r\n \r\n {amrAgent?.legalName}\r\n \r\n ) : emptyPlaceholder\r\n )\r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md\"\r\n />\r\n \r\n );\r\n};\r\n","import { useHistory } from 'react-router';\r\nimport { constants } from '../../constants';\r\nimport { dateTimeUtils } from '../../utils';\r\nimport { castArray } from 'lodash';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { OnHoverTooltip } from '../common';\r\n\r\ninterface DealsHeaderBaseProps {\r\n title: string;\r\n dateUpdated: Date;\r\n renderTitleSuffix?: () => React.ReactNode;\r\n renderLinks?: () => React.ReactNode | React.ReactNode[];\r\n editButtonUrl?: string;\r\n editTooltip?: string;\r\n isEditDisabled?: boolean;\r\n onDeleteClick?: () => void;\r\n}\r\n\r\nexport const DealsHeaderBase = ({\r\n title,\r\n dateUpdated,\r\n renderTitleSuffix,\r\n renderLinks,\r\n editButtonUrl,\r\n editTooltip,\r\n isEditDisabled,\r\n onDeleteClick,\r\n}: DealsHeaderBaseProps) => {\r\n const history = useHistory();\r\n const dateUpdatedEst = dateTimeUtils.changeDateTimeZone(\r\n dateUpdated,\r\n constants.estTimezone,\r\n false\r\n );\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

{title}

\r\n {renderTitleSuffix && (\r\n <>\r\n
\r\n {renderTitleSuffix()}\r\n \r\n )}\r\n {(editButtonUrl || onDeleteClick) && (\r\n
\r\n {onDeleteClick &&\r\n
\r\n \r\n
\r\n }\r\n {editButtonUrl &&\r\n \r\n \r\n \r\n }\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n \r\n {dateUpdatedEst.format(constants.dateFormat)}\r\n \r\n
\r\n {renderLinks && castArray(renderLinks()).map((el, index) => (\r\n
\r\n {el}\r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import { useLayoutEffect, useRef, useState } from 'react';\r\nimport classNames from 'classnames';\r\nimport { ClickOutside } from '../common';\r\nimport IconSVG from '../../styles/svg-icons';\r\nimport { EmptyPlaceholder } from '../common';\r\nimport { Tranche } from '../../types/amr-pipeline/models/Tranche';\r\nimport { Table } from '../bidding/common/table';\r\nimport { constants } from '../../constants';\r\nimport { ColumnBuilder } from '../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../bidding/common/table/types/ColumnDefinition';\r\nimport moment from 'moment';\r\nimport { startCase } from 'lodash';\r\n\r\ninterface Props {\r\n classes: Tranche[];\r\n selectedClassReferenceName?: string;\r\n onChange: (key: string) => void;\r\n dropdownClass?: string;\r\n}\r\n\r\nconst classSelectColumnDefinitions: IColumnDefinition[] = [\r\n {\r\n columnKey: 'className',\r\n renderColumnHeaderContent: () => 'Class',\r\n renderColumnContent: dealClass => dealClass.name,\r\n },\r\n {\r\n columnKey: 'closingDate',\r\n renderColumnHeaderContent: () => 'Closing',\r\n renderColumnContent: dealClass =>\r\n dealClass.transactionClosingDate\r\n ? moment(dealClass.transactionClosingDate).format(constants.dateFormat)\r\n : constants.emptyPlaceholder,\r\n className: \"closing-type-cell\"\r\n },\r\n {\r\n columnKey: 'type',\r\n renderColumnHeaderContent: () => 'Type',\r\n renderColumnContent: dealClass => startCase(dealClass.transactionType),\r\n className: \"closing-type-cell\"\r\n },\r\n];\r\n\r\nexport const classSelectColumns = classSelectColumnDefinitions.map(c => {\r\n return new ColumnBuilder(c);\r\n});\r\n\r\nexport function ClassSelect({ classes, selectedClassReferenceName, onChange, dropdownClass }: Props) {\r\n const selected = classes.find(c => c.referenceName === selectedClassReferenceName);\r\n const [expanded, setExpanded] = useState(false);\r\n\r\n const ref = useRef(null);\r\n\r\n useLayoutEffect(() => {\r\n ref.current?.scrollIntoView();\r\n },[expanded]);\r\n\r\n const onRowClick = (dealClass: Tranche) => {\r\n onChange(dealClass.referenceName);\r\n setExpanded(false);\r\n };\r\n\r\n return (\r\n setExpanded(false)}>\r\n setExpanded(!expanded)}\r\n >\r\n Class {selected?.name}\r\n \r\n
\r\n {expanded && (\r\n
\r\n {classes.length ? (\r\n (item.referenceName === selectedClassReferenceName ? ref : null)}\r\n onRowClick={onRowClick}\r\n createSecurityCustomClassName={(c: Tranche) => {\r\n let classes = [];\r\n\r\n if (c.referenceName === selectedClassReferenceName) {\r\n classes.push('selected');\r\n }\r\n\r\n if (c.status === \"Inactive\") {\r\n classes.push('inactive-class');\r\n }\r\n\r\n return classes.join(' ');\r\n }}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n \r\n );\r\n}\r\n","import { Deal } from '../../types/amr-pipeline/models/Deal';\r\nimport { getCurrentIntexPositionIdForDeal } from '../../utils/amr-pipeline.utils';\r\nimport { IntexLink } from '../common/IntexLink';\r\n\r\ninterface DealIntexLinkProps {\r\n deal: Deal;\r\n}\r\n\r\nexport const DealIntexLink = ({ deal }: DealIntexLinkProps) => (\r\n \r\n);\r\n","import { useSelector } from 'react-redux';\r\nimport { DealsHeaderBase } from './DealsHeaderBase';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { DealsState } from '../../types/state/DealsState';\r\nimport { useHistory, useParams } from 'react-router';\r\nimport { DealsRouteParams } from './Deals';\r\nimport { ClassSelect } from './ClassSelect';\r\nimport { routes } from '../../constants';\r\nimport { ValitanaLink } from '../common/ValitanaLink';\r\nimport { BloombergLink } from '../common/BloombergLink';\r\nimport { DealIntexLink } from './DealIntexLink';\r\nimport { RelatedTransDropdown } from '../amrPipeline/common/RelatedTransDropdown';\r\n\r\ninterface Props {\r\n tab: string;\r\n editButtonUrl?: string;\r\n}\r\n\r\nexport const DealsClassHeader = ({ tab, editButtonUrl }: Props) => {\r\n const history = useHistory();\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const { dealReferenceName, classReferenceName } = useParams();\r\n const activeClass = selectedDeal?.classes.find(c => c.referenceName === classReferenceName);\r\n const withTransactions = !!selectedDeal?.transactions?.length;\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const renderRelatedTransIcon = () => {\r\n return (\r\n \r\n );\r\n };\r\n\r\n const onChangeClass = (dealClassReferenceName: string) => {\r\n return history.push(routes.dealsUrl(dealReferenceName, tab, dealClassReferenceName));\r\n }\r\n\r\n return (\r\n (\r\n <>\r\n
\r\n \r\n \r\n )\r\n : undefined\r\n }\r\n renderLinks={() => [\r\n renderRelatedTransIcon(),\r\n ,\r\n ,\r\n ,\r\n ]}\r\n />\r\n );\r\n};\r\n","import { head } from \"lodash\";\r\nimport { useEffect } from \"react\";\r\nimport { DealsTabType } from \"../../types/deals/DealsTabType\";\r\nimport { useHistory } from \"react-router\";\r\nimport { Deal, DealShortInfo } from \"../../types/amr-pipeline/models/Deal\";\r\nimport { Tranche } from \"../../types/amr-pipeline/models/Tranche\";\r\nimport { routes } from \"../../constants\";\r\n\r\nexport const useFirstClassNavigation = (\r\n dealReferenceName: string,\r\n dealTab: DealsTabType,\r\n data?: DealShortInfo[],\r\n selectedDeal?: Deal,\r\n selectedClass?: Tranche,\r\n) => {\r\n const history = useHistory();\r\n\r\n useEffect(() => {\r\n const firstClass = head(selectedDeal?.classes);\r\n if(selectedClass || !data || !firstClass) {\r\n return;\r\n }\r\n\r\n history.replace(\r\n routes.dealsUrl(\r\n dealReferenceName,\r\n dealTab,\r\n firstClass.referenceName\r\n )\r\n ); \r\n }, [selectedDeal, selectedClass, history, data, dealReferenceName, dealTab]);\r\n};\r\n\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { DealsRouteParams } from '../../Deals';\r\nimport { DealsTabType } from '../../../../types/deals/DealsTabType';\r\nimport { ClassInfo } from './sections/ClassInfo';\r\nimport { Information } from './sections/Information';\r\nimport { Dates } from './sections/Dates';\r\nimport { Parties } from './sections/Parties';\r\nimport { TrancheStatus } from '../../../../types/amr-pipeline/enums/TrancheStatus';\r\nimport { DealsClassHeader } from '../../DealsClassHeader';\r\nimport { Currency } from '../../../../types/enums/Currency';\r\nimport { useFirstClassNavigation } from '../../useFirstClassNavigation';\r\nimport { user } from '../../../../user';\r\nimport { roles, routes } from '../../../../constants';\r\nimport { TransactionStatus } from '../../../../types/amr-pipeline/enums/TransactionStatus';\r\nimport { EmptyPlaceholder } from '../../../common';\r\n\r\nexport const Overview = ({ dealReferenceName, classReferenceName }: DealsRouteParams) => {\r\n const { selectedDeal, data } = useSelector(state => state.deals);\r\n const isAdminOrDataEntry = user.hasRoles(\r\n roles.Administrator,\r\n roles.DataEntry\r\n );\r\n\r\n const dealClasses = isAdminOrDataEntry\r\n ? selectedDeal?.classes\r\n : selectedDeal?.classes.filter(c => c.status !== TrancheStatus.Draft);\r\n const selectedClass = dealClasses?.find(c => c.referenceName === classReferenceName);\r\n\r\n useFirstClassNavigation(\r\n dealReferenceName,\r\n DealsTabType.Overview,\r\n data,\r\n selectedDeal,\r\n selectedClass\r\n );\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const hasEmptyContent =\r\n !isAdminOrDataEntry &&\r\n !selectedDeal.transactions?.some(\r\n (t) => t.status === TransactionStatus.Closed\r\n );\r\n\r\n const renderEmptyPlaceHolder = () => {\r\n const transactionUrl = selectedDeal.transactions?.length\r\n ? routes.transactionDetailUrl(\r\n selectedDeal.transactions[0].referenceName,\r\n selectedDeal.referenceName\r\n )\r\n : null;\r\n return (\r\n \r\n Information will be available after the first transaction closing.
\r\n {transactionUrl && (\r\n <>\r\n \r\n Click here\r\n {\" \"}\r\n to view transaction details.\r\n \r\n )}\r\n
\r\n }\r\n />\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n {hasEmptyContent ? (\r\n renderEmptyPlaceHolder()\r\n ) : (\r\n <>\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {selectedClass && (\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 { CompanyWithMembers } from '../../../../types/amr-pipeline/models/Company';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\n\r\ninterface Props {\r\n company?: CompanyWithMembers;\r\n}\r\n\r\nexport const CompanyTab = ({ company }: Props) => {\r\n const renderAddress = () => {\r\n if (!company) return null;\r\n\r\n const { address, city, state, zipCode, country } = company;\r\n\r\n return (\r\n
\r\n

{address}

\r\n

{city?.name}, {state?.name}

\r\n

{zipCode}, {country?.name}

\r\n
\r\n );\r\n };\r\n\r\n return ;\r\n};\r\n","import { EmptyPlaceholder, OnHoverTooltip } from '../../../common';\r\nimport { Contact } from '../../../../types/amr-pipeline/models/Contact';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { nameUtils } from '../../../../utils';\r\nimport { constants } from '../../../../constants';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\n\r\ninterface Props {\r\n members?: Contact[];\r\n primaryContact?: Contact;\r\n collateralManagerReferenceName?: string;\r\n}\r\n\r\nconst fullName: IColumnDefinition = {\r\n columnKey: 'fullName',\r\n renderColumnHeaderContent: () => 'Full Name',\r\n renderColumnContent: ({ firstName, lastName }) => {\r\n const fullName = nameUtils.getFullName(firstName, lastName);\r\n\r\n return (\r\n
\r\n \r\n {fullName}\r\n \r\n
\r\n );\r\n },\r\n className: 'data-list-cell-lg',\r\n };\r\nconst nameOfGroup: IColumnDefinition = {\r\n ...fullName,\r\n renderColumnContent: (name) => name,\r\n}\r\n\r\nconst memberColumnsDefinitions: IColumnDefinition[] = [\r\n {\r\n columnKey: 'iconContact',\r\n renderColumnHeaderContent: () => null,\r\n renderColumnContent: (member, { primaryContact }) => (\r\n <>\r\n {member.email === primaryContact?.email && (\r\n \r\n \r\n \r\n )}\r\n \r\n ),\r\n className: 'data-list-cell-xxs padding-l-0 text-center',\r\n },\r\n {\r\n columnKey: 'email',\r\n renderColumnHeaderContent: () => 'Email',\r\n renderColumnContent: member => (\r\n
\r\n \r\n {member.email}\r\n \r\n
\r\n ),\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'phone',\r\n renderColumnHeaderContent: () => 'Phone',\r\n renderColumnContent: member => member.mobilePhoneNumber || constants.emptyPlaceholder,\r\n className: 'data-list-cell-md',\r\n },\r\n];\r\n\r\nconst memberColumns = [fullName, ...memberColumnsDefinitions].map(c => new ColumnBuilder(c));\r\nconst memberCollapsibleColumns = [fullName, ...memberColumnsDefinitions].map(c => new ColumnBuilder({ ...c, renderColumnHeaderContent: () => null }));\r\nconst memberHeadColumns = [new ColumnBuilder(nameOfGroup), ...memberColumnsDefinitions.map(c => new ColumnBuilder({ ...c, renderColumnContent: () => null}))];\r\n\r\nconst MembersTab = ({ members, collateralManagerReferenceName, primaryContact }: Props) => {\r\n const withAssignedCollateralManager = (member: Contact) =>\r\n member.assignedCollateralManagerReferenceName === collateralManagerReferenceName;\r\n\r\n const isListGrouped = members?.some(withAssignedCollateralManager) && !members.every(withAssignedCollateralManager);\r\n\r\n const renderCollapsibleList = () => {\r\n const allMembers = (members || []).reduce(\r\n (acc: { assignedContacts: Contact[]; otherContacts: Contact[] }, member) => {\r\n const list: keyof typeof acc = withAssignedCollateralManager(member)\r\n ? 'assignedContacts'\r\n : 'otherContacts';\r\n\r\n return { ...acc, [list]: [...acc[list], member] };\r\n },\r\n { assignedContacts: [], otherContacts: [] },\r\n );\r\n\r\n const { assignedContacts, otherContacts } = allMembers;\r\n const assignedTitle = `Assigned Contacts (${assignedContacts.length})`;\r\n const otherTitle = `Other Contacts (${otherContacts.length})`;\r\n\r\n const allRows = [assignedTitle, otherTitle];\r\n\r\n const renderCollapsibleItem = (listItem: string) => {\r\n return (\r\n \r\n );\r\n };\r\n\r\n return (\r\n \r\n );\r\n };\r\n\r\n const renderPlainList = () => {\r\n return (\r\n ({ primaryContact })}\r\n className=\"data-list-striped\"\r\n />\r\n )\r\n };\r\n\r\n const renderList = () => (isListGrouped ? renderCollapsibleList() : renderPlainList());\r\n\r\n if (!members?.length) {\r\n return ;\r\n }\r\n\r\n return renderList();\r\n};\r\n\r\nexport default MembersTab;\r\n","import { useState } from 'react';\r\nimport { CompanyTab } from './tabs/Company';\r\nimport { Contact } from '../../../types/amr-pipeline/models/Contact';\r\nimport { useCompany } from '../../../effects/data-accessors/useCompany';\r\nimport Popup from '../../controls/Popup';\r\nimport { TabList } from '../../bidding/common/tab-list/TabList';\r\nimport { TabItem } from '../../bidding/common/tab-list/TabItem';\r\nimport { sortContactsByPrimary } from '../../../utils/amr-pipeline.utils';\r\nimport MembersTab from './tabs/Members';\r\n\r\nenum Tab {\r\n Members,\r\n Company,\r\n}\r\n\r\ninterface Props {\r\n companyReferenceName: string;\r\n collateralManagerReferenceName?: string;\r\n onClose: () => void;\r\n}\r\n\r\nexport const CompanyPopup = ({ companyReferenceName, collateralManagerReferenceName, onClose }: Props) => {\r\n const [tab, setTab] = useState(Tab.Members);\r\n\r\n const { companyWithMembers } = useCompany(companyReferenceName);\r\n\r\n const { members, primaryContact, legalName } = companyWithMembers || {};\r\n\r\n if (!companyWithMembers) {\r\n return null;\r\n }\r\n\r\n const renderTab = () => {\r\n if (tab === Tab.Company) {\r\n return ;\r\n }\r\n\r\n let sortedMembers: Contact[] = [];\r\n\r\n if (members && members.length) {\r\n sortedMembers = sortContactsByPrimary(members, primaryContact);\r\n }\r\n\r\n return (\r\n \r\n );\r\n };\r\n\r\n if (!members) {\r\n return null;\r\n }\r\n\r\n const getMembersTitle = () => {\r\n let title = \"Members\";\r\n if (members.length) {\r\n title += ` (${members.length})`;\r\n }\r\n\r\n return title;\r\n };\r\n\r\n return (\r\n \r\n
\r\n \r\n setTab(Tab.Members)}\r\n />\r\n setTab(Tab.Company)} />\r\n \r\n
{renderTab()}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { capitalize } from \"lodash\";\r\nimport { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { formatUtils } from '../../../../../utils';\r\nimport { renderMarkdownOrEmpty } from \"../../../../common/markdown-editor\";\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nexport const AdditionalInformation = ({ deal }: Props) => {\r\n const {\r\n euCompliance,\r\n euRiskRetentionRequirements,\r\n euDisclosureRequirements,\r\n esg,\r\n esgComment,\r\n staticDeal,\r\n amrDeal,\r\n } = deal;\r\n\r\n return (\r\n \r\n \r\n \r\n
\r\n {renderMarkdownOrEmpty(euRiskRetentionRequirements)}\r\n
\r\n
\r\n \r\n
\r\n {renderMarkdownOrEmpty(euDisclosureRequirements)}\r\n
\r\n \r\n \r\n \r\n
\r\n {renderMarkdownOrEmpty(esgComment)}\r\n
\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { formatUtils } from '../../../../../utils';\r\nimport { constants } from '../../../../../constants';\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nconst { emptyPlaceholder } = constants;\r\n\r\nexport const ManagementFee = ({ deal }: Props) => {\r\n const { seniorManagementFee, incentiveManagementFee, subManagementFee } = deal;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { formatUtils, moneyUtils } from '../../../../../utils';\r\nimport { constants } from '../../../../../constants';\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nconst { emptyPlaceholder } = constants;\r\n\r\nexport const AdministrativeFee = ({ deal }: Props) => {\r\n const { adminExpenseCap, adminExpenseCapPercentage, trusteeFee } = deal;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { Deal } from '../../../../../types/amr-pipeline/models/Deal';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { IColumnDefinition } from '../../../../bidding/common/table/types/ColumnDefinition';\r\nimport IconSVG from '../../../../../styles/svg-icons';\r\nimport { Link } from 'react-router-dom';\r\nimport { SORT, SORTING_TYPE, constants, routes } from '../../../../../constants';\r\nimport { Transaction } from '../../../../../types/amr-pipeline/models/Transaction';\r\nimport { formatUtils } from '../../../../../utils';\r\nimport { ColumnBuilder } from '../../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { Table } from '../../../../bidding/common/table';\r\nimport { startCase } from 'lodash';\r\nimport { EmptyPlaceholder, OnHoverTooltip } from '../../../../common';\r\n\r\ninterface Props {\r\n deal: Deal;\r\n}\r\n\r\nconst dealAmendmentDetailsColumnsDefinition: IColumnDefinition<\r\n Transaction,\r\n { dealReferenceName: string; previousTransaction?: Transaction }\r\n>[] = [\r\n {\r\n columnKey: 'type',\r\n renderColumnHeaderContent: () => 'Type',\r\n renderColumnContent: transaction => startCase(transaction.type),\r\n sortingField: 'type',\r\n },\r\n {\r\n columnKey: 'link',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: (transaction, { dealReferenceName }) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n },\r\n className: 'data-list-cell-xxs',\r\n },\r\n {\r\n columnKey: 'closingDate',\r\n renderColumnHeaderContent: () => 'Closing',\r\n renderColumnContent: transaction =>\r\n transaction.closingDate ? formatUtils.formatDate(transaction.closingDate) : constants.emptyPlaceholder,\r\n sortingField: 'closingDate',\r\n sortingType: SORTING_TYPE.date,\r\n },\r\n {\r\n columnKey: 'riEnd',\r\n renderColumnHeaderContent: () => 'Previous / Amended RIE',\r\n renderColumnContent: (transaction, { previousTransaction }) =>\r\n `${\r\n previousTransaction?.reinvestmentPeriodEnd\r\n ? formatUtils.formatDate(previousTransaction.reinvestmentPeriodEnd)\r\n : constants.emptyPlaceholder\r\n } / ${\r\n transaction.reinvestmentPeriodEnd\r\n ? formatUtils.formatDate(transaction.reinvestmentPeriodEnd)\r\n : constants.emptyPlaceholder\r\n }`,\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'ncEnd',\r\n renderColumnHeaderContent: () => 'Previous / Amended NCE',\r\n renderColumnContent: (transaction, { previousTransaction }) =>\r\n `${\r\n previousTransaction?.nonCallPeriodEnd\r\n ? formatUtils.formatDate(previousTransaction.nonCallPeriodEnd)\r\n : constants.emptyPlaceholder\r\n } / ${\r\n transaction.nonCallPeriodEnd\r\n ? formatUtils.formatDate(transaction.nonCallPeriodEnd)\r\n : constants.emptyPlaceholder\r\n }`,\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'maturity',\r\n renderColumnHeaderContent: () => 'Previous / Amended Maturity',\r\n renderColumnContent: (transaction, { previousTransaction }) =>\r\n `${\r\n previousTransaction?.statedMaturity ?? previousTransaction?.finalMaturity\r\n ? formatUtils.formatDate(previousTransaction.statedMaturity ?? previousTransaction.finalMaturity)\r\n : constants.emptyPlaceholder\r\n } / ${\r\n transaction.statedMaturity ?? transaction.finalMaturity\r\n ? formatUtils.formatDate(transaction.statedMaturity ?? transaction.finalMaturity)\r\n : constants.emptyPlaceholder\r\n }`,\r\n className: 'data-list-cell-xl',\r\n },\r\n];\r\n\r\nconst dealAmendmentDetailsColumns = dealAmendmentDetailsColumnsDefinition.map(column => new ColumnBuilder(column));\r\n\r\nexport const DealAmendmentDetails = ({ deal }: Props) => {\r\n const transactions = deal.transactions;\r\n\r\n if (!transactions) {\r\n return null;\r\n }\r\n\r\n const findPreviousTransaction = (referenceName: string) => {\r\n const index = transactions.findIndex(t => t.referenceName === referenceName);\r\n\r\n if (index === -1) {\r\n return undefined;\r\n }\r\n\r\n return transactions[index + 1];\r\n };\r\n\r\n return (\r\n \r\n {!!transactions.length ? (\r\n ({\r\n dealReferenceName: deal.referenceName,\r\n previousTransaction: findPreviousTransaction(t.referenceName),\r\n })}\r\n className=\"data-list-striped\"\r\n />\r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { DealsHeaderBase } from './DealsHeaderBase';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { DealsState } from '../../types/state/DealsState';\r\nimport { useParams } from 'react-router';\r\nimport { DealsRouteParams } from './Deals';\r\nimport { DealIntexLink } from './DealIntexLink';\r\nimport { RelatedTransDropdown } from '../amrPipeline/common/RelatedTransDropdown';\r\n\r\ninterface Props {\r\n editButtonUrl?: string;\r\n editTooltip?: string;\r\n isEditDisabled?: boolean;\r\n onDeleteClick?: () => void;\r\n}\r\n\r\nexport const DealsDefaultHeader = ({ editButtonUrl, editTooltip, isEditDisabled, onDeleteClick }: Props) => {\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const { dealReferenceName } = useParams();\r\n\r\n const hasTransactions = !!selectedDeal?.transactions?.length;\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const renderRelatedTransIcon = () => (\r\n \r\n );\r\n\r\n return (\r\n [\r\n renderRelatedTransIcon(),\r\n ,\r\n ]}\r\n editButtonUrl={editButtonUrl}\r\n editTooltip={editTooltip}\r\n isEditDisabled={isEditDisabled}\r\n />\r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { Dates } from '../overview/sections/Dates';\r\nimport { Information } from '../overview/sections/Information';\r\nimport { Parties } from '../overview/sections/Parties';\r\nimport { AdditionalInformation } from './sections/Additional Information';\r\nimport { ManagementFee } from './sections/ManagementFee';\r\nimport { AdministrativeFee } from './sections/AdministrativeFee';\r\nimport { DealAmendmentDetails } from './sections/DealAmendmentDetails';\r\nimport { DealsDefaultHeader } from '../../DealsDefaultHeader';\r\nimport { roles, routes } from '../../../../constants';\r\nimport { DealsTabType } from '../../../../types/deals/DealsTabType';\r\nimport { useContext } from 'react';\r\nimport DealsContext from '../../DealsContext';\r\nimport { DealStatus } from '../../../../types/amr-pipeline/enums/DealStatus';\r\nimport { user } from '../../../../user/user';\r\nimport { ShowFor } from '../../../access';\r\n\r\nexport const DealDetail = () => {\r\n const { setShowDeleteConfirmationPopup } = useContext(DealsContext);\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const isEditAvailable = user.hasRoles(...roles.dealsEdit());\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n setShowDeleteConfirmationPopup(true)\r\n : undefined\r\n }\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { isNil } from 'lodash';\r\n\r\ninterface DealsSaveHeaderProps {\r\n title: string;\r\n subTitle: string;\r\n isUpdating?: boolean;\r\n hasChanges?: boolean;\r\n onSaveClick: () => void;\r\n onCancelClick: () => void;\r\n}\r\n\r\nexport const DealsSaveHeader = ({\r\n title,\r\n subTitle,\r\n isUpdating,\r\n hasChanges,\r\n onSaveClick,\r\n onCancelClick,\r\n}: DealsSaveHeaderProps) => {\r\n const saveButtonDisabled = isUpdating || (!isNil(hasChanges) && !hasChanges);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n

{title}

\r\n {subTitle}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import * as Yup from 'yup';\r\n\r\nconst RequiredMessage = 'Required';\r\n\r\nexport const DealValidationSchema = Yup.object().shape(\r\n {\r\n legalName: Yup.string().trim().required(RequiredMessage),\r\n }\r\n);\r\n","import { FormikProps, Formik } from 'formik';\r\nimport { useRef, useEffect, useMemo } from 'react';\r\nimport { useSelector } from 'react-redux';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { dealsActions } from '../../../../../actions/deals.actions';\r\nimport { useAppDispatch } from '../../../../../effects/useAppDispatch';\r\nimport { DealSave } from '../../../../../types/deals/DealSave';\r\nimport { AppState } from '../../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../../types/state/DealsState';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { RouteLeavingGuard } from '../../../../routing';\r\nimport { collateralTypesSelectOptions } from '../../../../../constants/collateral-types';\r\nimport { Currencies } from '../../../../../types/enums/Currency';\r\nimport { FormField } from '../../../../amrPipeline/common/FormField';\r\nimport { constants, routes } from '../../../../../constants';\r\nimport { formatUtils } from '../../../../../utils';\r\nimport { DealStatus } from '../../../../../types/amr-pipeline/enums/DealStatus';\r\nimport moment from 'moment';\r\nimport { Preloader } from '../../../../common';\r\nimport { times, trim } from 'lodash';\r\nimport { DealsSaveHeader } from '../../../DealsSaveHeader';\r\nimport { DealsTabType } from '../../../../../types/deals/DealsTabType';\r\nimport { Company } from \"../../../../../types/amr-pipeline/models/Company\";\r\nimport { useParties } from '../../../../../effects/data-accessors/useParties';\r\nimport { TextField } from '../../../../common/form-fields/TextField';\r\nimport { SelectField } from '../../../../common/form-fields/SelectField';\r\nimport { NumberField } from '../../../../common/form-fields/NumberField';\r\nimport { CheckboxField } from '../../../../common/form-fields/CheckboxField';\r\nimport { DateField } from '../../../../common/form-fields/DateField';\r\nimport { MarkdownField } from '../../../../common/form-fields/MarkdownField';\r\nimport { SelectSearchField } from '../../../../forms/SelectSearchField';\r\nimport { DealValidationSchema } from './DealValidationSchema';\r\n\r\nconst currencyOptions = Currencies.map(currency => ({ value: currency, label: currency }));\r\nconst statusOptions = [\r\n {\r\n value: DealStatus.Ready,\r\n label: 'Ready',\r\n },\r\n {\r\n value: DealStatus.NewIssueDraft,\r\n label: 'New Issue',\r\n },\r\n {\r\n value: DealStatus.Draft,\r\n label: 'Draft',\r\n },\r\n];\r\n\r\nconst quarterlyDaysOptions = times(31, index => ({\r\n value: index + 1,\r\n label: index + 1,\r\n}));\r\n\r\nconst quarterlyMonthsOptions = ['Jan, Apr, Jul, Oct', 'Feb, May, Aug, Nov', 'Mar, Jun, Sep, Dec'].map(months => ({\r\n value: months,\r\n label: months,\r\n}));\r\n\r\nconst formatCompaniesToSelect = (selectedReferenceName?: string) => (company: Company) => ({\r\n value: company.referenceName,\r\n text: company.legalName,\r\n selected: company.referenceName === selectedReferenceName,\r\n});\r\n\r\nexport const EditDealDetails = () => {\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n\r\n const formRef = useRef>(null);\r\n const { editDeal, isUpdating } = useSelector(state => state.deals);\r\n const { items: companies } = useParties();\r\n\r\n const availableStatusOptions = useMemo(() => {\r\n const showDraft = !editDeal?.transactions?.length && !editDeal?.hasAmrTransactions;\r\n\r\n return showDraft ? statusOptions : statusOptions.filter(option => option.value !== DealStatus.Draft);\r\n }, [editDeal?.hasAmrTransactions, editDeal?.transactions?.length]);\r\n\r\n useEffect(() => {\r\n dispatch(dealsActions.editDeal());\r\n\r\n return () => {\r\n dispatch(dealsActions.editDealReset());\r\n };\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, []);\r\n\r\n if (!editDeal || !companies) {\r\n return null;\r\n }\r\n\r\n if (isUpdating) {\r\n return \r\n }\r\n\r\n const handleSubmit = (values: DealSave) => {\r\n const deals = { ...values, ticker: trim(values.ticker), transactions: undefined };\r\n\r\n dispatch(dealsActions.updateDeal(editDeal.referenceName, deals));\r\n };\r\n\r\n const calculateFactor = (currentBalance?: number, originalBalance?: number) => {\r\n if (!currentBalance || !originalBalance) {\r\n return constants.emptyPlaceholder;\r\n }\r\n\r\n return formatUtils.formatFactor(currentBalance / originalBalance);\r\n };\r\n\r\n return (\r\n \r\n {({ values, dirty, isSubmitting, submitForm }) => (\r\n <>\r\n \r\n history.push(routes.dealsUrl(editDeal.referenceName, DealsTabType.DealDetail))\r\n }\r\n />\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => !!dirty && !isSubmitting}\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { SectionContent } from \"../../../../amrPipeline/common/section/SectionContent\";\r\nimport { Tranche } from \"../../../../../types/amr-pipeline/models/Tranche\";\r\nimport { useEffect } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { dealsActions } from \"../../../../../actions/deals.actions\";\r\nimport { useInvenotory } from \"../../../../../effects/data-accessors/useInventory\";\r\nimport { AppState } from \"../../../../../types/state/AppState\";\r\nimport { isRequestNone, isRequesting } from \"../../../../../utils\";\r\nimport { SecurityHistory } from \"../../../../security-details/SecurityHistory\";\r\nimport { PxTalkHistoricalColorDispersion } from \"../../../../security-details/PxTalkHistoricalColorDispersion\";\r\nimport { EmptyPlaceholder, Preloader } from \"../../../../common\";\r\nimport { DealsState } from \"../../../../../types/state/DealsState\";\r\n\r\ninterface Props {\r\n selectedClass: Tranche;\r\n}\r\n\r\nexport const ClassSecondaryInfo = ({ selectedClass }: Props) => {\r\n const { classSecurity, classSecurityStats, isSecondaryInfoLoading } =\r\n useSelector((state) => state.deals);\r\n const isInventoryDisabled = classSecurity == null;\r\n const inventoryState = useInvenotory(\r\n isInventoryDisabled,\r\n [],\r\n classSecurity?.ticker || \"\"\r\n );\r\n\r\n const dispatch = useDispatch();\r\n\r\n useEffect(() => {\r\n dispatch(dealsActions.getClassSecondaryInfo(selectedClass));\r\n }, [dispatch, selectedClass]);\r\n\r\n const isLoading =\r\n isSecondaryInfoLoading ||\r\n (!isInventoryDisabled &&\r\n (isRequestNone(inventoryState.requestState) ||\r\n isRequesting(inventoryState.requestState))\r\n );\r\n\r\n const withHistoryData =\r\n classSecurity &&\r\n (classSecurityStats.count || inventoryState.inventory.length);\r\n\r\n return (\r\n \r\n
\r\n \r\n {withHistoryData ? (\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 { useSelector } from \"react-redux\";\r\nimport { AppState } from \"../../../../types/state/AppState\";\r\nimport { DealsState } from \"../../../../types/state/DealsState\";\r\nimport { DealsRouteParams } from \"../../Deals\";\r\nimport { DealsTabType } from \"../../../../types/deals/DealsTabType\";\r\nimport { ClassInfo } from \"../overview/sections/ClassInfo\";\r\nimport { ClassSecondaryInfo } from \"./sections/ClassSecondaryInfo\";\r\nimport { DealsClassHeader } from \"../../DealsClassHeader\";\r\nimport { useFirstClassNavigation } from \"../../useFirstClassNavigation\";\r\n\r\nexport const ClassDetails = ({ dealReferenceName, classReferenceName }: DealsRouteParams) => {\r\n const { selectedDeal, data } = useSelector(\r\n (state) => state.deals\r\n );\r\n const selectedClass = selectedDeal?.classes.find(\r\n (c) => c.referenceName === classReferenceName\r\n );\r\n\r\n useFirstClassNavigation(\r\n dealReferenceName,\r\n DealsTabType.ClassDetail,\r\n data,\r\n selectedDeal,\r\n selectedClass\r\n );\r\n\r\n if (!selectedDeal || !selectedClass) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\nimport { formatUtils, moneyUtils, numericUtils } from '../../../../utils';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { AmrTransaction } from '../../../../types/amr-pipeline/models/AmrTransaction';\r\nimport { TransactionType } from '../../../../types/amr-pipeline/enums/TransactionType';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { SORTING_TYPE, constants, roles, routes } from '../../../../constants';\r\nimport StatusLabel from '../../../amrPipeline/StatusLabel';\r\nimport { transactionStatusTitles } from '../../../../types/amr-pipeline/enums/TransactionStatus';\r\nimport { Link } from 'react-router-dom';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { AmrClass } from '../../../../types/amr-pipeline/models/AmrClass';\r\nimport { AmrClassStatusLabel } from '../../../amrPipeline/common/AmrClassStatusLabel';\r\nimport { isNil } from 'lodash';\r\nimport { OnHoverTooltip } from '../../../common';\r\nimport { NonAmrPeriod } from '../../../amrPipeline/common/NonAmrPeriod';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { DealsDefaultHeader } from '../../DealsDefaultHeader';\r\nimport { user } from '../../../../user/user';\r\nimport { TableColumnStickType } from '../../../bidding/common/table/types/TableColumnStickType';\r\n\r\nconst actionsColumn: IColumnDefinition = {\r\n columnKey: 'actions',\r\n renderColumnHeaderContent: () => 'Actions',\r\n renderColumnContent: transaction => (\r\n \r\n \r\n View / Edit AMR\r\n \r\n ),\r\n className: 'data-list-cell-md data-list-cell-action text-right',\r\n stickRight: true,\r\n};\r\n\r\nconst transactionColumnsDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: 'lastUpdated',\r\n renderColumnHeaderContent: () => 'Last Updated',\r\n renderColumnContent: transaction => formatUtils.formatDate(transaction.lastUpdated),\r\n sortingField: 'lastUpdated',\r\n sortingType: SORTING_TYPE.date,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'status',\r\n renderColumnHeaderContent: () => 'Trans. Status',\r\n renderColumnContent: transaction => ,\r\n sortingField: 'status',\r\n className: 'data-list-cell-sm-01',\r\n sortingType: SORTING_TYPE.transactionStatus\r\n },\r\n {\r\n columnKey: 'settlementDate',\r\n renderColumnHeaderContent: () => 'AMR Settlement',\r\n renderColumnContent: transaction => formatUtils.formatDate(transaction.closingDate),\r\n sortingField: 'closingDate',\r\n sortingType: SORTING_TYPE.date,\r\n className: 'data-list-cell-auto',\r\n },\r\n];\r\nconst classesColumnsDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: 'status',\r\n renderColumnHeaderContent: () => 'Auction Status',\r\n renderColumnContent: amrClass => ,\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'class',\r\n renderColumnHeaderContent: () => 'Class',\r\n renderColumnContent: amrClass => amrClass.name,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'cusip',\r\n renderColumnHeaderContent: () => 'CUSIP (144A)',\r\n renderColumnContent: amrClass => amrClass.cusip,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'rating',\r\n renderColumnHeaderContent: () => 'Cur. Rtg (M/S/F/K/D)',\r\n renderColumnContent: amrClass =>\r\n `${amrClass.ratingMoodys || constants.emptyPlaceholder}/${\r\n amrClass.ratingSnP || constants.emptyPlaceholder\r\n }/${amrClass.ratingFitch || constants.emptyPlaceholder}/${\r\n amrClass.ratingKbra || constants.emptyPlaceholder\r\n }/${amrClass.ratingDbrs || constants.emptyPlaceholder}`,\r\n className: 'data-list-cell-xl',\r\n },\r\n {\r\n columnKey: 'balance',\r\n renderColumnHeaderContent: () => 'Cur. Bal',\r\n renderColumnContent: amrClass =>\r\n !isNil(amrClass.balance) && numericUtils.isNumber(amrClass.balance)\r\n ? moneyUtils.money(amrClass.balance)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'totalBids',\r\n renderColumnHeaderContent: () => 'Total Bids',\r\n renderColumnContent: amrClass =>\r\n amrClass.totalOfBids ? moneyUtils.money(amrClass.totalOfBids) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'winningMargin',\r\n renderColumnHeaderContent: () => 'Win Margin, %',\r\n renderColumnContent: amrClass =>\r\n amrClass.winningMargin ? formatUtils.formatMargin(amrClass.winningMargin) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm-01 text-right',\r\n },\r\n {\r\n columnKey: 'capMargin',\r\n renderColumnHeaderContent: () => (\r\n \r\n Cap Margin, %\r\n \r\n ),\r\n renderColumnContent: amrClass =>\r\n amrClass.capMargin ? formatUtils.formatMargin(amrClass.capMargin) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-md text-right',\r\n },\r\n {\r\n columnKey: 'pricingDate',\r\n renderColumnHeaderContent: () => (\r\n \r\n AMR Pricing\r\n \r\n ),\r\n renderColumnContent: amrClass => formatUtils.formatDate(amrClass.pricingDate),\r\n className: 'data-list-cell-sm-01',\r\n },\r\n {\r\n columnKey: 'nonAmr',\r\n renderColumnHeaderContent: () => (\r\n \r\n Non-AMR\r\n \r\n ),\r\n renderColumnContent: amrClass => ,\r\n className: 'data-list-cell-sm-01',\r\n },\r\n];\r\n\r\nconst transactionColumns = transactionColumnsDefinition.map(c => new ColumnBuilder(c));\r\nconst classesColumns = classesColumnsDefinition.map(c => new ColumnBuilder(c));\r\n\r\nexport const AmrInfo = () => {\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const amrTransactions = selectedDeal?.transactions?.filter(t => t.type === TransactionType.amr) || [];\r\n\r\n const isAdminOrDataEntryOrMedia = user.hasRoles(roles.Administrator, roles.DataEntry);\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const renderCollapsibleItem = (transaction: AmrTransaction, columnType: TableColumnStickType) => {\r\n let columns = classesColumns;\r\n\r\n if (columnType === TableColumnStickType.Right) {\r\n columns = [\r\n new ColumnBuilder({\r\n columnKey: 'emptyCol',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: () => '',\r\n className: 'data-list-cell--01',\r\n stickRight: true,\r\n }),\r\n ];\r\n }\r\n\r\n return ;\r\n };\r\n\r\n return (\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { useCallback } from 'react';\r\nimport { routes } from '../../../../constants';\r\nimport { Breadcrumbs } from '../../../controls/breadcrumbs/Breadcrumbs';\r\nimport { BreadcrumbsItem } from '../../../controls/breadcrumbs/BreadcrumbsItem';\r\nimport { useSelector } from 'react-redux';\r\nimport { useParams } from 'react-router';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { DealsRouteParams } from '../../Deals';\r\nimport { DealsTabType } from '../../../../types/deals/DealsTabType';\r\nimport { formatUtils } from '../../../../utils';\r\nimport { DealsHeaderBase } from '../../DealsHeaderBase';\r\nimport { AmrTransaction } from '../../../../types/amr-pipeline/models/AmrTransaction';\r\nimport { AmrStatus } from '../../../../types/amr-pipeline/enums/AmrStatus';\r\n\r\nexport const AmrInfoHeader = ({ onDeleteClick }: { onDeleteClick?: () => void }) => {\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const { classReferenceName, transactionReferenceName } = useParams();\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n // eslint-disable-next-line react-hooks/rules-of-hooks\r\n const getSelectedTransaction = useCallback(() => {\r\n return selectedDeal.transactions?.find(t => t.referenceName === transactionReferenceName) as AmrTransaction;\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [classReferenceName, selectedDeal.transactions]);\r\n\r\n const selectedClass = getSelectedTransaction().classes?.find(c => c.referenceName === classReferenceName);\r\n\r\n const classTitle = `Class ${selectedClass?.name}`;\r\n const transactionTitle = `${selectedDeal.legalName} (${formatUtils.formatDate(\r\n getSelectedTransaction().lastUpdated,\r\n )})`;\r\n\r\n const title = classReferenceName ? classTitle : transactionTitle;\r\n\r\n const handleDelete = () => {\r\n onDeleteClick && onDeleteClick();\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n\r\n {classReferenceName && (\r\n <>\r\n \r\n \r\n )}\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AmrInfoHeader;\r\n","import { Link } from 'react-router-dom';\r\nimport { AmrClass } from '../../../../types/amr-pipeline/models/AmrClass';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { constants, routes } from '../../../../constants';\r\nimport { AmrClassStatusLabel } from '../../../amrPipeline/common/AmrClassStatusLabel';\r\nimport { isNil } from 'lodash';\r\nimport { numericUtils, moneyUtils, formatUtils } from '../../../../utils';\r\nimport { OnHoverTooltip } from '../../../common';\r\nimport { NonAmrPeriod } from '../../../amrPipeline/common/NonAmrPeriod';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\n\r\nconst amrClassesColumnsDefinition: IColumnDefinition[] = [\r\n {\r\n columnKey: 'name',\r\n renderColumnHeaderContent: () => 'Class',\r\n renderColumnContent: amrClass => (\r\n \r\n {amrClass.name}\r\n \r\n ),\r\n stickLeft: true,\r\n },\r\n {\r\n columnKey: 'status',\r\n renderColumnHeaderContent: () => 'Auction Status',\r\n renderColumnContent: amrClass => ,\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'balance',\r\n renderColumnHeaderContent: () => 'Cur. Bal',\r\n renderColumnContent: amrClass =>\r\n !isNil(amrClass.balance) && numericUtils.isNumber(amrClass.balance)\r\n ? moneyUtils.money(amrClass.balance)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'margin',\r\n renderColumnHeaderContent: () => 'Cur. Margin, %',\r\n renderColumnContent: amrClass =>\r\n amrClass.margin ? formatUtils.formatMargin(amrClass.margin) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'capMargin',\r\n renderColumnHeaderContent: () => (\r\n \r\n Cap Margin, %\r\n \r\n ),\r\n renderColumnContent: amrClass =>\r\n amrClass.capMargin ? formatUtils.formatMargin(amrClass.capMargin) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'maxAmount',\r\n renderColumnHeaderContent: () => 'Max Amount',\r\n renderColumnContent: amrClass =>\r\n !isNil(amrClass.balance) && numericUtils.isNumber(amrClass.balance)\r\n ? moneyUtils.money(amrClass.balance)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'minAmount',\r\n renderColumnHeaderContent: () => 'Min Amount',\r\n renderColumnContent: amrClass =>\r\n !isNil(amrClass.minBidAmount) && numericUtils.isNumber(amrClass.minBidAmount)\r\n ? moneyUtils.money(amrClass.minBidAmount)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'stepAmount',\r\n renderColumnHeaderContent: () => 'Step Amount',\r\n renderColumnContent: amrClass =>\r\n !isNil(amrClass.principalAmountStep) && numericUtils.isNumber(amrClass.principalAmountStep)\r\n ? moneyUtils.money(amrClass.principalAmountStep)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'redemption',\r\n renderColumnHeaderContent: () => 'Redemption Price',\r\n renderColumnContent: amrClass =>\r\n amrClass.redemptionPriceInPercent\r\n ? formatUtils.formatDecimal(amrClass.redemptionPriceInPercent, 6)\r\n : constants.emptyPlaceholder,\r\n className: 'data-list-cell-md text-right'\r\n },\r\n {\r\n columnKey: 'pricingDate',\r\n renderColumnHeaderContent: () => 'AMR Pricing',\r\n renderColumnContent: amrClass =>\r\n amrClass.pricingDate ? formatUtils.formatDate(amrClass.pricingDate) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'settlementDate',\r\n renderColumnHeaderContent: () => 'AMR Settlement',\r\n renderColumnContent: amrClass =>\r\n amrClass.settlementDate ? formatUtils.formatDate(amrClass.settlementDate) : constants.emptyPlaceholder,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'nonAmr',\r\n renderColumnHeaderContent: () => (\r\n \r\n Non-AMR\r\n \r\n ),\r\n renderColumnContent: amrClass => ,\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'actions',\r\n renderColumnHeaderContent: () => 'Actions',\r\n renderColumnContent: (amrClass, { setClassForDealerPopup, setClassForSettlementInstructionPopup }) => (\r\n <>\r\n \r\n \r\n \r\n ),\r\n className: 'data-list-cell-xl data-list-cell-amr-classes-actions text-right',\r\n stickRight: true,\r\n },\r\n];\r\n\r\nexport const amrClassesColumns = amrClassesColumnsDefinition.map(column => new ColumnBuilder(column));\r\n","import { AmrDocument } from \"../../../../types/amr-pipeline/models/AmrDocument\";\r\nimport { Table } from \"../../../bidding/common/table\";\r\nimport { EmptySectionContent } from \"../../../amrPipeline/common/section/EmptySectionContent\";\r\nimport { SORT, SORTING_TYPE, constants, roles } from \"../../../../constants\";\r\nimport { user } from \"../../../../user\";\r\nimport { IColumnDefinition } from \"../../../bidding/common/table/types/ColumnDefinition\";\r\nimport { ColumnBuilder } from \"../../../bidding/common/table/columns/column-builder/ColumnBuilder\";\r\nimport IconSVG from \"../../../../styles/svg-icons\";\r\nimport { Checkbox, FileIcon } from \"../../../controls\";\r\nimport { DocumentTypeSelect } from \"../../../../types/amr-pipeline/enums/DocumentType\";\r\nimport moment from \"moment\";\r\nimport DownloadDocument from \"../../../amrPipeline/common/documents/DownloadDocument\";\r\nimport { OnHoverTooltip } from '../../../common';\r\nimport useDownloadDocumentList from \"../../../../effects/useDownloadDocumentList\";\r\nimport { dealsService } from \"../../../../services/deals.service\";\r\n\r\nexport type DocumentColumn = IColumnDefinition;\r\n\r\nexport enum DocumentColumnDate {\r\n executionDate = \"executionDate\",\r\n uploadTime = \"uploadTime\",\r\n}\r\n\r\ninterface Props {\r\n dealReferenceName: string;\r\n items: AmrDocument[];\r\n documentTypes?: DocumentTypeSelect[];\r\n withPublic?: boolean;\r\n documentColumnDate?: DocumentColumnDate;\r\n onClick?: (document: AmrDocument) => void;\r\n}\r\n\r\nexport function DocumentsList({\r\n dealReferenceName,\r\n items,\r\n documentTypes = [],\r\n withPublic = false,\r\n documentColumnDate = DocumentColumnDate.executionDate,\r\n onClick\r\n}: Props) {\r\n const { loadingState, loadHandler } = useDownloadDocumentList({\r\n documents: items,\r\n downloadRequest: (referenceName: string) =>\r\n dealsService.getDealDocument(dealReferenceName, referenceName),\r\n });\r\n\r\n const isAdminOrDataEntry = user.hasRoles(\r\n roles.Administrator,\r\n roles.DataEntry\r\n );\r\n\r\n function onRowClick(document: AmrDocument) {\r\n if (onClick) {\r\n onClick(document);\r\n return;\r\n }\r\n\r\n loadHandler(document.referenceName, document.name);\r\n }\r\n\r\n const getColumns = () => {\r\n const documentsColumnDefinitions: DocumentColumn[] = [\r\n {\r\n columnKey: \"name\",\r\n renderColumnHeaderContent: () => \"Name\",\r\n headerClassName: \"data-list-cell-xl-flexible\",\r\n bodyClassName: \"data-list-cell-xl-flexible\",\r\n renderColumnContent: (document) => (\r\n onRowClick(document)}\r\n >\r\n \r\n {document.name}\r\n \r\n ),\r\n sortingField: \"name\",\r\n sortingType: SORTING_TYPE.string,\r\n },\r\n ...(documentTypes.length\r\n ? [\r\n {\r\n columnKey: \"documentType\",\r\n renderColumnHeaderContent: () => \"Type\",\r\n headerClassName: \"data-list-cell-lg-02\",\r\n bodyClassName: \"data-list-cell-lg-02\",\r\n renderColumnContent: ({ documentType }) => {\r\n const typeLabel = documentTypes.find(dt=> dt.type === documentType)?.text;\r\n return (\r\n \r\n {typeLabel}\r\n \r\n );\r\n },\r\n sortingField: \"documentType\",\r\n sortingType: SORTING_TYPE.string,\r\n } as DocumentColumn,\r\n ]\r\n : []),\r\n {\r\n columnKey: documentColumnDate === DocumentColumnDate.executionDate ? 'executionDate' : 'uploadTime',\r\n renderColumnHeaderContent: () => 'Date',\r\n headerClassName: 'data-list-cell-lg',\r\n bodyClassName: 'data-list-cell-lg',\r\n renderColumnContent: document =>\r\n documentColumnDate === DocumentColumnDate.executionDate\r\n ? moment(document.executionDate).format(constants.dateFormat)\r\n : moment(document.uploadTime).format(constants.dateFormat),\r\n sortingField: documentColumnDate === DocumentColumnDate.executionDate ? 'executionDate' : 'uploadTime',\r\n sortingType: SORTING_TYPE.date,\r\n },\r\n ...(isAdminOrDataEntry && withPublic\r\n ? [\r\n {\r\n columnKey: \"isPublic\",\r\n renderColumnHeaderContent: () => \"Public\",\r\n headerClassName: \"data-list-cell-xs\",\r\n bodyClassName: \"data-list-cell-xs\",\r\n renderColumnContent: (document) => (\r\n \r\n ),\r\n } as DocumentColumn,\r\n ]\r\n : []),\r\n {\r\n columnKey: \"downloadButton\",\r\n renderColumnHeaderContent: () => \"\",\r\n headerClassName: \"data-list-cell-xs\",\r\n bodyClassName: \"data-list-cell-xs\",\r\n renderColumnContent: (document, { isLoading }) => (\r\n onRowClick(document)}\r\n isLoading={isLoading}\r\n >\r\n \r\n \r\n ),\r\n },\r\n ];\r\n\r\n return documentsColumnDefinitions.map((c) => {\r\n return new ColumnBuilder(c);\r\n });\r\n };\r\n\r\n return (\r\n
\r\n {items.length ? (\r\n ({\r\n isLoading: loadingState[item.referenceName],\r\n })}\r\n defaultSortBy=\"executionDate\"\r\n defaultSortByDirection={SORT.DESC}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n}\r\n","import { Formik } from 'formik';\r\nimport { dealsActions } from '../../../../../actions/deals.actions';\r\nimport { RequestState } from '../../../../../constants/request-state';\r\nimport { useAppDispatch } from '../../../../../effects/useAppDispatch';\r\nimport { AmrClass } from '../../../../../types/amr-pipeline/models/AmrClass';\r\nimport { SettlementInstructions } from '../../../../../types/amr-pipeline/models/SettlementInstructions';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { TextField } from '../../../../common/form-fields/TextField';\r\nimport { Preloader } from '../../../../common';\r\nimport { Popup, PopupBody, PopupFooter } from '../../../../controls';\r\nimport { useSettlementInstructions } from '../../../../../effects/useSettlementInstructions';\r\nimport { yup } from '../../../../../validation/yup';\r\n\r\ninterface EditDealersPopupProps {\r\n onClose: () => void;\r\n selectedClass: AmrClass;\r\n}\r\n\r\nconst validationSchema = yup.object().shape({\r\n cashSettlementAccountAbaNumber: yup\r\n .string()\r\n .matches(/^[A-Za-z0-9]{9}$/, 'ABA Number should be a 9-character string.')\r\n .nullable(),\r\n cashSettlementAccountSWIFT: yup\r\n .string()\r\n .matches(/^[A-Za-z0-9]{8,11}$/, 'SWIFT should be 8 or 11-character string.')\r\n .nullable(),\r\n cashSettlementAccountAccountNumber: yup\r\n .string()\r\n .matches(/^[0-9]+$/, 'Must be only digits')\r\n .max(12, 'Account Number should be an up to 12-digits number.')\r\n .nullable(),\r\n bondSettlementAccountDTCParticipant: yup\r\n .string()\r\n .matches(/^[0-9]+$/, 'Must be only digits')\r\n .max(4, 'DTC Participant should be an up to 4-digit number.')\r\n .nullable(),\r\n bondSettlementAccountAgentNumber: yup\r\n .string()\r\n .matches(/^[0-9]+$/, 'Must be only digits')\r\n .max(6, 'Agent Number should be an up to 6-digits number.')\r\n .nullable(),\r\n bondSettlementAccountInstitutionalId: yup\r\n .string()\r\n .matches(/^[0-9]+$/, 'Must be only digits')\r\n .max(10, 'Institutional Id should be an up to 10-digits number.')\r\n .nullable(),\r\n bondSettlementAccountAccountNumber: yup\r\n .string()\r\n .matches(/^[0-9]+$/, 'Must be only digits')\r\n .max(12, 'Account Number should be an up to 12-digits number.')\r\n .nullable(),\r\n});\r\n\r\nexport const SettlementInstructionsPopup = ({ selectedClass, onClose }: EditDealersPopupProps) => {\r\n const dispatch = useAppDispatch();\r\n\r\n const { requestState, settlementInstructions } = useSettlementInstructions({\r\n dealReferenceName: selectedClass.dealReferenceName,\r\n transactionReferenceName: selectedClass.transactionReferenceName,\r\n classReferenceName: selectedClass.referenceName,\r\n });\r\n\r\n const handleSave = (value: SettlementInstructions) => {\r\n dispatch(\r\n dealsActions.saveSettlementInstructionsRequest(\r\n selectedClass.dealReferenceName,\r\n selectedClass.referenceName,\r\n value,\r\n ),\r\n );\r\n onClose();\r\n };\r\n\r\n return (\r\n \r\n Edit Settlement Instructions\r\n Class {selectedClass.name}\r\n \r\n }\r\n onClose={onClose}\r\n modalClass=\"edit-settlement-instructions-popup\"\r\n >\r\n \r\n {({ isSubmitting, submitForm }) => (\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n \r\n );\r\n};\r\n","import React, { useEffect, useMemo, useState } from 'react';\r\nimport { dealsActions } from '../../../../../actions/deals.actions';\r\nimport { useAvailableBrokerDealers } from '../../../../../effects/data-accessors/useAvailableBrokerDealers';\r\nimport { useAppDispatch } from '../../../../../effects/useAppDispatch';\r\nimport { AmrClass } from '../../../../../types/amr-pipeline/models/AmrClass';\r\nimport { Transfer } from '../../../../common/transfer/Transfer';\r\nimport { TransferOption } from '../../../../common/transfer/types';\r\nimport { Popup, PopupBody, PopupFooter } from '../../../../controls';\r\nimport { useExcludedDealers } from '../../../../../effects/useExcludedDealers';\r\n\r\ninterface EditDealersPopupProps {\r\n onClose: () => void;\r\n selectedClass: AmrClass;\r\n}\r\n\r\nexport const EditDealersPopup = ({ selectedClass, onClose }: EditDealersPopupProps) => {\r\n const dispatch = useAppDispatch();\r\n const [selectedDealers, setSelectedDealers] = useState([]);\r\n\r\n const { items } = useAvailableBrokerDealers();\r\n const { excludedDealers } = useExcludedDealers({\r\n dealReferenceName: selectedClass.dealReferenceName,\r\n transactionReferenceName: selectedClass.transactionReferenceName,\r\n classReferenceName: selectedClass.referenceName,\r\n });\r\n\r\n const availableBrokerDealers = useMemo(() => {\r\n return items.map((company, key) => ({\r\n title: company.legalName,\r\n key: company.referenceName,\r\n fixed: false,\r\n permanent: false,\r\n available: true,\r\n draggable: false,\r\n order: key,\r\n }));\r\n }, [items]);\r\n\r\n useEffect(() => {\r\n setSelectedDealers(\r\n excludedDealers\r\n .filter(d => d.trancheReferenceName === selectedClass.referenceName)\r\n .map((d, key) => ({\r\n title: d.dealer.legalName,\r\n key: d.dealer.referenceName,\r\n fixed: false,\r\n permanent: false,\r\n available: true,\r\n draggable: false,\r\n order: key,\r\n })),\r\n );\r\n }, [excludedDealers, selectedClass.referenceName]);\r\n\r\n const handleTransferChange = (options: TransferOption[]) => {\r\n setSelectedDealers(options);\r\n };\r\n\r\n const handleReset = () => {\r\n setSelectedDealers([]);\r\n };\r\n\r\n const handleSave = () => {\r\n dispatch(\r\n dealsActions.saveExcludedDealersRequest(\r\n selectedClass.dealReferenceName,\r\n selectedClass.transactionReferenceName,\r\n selectedClass.referenceName,\r\n selectedDealers.map(dealer => dealer.key),\r\n ),\r\n );\r\n onClose();\r\n };\r\n\r\n return (\r\n \r\n Available / Excluded Dealers\r\n Class {selectedClass.name}\r\n \r\n }\r\n onClose={onClose}\r\n modalClass=\"customize-columns-popup available-excluded-dealers-popup\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { useParams } from 'react-router-dom';\r\nimport { DealsRouteParams } from '../../Deals';\r\nimport AmrInfoHeader from './AmrInfoHeader';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\nimport { AmrTransaction } from '../../../../types/amr-pipeline/models/AmrTransaction';\r\nimport StatusLabel from '../../../amrPipeline/StatusLabel';\r\nimport { formatUtils } from '../../../../utils';\r\nimport { constants } from '../../../../constants/constants';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { amrClassesColumns } from './amr-classes.columns';\r\nimport { useState } from 'react';\r\nimport { AmrClass } from '../../../../types/amr-pipeline/models/AmrClass';\r\nimport { DocumentGroup } from '../../../amrPipeline/common/documents/DocumentGroup';\r\nimport { DocumentColumnDate, DocumentsList } from '../documents/DocumentsList';\r\nimport { Preloader } from '../../../common';\r\nimport { RequestState } from '../../../../constants/request-state';\r\nimport { SettlementInstructionsPopup } from './edit/SettlementInsctructionsPopup';\r\nimport { EditDealersPopup } from './edit/EditDealersPopup';\r\nimport { useAmrDocuments } from '../../../../effects/useAmrDocuments';\r\nimport { dealsService } from '../../../../services/deals.service';\r\nimport { AmrFile } from '../../../../types/amr-pipeline/models/AmrFile';\r\nimport saveAs from 'file-saver';\r\nimport { dealsActions } from '../../../../actions/deals.actions';\r\nimport { useAppDispatch } from '../../../../effects/useAppDispatch';\r\nimport { Confirm } from '../../../alerts';\r\nimport { DownloadFile } from '../../../../types/amr-pipeline/models/DownloadedDocument';\r\n\r\nexport const AmrInfoDetails = () => {\r\n const dispatch = useAppDispatch();\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const [classForDealerPopup, setClassForDealerPopup] = useState();\r\n const [classForSettlementInstructionPopup, setClassForSettlementInstructionPopup] = useState();\r\n const [showDeleteConfirmationPopup, setShowDeleteConfirmationPopup] = useState(false);\r\n\r\n\r\n const { transactionReferenceName } = useParams();\r\n\r\n const selectedTransaction = selectedDeal?.transactions?.find(\r\n t => t.referenceName === transactionReferenceName,\r\n ) as AmrTransaction;\r\n\r\n const { amrDocuments, requestState } = useAmrDocuments({\r\n dealReferenceName: selectedDeal?.referenceName,\r\n transactionReferenceName: selectedTransaction?.referenceName,\r\n });\r\n\r\n if (!selectedDeal || !selectedTransaction) {\r\n return null;\r\n }\r\n\r\n const deleteDraftTransaction = () => {\r\n dispatch(dealsActions.deleteAmrTransaction(selectedDeal.referenceName, selectedTransaction.referenceName));\r\n }\r\n\r\n const downloadDocument = async (document: AmrFile) => {\r\n await dealsService\r\n .downloadAmrDocument(selectedDeal.referenceName, selectedTransaction.referenceName, document.referenceName)\r\n .then((file: DownloadFile) => saveAs(file.blob, document.name));\r\n }\r\n\r\n return (\r\n
\r\n setShowDeleteConfirmationPopup(true)} />\r\n
\r\n \r\n
\r\n }\r\n className=\"data-item-row-full-height data-item-row-status\"\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 setClassForDealerPopup,\r\n setClassForSettlementInstructionPopup,\r\n })}\r\n className=\"data-list-amr-classes\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {classForDealerPopup && (\r\n setClassForDealerPopup(undefined)}\r\n />\r\n )}\r\n {classForSettlementInstructionPopup && (\r\n setClassForSettlementInstructionPopup(undefined)}\r\n />\r\n )}\r\n
\r\n {showDeleteConfirmationPopup && (\r\n setShowDeleteConfirmationPopup(false)}\r\n onConfirm={deleteDraftTransaction}\r\n title=\"Delete Confirmation\"\r\n text={`Are you sure you want to delete ${\r\n selectedTransaction.legalNameOnDeal\r\n } ${formatUtils.formatDate(selectedTransaction.closingDate)} AMR Transaction?`}\r\n />\r\n )}\r\n
\r\n );\r\n};\r\n","import { Link } from 'react-router-dom';\r\nimport { capitalize, isNil, startCase } from 'lodash';\r\nimport { SORTING_TYPE, constants, roles, routes } from '../../../../constants';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { Tranche } from '../../../../types/amr-pipeline/models/Tranche';\r\nimport { amrFormatUtils, formatUtils, moneyUtils } from '../../../../utils';\r\nimport { ColumnBuilder } from '../../../bidding/common/table/columns/column-builder/ColumnBuilder';\r\nimport { IColumnDefinition } from '../../../bidding/common/table/types/ColumnDefinition';\r\nimport { OnHoverTooltip } from '../../../common';\r\nimport { TrancheStatus } from '../../../../types/amr-pipeline/enums/TrancheStatus';\r\nimport { DealsTabType } from '../../../../types/deals/DealsTabType';\r\nimport { Deal } from '../../../../types/amr-pipeline/models/Deal';\r\nimport { user } from '../../../../user';\r\n\r\ninterface AllClassesColumnsContext {\r\n deal: Deal;\r\n}\r\n\r\nconst ExcludedColumnns = [\r\n 'status',\r\n 'transactionReferenceAndClass',\r\n];\r\n\r\nconst allClassesColumnDefinitions: IColumnDefinition[] = [\r\n {\r\n columnKey: 'name',\r\n renderColumnHeaderContent: () => 'Class',\r\n renderColumnContent: (tranche, context) => {\r\n if (tranche.status !== TrancheStatus.Active) {\r\n return tranche.name;\r\n }\r\n\r\n return (\r\n \r\n {tranche.name}\r\n \r\n );\r\n },\r\n sortingField: 'name',\r\n sortingType: SORTING_TYPE.string,\r\n stickLeft: true,\r\n },\r\n {\r\n columnKey: 'status',\r\n renderColumnHeaderContent: () => 'Status',\r\n renderColumnContent: (tranche) => {\r\n return tranche.status;\r\n },\r\n sortingField: 'status',\r\n sortingType: SORTING_TYPE.string,\r\n },\r\n {\r\n columnKey: 'transactionClosingDate',\r\n renderColumnHeaderContent: () => 'Closing',\r\n renderColumnContent: (tranche) => {\r\n return formatUtils.formatDate(tranche.transactionClosingDate);\r\n },\r\n sortingField: 'transactionClosingDate',\r\n sortingType: SORTING_TYPE.date,\r\n },\r\n {\r\n columnKey: 'transactionType',\r\n renderColumnHeaderContent: () => 'Trans. Type',\r\n renderColumnContent: (tranche) => {\r\n return tranche.transactionType\r\n ? startCase(tranche.transactionType)\r\n : constants.emptyPlaceholder;\r\n },\r\n sortingField: 'transactionType',\r\n sortingType: SORTING_TYPE.string,\r\n className: 'data-list-cell-sm-01',\r\n },\r\n {\r\n columnKey: 'link',\r\n renderColumnHeaderContent: () => '',\r\n renderColumnContent: (tranche, context) => {\r\n if (!tranche.transactionReferenceName) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n },\r\n className: 'data-list-cell-xxxs',\r\n },\r\n {\r\n columnKey: 'ticker144A',\r\n renderColumnHeaderContent: () => 'Ticker (Rule 144A)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.ticker144A || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'cusiP144A',\r\n renderColumnHeaderContent: () => 'CUSIP (Rule 144A)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.cusip144A || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-md',\r\n },\r\n {\r\n columnKey: 'isiN144A',\r\n renderColumnHeaderContent: () => 'ISIN (Rule 144A)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.isin144A || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-md',\r\n },\r\n {\r\n columnKey: 'tickerRegS',\r\n renderColumnHeaderContent: () => 'Ticker (Reg S)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.tickerRegS || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'cusipRegS',\r\n renderColumnHeaderContent: () => 'CUSIP (Reg S)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.cusipRegS || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'isinRegS',\r\n renderColumnHeaderContent: () => 'ISIN (Reg S)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.isinRegS || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-sm',\r\n },\r\n {\r\n columnKey: 'commonCodeRegS',\r\n renderColumnHeaderContent: () => 'Common Code (Reg S)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.commonCodeRegS || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg text-right',\r\n },\r\n {\r\n columnKey: 'tickerAccdInvCertif',\r\n renderColumnHeaderContent: () => 'Ticker (Acc’d Inv/Certif.)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.tickerAccdInvCertif || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'cusipAccdInvCertif',\r\n renderColumnHeaderContent: () => 'CUSIP (Acc’d Inv/Certif.)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.cusipAccdInvCertif || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'isinAccdInvCertif',\r\n renderColumnHeaderContent: () => 'ISIN (Acc’d Inv/Certif.)',\r\n renderColumnContent: (tranche) => {\r\n return tranche.isinAccdInvCertif || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'originalBalance',\r\n renderColumnHeaderContent: () => 'Orig. Balance',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.originalBalance)\r\n ? constants.emptyPlaceholder\r\n : moneyUtils.money(tranche.originalBalance);\r\n },\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'balance',\r\n renderColumnHeaderContent: () => 'Cur. Balance',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.balance)\r\n ? constants.emptyPlaceholder\r\n : moneyUtils.money(tranche.balance);\r\n },\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'originalMargin',\r\n renderColumnHeaderContent: () => 'Orig. Margin, %',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.originalMargin)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatMargin(tranche.originalMargin)\r\n },\r\n className: 'data-list-cell-sm-01',\r\n },\r\n {\r\n columnKey: 'margin',\r\n renderColumnHeaderContent: () => 'Cur. Margin, %',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.margin)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatMargin(tranche.margin)\r\n },\r\n className: 'data-list-cell-sm-01',\r\n },\r\n {\r\n columnKey: 'coupon',\r\n renderColumnHeaderContent: () => 'Coupon',\r\n renderColumnContent: (tranche) => {\r\n return tranche.coupon || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-md',\r\n },\r\n {\r\n columnKey: 'minimumDenomination',\r\n renderColumnHeaderContent: () => 'Min. Denomination',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.minimumDenomination)\r\n ? constants.emptyPlaceholder\r\n : moneyUtils.money(tranche.minimumDenomination);\r\n },\r\n className: 'data-list-cell-sm text-right',\r\n },\r\n {\r\n columnKey: 'type',\r\n renderColumnHeaderContent: () => 'Type',\r\n renderColumnContent: (tranche) => {\r\n return tranche.type || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'factor',\r\n renderColumnHeaderContent: () => 'Factor',\r\n renderColumnContent: (tranche) => {\r\n return isNil(tranche.factor)\r\n ? constants.emptyPlaceholder\r\n : formatUtils.formatDecimal(tranche.factor, 4);\r\n },\r\n className: 'data-list-cell-xs text-right',\r\n },\r\n {\r\n columnKey: 'equity',\r\n renderColumnHeaderContent: () => 'Equity',\r\n renderColumnContent: (tranche) => {\r\n return capitalize(formatUtils.formatBoolean(tranche.equity));\r\n },\r\n className: 'data-list-cell-xs',\r\n },\r\n {\r\n columnKey: 'redeemed',\r\n renderColumnHeaderContent: () => 'Redeemed',\r\n renderColumnContent: (tranche) => {\r\n return capitalize(formatUtils.formatBooleanWithPlaceholder(tranche.redeemed));\r\n },\r\n },\r\n {\r\n columnKey: 'amr',\r\n renderColumnHeaderContent: () => 'AMR Class',\r\n renderColumnContent: (tranche) => {\r\n return capitalize(formatUtils.formatBoolean(tranche.amr));\r\n },\r\n },\r\n {\r\n columnKey: 'nonAmrPeriod',\r\n renderColumnHeaderContent: () => 'Non-AMR',\r\n renderColumnContent: (tranche) => {\r\n return tranche.nonAmrPeriod\r\n ? `${tranche.nonAmrPeriod} months`\r\n : constants.emptyPlaceholder;\r\n },\r\n },\r\n {\r\n columnKey: 'nonAmrPeriodEnd',\r\n renderColumnHeaderContent: () => 'Non-AMR Period End',\r\n renderColumnContent: (tranche) => {\r\n return formatUtils.formatDate(tranche.nonAmrPeriodEnd);\r\n },\r\n className: 'data-list-cell-md',\r\n },\r\n {\r\n columnKey: 'originalRating',\r\n renderColumnHeaderContent: () => 'Orig. Rtg (M/S/F/K/D)',\r\n renderColumnContent: (tranche) => {\r\n return amrFormatUtils.formatOriginalRating(tranche);\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'currentRating',\r\n renderColumnHeaderContent: () => 'Cur. Rtg (M/S/F/K/D)',\r\n renderColumnContent: (tranche) => {\r\n return amrFormatUtils.formatCurrentRating(tranche);\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'currency',\r\n renderColumnHeaderContent: () => 'Currency',\r\n renderColumnContent: (tranche, content) => {\r\n return content.deal.currencyCode || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-xs',\r\n },\r\n {\r\n columnKey: 'pariPassuTranches',\r\n renderColumnHeaderContent: () => 'Pari-Passu Classes',\r\n renderColumnContent: (tranche) => {\r\n return tranche.pariPassuTranches || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-md',\r\n },\r\n {\r\n columnKey: 'trancheSupported',\r\n renderColumnHeaderContent: () => 'Class Supported',\r\n renderColumnContent: (tranche) => {\r\n return tranche.trancheSupported || constants.emptyPlaceholder;\r\n },\r\n className: 'data-list-cell-lg',\r\n },\r\n {\r\n columnKey: 'transactionReferenceAndClass',\r\n renderColumnHeaderContent: () => 'Trans. Reference & Class',\r\n renderColumnContent: (tranche) => {\r\n if (!tranche.transactionReferenceName || !tranche.linkedOtcReferenceName) {\r\n return constants.emptyPlaceholder;\r\n }\r\n\r\n return `${tranche.transactionReferenceName}, ${tranche.linkedOtcName}`;\r\n },\r\n className: 'data-list-cell-xl-xxl',\r\n },\r\n];\r\n\r\nexport const getAllClassesColumns = () => {\r\n const columnDefinitions = user.hasRoles(...roles.bd(), ...roles.seller(), roles.Media)\r\n ? allClassesColumnDefinitions.filter(({ columnKey }) => !ExcludedColumnns.includes(columnKey))\r\n : allClassesColumnDefinitions;\r\n\r\n return columnDefinitions.map((c) => new ColumnBuilder(c));\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { SORT, roles, routes } from '../../../../constants';\r\nimport { Table } from '../../../bidding/common/table';\r\nimport { DealsDefaultHeader } from '../../DealsDefaultHeader';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { getAllClassesColumns } from './all-classes.columns';\r\nimport { Checkbox } from '../../../controls';\r\nimport { useMemo, useState } from 'react';\r\nimport { TrancheStatus } from '../../../../types/amr-pipeline/enums/TrancheStatus';\r\nimport { user } from '../../../../user';\r\nimport { Tranche } from '../../../../types/amr-pipeline/models/Tranche';\r\n\r\nexport const AllClassesView = () => {\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n const [showHistoricalClasses, setShowHistoricalClasses] = useState(true);\r\n\r\n const isCheckboxVisible = useMemo(() => {\r\n if (!selectedDeal) {\r\n return false;\r\n }\r\n\r\n return !(\r\n selectedDeal.classes.every(c => c.status === TrancheStatus.Inactive || c.status === TrancheStatus.Draft) ||\r\n !selectedDeal.classes.some(c => c.status === TrancheStatus.Inactive)\r\n );\r\n }, [selectedDeal]);\r\n\r\n const classes = useMemo(() => {\r\n if (!selectedDeal) {\r\n return [];\r\n }\r\n\r\n return showHistoricalClasses\r\n ? selectedDeal.classes\r\n : selectedDeal.classes.filter(tranche => tranche.status === TrancheStatus.Active);\r\n }, [selectedDeal, showHistoricalClasses]);\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const editButtonUrl = user.hasRoles(roles.Administrator, roles.DataEntry)\r\n ? routes.dealsAllClasesUrl(selectedDeal.referenceName, true)\r\n : undefined;\r\n\r\n return (\r\n <>\r\n \r\n
\r\n {isCheckboxVisible && (\r\n setShowHistoricalClasses(e.target.checked)}\r\n label=\"Show Historical Classes\"\r\n className=\"flex-align-end show-historical-classes-checkbox\"\r\n />\r\n )}\r\n ({\r\n deal: selectedDeal,\r\n })}\r\n columns={getAllClassesColumns()}\r\n sticky\r\n defaultSortBy=\"transactionClosingDate\"\r\n defaultSortByDirection={SORT.DESC}\r\n createSecurityCustomClassName={(c: Tranche) => {\r\n if (c.status === TrancheStatus.Inactive || c.status === TrancheStatus.Draft) {\r\n return 'inactive';\r\n }\r\n }}\r\n />\r\n
\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { Grid } from '../../../grid';\r\nimport { routes } from '../../../../constants';\r\nimport { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { useAppDispatch } from '../../../../effects/useAppDispatch';\r\nimport { isEqual, isNil } from 'lodash';\r\nimport { DealsSaveHeader } from '../../DealsSaveHeader';\r\nimport { useHistory } from 'react-router';\r\nimport { dealsActions } from '../../../../actions/deals.actions';\r\nimport { RouteLeavingGuard } from '../../../routing';\r\nimport { gridUtils } from '../../../../utils';\r\nimport { gridActions } from '../../../../actions';\r\n\r\nexport const AllClassesEdit = () => {\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const dataItems = useSelector((state: AppState) => state.grid.dataItems);\r\n const { selectedDeal, isDetailsLoading, isUpdating, allClasses } = useSelector(state => state.deals);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(dealsActions.allClassesInvalidateTranceCache());\r\n dispatch(gridActions.reset());\r\n };\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n if (isDetailsLoading || isNil(selectedDeal)) {\r\n return;\r\n }\r\n\r\n dispatch(dealsActions.allClassesEditInit(selectedDeal));\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isDetailsLoading, isNil(selectedDeal)]);\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const hasChanges = () => !isEqual(allClasses.classes, gridUtils.sanitizeGridItems(dataItems));\r\n\r\n const handleSave = () => dispatch(dealsActions.allClassesUpdate(selectedDeal.referenceName));\r\n\r\n const handleCancel = () => history.push(routes.dealsAllClasesUrl(selectedDeal.referenceName));\r\n\r\n return (\r\n <>\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => hasChanges() && !isUpdating}\r\n />\r\n \r\n
\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 { AllClassesView } from './AllClassesView';\r\nimport { AllClassesEdit } from './AllClassesEdit';\r\n\r\nexport const AllClasses = () => {\r\n return (\r\n
\r\n \r\n }\r\n />\r\n }\r\n />\r\n \r\n
\r\n );\r\n};\r\n","import { useSelector } from \"react-redux\";\r\nimport { AppState } from \"../../../../types/state/AppState\";\r\nimport { DealsState } from \"../../../../types/state/DealsState\";\r\nimport {\r\n cleansingNoticeDocsTypeList,\r\n dealRegularDocsTypeList,\r\n DocumentType,\r\n getDealRegularDocumentTypes,\r\n getDocumentTypeText,\r\n} from \"../../../../types/amr-pipeline/enums/DocumentType\";\r\nimport { AmrDocument } from \"../../../../types/amr-pipeline/models/AmrDocument\";\r\nimport { DocumentsList } from \"./DocumentsList\";\r\nimport { DealsDefaultHeader } from \"../../DealsDefaultHeader\";\r\nimport { constants, roles, routes } from \"../../../../constants\";\r\nimport { DealsTabType } from \"../../../../types/deals/DealsTabType\";\r\nimport { DocumentGroup } from \"../../../amrPipeline/common/documents/DocumentGroup\";\r\nimport { compareDates } from \"../../../../utils/compare.utils\";\r\nimport { user } from \"../../../../user\";\r\nimport { dealsService } from \"../../../../services/deals.service\";\r\nimport moment from \"moment\";\r\nimport { getDealDocLastDate } from \"../../../../utils/amr-pipeline.utils\";\r\nimport { FormField } from \"../../../amrPipeline/common/FormField\";\r\n\r\nexport const groupDocuments = (documentList: AmrDocument[] = [], withEditRole: boolean) => {\r\n const sortedDocumentList = documentList\r\n .map((d) => {\r\n const lastDate = getDealDocLastDate(d);\r\n return {\r\n ...d,\r\n executionDate: moment(lastDate).format(\r\n constants.formatTimeStringWithoutTimeZone\r\n ),\r\n };\r\n })\r\n .sort((a, b) => compareDates(b.executionDate, a.executionDate));\r\n\r\n return {\r\n dealDocuments: sortedDocumentList.filter((d) =>\r\n getDealRegularDocumentTypes().includes(d.documentType)\r\n ),\r\n cleansingNotices: sortedDocumentList.filter(\r\n (d) => {\r\n let isFormatAllowed = true;\r\n const withRequiredType = d.documentType === DocumentType.cleansingNoticeRefinancing \r\n || d.documentType === DocumentType.cleansingNoticeReset;\r\n\r\n if(!withEditRole) {\r\n const splittedDocName = d.name.split('.');\r\n const docFormat = splittedDocName[splittedDocName.length - 1].toLowerCase();\r\n\r\n isFormatAllowed = docFormat !== 'xls' && docFormat !== 'xlsx';\r\n }\r\n\r\n return isFormatAllowed && withRequiredType\r\n }\r\n ),\r\n distributionReports: sortedDocumentList.filter(\r\n (d) => d.documentType === DocumentType.distributionReport\r\n ),\r\n monthlyReports: sortedDocumentList.filter(\r\n (d) => d.documentType === DocumentType.monthlyReport\r\n ),\r\n reportsExcelFiles: sortedDocumentList.filter(\r\n (d) => d.documentType === DocumentType.reportsExcelFiles\r\n ),\r\n otherDocuments: sortedDocumentList.filter(\r\n (d) => d.documentType === DocumentType.otherDocument\r\n ),\r\n };\r\n};\r\n\r\nexport const Documents = () => {\r\n const { selectedDeal } = useSelector(\r\n (state) => state.deals\r\n );\r\n const isAdminOrDataEntry = user.hasRoles(roles.Administrator, roles.DataEntry);\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const { referenceName, ticker } = selectedDeal;\r\n\r\n const allDocuments = isAdminOrDataEntry ? selectedDeal.documents?.dealDocuments : selectedDeal.documents?.dealDocuments?.filter(d => d.isPublic);\r\n const distributionReportsPattern = selectedDeal.documents?.dealDocumentPatterns.find(p => p.documentType === DocumentType.distributionReport)?.pattern;\r\n const monthlyReportsPattern = selectedDeal.documents?.dealDocumentPatterns.find(p => p.documentType === DocumentType.monthlyReport)?.pattern;\r\n\r\n\r\n const {\r\n dealDocuments,\r\n cleansingNotices,\r\n distributionReports,\r\n monthlyReports,\r\n reportsExcelFiles,\r\n otherDocuments,\r\n } = groupDocuments(allDocuments, isAdminOrDataEntry);\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {isAdminOrDataEntry && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\n","import { useFormikContext } from \"formik\";\r\nimport classNames from \"classnames\";\r\nimport { SORTING_TYPE, constants } from \"../../../../../constants\";\r\nimport IconSVG from \"../../../../../styles/svg-icons\";\r\nimport { AmrDocument } from \"../../../../../types/amr-pipeline/models/AmrDocument\";\r\nimport DownloadDocument from \"../../../../amrPipeline/common/documents/DownloadDocument\";\r\nimport { FilesUploaderChildProps } from \"../../../../amrPipeline/common/documents/FileUploader\";\r\nimport { EmptySectionContent } from \"../../../../amrPipeline/common/section/EmptySectionContent\";\r\nimport { Table } from \"../../../../bidding/common/table\";\r\nimport { ColumnBuilder } from \"../../../../bidding/common/table/columns/column-builder/ColumnBuilder\";\r\nimport { SelectField } from \"../../../../common/form-fields/SelectField\";\r\nimport { DateField } from \"../../../../common/form-fields/DateField\";\r\nimport { CheckboxField } from \"../../../../common/form-fields/CheckboxField\";\r\nimport { FileIcon, ProgressCircle } from \"../../../../controls\";\r\nimport { DocumentColumn, DocumentColumnDate } from \"../DocumentsList\";\r\nimport { DocumentsForm, DocumentsFormWithPatterns } from \"./EditDocuments\";\r\nimport useDownloadDocumentList from \"../../../../../effects/useDownloadDocumentList\";\r\nimport { dealsService } from \"../../../../../services/deals.service\";\r\nimport { DocumentTypeSelect } from '../../../../../types/amr-pipeline/enums/DocumentType';\r\n\r\ninterface Props extends FilesUploaderChildProps {\r\n documentKey: string;\r\n documentTypes?: DocumentTypeSelect[];\r\n withPublicColumn?: boolean;\r\n disabledDate?: boolean;\r\n documentColumnDate?: DocumentColumnDate;\r\n}\r\n\r\nexport function EditDocumentsList({\r\n referenceName,\r\n documents,\r\n progress,\r\n handleDeleteFile,\r\n documentKey,\r\n documentTypes = [],\r\n withPublicColumn = false,\r\n disabledDate = false,\r\n documentColumnDate = DocumentColumnDate.executionDate,\r\n}: Props) {\r\n const { values: {monthlyReportsPattern, ...docs} } = useFormikContext();\r\n const currentList = docs[documentKey as keyof DocumentsForm];\r\n\r\n const { loadingState, loadHandler } = useDownloadDocumentList({\r\n documents,\r\n downloadRequest: (documentReferenceName: string) => dealsService.getDealDocument(referenceName || '', documentReferenceName),\r\n });\r\n\r\n const getFormikIndex = (documentReferenceName: string) =>\r\n currentList.findIndex((l) => l.referenceName === documentReferenceName);\r\n\r\n const downloadDocument = (documentToDownload: AmrDocument) => {\r\n if (referenceName) {\r\n loadHandler(documentToDownload.referenceName, documentToDownload.name);\r\n }\r\n };\r\n\r\n const getTableColumns = () => {\r\n const documentsColumnDefinitions: DocumentColumn[] = [\r\n {\r\n columnKey: \"name\",\r\n renderColumnHeaderContent: () => \"Name\",\r\n headerClassName: \"data-list-cell-xl-flexible\",\r\n bodyClassName: \"data-list-cell-xl-flexible\",\r\n renderColumnContent: (document) => (\r\n downloadDocument(document)}\r\n disabled={!document.referenceName}\r\n >\r\n \r\n {document.name}\r\n \r\n ),\r\n sortingField: \"name\",\r\n sortingType: SORTING_TYPE.string,\r\n },\r\n {\r\n columnKey: \"progress\",\r\n renderColumnContent: (document) =>\r\n document.referenceName ? null : (\r\n \r\n ),\r\n renderColumnHeaderContent: () => \"\",\r\n headerClassName: \"data-list-cell-xxs\",\r\n bodyClassName: \"data-list-cell-xxs\",\r\n },\r\n ...(documentTypes.length\r\n ? [\r\n {\r\n columnKey: \"documentType\",\r\n renderColumnHeaderContent: () => \"Type\",\r\n headerClassName: \"data-list-cell-lg-02\",\r\n bodyClassName: \"data-list-cell-lg-02\",\r\n renderColumnContent: (document) => (\r\n \r\n ),\r\n } as DocumentColumn,\r\n ]\r\n : []),\r\n {\r\n columnKey: documentColumnDate === DocumentColumnDate.executionDate ? 'executionDate' : 'uploadTime',\r\n renderColumnHeaderContent: () => 'Date',\r\n headerClassName: 'data-list-cell-lg',\r\n bodyClassName: 'data-list-cell-lg',\r\n renderColumnContent: document => {\r\n const documentIndex = `${documentKey}.${getFormikIndex(document.referenceName)}`;\r\n\r\n const documentName =\r\n documentColumnDate === DocumentColumnDate.executionDate\r\n ? `${documentIndex}.executionDate`\r\n : `${documentIndex}.uploadTime`;\r\n\r\n return (\r\n \r\n );\r\n },\r\n },\r\n ...(withPublicColumn\r\n ? [\r\n {\r\n columnKey: 'isPublic',\r\n renderColumnHeaderContent: () => 'Public',\r\n headerClassName: 'data-list-cell-xxs-02 text-center',\r\n bodyClassName: 'data-list-cell-xxs-02 text-center',\r\n renderColumnContent: document => (\r\n \r\n ),\r\n } as DocumentColumn,\r\n ]\r\n : []),\r\n {\r\n columnKey: \"downloadButton\",\r\n renderColumnHeaderContent: () => \"\",\r\n headerClassName: \"data-list-cell-xxs-02 text-right\",\r\n bodyClassName: \"data-list-cell-xxs-02 text-right\",\r\n renderColumnContent: (document, { isLoading }) => (\r\n downloadDocument(document)}\r\n disabled={!document.referenceName}\r\n isLoading={isLoading}\r\n >\r\n \r\n \r\n ),\r\n },\r\n {\r\n columnKey: \"delete-action\",\r\n renderColumnContent: ({ referenceName }) => (\r\n \r\n \r\n \r\n ),\r\n renderColumnHeaderContent: () => \"\",\r\n headerClassName: \"data-list-cell-xxs padding-l-0\",\r\n bodyClassName: \"data-list-cell-xxs padding-l-0\",\r\n },\r\n ];\r\n\r\n return documentsColumnDefinitions.map((c) => {\r\n return new ColumnBuilder(c);\r\n });\r\n };\r\n\r\n return (\r\n
\r\n {documents.length ? (\r\n ({\r\n isLoading: loadingState[item.referenceName],\r\n })}\r\n createRowCustomKey={(\r\n document: AmrDocument,\r\n index: number,\r\n ) => document.referenceName || index}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\n","import { FileUploader } from \"../../../../amrPipeline/common/documents/FileUploader\";\r\nimport { EditDocumentsList } from \"./EditDocumentsList\";\r\nimport { DocumentGroup } from \"../../../../amrPipeline/common/documents/DocumentGroup\";\r\nimport { AmrFile } from \"../../../../../types/amr-pipeline/models/AmrFile\";\r\nimport { DownloadFile } from \"../../../../../types/amr-pipeline/models/DownloadedDocument\";\r\nimport { Nullable } from \"../../../../../types/primitives/Nullable\";\r\nimport { TextField } from \"../../../../common/form-fields/TextField\";\r\nimport { DocumentColumnDate } from \"../DocumentsList\";\r\nimport { DocumentTypeSelect } from \"../../../../../types/amr-pipeline/enums/DocumentType\";\r\n\r\nconst maxDealDocSize = 50;\r\n\r\ninterface Props {\r\n title: string;\r\n dealReferenceName: string;\r\n items: AmrFile[];\r\n documentKey: string;\r\n documentTypes?: DocumentTypeSelect[];\r\n withPublicColumn?: boolean;\r\n disabledDate?: boolean;\r\n downloadAllFetch: (...args: TArgs) => Promise;\r\n downloadAllArgs: TArgs;\r\n fileNameForSave: Nullable;\r\n onUpload: (documents: AmrFile[]) => void;\r\n setUploadProgress: (isUploading: boolean) => void;\r\n onPatternChange?: (pattern: string) => void;\r\n patternName?: string;\r\n documentColumnDate?: DocumentColumnDate;\r\n renderAdditionalButton?: () => React.ReactNode;\r\n}\r\n\r\nexport const EditDocumentsSection = ({\r\n title,\r\n dealReferenceName,\r\n items,\r\n documentKey,\r\n documentTypes,\r\n withPublicColumn,\r\n disabledDate = false,\r\n downloadAllFetch,\r\n downloadAllArgs,\r\n fileNameForSave,\r\n onUpload,\r\n setUploadProgress,\r\n patternName,\r\n documentColumnDate = DocumentColumnDate.executionDate,\r\n renderAdditionalButton,\r\n}: Props) => {\r\n return (\r\n !i.remove).length}\r\n downloadAllFetch={downloadAllFetch}\r\n downloadAllArgs={downloadAllArgs}\r\n fileNameForSave={fileNameForSave}\r\n renderAdditionalButton={renderAdditionalButton}\r\n >\r\n {patternName && }\r\n \r\n {props => (\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\n","import { useSelector } from 'react-redux';\r\nimport { groupDocuments } from '../Documents';\r\nimport { AppState } from '../../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../../types/state/DealsState';\r\nimport { useMemo, useState } from 'react';\r\nimport { Formik, FormikErrors } from 'formik';\r\nimport { useAppDispatch } from '../../../../../effects/useAppDispatch';\r\nimport { AmrDocument } from '../../../../../types/amr-pipeline/models/AmrDocument';\r\nimport { dealsActions } from '../../../../../actions/deals.actions';\r\nimport { DealsSaveHeader } from '../../../DealsSaveHeader';\r\nimport { RouteLeavingGuard } from '../../../../routing';\r\nimport { useHistory } from 'react-router';\r\nimport { DealsTabType } from '../../../../../types/deals/DealsTabType';\r\nimport { cleansingNoticeDocsTypeList, dealRegularDocsTypeList, DocumentType, getDocumentTypeText } from '../../../../../types/amr-pipeline/enums/DocumentType';\r\nimport { constants, routes } from '../../../../../constants';\r\nimport { EditDocumentsSection } from './EditDocumentsSection';\r\nimport { has } from 'lodash';\r\nimport { AmrFile } from '../../../../../types/amr-pipeline/models/AmrFile';\r\nimport { Preloader } from '../../../../common';\r\nimport { dealsService } from '../../../../../services/deals.service';\r\nimport moment from 'moment';\r\nimport { DownloadTemplateButton } from '../../../../common/download-template/DownloadTemplateButton';\r\n\r\nconst checkFileFormat = (fileName: string, ...fileFormats: string[]): boolean => {\r\n const fileExtension = fileName.split('.').pop()?.toLowerCase();\r\n\r\n return fileFormats.some(format => format.toLowerCase() === fileExtension);\r\n};\r\n\r\nexport interface DocumentsForm {\r\n dealDocuments: AmrDocument[];\r\n cleansingNotices: AmrDocument[];\r\n distributionReports: AmrDocument[];\r\n monthlyReports: AmrDocument[];\r\n reportsExcelFiles: AmrDocument[];\r\n otherDocuments: AmrDocument[];\r\n}\r\n\r\nexport interface DocumentsFormWithPatterns extends DocumentsForm {\r\n monthlyReportsPattern: string;\r\n distributionReportsPattern: string;\r\n}\r\n\r\nexport const EditDocuments = () => {\r\n const dispatch = useAppDispatch();\r\n const [isUploading, setIsUploading] = useState(false);\r\n const { selectedDeal, isUpdating } = useSelector(state => state.deals);\r\n const history = useHistory();\r\n\r\n const initialValues: DocumentsFormWithPatterns = useMemo(\r\n () => ({\r\n ...groupDocuments(selectedDeal?.documents?.dealDocuments, true),\r\n monthlyReportsPattern:\r\n selectedDeal?.documents?.dealDocumentPatterns?.find(p => p.documentType === DocumentType.monthlyReport)\r\n ?.pattern || '',\r\n distributionReportsPattern:\r\n selectedDeal?.documents?.dealDocumentPatterns?.find(\r\n p => p.documentType === DocumentType.distributionReport,\r\n )?.pattern || '',\r\n }),\r\n [selectedDeal],\r\n );\r\n\r\n if (isUpdating) {\r\n return ;\r\n }\r\n\r\n if (!selectedDeal) {\r\n return null;\r\n }\r\n\r\n const { referenceName, legalName, ticker } = selectedDeal;\r\n\r\n const handleSubmit = (values: DocumentsFormWithPatterns) => {\r\n const documentsList = [\r\n ...values.dealDocuments,\r\n ...values.cleansingNotices,\r\n ...values.distributionReports,\r\n ...values.monthlyReports,\r\n ...values.reportsExcelFiles,\r\n ...values.otherDocuments,\r\n ];\r\n\r\n dispatch(\r\n dealsActions.updateDealDocuments(referenceName, {\r\n dealDocuments: documentsList,\r\n dealDocumentPatterns: [\r\n { pattern: values.monthlyReportsPattern, documentType: DocumentType.monthlyReport },\r\n { pattern: values.distributionReportsPattern, documentType: DocumentType.distributionReport },\r\n ],\r\n }),\r\n );\r\n };\r\n\r\n const handleUpload = (\r\n name: string,\r\n documentType: DocumentType,\r\n setFieldValue: (\r\n field: string,\r\n value: any,\r\n shouldValidate?: boolean | undefined,\r\n ) => Promise>,\r\n files: AmrFile[],\r\n ) => {\r\n setFieldValue(\r\n name,\r\n files.map(f => ({\r\n ...f,\r\n isPublic: has(f, 'isPublic') ? f.isPublic : true,\r\n documentType: f.documentType || documentType,\r\n executionDate: f.executionDate || moment().format(constants.formatTimeStringWithoutTimeZone),\r\n })),\r\n );\r\n };\r\n\r\n return (\r\n \r\n {({ values, setFieldValue, dirty, isSubmitting, submitForm }) => {\r\n return (\r\n
\r\n history.push(routes.dealsUrl(referenceName, DealsTabType.Documents))}\r\n />\r\n
\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => !!dirty && !isSubmitting}\r\n />\r\n \r\n handleUpload('dealDocuments', DocumentType.otherDealDocument, setFieldValue, files)\r\n }\r\n />\r\n \r\n handleUpload('cleansingNotices', DocumentType.cleansingNoticeRefinancing, setFieldValue, files.map(f => ({ ...f, isPublic: !checkFileFormat(f.name, 'xls', 'xlsx') ? true : false })))\r\n }\r\n renderAdditionalButton={() =>\r\n \r\n }\r\n />\r\n \r\n handleUpload(\r\n 'distributionReports',\r\n DocumentType.distributionReport,\r\n setFieldValue,\r\n files,\r\n )\r\n }\r\n />\r\n \r\n handleUpload('monthlyReports', DocumentType.monthlyReport, setFieldValue, files)\r\n }\r\n />\r\n \r\n handleUpload(\r\n 'reportsExcelFiles',\r\n DocumentType.reportsExcelFiles,\r\n setFieldValue,\r\n files,\r\n )\r\n }\r\n />\r\n \r\n handleUpload('otherDocuments', DocumentType.otherDocument, setFieldValue, files)\r\n }\r\n />\r\n
\r\n
\r\n );\r\n }}\r\n
\r\n );\r\n};\r\n","import { Formik } from 'formik';\r\nimport { useSelector } from 'react-redux';\r\nimport { AmrTransaction } from '../../../../../types/amr-pipeline/models/AmrTransaction';\r\nimport { AppState } from '../../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../../types/state/DealsState';\r\nimport { SectionContent } from '../../../../amrPipeline/common/section/SectionContent';\r\nimport { Preloader } from '../../../../common';\r\nimport { useHistory, useParams } from 'react-router';\r\nimport { DealsRouteParams } from '../../../Deals';\r\nimport { SelectField } from '../../../../common/form-fields/SelectField';\r\nimport { DateField } from '../../../../common/form-fields/DateField';\r\nimport { NumberField } from '../../../../common/form-fields/NumberField';\r\nimport { DealsSaveHeader } from '../../../DealsSaveHeader';\r\nimport { constants, routes } from '../../../../../constants';\r\nimport { Grid } from '../../../../grid';\r\nimport { useEffect, useState } from 'react';\r\nimport { has, isEqual, isNil } from 'lodash';\r\nimport { useAppDispatch } from '../../../../../effects/useAppDispatch';\r\nimport { dealsActions } from '../../../../../actions/deals.actions';\r\nimport { gridUtils } from '../../../../../utils';\r\nimport RouteLeavingGuard from '../../../../routing/RouteLeavingGuard';\r\nimport { EditDocumentsSection } from '../../documents/edit/EditDocumentsSection';\r\nimport * as Yup from 'yup';\r\nimport { AmrInfoSaveForm } from '../../../../../types/deals/AmrInfoSaveForm';\r\nimport { amrStatusesSelectOptions } from '../../../../../types/amr-pipeline/enums/AmrStatus';\r\nimport { useAmrDocuments } from '../../../../../effects/useAmrDocuments';\r\nimport { amrPipelineService } from '../../../../../services/amr-pipeline.service';\r\nimport { gridActions } from '../../../../../actions';\r\nimport { DocumentColumnDate } from '../../documents/DocumentsList';\r\n\r\nexport const validationSchema = Yup.object().shape({\r\n electionNoticeDate: Yup.date().required(),\r\n informationNoticeDate: Yup.date().required(),\r\n});\r\n\r\nexport const AmrInfoEdit = () => {\r\n const history = useHistory();\r\n const dispatch = useAppDispatch();\r\n\r\n const { selectedDeal, isUpdating } = useSelector(state => state.deals);\r\n const dataItems = useSelector((state: AppState) => state.grid.dataItems);\r\n\r\n const [isUploading, setIsUploading] = useState(false);\r\n\r\n const { transactionReferenceName } = useParams();\r\n\r\n const selectedTransaction = selectedDeal?.transactions?.find(\r\n t => t.referenceName === transactionReferenceName,\r\n ) as AmrTransaction;\r\n\r\n const { amrDocuments } = useAmrDocuments({\r\n dealReferenceName: selectedDeal?.referenceName,\r\n transactionReferenceName: selectedTransaction?.referenceName,\r\n });\r\n\r\n const hasGridChanges = () => !isEqual(selectedTransaction.classes, gridUtils.sanitizeGridItems(dataItems));\r\n\r\n useEffect(() => {\r\n if (isNil(selectedDeal)) {\r\n return;\r\n }\r\n\r\n dispatch(dealsActions.amrInfoClassesEdit(selectedTransaction.classes));\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isNil(selectedDeal)]);\r\n\r\n useEffect(() => {\r\n return () => {\r\n dispatch(gridActions.reset());\r\n };\r\n }, [dispatch]);\r\n\r\n if (!selectedDeal || isUpdating) {\r\n return ;\r\n }\r\n\r\n const handleSave = (value: AmrInfoSaveForm) => {\r\n dispatch(dealsActions.amrInfoSave(selectedDeal.referenceName, selectedTransaction.referenceName, value));\r\n };\r\n\r\n const initialValues: AmrInfoSaveForm = {\r\n amrStatus: selectedTransaction.amrStatus,\r\n electionNoticeDate: selectedTransaction.electionNotice.noticeDate,\r\n informationNoticeDate: selectedTransaction.informationNoticeDate,\r\n electionToInformationBusinessDays: selectedDeal.electionToInformationBusinessDays,\r\n informationToPricingBusinessDays: selectedDeal.informationToPricingBusinessDays,\r\n pricingToSettlementBusinessDays: selectedDeal.pricingToSettlementBusinessDays,\r\n amrDocuments: amrDocuments ?? [],\r\n classes: selectedTransaction.classes,\r\n };\r\n\r\n return (\r\n \r\n {({ dirty, submitForm, setFieldValue, values }) => (\r\n
\r\n history.push(pathname)}\r\n shouldBlockNavigation={() => (hasGridChanges() || dirty) && !isUpdating}\r\n />\r\n \r\n history.push(routes.dealAmrInfoUrl(selectedDeal!.referenceName, transactionReferenceName))\r\n }\r\n />\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n setFieldValue(\r\n 'amrDocuments',\r\n files.map(f => ({\r\n ...f,\r\n isPublic: has(f, 'isPublic') ? f.isPublic : true,\r\n dealReferenceName: selectedDeal.referenceName,\r\n transactionReferenceName: selectedTransaction.referenceName,\r\n })),\r\n )\r\n }\r\n />\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n","import { useSelector } from 'react-redux';\r\nimport { AppState } from '../../../../types/state/AppState';\r\nimport { DealsState } from '../../../../types/state/DealsState';\r\nimport { FormField } from '../../../amrPipeline/common/FormField';\r\nimport { formatUtils, isRequesting, moneyUtils, numericUtils } from '../../../../utils';\r\nimport { AmrTransaction } from '../../../../types/amr-pipeline/models/AmrTransaction';\r\nimport { constants, routes } from '../../../../constants';\r\nimport StatusLabel from '../../../amrPipeline/StatusLabel';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { AmrClass } from '../../../../types/amr-pipeline/models/AmrClass';\r\nimport { AmrClassStatusLabel } from '../../../amrPipeline/common/AmrClassStatusLabel';\r\nimport { isNil, startCase } from 'lodash';\r\nimport { OnHoverTooltip, Preloader } from '../../../common';\r\nimport IconSVG from '../../../../styles/svg-icons';\r\nimport { DealsRouteParams } from '../../Deals';\r\nimport { SectionContent } from '../../../amrPipeline/common/section/SectionContent';\r\nimport { useAppDispatch } from '../../../../effects/useAppDispatch';\r\nimport { dealsActions } from '../../../../actions/deals.actions';\r\nimport { useAvailableBrokerDealers } from '../../../../effects/data-accessors/useAvailableBrokerDealers';\r\nimport AmrInfoHeader from './AmrInfoHeader';\r\nimport { useExcludedDealers } from '../../../../effects/useExcludedDealers';\r\nimport { useSettlementInstructions } from '../../../../effects/useSettlementInstructions';\r\n\r\nconst renderEmptyDealersPlaceholder = (category: string) => (\r\n
\r\n {`There are no ${category} dealers to display`}\r\n
\r\n);\r\n\r\nexport const AmrClassDetails = () => {\r\n const dispatch = useAppDispatch();\r\n const history = useHistory();\r\n const { selectedDeal } = useSelector(state => state.deals);\r\n\r\n const { transactionReferenceName, classReferenceName } = useParams();\r\n\r\n const selectedTransaction = selectedDeal?.transactions?.find(\r\n t => t.referenceName === transactionReferenceName,\r\n ) as AmrTransaction;\r\n const selectedClass = selectedTransaction?.classes?.find(c => c.referenceName === classReferenceName) as AmrClass;\r\n\r\n const { requestState: settlementInstructionsRequestState, settlementInstructions } = useSettlementInstructions({\r\n dealReferenceName: selectedClass?.dealReferenceName,\r\n transactionReferenceName: selectedClass?.transactionReferenceName,\r\n classReferenceName: selectedClass?.referenceName,\r\n });\r\n const { requestState: availableBDRequestState, items: availableDealers } = useAvailableBrokerDealers();\r\n const { requestState: excludedBDRequestState, excludedDealers } = useExcludedDealers({\r\n dealReferenceName: selectedClass?.dealReferenceName,\r\n transactionReferenceName: selectedClass?.transactionReferenceName,\r\n classReferenceName: selectedClass?.referenceName,\r\n });\r\n\r\n if (!selectedDeal || !selectedTransaction) {\r\n return null;\r\n }\r\n\r\n if (!selectedClass) {\r\n history.push(routes.dealAmrInfoUrl(selectedDeal.referenceName, transactionReferenceName));\r\n }\r\n\r\n if (isRequesting(settlementInstructionsRequestState, availableBDRequestState, excludedBDRequestState)) {\r\n return ;\r\n }\r\n\r\n const renderAvailableDealers = () => {\r\n if (availableDealers.length === excludedDealers.length) {\r\n return renderEmptyDealersPlaceholder('available');\r\n }\r\n\r\n return availableDealers.map(d =>\r\n excludedDealers.some(ed => ed.dealer.referenceName === d.referenceName) ? null : (\r\n
\r\n {d.legalName}\r\n
\r\n ),\r\n );\r\n }\r\n\r\n const renderExcludedDealers = () => {\r\n if (!excludedDealers.length) {\r\n return renderEmptyDealersPlaceholder('excluded');\r\n }\r\n\r\n return excludedDealers.map(d => (\r\n
\r\n {d.dealer.legalName}\r\n
\r\n ));\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md data-item-row-status\"\r\n />\r\n \r\n }\r\n className=\"data-item-row-full-height data-item-row-title-md data-item-row-status\"\r\n />\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {\r\n dispatch(\r\n dealsActions.exportSettlementInstructions(\r\n selectedClass.dealReferenceName,\r\n selectedClass.dealLegalName,\r\n selectedClass.transactionReferenceName,\r\n selectedClass.referenceName,\r\n selectedClass.name,\r\n ),\r\n );\r\n }}\r\n className=\"btn-link flex-item-right\"\r\n >\r\n \r\n Export\r\n \r\n \r\n }\r\n title=\"Settlement Instructions\"\r\n className=\"data-item-general-cols amr-info-settlement-instructions\"\r\n >\r\n
\r\n
Cash Settlement Account
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
Bond Settlement Account
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
Contacts
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {renderAvailableDealers()}\r\n
\r\n
\r\n {renderExcludedDealers()}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import { useDispatch, useSelector } from 'react-redux';\r\nimport { useHistory, useParams, Switch, Route, Redirect } from 'react-router';\r\nimport { roles, routes } from '../../constants';\r\nimport { DealsTabType } from '../../types/deals/DealsTabType';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { Preloader } from '../common';\r\nimport { DealsState } from '../../types/state/DealsState';\r\nimport { DealsSelectionPanel } from './DealsSelectionPanel';\r\nimport { useCallback, useEffect, useState } from 'react';\r\nimport { dealsActions } from '../../actions/deals.actions';\r\nimport { head } from 'lodash';\r\nimport { Overview } from './tabs/overview/Overview';\r\nimport DealsContext from './DealsContext';\r\nimport { CompanyPopup } from './CompanyPopup/CompanyPopup';\r\nimport { DealDetail } from './tabs/dealDetails/DealDetails';\r\nimport { EditDealDetails } from './tabs/dealDetails/edit/EditDealDetails';\r\nimport { ClassDetails } from './tabs/class-detail/ClassDetails';\r\nimport { AmrInfo } from './tabs/amrInfo/AmrInfo';\r\nimport { AmrInfoDetails } from './tabs/amrInfo/AmrInfoDetails';\r\nimport Confirm from '../alerts/Confirm';\r\nimport { AllClasses } from './tabs/all-classes/AllClasses';\r\nimport { EditDocuments } from './tabs/documents/edit/EditDocuments';\r\nimport { Documents } from './tabs/documents/Documents';\r\nimport { user } from '../../user';\r\nimport { AmrInfoEdit } from './tabs/amrInfo/edit/AmrInfoEdit';\r\nimport { AmrClassDetails } from './tabs/amrInfo/AmrClassDetails';\r\n\r\nexport interface DealsRouteParams {\r\n dealReferenceName: string;\r\n classReferenceName: string;\r\n transactionReferenceName?: string;\r\n tab?: DealsTabType;\r\n}\r\n\r\nexport const Deals = () => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n\r\n const { dealReferenceName, tab, classReferenceName } = useParams();\r\n const { data, isLoading, isDetailsLoading, selectedDeal } = useSelector(state => state.deals);\r\n\r\n const [companyForPopup, setCompanyForPopup] = useState(null);\r\n const [showDeleteConfirmationPopup, setShowDeleteConfirmationPopup] = useState(false);\r\n\r\n const isAdminOrDataEntry = user.hasRoles(roles.Administrator, roles.DataEntry);\r\n const withDocumentsAccess = isAdminOrDataEntry || user.hasRoles(...roles.seller());\r\n\r\n const context = {\r\n companyForPopup,\r\n setCompanyForPopup,\r\n showDeleteConfirmationPopup,\r\n setShowDeleteConfirmationPopup,\r\n };\r\n\r\n const navigateToFirstDeal = useCallback(\r\n (tab?: DealsTabType) => {\r\n const firstDeal = head(data);\r\n\r\n if (firstDeal) {\r\n history.replace(routes.dealsUrl(firstDeal.referenceName, tab || DealsTabType.Overview));\r\n }\r\n },\r\n [history, data],\r\n );\r\n\r\n useEffect(() => {\r\n dispatch(dealsActions.getDeals());\r\n\r\n return () => {\r\n dispatch(dealsActions.reset());\r\n };\r\n }, [dispatch]);\r\n\r\n useEffect(() => {\r\n if (!tab && !dealReferenceName) {\r\n navigateToFirstDeal();\r\n }\r\n }, [dealReferenceName, data, classReferenceName, tab, navigateToFirstDeal]);\r\n\r\n useEffect(() => {\r\n if (dealReferenceName) {\r\n dispatch(dealsActions.getDealDetails(dealReferenceName));\r\n }\r\n }, [dealReferenceName, dispatch]);\r\n\r\n if (selectedDeal) {\r\n document.title = `${selectedDeal.legalName} - KTX ATS Platform`;\r\n }\r\n\r\n const handleDeleteDeal = () => {\r\n dispatch(dealsActions.deleteDealRequest(dealReferenceName));\r\n setShowDeleteConfirmationPopup(false);\r\n };\r\n\r\n const hasClosedTransactions = !!data?.find(d => d.referenceName === dealReferenceName)?.hasClosedTransactions;\r\n\r\n const renderRedirect = () => {\r\n if (!dealReferenceName || !data) {\r\n return null;\r\n }\r\n\r\n let tabToRedirect = tab || DealsTabType.Overview;\r\n\r\n if (!hasClosedTransactions || !withDocumentsAccess) {\r\n tabToRedirect = isAdminOrDataEntry ? DealsTabType.DealDetail : DealsTabType.Overview;\r\n }\r\n\r\n return ;\r\n };\r\n\r\n const renderRoutes = () => (\r\n \r\n {(!isAdminOrDataEntry || hasClosedTransactions) && (\r\n (\r\n \r\n )}\r\n />\r\n )}\r\n {(isAdminOrDataEntry || hasClosedTransactions) && [\r\n }\r\n />,\r\n }\r\n />,\r\n ]}\r\n {isAdminOrDataEntry && (\r\n }\r\n />\r\n )}\r\n {hasClosedTransactions && [\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 ...(withDocumentsAccess\r\n ? [\r\n }\r\n />,\r\n ]\r\n : []),\r\n ...((isAdminOrDataEntry && !!selectedDeal?.ticker)\r\n ? [\r\n }\r\n />,\r\n ]\r\n : []),\r\n }\r\n />,\r\n ]}\r\n {renderRedirect()}\r\n \r\n );\r\n\r\n return (\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {renderRoutes()}\r\n \r\n
\r\n
\r\n
\r\n\r\n {companyForPopup && (\r\n setCompanyForPopup(null)}\r\n companyReferenceName={companyForPopup}\r\n collateralManagerReferenceName={selectedDeal?.collateralManager?.referenceName}\r\n />\r\n )}\r\n {showDeleteConfirmationPopup && (\r\n setShowDeleteConfirmationPopup(false)}\r\n onConfirm={handleDeleteDeal}\r\n title=\"Delete Confirmation\"\r\n text={`Are you sure you want to delete deal ${selectedDeal?.legalName}`}\r\n />\r\n )}\r\n
\r\n );\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport { user } from '../../user';\r\nimport { useSettlementAgentAgreements } from '../../effects/useSettlementAgentAgreements';\r\nimport { SettlementAgreementStatus } from '../../types/bid-as-dealer/SettlementAgreementStatus';\r\nimport { BlockedFeatureContext } from '../access/BlockedFeatureContext';\r\nimport { DirectBiddingDisclaimerContext } from './DirectBiddingDisclaimerContext';\r\nimport { useSelector } from 'react-redux';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { isRequesting } from '../../utils';\r\nimport { roles } from '../../constants';\r\n\r\ninterface Props {\r\n children: (blocked: boolean) => React.ReactNode;\r\n}\r\n\r\nexport const DirectBiddingDisclaimer: React.FC = ({ children }) => {\r\n const isFeatureBlocked = React.useContext(BlockedFeatureContext);\r\n const agreementsState = useSettlementAgentAgreements();\r\n const agreements = agreementsState.items;\r\n const confirmRequestState = useSelector((state: AppState) => state.directBiddingDisclaimer.confirmRequestState);\r\n\r\n const hasConfirmedClearingBankAgreement = useMemo(() =>\r\n agreements.some(a =>\r\n a.agreementStatus === SettlementAgreementStatus.confirmed &&\r\n a.settlementAgent.isClearingBank),\r\n [agreements]\r\n );\r\n\r\n const blocked =\r\n !isFeatureBlocked &&\r\n hasConfirmedClearingBankAgreement &&\r\n user.hasRoles(roles.SellerTrader, roles.BrokerDealerTrader) &&\r\n !user.current()?.directBiddingAgreementSigned &&\r\n !isRequesting(confirmRequestState);\r\n\r\n return (\r\n \r\n {children(blocked)}\r\n \r\n )\r\n}\r\n","import * as React from 'react';\r\nimport * as _ from 'lodash';\r\nimport { DirectBiddingDisclaimer } from './DirectBiddingDisclaimer';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { directBiddingDisclaimerActions } from '../../actions/direct-bidding-agreement-disclaimer.actions';\r\nimport { AppState } from '../../types/state/AppState';\r\n\r\ntype TRenderChildren = (blocked: boolean) => React.ReactNode;\r\n\r\ninterface Props {\r\n children: React.ReactNode | TRenderChildren;\r\n disabled?: boolean;\r\n onConfirm: () => void;\r\n}\r\n\r\nexport function DirectBiddingDisclaimerActionBlocker({ children, onConfirm, disabled = false }: Props) {\r\n const actionBlockerId = React.useRef(_.uniqueId('direct-bidding-disclaimer-action-blocker-'));\r\n const dispatch = useDispatch();\r\n const visible = useSelector((state: AppState) => state.directBiddingDisclaimer.visible);\r\n const confirmed = useSelector((state: AppState) => state.directBiddingDisclaimer.confirmed);\r\n const blockerId = useSelector((state: AppState) => state.directBiddingDisclaimer.blockerId);\r\n const handleConfirm = React.useCallback(() => onConfirm(), [onConfirm]);\r\n\r\n React.useEffect(() => {\r\n if (!visible && actionBlockerId.current === blockerId) {\r\n if (confirmed) {\r\n handleConfirm();\r\n }\r\n if (confirmed || confirmed === false) {\r\n dispatch(directBiddingDisclaimerActions.reset());\r\n }\r\n }\r\n }, [visible, actionBlockerId, blockerId, confirmed, dispatch, handleConfirm]);\r\n\r\n const handleClick = (e: React.MouseEvent) => {\r\n e.stopPropagation();\r\n dispatch(directBiddingDisclaimerActions.show(actionBlockerId.current));\r\n };\r\n\r\n const renderBlocked = () =>
{renderChildren(true)}
;\r\n\r\n const renderChildren = (blocked: boolean) => {\r\n if (typeof children === 'function') {\r\n return (children as TRenderChildren)(blocked);\r\n }\r\n return children;\r\n };\r\n\r\n if (disabled) {\r\n return <>{renderChildren(false)};\r\n }\r\n\r\n return (\r\n \r\n {(blocked: boolean) => blocked ? renderBlocked() : renderChildren(false)}\r\n \r\n );\r\n}\r\n","import * as React from 'react';\r\nimport * as _ from 'lodash';\r\nimport { useHistory } from 'react-router';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { DirectBiddingDisclaimer } from './DirectBiddingDisclaimer';\r\nimport { DirectBiddingDisclaimerContext } from './DirectBiddingDisclaimerContext';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { directBiddingDisclaimerActions } from '../../actions/direct-bidding-agreement-disclaimer.actions';\r\n\r\ninterface Props {\r\n disabled?: boolean;\r\n onCancel?: () => void;\r\n children: React.ReactNode;\r\n}\r\n\r\ninterface ContentProps {\r\n onCancel?: () => void;\r\n children: React.ReactNode;\r\n}\r\n\r\nconst DirectBiddingDisclaimerContent: React.FC = ({ children, onCancel }) => {\r\n const actionBlockerId = React.useRef(_.uniqueId('direct-bidding-disclaimer-content-blocker-'));\r\n const blocked = React.useContext(DirectBiddingDisclaimerContext);\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n const popupVisible = useSelector((state: AppState) => state.directBiddingDisclaimer.visible);\r\n const confirmed = useSelector((state: AppState) => state.directBiddingDisclaimer.confirmed);\r\n const blockerId = useSelector((state: AppState) => state.directBiddingDisclaimer.blockerId);\r\n const handleReject = React.useCallback(() => onCancel ? onCancel() : history.replace('/'), [onCancel, history]);\r\n\r\n React.useEffect(() => {\r\n if (blocked && !popupVisible && confirmed === undefined) {\r\n dispatch(directBiddingDisclaimerActions.show(actionBlockerId.current))\r\n }\r\n }, [dispatch, blocked, popupVisible, actionBlockerId, confirmed]);\r\n\r\n React.useEffect(() => {\r\n if (!popupVisible && confirmed === false && actionBlockerId.current === blockerId) {\r\n handleReject();\r\n dispatch(directBiddingDisclaimerActions.reset());\r\n }\r\n }, [history, popupVisible, confirmed, actionBlockerId, blockerId, dispatch, handleReject]);\r\n\r\n return blocked ? null : <>{children};\r\n};\r\n\r\nexport const DirectBiddingDisclaimerContentBlocker: React.FC = ({ disabled = false, children, onCancel }) => {\r\n if (disabled) return <>{children};\r\n\r\n return (\r\n \r\n {() => (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import * as React from 'react';\r\n\r\nexport const DirectBiddingDisclaimerContext = React.createContext(false);\r\n","import * as React from 'react';\r\nimport { useHistory } from 'react-router';\r\nimport { SubscriptionFeature } from '../../types/billing/SubscriptionFeature';\r\nimport { ActionBlocker } from '../access/ActionBlocker';\r\nimport { DirectBiddingDisclaimerActionBlocker } from '../direct-bidding-agreement-disclaimer/DirectBiddingDisclaimerActionBlocker';\r\nimport { FeatureLink } from '../access/FeatureLink';\r\n\r\ninterface BodyContentProps {\r\n path: string;\r\n disclaimerDisabled?: boolean;\r\n requiredFeature?: SubscriptionFeature;\r\n disabled?: boolean;\r\n text?: string;\r\n className?: string;\r\n target?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport function DirectBiddingDesclaimerLink({\r\n path,\r\n disclaimerDisabled = false,\r\n requiredFeature,\r\n disabled = false,\r\n text = \"View\",\r\n target,\r\n className,\r\n tooltip\r\n}: BodyContentProps) {\r\n const history = useHistory();\r\n\r\n return (\r\n \r\n history.push(path)}\r\n >\r\n \r\n \r\n \r\n );\r\n}\r\n","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { routes } from '../../constants';\r\n\r\nexport const DirectBiddingDisclaimerPopupText: React.FC = () => {\r\n return (\r\n <>\r\n

DirectBidding™ and All-to-All Trading Protocols Terms and Conditions

\r\n

The DirectBidding™ and All-to-All trading protocols (the \"Trading Protocols\") are part of the KopenTech Alternative Trading System (the “ATS”). The use of Trading Protocols by you (\"You\") is governed by these Terms and Conditions.

\r\n

The use of the ATS is governed by the rules and procedures that govern the use of the ATS for all users (the “ATS Rulebook”), available on the KopenTech platform publicly for review and can be accessed here. You must confirm the receipt of the ATS Rulebook and agree to abide by the terms and conditions of the ATS.

\r\n

These Trading Protocols are designed to facilitate the matching of buyers and sellers on the KopenTech ATS. As a user of the ATS, You agree to comply with these Terms and Conditions, Trading Protocols, and the following rules:

\r\n\r\n

1. Display of Bids

\r\n

These Trading Protocols govern the process for posting lists of securities for sale, or BWICs, for CLOs that are (or will become) available for bidding. BWICs posted using the Trading Protocols will be marked with a special icon clearly indicated on the KopenTech ATS. For each BWIC available via the Trading Protocols, You can submit a bid directly and anonymously to the seller and receive real-time, automated feedback from the ATS. KopenTech only provides feedback to You during the “Bidding Window”, that is defined as the period of time specified by the seller on the BWIC announcement. This feedback shows Your standing among the other bidders. KopenTech ATS has pre-defined feedback choices that are automatically sent to a bidder once a bid is submitted.

\r\n

You will see Your bid position solely in the context of other users of the Trading Protocols. Depending on the chosen BWIC rules, You will receive real-time feedback as bids entered by You and other users are collected. At the end of the Bidding Window, the seller has the option to trade the bond to You.

\r\n\r\n

2. BWIC Exclusivity

\r\n

When posting a BWIC on the KopenTech ATS, You commit to not redistribute the same BWIC either through other available technology platforms and/or directly to broker dealers at the same time.

\r\n\r\n

3. Bidding

\r\n

On the BWIC Monitor, click on the “Bid” button to enter a bid for any bond(s) that are marked as available via the Trading Protocols. Bids are irrevocable upon submission. Your last submitted bid remains firm and executable until [30] minutes after the bidding window closes. Once that time lapses, if there is no action by the seller, the BWIC will close and the ATS will automatically send out information regarding the BWIC.

\r\n\r\n

4. Cancelling

\r\n

You cannot cancel Your bid. Once a bid is entered, a pop-up will appear asking You to confirm Your bid. This is done to prevent fat finger errors. See Section 5 for further information.

\r\n\r\n

5. Determination of Winning Bid

\r\n

The seller will evaluate the bids received from the BWIC participants. Sellers make their own determination about whether to sell the bonds based solely upon their own criteria.

\r\n

KopenTech is not acting as Your adviser or agent. Prior to making any investment decision or entering into any transaction, You should determine, without reliance on KopenTech or any of its affiliates, the economic risks and merits, as well as the legal, tax and accounting characterizations and consequences of any investment or transaction, and independently determine that You are able to assume these risks. By submitting Your bids, You acknowledge that (a) KopenTech is not in the business of providing legal, tax or accounting advice, (b) You understand that there may be legal, tax or accounting risks associated with any investment or transaction, (c) You should receive legal, tax and accounting advice from advisers with appropriate expertise to assess relevant risks. In addition, KopenTech will provide all bidders with the post-trade color, meaning the second-best bid received during the bidding period. By submitting Your bid, You acknowledge that post-trade color might deviate significantly from Your bid and the trading level and that this information does not affect the validity of Your bid. You are responsible for Your own independent research and assertion of value before deciding to place a bid on any security. All bids made and matched on the ATS are considered final transaction agreements and it is expected that subsequent transactions will be made based on the bids and matches.

\r\n\r\n

6. Trading

\r\n

The seller has the option to sell a security to You. Trade affirmation by You is required to complete the trade and must be performed by You within 30 minutes after receipt of notification from Seller via the ATS. Trades may only be declined in the case of technical errors. If a technical error occurs, You must promptly contact KopenTech at {process.env.REACT_APP_SUPPORT_EMAIL} in an effort to resolve the matter. Trades may not be rejected without valid reason and failure to affirm trades may result in revoked access to KopenTech Trading Protocols. KopenTech will have no liability for rejected trades.

\r\n

Trade settlement is conducted by KopenTech Capital Markets LLC, a registered broker-dealer and FINRA member and clearing is performed by a third-party clearing agent. The trade commission is set by KopenTech and can be accessed on the BWIC Trading Protocol. Trade commissions are subject to change from time to time and any changes will be communicated to You. You will be responsible any additional fees assessed by the clearing firm for any non-standard settlement or delayed settlement of trades.

\r\n\r\n

7. Information and Activity

\r\n

Data and information provided to You through the Trading Protocols is gathered from sources that KopenTech regards to be reliable, but KopenTech is not responsible for the accuracy of any data or information that it makes available to You.

\r\n

KopenTech may collect Your data to display aggregated analytics to platform users. KopenTech monitors ATS activity and collects trade data for analytical purposes. In addition, while Your specific bid information will not be divulged to other bidders, the Trading Protocols analyze the bid data You enter to inform You and other bidders of their relative standing, which can include the settlement agent, bidders and broker-dealers.

\r\n

You acknowledge that ATS and/or its affiliates and service providers own all rights, title and interest, including without limitation all intellectual property rights, in performance of the services provided herein, the ATS, and all trademarks and trade names used in connection with the services provided, including all data entered into or produced by or for the ATS, including without limitation all bid and ranking data (such data collectively, “KopenTech ASP Data”).

\r\n\r\n

8. Limitations on Liability and Use

\r\n

KopenTech reserves the right to change the these Terms and Conditions at any time. KopenTech also reserves the right, in its sole discretion, to revoke Your access to the Trading Protocols or to otherwise make the Trading Protocols unavailable to You.

\r\n\r\n

9. No Physical Settlement

\r\n

No transaction matched through the Trading Protocols on the ATS may be physically settled. The settlement agent has no responsibility for processing physical settlements. It is the responsibility of the seller of securities not to list such bonds via Trading Protocols.

\r\n\r\n

10. No 144A/Reg S Conversions

\r\n

No transaction matched through the Trading Protocols on the ATS may be converted from 144A to Reg S or vice versa. Buyers are providing firm bids for the securities listed in the format identified by a seller.

\r\n\r\n

11. Authorization

\r\n

You agree that You are responsible for the actions of any persons authorized to trade or act or act on Your behalf. You agree to maintain updated authorized trader list on file with KopenTech Capital Markets LLC.

\r\n\r\n

12. Commission Sharing

\r\n

KopenTech Capital Markets LLC and the clearing agent share commissions collected by the clearing agent to execute and settle transactions matched on the ATS. There is no additional cost to You because of this arrangement.

\r\n \r\n )\r\n}\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport Popup from '../controls/Popup';\r\nimport { PopupBody, PopupFooter } from '../controls';\r\nimport { Checkbox } from '../controls/Checkbox';\r\nimport { directBiddingDisclaimerActions } from '../../actions/direct-bidding-agreement-disclaimer.actions';\r\nimport { DirectBiddingDisclaimerPopupText } from './DirectBiddingDisclaimerPopupText';\r\nimport { AppState } from '../../types/state/AppState';\r\nimport { isRequesting } from '../../utils';\r\nimport IconSVG from '../../styles/svg-icons';\r\n\r\nexport const DirectBiddingDisclaimerPopup: React.FC = () => {\r\n const dispatch = useDispatch();\r\n\r\n const [agreeCheckBoxChecked, setAgreeCheckBoxChecked] = useState(false);\r\n const downloadPdfRequestState = useSelector((state: AppState) => state.directBiddingDisclaimer.downloadPdfRequestState);\r\n const confirmRequestState = useSelector((state: AppState) => state.directBiddingDisclaimer.confirmRequestState);\r\n const visible = useSelector((state: AppState) => state.directBiddingDisclaimer.visible);\r\n\r\n useEffect(() => {\r\n if (!visible) {\r\n setAgreeCheckBoxChecked(false);\r\n }\r\n }, [visible]);\r\n\r\n if (!visible) {\r\n return null;\r\n }\r\n\r\n const handleOnClose = () => {\r\n dispatch(directBiddingDisclaimerActions.hide(false))\r\n };\r\n\r\n return (\r\n \r\n \r\n
\r\n \r\n
\r\n dispatch(directBiddingDisclaimerActions.downloadPdfRequest())}\r\n disabled={isRequesting(downloadPdfRequestState)}\r\n >\r\n Download agreement\r\n \r\n
\r\n
\r\n setAgreeCheckBoxChecked(!agreeCheckBoxChecked)}\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n dispatch(directBiddingDisclaimerActions.confirmRequest())}\r\n disabled={!agreeCheckBoxChecked || isRequesting(confirmRequestState)}\r\n >\r\n Agree\r\n \r\n \r\n \r\n )\r\n};\r\n"],"names":["DealItem","forwardRef","_ref","ref","deal","searchTerm","history","useHistory","referenceName","_useParams","useParams","activeTab","tab","selectedDealReferenceName","dealReferenceName","isAdminOrDataEntry","user","hasRoles","roles","Administrator","DataEntry","withDocumentsAccess","apply","_toConsumableArray","seller","isDealSelected","isTabActive","_useState","useState","_useState2","_slicedToArray","isCollapsed","setIsCollapsed","useEffect","_jsxs","children","className","classNames","expanded","onClick","push","routes","dealsUrl","DealsTabType","Overview","undefined","hasClosedTransactions","_jsx","IconSVG","name","width","height","OnHoverTooltip","overlay","legalName","Highlighter","searchWords","autoEscape","textToHighlight","availableTabs","DealsTabTypes","filter","t","value","DealDetail","Documents","map","text","isActive","AmrInfo","hasAmrTransactions","Link","active","to","e","preventDefault","stopPropagation","renderTabs","DealsSelectionPanel","data","selectedReferenceName","isLoading","dispatch","useAppDispatch","collapsed","setCollapsed","_useState3","_useState4","setSearchTerm","selectedDealRef","useRef","debouncedSearch","useDebounce","customEvent","document","createEvent","initEvent","window","dispatchEvent","useLayoutEffect","_selectedDealRef$curr","current","scrollIntoView","behavior","block","length","dealsActions","getDeals","classnames","SelectionPanelSearch","placeholder","onCollapseClick","onSearch","Preloader","inProgress","EmptyPlaceholder","textView","emptyPlaceholder","constants","ClassInfo","_amrFormatUtils$forma","_formatDate","_formatDate2","selectedClass","dealCurrency","closingDate","ticker144A","cusip144A","isin144A","tickerRegS","cusipRegS","isinRegS","commonCodeRegS","tickerAccdInvCertif","cusipAccdInvCertif","isinAccdInvCertif","originalBalance","balance","originalMargin","margin","floaterIndex","minimumDenomination","factor","type","equity","redeemed","amr","nonAmrPeriod","nonAmrPeriodEnd","originalRatingMoodys","originalRatingSnP","originalRatingFitch","originalRatingKbra","originalRatingDbrs","ratingMoodys","ratingSnP","ratingFitch","ratingKbra","ratingDbrs","pariPassuTranches","trancheSupported","status","transactionReferenceName","linkedOtcName","formatDate","formatUtils","SectionContent","title","concat","FormField","moneyUtils","money","formatMargin","amrFormatUtils","formatInventoryCoupon","formatFactor","tooltip","formatBoolean","formatBooleanWithPlaceholder","ShowFor","getWithout","dealsAccess","bd","Media","Information","_collateralTypesAbbr$","ticker","collateralType","currencyCode","currentBalance","collateralTypesAbbr","formatDealStatus","Dates","nonCallPeriodEnd","reinvestmentPeriodEnd","lastRefinancingDate","finalMaturity","firstPaymentDate","secondPaymentDate","quarterlyDay","quarterlyMonths","vintage","redemptionDate","moment","year","React","companyForPopup","setCompanyForPopup","showDeleteConfirmationPopup","setShowDeleteConfirmationPopup","Parties","_deal$trustee","_deal$trustee2","_deal$trustee3","useContext","DealsContext","collateralManager","majorityEquity","trustee","amrAgent","originalArranger","currentArranger","target","manageBanksUrl","CompanyStatus","Active","manageCloManagerUrl","DealsHeaderBase","dateUpdated","renderTitleSuffix","renderLinks","editButtonUrl","editTooltip","isEditDisabled","onDeleteClick","dateUpdatedEst","dateTimeUtils","changeDateTimeZone","estTimezone","_Fragment","disabled","format","dateTimeFormat","wrapperClass","dateFormat","castArray","el","index","classSelectColumns","columnKey","renderColumnHeaderContent","renderColumnContent","dealClass","transactionClosingDate","startCase","transactionType","c","ColumnBuilder","ClassSelect","classes","selectedClassReferenceName","onChange","dropdownClass","selected","find","setExpanded","_ref$current","ClickOutside","Table","dataItems","columns","createRowRef","item","onRowClick","createSecurityCustomClassName","join","DealIntexLink","IntexLink","positionId","getCurrentIntexPositionIdForDeal","DealsClassHeader","_selectedDeal$transac","selectedDeal","useSelector","state","deals","classReferenceName","activeClass","withTransactions","transactions","onChangeClass","dealClassReferenceName","RelatedTransDropdown","dealLegalName","hasTransactions","BloombergLink","identifiers","textLink","ValitanaLink","useFirstClassNavigation","dealTab","firstClass","head","replace","_useSelector","dealClasses","TrancheStatus","Draft","hasEmptyContent","some","TransactionStatus","Closed","_selectedDeal$transac2","transactionUrl","transactionDetailUrl","href","rel","renderEmptyPlaceHolder","CompanyTab","company","address","city","zipCode","country","renderAddress","fullName","firstName","lastName","nameUtils","getFullName","nameOfGroup","_objectSpread","memberColumnsDefinitions","member","_ref2","primaryContact","email","mobilePhoneNumber","memberColumns","memberCollapsibleColumns","memberHeadColumns","_ref3","members","collateralManagerReferenceName","withAssignedCollateralManager","assignedCollateralManagerReferenceName","isListGrouped","every","allMembers","reduce","acc","list","_defineProperty","assignedContacts","otherContacts","assignedTitle","otherTitle","allRows","renderCollapsibleItem","listItem","headerVisible","collapsible","renderCollapsibleList","createSecurityCustomArgs","Tab","CompanyPopup","companyReferenceName","onClose","Members","setTab","companyWithMembers","useCompany","Popup","modalClass","TabList","TabItem","getMembersTitle","Company","sortedMembers","sortContactsByPrimary","MembersTab","renderTab","AdditionalInformation","euCompliance","euRiskRetentionRequirements","euDisclosureRequirements","esg","esgComment","staticDeal","amrDeal","capitalize","renderMarkdownOrEmpty","ManagementFee","seniorManagementFee","incentiveManagementFee","subManagementFee","formatDecimal","AdministrativeFee","adminExpenseCap","adminExpenseCapPercentage","trusteeFee","dealAmendmentDetailsColumns","transaction","sortingField","sortingType","SORTING_TYPE","date","previousTransaction","_ref4","_previousTransaction$","_previousTransaction$2","_transaction$statedMa","_transaction$statedMa2","statedMaturity","column","DealAmendmentDetails","_ref5","findPreviousTransaction","findIndex","defaultSortBy","defaultSortByDirection","SORT","DESC","i","DealsDefaultHeader","isEditAvailable","dealsEdit","editDealUrl","DealStatus","getAllRolesExclude","DealsSaveHeader","subTitle","isUpdating","hasChanges","onSaveClick","onCancelClick","saveButtonDisabled","isNil","DealValidationSchema","Yup","shape","trim","required","currencyOptions","Currencies","currency","label","statusOptions","Ready","NewIssueDraft","quarterlyDaysOptions","times","quarterlyMonthsOptions","months","formatCompaniesToSelect","EditDealDetails","_editDeal$transaction2","formRef","editDeal","companies","useParties","items","availableStatusOptions","useMemo","_editDeal$transaction","option","editDealReset","Formik","initialValues","innerRef","validationSchema","onSubmit","values","updateDeal","_values$originalArran","_values$currentArrang","_values$trustee","_values$collateralMan","_values$majorityEquit","_values$amrAgent","dirty","isSubmitting","submitForm","RouteLeavingGuard","navigate","pathname","shouldBlockNavigation","TextField","wrapperClassName","SelectField","collateralTypesSelectOptions","optionKeyProp","optionLabelProp","NumberField","CheckboxField","DateField","emptyIfNull","withCustomView","withEmptyValue","SelectSearchField","markRequired","withResetOption","options","arrangerCompanies","trusteeCompanies","collateralManagerCompanies","majorityEquityCompanies","amrAgentCompanies","MarkdownField","maxLength","ClassSecondaryInfo","classSecurity","classSecurityStats","isSecondaryInfoLoading","isInventoryDisabled","inventoryState","useInvenotory","useDispatch","getClassSecondaryInfo","isRequestNone","requestState","isRequesting","withHistoryData","count","inventory","PxTalkHistoricalColorDispersion","securityStatistics","securityId","id","evalPriceTalkVisible","SecurityHistory","securityIdentifier","bwicsHistory","ClassDetails","ClassDetail","actionsColumn","dealAmrInfoUrl","stickRight","classesColumnsDefinition","amrClass","AmrClassStatusLabel","cusip","numericUtils","isNumber","totalOfBids","winningMargin","placement","capMargin","pricingDate","NonAmrPeriod","period","transactionColumns","lastUpdated","StatusLabel","transactionStatusTitles","transactionStatus","classesColumns","amrTransactions","TransactionType","isAdminOrDataEntryOrMedia","lastAmrPricingDate","lastAmrSettlementDate","sticky","columnType","TableColumnStickType","Right","_getSelectedTransacti","getSelectedTransaction","useCallback","classTitle","transactionTitle","Breadcrumbs","BreadcrumbsItem","route","amrStatus","AmrStatus","dealAmrInfoEditUrl","amrClassesColumns","dealAmrInfoClassUrl","stickLeft","minBidAmount","principalAmountStep","redemptionPriceInPercent","settlementDate","setClassForDealerPopup","setClassForSettlementInstructionPopup","DocumentColumnDate","DocumentsList","_ref$documentTypes","documentTypes","_ref$withPublic","withPublic","_ref$documentColumnDa","documentColumnDate","executionDate","_useDownloadDocumentL","useDownloadDocumentList","documents","downloadRequest","dealsService","getDealDocument","loadingState","loadHandler","headerClassName","bodyClassName","DownloadDocument","FileIcon","filename","string","_documentTypes$find","documentType","typeLabel","dt","uploadTime","Checkbox","checked","isPublic","EmptySectionContent","yup","cashSettlementAccountAbaNumber","matches","nullable","cashSettlementAccountSWIFT","cashSettlementAccountAccountNumber","max","bondSettlementAccountDTCParticipant","bondSettlementAccountAgentNumber","bondSettlementAccountInstitutionalId","bondSettlementAccountAccountNumber","SettlementInstructionsPopup","_useSettlementInstruc","useSettlementInstructions","settlementInstructions","enableReinitialize","saveSettlementInstructionsRequest","RequestState","request","PopupBody","PopupFooter","EditDealersPopup","selectedDealers","setSelectedDealers","useAvailableBrokerDealers","excludedDealers","useExcludedDealers","availableBrokerDealers","key","fixed","permanent","available","draggable","order","d","trancheReferenceName","dealer","Transfer","leftColumnTitle","rightColumnTitle","withFixed","destinationDraggable","onReset","saveExcludedDealersRequest","AmrInfoDetails","classForDealerPopup","classForSettlementInstructionPopup","_useState5","_useState6","selectedTransaction","_useAmrDocuments","useAmrDocuments","amrDocuments","downloadDocument","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","downloadAmrDocument","then","file","saveAs","blob","stop","_x","arguments","AmrInfoHeader","electionNotice","noticeDate","informationNoticeDate","electionToInformationBusinessDays","informationToPricingBusinessDays","pricingToSettlementBusinessDays","DocumentGroup","itemsCount","downloadAllFetch","downloadAmrDocuments","downloadAllArgs","fileNameForSave","Confirm","confirmButtonText","onCancel","onConfirm","deleteAmrTransaction","legalNameOnDeal","ExcludedColumnns","allClassesColumnDefinitions","tranche","context","open","coupon","formatOriginalRating","formatCurrentRating","content","linkedOtcReferenceName","AllClassesView","showHistoricalClasses","setShowHistoricalClasses","isCheckboxVisible","Inactive","dealsAllClasesUrl","includes","AllClassesEdit","grid","isDetailsLoading","allClasses","allClassesInvalidateTranceCache","gridActions","reset","allClassesEditInit","isEqual","gridUtils","sanitizeGridItems","allClassesUpdate","Grid","dataUploadDisabled","AllClasses","Switch","Route","exact","path","render","groupDocuments","withEditRole","sortedDocumentList","lastDate","getDealDocLastDate","formatTimeStringWithoutTimeZone","sort","a","b","compareDates","dealDocuments","getDealRegularDocumentTypes","cleansingNotices","isFormatAllowed","withRequiredType","DocumentType","cleansingNoticeRefinancing","cleansingNoticeReset","splittedDocName","split","docFormat","toLowerCase","distributionReports","distributionReport","monthlyReports","monthlyReport","reportsExcelFiles","otherDocuments","otherDocument","_selectedDeal$documen","_selectedDeal$documen2","_selectedDeal$documen3","_selectedDeal$documen4","_selectedDeal$documen5","_selectedDeal$documen6","_selectedDeal$documen7","allDocuments","distributionReportsPattern","dealDocumentPatterns","p","pattern","monthlyReportsPattern","_groupDocuments","getDealRegularDocuments","dealRegularDocsTypeList","getCleansingNoticeDocuments","cleansingNoticeDocsTypeList","getDealDocumentsByType","getDocumentTypeText","EditDocumentsList","progress","handleDeleteFile","documentKey","_ref$withPublicColumn","withPublicColumn","_ref$disabledDate","disabledDate","_useFormikContext$val","useFormikContext","currentList","_objectWithoutProperties","_excluded","documentReferenceName","getFormikIndex","l","documentToDownload","documentsColumnDefinitions","ProgressCircle","documentIndex","documentName","maximumDate","Date","getTableColumns","createRowCustomKey","EditDocumentsSection","onUpload","setUploadProgress","patternName","renderAdditionalButton","remove","formControlClassName","FileUploader","maxFileSizeInMb","onUploading","props","checkFileFormat","fileName","_fileName$split$pop","fileExtension","pop","_len","fileFormats","Array","_key","EditDocuments","isUploading","setIsUploading","handleUpload","setFieldValue","files","f","has","documentsList","updateDealDocuments","otherDealDocument","DownloadTemplateButton","templateType","electionNoticeDate","AmrInfoEdit","hasGridChanges","amrInfoClassesEdit","amrInfoSave","amrStatusesSelectOptions","deleteRowVisible","addRowVisible","moveRowVisible","amrPipelineService","getTransactionDocuments","renderEmptyDealersPlaceholder","category","AmrClassDetails","_selectedTransaction$","_selectedClass$nonAmr","_settlementInstructio","_settlementInstructio2","_settlementInstructio3","_settlementInstructio4","_settlementInstructio5","_settlementInstructio6","_settlementInstructio7","_settlementInstructio8","_settlementInstructio9","_settlementInstructio10","_settlementInstructio11","_settlementInstructio12","_settlementInstructio13","_settlementInstructio14","settlementInstructionsRequestState","_useAvailableBrokerDe","availableBDRequestState","availableDealers","_useExcludedDealers","excludedBDRequestState","redemptionPrice","amrStatusReason","statusReason","submissionDeadline","submissionErrorCorrectionDeadline","allocationErrorCorrectionDeadline","mandatoryTenderNoticeDate","amortizationNoticeDate","fundingDeadline","delayedFundingDeadline","settlementDeadline","actionBtn","exportSettlementInstructions","cashSettlementAccountBank","cashSettlementAccountAccountName","cashSettlementAccountReference","bondSettlementAccountBank","bondSettlementAccountAccountName","trusteeContact","amrAgentContact","ed","Deals","_data$find","_selectedDeal$collate","navigateToFirstDeal","firstDeal","getDealDetails","renderRedirect","tabToRedirect","Redirect","Provider","fullScreen","deleteDealRequest","DirectBiddingDisclaimer","_user$current","isFeatureBlocked","BlockedFeatureContext","agreements","useSettlementAgentAgreements","confirmRequestState","directBiddingDisclaimer","hasConfirmedClearingBankAgreement","agreementStatus","SettlementAgreementStatus","confirmed","settlementAgent","isClearingBank","blocked","SellerTrader","BrokerDealerTrader","directBiddingAgreementSigned","DirectBiddingDisclaimerContext","DirectBiddingDisclaimerActionBlocker","_ref$disabled","actionBlockerId","_","visible","blockerId","handleConfirm","directBiddingDisclaimerActions","handleClick","show","renderChildren","DirectBiddingDisclaimerContent","popupVisible","handleReject","DirectBiddingDisclaimerContentBlocker","_ref2$disabled","DirectBiddingDesclaimerLink","_ref$disclaimerDisabl","disclaimerDisabled","requiredFeature","_ref$text","ActionBlocker","feature","FeatureLink","DirectBiddingDisclaimerPopupText","ATSRulebook","process","DirectBiddingDisclaimerPopup","agreeCheckBoxChecked","setAgreeCheckBoxChecked","downloadPdfRequestState","handleOnClose","hide","downloadPdfRequest","confirmRequest"],"sourceRoot":""}