{"version":3,"file":"static/js/main-0a037d97.8a51f1e5.js","mappings":"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","sources":["logging/app-insights.ts","logging/logger.ts","logging/useContentVisibilityLogger.ts","reducers/add-to-portfolio.reducer.ts","reducers/address.reducer.ts","reducers/all.bwics.reducer.js","reducers/amr-common.reducer.ts","reducers/amr-pipeline-detailed.reducer.ts","reducers/amr-pipeline-history.reducer.ts","reducers/amr-arranger-pipeline.reducer.ts","reducers/amr-deals.reducer.ts","reducers/amr-pipeline.reducer.ts","reducers/api-operation.reducer.ts","reducers/authentication.reducer.js","reducers/banks.reducer.ts","reducers/bd-inventory.reducer.ts","reducers/bid-on-behalf.reducer.ts","reducers/bidding.push.data.reducer.js","reducers/bidding.reducer.js","reducers/blast-message.reducer.ts","reducers/blotter.reducer.js","reducers/bid-placement.reducer.ts","reducers/bid-confirmation.reducer.ts","reducers/brokerDealer.bidding.reducer.js","reducers/bwic-history.reducer.js","reducers/bwic-log.reducer.ts","reducers/change-subscription.reducer.ts","reducers/change.color.reducer.js","reducers/change.pxTalk.reducer.ts","reducers/clients-companies.reducer.ts","reducers/clo-managers.reducer.ts","reducers/companies.reducer.js","reducers/company-details.reducer.ts","reducers/company-members.reducer.ts","reducers/contact-sales.reducer.ts","reducers/contacts.save.reducer.js","reducers/dashboard.reducer.js","reducers/dealer-list-filter.reducer.ts","reducers/dealer-list-panel.reducer.ts","reducers/dealer-list.reducer.ts","reducers/dealers-stats.reducer.ts","reducers/dealers.reducer.ts","reducers/deals.reducer.ts","reducers/direct-bidding-agreement-disclaimer.reducer.ts","reducers/edit-news.reducer.ts","reducers/edit.company.reducer.ts","reducers/edit.parsed.bwic.reducer.js","reducers/edit.portfolio.reducer.js","reducers/entities/update-inventory-push.reducer.ts","reducers/entities/bd-inventory.reducer.ts","reducers/entities/inventory-reducer.ts","reducers/entities/broker-dealers-list.reducer.ts","reducers/entities/broker-dealer-contact-list.reducer.ts","reducers/entities/broker-dealer-user-list.reducer.ts","reducers/entities/settlement-agent-agreements.reducer.ts","reducers/entities/admin-inventory-edit.reducer.ts","reducers/entities/rejected-trades.reducer.ts","reducers/entities/portfolio-list.reducer.ts","reducers/email-preferences.reducer.ts","reducers/entities/active-inventory-security.reducer.ts","reducers/entities/settlement-agent-commission.reducer.ts","reducers/entities/settlement-account.reducer.ts","reducers/entities/asset-manager.reducer.ts","reducers/entities/trade-allocation.reducer.ts","reducers/entities/trade-allocation-template.reducer.ts","reducers/entities/awaiting-trades.reducer.ts","reducers/entities/collateral-managers.reducer.ts","reducers/entities/trustee.reducer.ts","reducers/entities/page-config.reducer.ts","reducers/entities/live-bidding.reducer.ts","reducers/entities/cloSystemInfrastructure.reducer.ts","reducers/entities/parties.reducer.ts","reducers/entities/availableBrokerDealers.reducer.ts","reducers/entities/latest-transaction.reducer.ts","reducers/entities/arrangers-pipeline.reducer.ts","reducers/entities/entities.reducer.ts","reducers/error.reducer.js","reducers/favorite-broker-dealers.reducer.ts","reducers/filter-actions.reducer.ts","reducers/filter.reducer.ts","reducers/filters.reducer.ts","reducers/forms.reducer.js","reducers/grid.reducer.js","reducers/help-resources.reducer.ts","reducers/im-details-deals.reducer.ts","reducers/im-user-config.reducer.ts"],"sourcesContent":["import { ApplicationInsights, ITelemetryPlugin } from '@microsoft/applicationinsights-web'\r\nimport { ReactPlugin } from '@microsoft/applicationinsights-react-js'\r\nimport { history } from '../history';\r\nimport { user } from '../user/user';\r\n\r\nconst reactPlugin = new ReactPlugin();\r\nconst instrumentationKey = process.env.REACT_APP_APP_INSIGHTS_INSTRUMENTATION_KEY;\r\n\r\nconst ai = new ApplicationInsights({\r\n config: {\r\n instrumentationKey,\r\n extensions: [reactPlugin as unknown as ITelemetryPlugin],\r\n extensionConfig: {\r\n [reactPlugin.identifier]: { history }\r\n }\r\n }\r\n});\r\n\r\nif (instrumentationKey) {\r\n ai.loadAppInsights();\r\n ai.addTelemetryInitializer(item => {\r\n\r\n if (item.baseType === \"MessageData\") {\r\n if (item.ext && item.ext.trace) {\r\n item.ext.trace.name = history.location.pathname;\r\n }\r\n }\r\n \r\n try {\r\n const currentUser = user.current();\r\n if (currentUser) {\r\n ai.setAuthenticatedUserContext(currentUser.email, undefined, true);\r\n } else {\r\n ai.clearAuthenticatedUserContext();\r\n }\r\n } catch (e) {\r\n console.log('Failed to add telemetry data', e);\r\n }\r\n });\r\n}\r\n\r\nexport const appInsights = ai.appInsights;\r\n","import { appInsights } from \"./app-insights\";\r\nimport { SeverityLevel } from \"@microsoft/applicationinsights-web\";\r\n\r\nexport const logger = {\r\n exception(exception: Error & { silent?: boolean }, message: string): void {\r\n if (exception?.silent) return;\r\n\r\n writeToConsole(message, exception);\r\n\r\n if (process.env.REACT_APP_APP_INSIGHTS_INSTRUMENTATION_KEY) {\r\n try {\r\n appInsights.trackException({ exception, severityLevel: SeverityLevel.Error }, { message: addFePrefix(message) });\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n },\r\n trace(message: string, payload?: any): void {\r\n writeToConsole(message, payload);\r\n\r\n if (process.env.REACT_APP_APP_INSIGHTS_TRACE_ENABLED &&\r\n process.env.REACT_APP_APP_INSIGHTS_INSTRUMENTATION_KEY) {\r\n try {\r\n appInsights.trackTrace(\r\n { message: addFePrefix(message), severityLevel: SeverityLevel.Information },\r\n payload && { payload }\r\n );\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction writeToConsole(message: string, payload?: any) {\r\n if (process.env.REACT_APP_CONSOLE_LOGGING_ENABLED) {\r\n console.log(message, payload || '');\r\n }\r\n}\r\n\r\nfunction addFePrefix(message: string) {\r\n return 'FE: ' + message;\r\n}\r\n","import { useLayoutEffect, useRef } from \"react\";\r\nimport { useIntersectionObserver } from \"../components/common/IntersectionObsereverProvider\";\r\nimport { trackingService } from \"../services/action-tracking.service\";\r\nimport { logger } from \"./logger\";\r\n\r\n// Works only inside \r\nexport function useContentVisibilityLogger(\r\n targetRef: React.RefObject,\r\n traceText?: string,\r\n visibleTimoutSeconds: number = 5\r\n) {\r\n const { id, visible } = useIntersectionObserver(traceText ? targetRef : undefined);\r\n const visibleRef = useRef(visible);\r\n const timeout = useRef | null>(null);\r\n\r\n useLayoutEffect(() => {\r\n visibleRef.current = visible;\r\n if (visible && traceText && id) {\r\n timeout.current = setTimeout(() => {\r\n if (visibleRef.current && traceText) {\r\n logger.trace(traceText);\r\n trackingService.trackAction(traceText);\r\n }\r\n }, visibleTimoutSeconds * 1000);\r\n } else if(timeout.current) {\r\n clearTimeout(timeout.current);\r\n timeout.current = null;\r\n }\r\n }, [traceText, visible, id, visibleTimoutSeconds])\r\n\r\n return { id, visible };\r\n}","import { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { addToPortfolioActions } from \"../actions/add-to-portfolio.actions\";\r\nimport { AddToPortfolioState } from '../types/state/AddToPortfolioState';\r\n\r\nconst initialState = {\r\n popupVisible: false,\r\n selectedPortfolio: undefined,\r\n isSaving: false,\r\n error: undefined\r\n};\r\n\r\nexport function addToPortfolio(state = initialState, action: AnyAction): AddToPortfolioState {\r\n switch (action.type) {\r\n case getType(addToPortfolioActions.setPopupVisibility):\r\n return {\r\n ...state,\r\n popupVisible: action.payload.visible\r\n };\r\n case getType(addToPortfolioActions.setSelectedPortfolio):\r\n return {\r\n ...state,\r\n selectedPortfolio: action.payload.selectedPortfolio\r\n };\r\n case getType(addToPortfolioActions.reset):\r\n return { ...initialState };\r\n case getType(addToPortfolioActions.setSubmittingProgress):\r\n return {\r\n ...state,\r\n isSaving: action.payload.isSaving\r\n };\r\n case getType(addToPortfolioActions.storeError):\r\n return {\r\n ...state,\r\n error: action.payload.error\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { AnyAction, combineReducers } from 'redux';\r\nimport { ActionCreator, getType } from \"typesafe-actions\";\r\nimport { addressActions } from '../actions/address.actions';\r\nimport { RegionState } from '../types/state/AddressState';\r\n\r\nfunction createRegionReducer(loadAction: ActionCreator, responseAction: ActionCreator) {\r\n const initialRegionState: RegionState = {\r\n data: [],\r\n isLoading: false,\r\n isLoaded: false,\r\n };\r\n\r\n return function reducer(state = initialRegionState, action: AnyAction): RegionState {\r\n switch (action.type) {\r\n case getType(loadAction):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n isLoaded: false,\r\n data: [],\r\n };\r\n case getType(responseAction):\r\n return {\r\n ...state,\r\n isLoading: false,\r\n isLoaded: true,\r\n data: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n }\r\n}\r\n\r\nexport const address = combineReducers({\r\n countries: createRegionReducer(addressActions.loadCountries, addressActions.loadCountriesResponse),\r\n states: createRegionReducer(addressActions.loadStates, addressActions.loadStatesResponse),\r\n cities: createRegionReducer(addressActions.loadCities, addressActions.loadCitiesResponse),\r\n});\r\n","import {\r\n allBWICSActions as actionTypes,\r\n pushDataActions,\r\n sellerBiddingActions\r\n} from '../constants';\r\nimport { biddingUtils } from '../utils';\r\nimport { OpenBiddingStatus } from '../types/enums/OpenBiddingStatus';\r\nimport { getType } from 'typesafe-actions';\r\nimport { pushBwicActions } from '../actions';\r\nimport { BwicMonitorSortByOptions } from '../types/state/AllBwicsState';\r\nimport { RequestState } from '../constants/request-state';\r\n\r\nconst pagingInitialState = {\r\n currentPageNumber: 1,\r\n pageSize: 50,\r\n totalRecordNumber: 0\r\n};\r\n\r\nconst initialState = {\r\n bwics: [],\r\n searchInProgress: RequestState.none,\r\n activeBwicReferenceName: null,\r\n ...pagingInitialState,\r\n isNextPageRequesting: false,\r\n isRequestingExportBwics: false,\r\n myBwicsOnly: false,\r\n isAllToAll: false,\r\n sortBy: BwicMonitorSortByOptions.NewestFirst,\r\n advancedFilterBlocked: false,\r\n summary: undefined\r\n};\r\n\r\nexport function allBWICS(state = initialState, action) {\r\n switch (action.type) {\r\n case actionTypes.MY_BWICS: return { ...state, myBwicsOnly: action.myBwicsOnly };\r\n case actionTypes.ALL_TO_ALL: return { ...state, isAllToAll: action.isAllToAll };\r\n case actionTypes.BWICS_SEARCH_PROGRESS: return { ...state, searchInProgress: action.status };\r\n case actionTypes.BWICS_SEARCH_COMPLETE: {\r\n const currentBwicList = (action.isNextPageRequesting ? state.bwics : []) || [];\r\n const requestedBwics = action.bwics.map(b => ({ ...b, collapsed: !!state.collapseAll }));\r\n\r\n return {\r\n ...state,\r\n bwics: currentBwicList.concat(requestedBwics),\r\n searchInProgress: RequestState.success,\r\n currentPageNumber: action.isNextPageRequesting ? state.currentPageNumber + 1 : pagingInitialState.currentPageNumber,\r\n totalRecordNumber: action.totalRecordNumber,\r\n summary: action.summary ?? state.summary\r\n };\r\n }\r\n case actionTypes.ALL_BWICS_SET_EXPORTING_STATUS:\r\n return {\r\n ...state,\r\n isRequestingExportBwics: action.payload.status\r\n };\r\n case actionTypes.SET_ACTIVE_BWIC:\r\n return {\r\n ...state,\r\n activeBwicReferenceName: action.bwicReferenceName\r\n };\r\n case actionTypes.SET_BWIC_COLLAPSED_STATE:\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b =>\r\n b.referenceName === action.bwic.referenceName\r\n ? { ...b, collapsed: action.bwic.collapsed }\r\n : b)\r\n };\r\n case actionTypes.SET_COLLAPSE_ALL:\r\n return {\r\n ...state,\r\n collapseAll: action.collapseAll,\r\n bwics: state.bwics.map(b => b.collapsed === action.collapseAll\r\n ? b\r\n : { ...b, collapsed: action.collapseAll })\r\n };\r\n case actionTypes.ALL_BWICS_NEXT_PAGE_REQUESTING:\r\n return {\r\n ...state,\r\n isNextPageRequesting: action.isRequesting\r\n };\r\n case actionTypes.ALL_BWICS_RESET_PAGING:\r\n return {\r\n ...state,\r\n ...pagingInitialState\r\n };\r\n case actionTypes.LIVE_BIDDING_STAGE2_EXPIRED:\r\n return {\r\n ...state,\r\n bwics: [...state.bwics]\r\n };\r\n case actionTypes.ADVANCED_FILTER_BLOCKED:\r\n return {\r\n ...state,\r\n advancedFilterBlocked: action.blocked\r\n };\r\n case actionTypes.RESET_SUMMARY:\r\n return {\r\n ...state,\r\n summary: undefined\r\n };\r\n case actionTypes.RESET: return { ...initialState };\r\n case sellerBiddingActions.MARK_BIDS_SHOWN:\r\n if (state.myBwicsOnly &&\r\n state.bwics &&\r\n state.bwics.length &&\r\n state.bwics.some(b => b.referenceName === action.bwicReferenceName)) {\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === action.bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s =>\r\n s.id === action.positionId\r\n ? {\r\n ...s,\r\n bids: (s.bids || []).map(b => action.bidList.some(bid => biddingUtils.getUniqueBidId(bid) === biddingUtils.getUniqueBidId(b))\r\n ? { ...b, isNew: false }\r\n : b)\r\n }\r\n : s\r\n )\r\n }\r\n : bwic\r\n )\r\n };\r\n }\r\n\r\n return state;\r\n case actionTypes.ADD_POSITION_BIDS:\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === action.bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s =>\r\n s.id === action.positionId\r\n ? {\r\n ...s,\r\n bids: action.bids\r\n }\r\n : s\r\n )\r\n } : bwic\r\n )\r\n }\r\n case actionTypes.SORTING_CHANGED:\r\n return {\r\n ...state,\r\n sortBy: action.sortBy\r\n }\r\n // Push data actions\r\n case pushDataActions.PUSH_DATA_COLOR_DISTRIBUTION: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n const { bwicReferenceName, isColorDistribution } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === bwicReferenceName\r\n ? { ...b, isColorDistribution }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_TRADED_AWAY: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n\r\n const { bwicReferenceName, positionId, isTradedAway } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s => s.id === positionId\r\n ? { ...s, isTradedAway, trade: isTradedAway ? null : s.trade }\r\n : s\r\n )\r\n }\r\n : bwic)\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_TRADE: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n\r\n const { bwicReferenceName, positionId, trade } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s => s.id === positionId\r\n ? { ...s, isTradedAway: false, trade }\r\n : s\r\n )\r\n }\r\n : bwic)\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_NEW_BID: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, bid, bwicReferenceName } = action;\r\n const newBid = { ...bid, isNew: true };\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s => {\r\n if (s.id === positionId) {\r\n return {\r\n ...s,\r\n bids: s.bids?.some(b => biddingUtils.getBidCompanyIdentifier(b) === biddingUtils.getBidCompanyIdentifier(bid))\r\n ? s.bids.map(b => biddingUtils.getBidCompanyIdentifier(b) === biddingUtils.getBidCompanyIdentifier(bid) ? newBid : b)\r\n : (s.bids || []).concat(newBid)\r\n }\r\n }\r\n return s;\r\n })\r\n }\r\n : bwic)\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_AXED_FINAL_CHANGE: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, bidId, bwicReferenceName, axed, final, company } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(bwic => bwic.referenceName === bwicReferenceName\r\n ? {\r\n ...bwic,\r\n securities: bwic.securities.map(s => s.id === positionId ? {\r\n ...s,\r\n bids: s.bids?.map(b =>\r\n biddingUtils.getUniqueBidId(b) === biddingUtils.getUniqueBidId({ id: bidId, company })\r\n ? { ...b, axed, final, isNew: true } : b)\r\n }\r\n : s\r\n )\r\n }\r\n : bwic)\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_NEW_PX_TALK: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n\r\n const { priceTalk, bwicReferenceName } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === bwicReferenceName\r\n ? {\r\n ...b,\r\n securities: b.securities && b.securities.map(s => s.id === priceTalk.positionId\r\n ? {\r\n ...s,\r\n pxTalks: s.pxTalks && s.pxTalks.some(p => p.company.id === priceTalk.company.id)\r\n ? priceTalk.isDeleted\r\n ? s.pxTalks.filter(p => p.company.id !== priceTalk.company.id)\r\n : s.pxTalks.map(p => p.company.id === priceTalk.company.id ? priceTalk : p)\r\n : (s.pxTalks || []).concat(priceTalk)\r\n }\r\n : s)\r\n }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_PUBLIC_COLORS: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n\r\n const { bwicReferenceName, colors } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === bwicReferenceName\r\n ? {\r\n ...b,\r\n securities: b.securities && b.securities.map(s =>\r\n colors.some(c => c.positionId === s.id)\r\n ? { ...s, color: colors.find(c => c.positionId === s.id).color }\r\n : s\r\n )\r\n }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_BWIC_STATUS_CHANGE: {\r\n if (!shouldHandlePushData(state, action, true)) return state;\r\n\r\n const { bwicReferenceName, bwicStatus } = action;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === bwicReferenceName\r\n ? { ...b, status: bwicStatus, isColorDistribution: false }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_QUICK_FEEDBACK: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const bwics = state.bwics.map(b => b.referenceName === action.bwicReferenceName\r\n ? {\r\n ...b,\r\n securities: b.securities && b.securities.map(s => s.id === action.positionId\r\n ? {\r\n ...s,\r\n feedback: action.feedback.feedback,\r\n feedbackCreatedUtc: action.feedback.feedbackCreatedUtc,\r\n bids: s.bids?.map(b => biddingUtils.getUniqueBidId(b) === biddingUtils.getUniqueBidIdFromFeedback(action.feedback)\r\n ? { ...b, feedback: action.feedback.feedback, feedbackCreatedUtc: action.feedback.feedbackCreatedUtc }\r\n : b)\r\n }\r\n : s\r\n )\r\n }\r\n : b\r\n );\r\n\r\n return { ...state, bwics };\r\n }\r\n case getType(pushBwicActions.bidRequest): {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const bwics = state.bwics.map(b => b.referenceName === action.bwicReferenceName\r\n ? {\r\n ...b,\r\n securities: b.securities && b.securities.map(s => s.id === action.positionId\r\n ? { ...s, bidRequest: action.bidRequest }\r\n : s\r\n )\r\n }\r\n : b\r\n );\r\n\r\n return { ...state, bwics };\r\n\r\n }\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_START_STAGE2: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === action.bwicReferenceName\r\n ? {\r\n ...b,\r\n // Update process\r\n process: {\r\n ...b.process,\r\n stagedBiddingStatus: OpenBiddingStatus.stage1Ended,\r\n jumpBall: b.process.jumpBall == null\r\n ? b.process.jumpBall\r\n : {\r\n ...b.process.jumpBall,\r\n stage1EndDateUtc: action.stage1EndDateUtc\r\n },\r\n topX: b.process.topX == null\r\n ? b.process.topX\r\n : {\r\n ...b.process.topX,\r\n stage1EndDateUtc: action.stage1EndDateUtc\r\n }\r\n },\r\n // Update isStage2Participant flag\r\n securities: b.securities?.map(s => {\r\n const canBidOnStage2 = action.canDealerBidOnPositions?.find(x => s.id === x.positionId)?.canBidOnStage2 ?? false;\r\n\r\n return { ...s, isStage2Participant: canBidOnStage2, canBidOnStage2 };\r\n })\r\n }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === action.bwicReferenceName\r\n ? {\r\n ...b,\r\n process: {\r\n ...b.process,\r\n stagedBiddingStatus: OpenBiddingStatus.improvementRoundEnded,\r\n },\r\n }\r\n : b\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_OPEN_BIDDING_STAGE2_LEVEL:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwics: state.bwics.map(b => b.referenceName === action.bwicReferenceName\r\n ? {\r\n ...b,\r\n securities: b.securities?.map(s => s.id === action.positionId\r\n ? {\r\n ...s,\r\n latestBidSubmission: action.sentDateUtc,\r\n }\r\n : s)\r\n } : b\r\n )\r\n };\r\n // End push data actions\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nfunction shouldHandlePushData(state, action, allBwicsPushEnabled = false) {\r\n return (\r\n (state.myBwicsOnly || allBwicsPushEnabled) &&\r\n state.bwics &&\r\n state.bwics.length &&\r\n state.bwics.some(b => b.referenceName === (action.bwicReferenceName || action.payload.bwicReferenceName))\r\n );\r\n}\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from 'typesafe-actions';\r\nimport { amrPipelineCommonActions } from '../actions';\r\nimport { RequestState } from \"../constants/request-state\";\r\nimport { PipelineCommonState } from '../types/state/PipelineCommonState';\r\n\r\nconst initialState: PipelineCommonState = {\r\n userCompany: undefined,\r\n requestState: RequestState.none,\r\n};\r\n\r\nexport const amrPipelineCommon = (\r\n state: PipelineCommonState = initialState,\r\n action: AnyAction\r\n) => {\r\n switch (action.type) {\r\n case getType(amrPipelineCommonActions.loadUserCompanyRequest):\r\n case getType(amrPipelineCommonActions.registerUser):\r\n return {\r\n ...state,\r\n requestState: RequestState.request,\r\n }\r\n case getType(amrPipelineCommonActions.loadUserCompanyResponse):\r\n return {\r\n ...state,\r\n userCompany: action.payload.userCompany,\r\n requestState: RequestState.success,\r\n };\r\n case getType(amrPipelineCommonActions.loadUserCompanyError):\r\n return {\r\n ...state,\r\n requestState: RequestState.failure,\r\n }\r\n case getType(amrPipelineCommonActions.reset):\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { AnyAction } from 'redux';\r\nimport { getType } from 'typesafe-actions';\r\nimport { amrTransactionAnalyticsActions } from '../actions';\r\nimport { constants, amrPipelineDetailedActions as actionTypes, analyticDefaultFilters } from '../constants';\r\nimport { dateRangeFilterOptions } from '../constants/date-range.filter';\r\nimport { AmrTransaction } from '../types/amr-pipeline/models/AmrTransaction';\r\nimport { Contact } from '../types/amr-pipeline/models/Contact';\r\nimport { IOI } from '../types/amr-pipeline/models/IOI';\r\nimport { OriginatingTransaction } from '../types/amr-pipeline/models/OriginatingTransaction';\r\nimport { PipelineDetailedState } from '../types/state/PipelineDetailedState';\r\nimport { formatIoI, sortCollateralQualityTests, sortSyndicateContacts } from '../utils/amr-pipeline.utils';\r\nimport { compareFullNames, compareIOI } from '../utils/compare.utils';\r\n\r\nconst initialState: PipelineDetailedState = {\r\n loadedTransactionsWithDetails: [],\r\n isTransactionsRequesting: false,\r\n isTransactionDetailsRequesting: true,\r\n isIOIsSubmitting: false,\r\n hasMoreTransactions: true,\r\n searchTerm: '',\r\n offset: 0,\r\n editIOIs: false,\r\n investorPopup: {\r\n isVisible: false,\r\n },\r\n analytics: {\r\n isLoading: true,\r\n versions: [],\r\n documentDownloads: [],\r\n totalDocumentsDownloads: 0,\r\n recentTransactionViews: 0,\r\n totalTransactionViews: 0,\r\n daysInMarket: 0,\r\n users: [],\r\n clientsActivity: {\r\n isLoading: true,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n transactionHistoryViews: {\r\n isLoading: true,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n },\r\n};\r\n\r\nexport const amrPipelineDetailed = (state: PipelineDetailedState = initialState, action: AnyAction) => {\r\n switch (action.type) {\r\n case actionTypes.TRANSACTIONS_REQUESTING_STATE:\r\n return {\r\n ...state,\r\n isTransactionsRequesting: action.isRequesting,\r\n };\r\n case actionTypes.EDIT_IOIS:\r\n return {\r\n ...state,\r\n editIOIs: action.isEdit,\r\n };\r\n case actionTypes.TRANSACTION_DETAILS_REQUESTING_STATE:\r\n return {\r\n ...state,\r\n isTransactionDetailsRequesting: action.isRequesting,\r\n };\r\n case actionTypes.TRANSACTION_DETAILS_IOIS_SUBMITTING:\r\n return {\r\n ...state,\r\n isIOIsSubmitting: action.isSubmitting,\r\n };\r\n case actionTypes.STORE_TRANSACTIONS:\r\n const transactions = action.transactions.items;\r\n\r\n return {\r\n ...state,\r\n transactions: state.transactions\r\n ? [\r\n ...state.transactions,\r\n ...transactions.map((t: AmrTransaction | OriginatingTransaction) =>\r\n t.referenceName === state.initialTransaction?.referenceName &&\r\n t.dealReferenceName === state.initialTransaction.dealReferenceName\r\n ? state.initialTransaction\r\n : t,\r\n ),\r\n ]\r\n : [...transactions],\r\n offset: state.offset + transactions.length,\r\n numberOfHiddenTransactions: action.transactions.numberOfHiddenItems,\r\n hasMoreTransactions: transactions.length === constants.defaultTransactionsSearchCriteria.count,\r\n };\r\n case actionTypes.STORE_INITIAL_TRANSACTION:\r\n return {\r\n ...state,\r\n initialTransaction: {\r\n ...action.transaction,\r\n },\r\n };\r\n case actionTypes.SEARCH_TERM_CHANGE:\r\n return {\r\n ...state,\r\n searchTerm: action.searchTerm,\r\n };\r\n case actionTypes.STORE_TRANSACTION_DETAILS: {\r\n return {\r\n ...state,\r\n filteredDocuments: null,\r\n loadedTransactionsWithDetails: [\r\n ...state.loadedTransactionsWithDetails,\r\n {\r\n ...action.transaction,\r\n collateralQualityTests: sortCollateralQualityTests(\r\n action.transaction.collateralQualityTests\r\n ),\r\n syndicateContacts: sortSyndicateContacts(\r\n action.transaction.syndicateContacts\r\n ),\r\n }\r\n ],\r\n };\r\n }\r\n case actionTypes.STORE_IOIS:\r\n return {\r\n ...state,\r\n loadedTransactionsWithDetails: state.loadedTransactionsWithDetails?.map(t =>\r\n t.referenceName === action.transactionReferenceName\r\n ? {\r\n ...t,\r\n iois: action.dataItems?.map(formatIoI).sort(compareIOI),\r\n }\r\n : t,\r\n ),\r\n transactions: state.transactions?.map(t =>\r\n t.referenceName === action.transactionReferenceName\r\n ? {\r\n ...t,\r\n iois: action.dataItems?.map(formatIoI).sort(compareIOI),\r\n }\r\n : t,\r\n ),\r\n initialTransaction:\r\n state.initialTransaction?.referenceName === action.transactionReferenceName\r\n ? {\r\n ...state.initialTransaction,\r\n iois: action.dataItems?.map(formatIoI).sort(compareIOI),\r\n }\r\n : state.initialTransaction,\r\n };\r\n case actionTypes.SET_UNREAD_IOIS_READ:\r\n return {\r\n ...state,\r\n loadedTransactionsWithDetails: state.loadedTransactionsWithDetails?.map(t =>\r\n t.referenceName === action.transactionReferenceName\r\n ? {\r\n ...t,\r\n iois: (t as OriginatingTransaction).iois.map((ioi: IOI) => ({ ...ioi, isRead: true })),\r\n }\r\n : t,\r\n ),\r\n initialTransaction:\r\n state.initialTransaction?.referenceName === action.transactionReferenceName\r\n ? {\r\n ...state.initialTransaction,\r\n iois: (state.initialTransaction as OriginatingTransaction)?.iois.map((ioi: IOI) => ({\r\n ...ioi,\r\n isRead: true,\r\n })),\r\n }\r\n : state.initialTransaction,\r\n };\r\n case actionTypes.STORE_DOCUMENTS_SEARCH_RESULTS:\r\n return {\r\n ...state,\r\n filteredDocuments: action.filteredDocuments,\r\n };\r\n case actionTypes.RESET_TRANSACTIONS:\r\n return {\r\n ...state,\r\n offset: 0,\r\n hasMoreTransactions: true,\r\n transactions: [],\r\n numberOfHiddenTransactions: undefined,\r\n };\r\n case actionTypes.SHOW_INVESTOR_POPUP:\r\n let investor;\r\n\r\n if (action.company) {\r\n investor = { ...action.company };\r\n (investor.members as Contact[]).sort(compareFullNames);\r\n }\r\n\r\n return {\r\n ...state,\r\n investorPopup: {\r\n isVisible: action.isPopupVisible,\r\n investor,\r\n },\r\n };\r\n case getType(amrTransactionAnalyticsActions.analyticsInit): {\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n isLoading: true,\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.analyticsInitResponse):\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n ...action.payload,\r\n isLoading: false,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n data: action.payload.clientsActivity,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n case getType(amrTransactionAnalyticsActions.clientsActivityRequest):\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n isLoading: true,\r\n },\r\n },\r\n };\r\n case getType(amrTransactionAnalyticsActions.clientsActivityResponse): {\r\n const { data } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n data,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.transactionViewHistoryResponse): {\r\n const { data } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n transactionHistoryViews: {\r\n ...state.analytics.transactionHistoryViews,\r\n data,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.clientsActivityFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n filter: {\r\n ...state.analytics.clientsActivity.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.transactionViewHistoryFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n transactionHistoryViews: {\r\n ...state.analytics.transactionHistoryViews,\r\n filter: {\r\n ...state.analytics.transactionHistoryViews.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.transactionViewHistoryFilterByBar): {\r\n const { accessType, date } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n transactionHistoryViews: {\r\n ...state.analytics.transactionHistoryViews,\r\n filter: {\r\n ...initialState.analytics.transactionHistoryViews.filter,\r\n tabs: [accessType],\r\n dateOption: dateRangeFilterOptions.Custom,\r\n date: {\r\n dateFrom: date,\r\n dateTo: date,\r\n }\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(amrTransactionAnalyticsActions.reset): {\r\n return {\r\n ...state,\r\n analytics: initialState.analytics,\r\n };\r\n }\r\n case actionTypes.RESET:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from 'typesafe-actions';\r\nimport { amrTransactionHistoryActions } from '../actions';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { PipelineHistoryItem, PipelineHistoryState } from '../types/state/PipelineHistoryState';\r\nimport { sortCollateralQualityTests, sortSyndicateContacts } from \"../utils/amr-pipeline.utils\";\r\n\r\nconst initialState: PipelineHistoryState = {\r\n isLoading: true,\r\n searchTerm: '',\r\n lastUpdatedFields: {\r\n isLoading: false,\r\n },\r\n};\r\n\r\nexport const amrPipelineHistory = (\r\n state: PipelineHistoryState = initialState,\r\n action: AnyAction\r\n) => {\r\n switch (action.type) {\r\n case getType(amrTransactionHistoryActions.transactionHistoryRequest):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(amrTransactionHistoryActions.transactionHistoryResponse):\r\n const { requestState, transactionsHistory, allHistoryClassesList } = action.payload;\r\n\r\n if (requestState === RequestState.failure) {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n };\r\n }\r\n\r\n return {\r\n ...state,\r\n isLoading: false,\r\n history: transactionsHistory.map((h: PipelineHistoryItem) => ({\r\n ...h,\r\n transaction: {\r\n ...h.transaction,\r\n collateralQualityTests: sortCollateralQualityTests(\r\n h.transaction.collateralQualityTests\r\n ),\r\n }\r\n })),\r\n allHistoryClassesList\r\n };\r\n case getType(amrTransactionHistoryActions.storeTransactionDetais):\r\n const { version, transactionDetails } = action.payload;\r\n const { syndicateContacts } = transactionDetails;\r\n\r\n return {\r\n ...state,\r\n history: state.history?.map((history) => {\r\n if (history.version !== version) {\r\n return history;\r\n }\r\n\r\n return {\r\n ...history,\r\n transaction: {\r\n ...history.transaction,\r\n ...transactionDetails,\r\n syndicateContacts: sortSyndicateContacts(syndicateContacts),\r\n isDetailsLoaded: true,\r\n },\r\n };\r\n }),\r\n };\r\n case getType(amrTransactionHistoryActions.reset): {\r\n return initialState;\r\n }\r\n case getType(amrTransactionHistoryActions.transactionFieldsUpdatedRequest):\r\n return {\r\n ...state,\r\n lastUpdatedFields: {\r\n ...state.lastUpdatedFields,\r\n isLoading: true,\r\n },\r\n };\r\n case getType(amrTransactionHistoryActions.transactionFieldsUpdatedResponse): {\r\n const { requestState, lastUpdatedFields } = action.payload;\r\n\r\n if (requestState === RequestState.failure) {\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n lastUpdatedFields: {\r\n ...state.lastUpdatedFields,\r\n ...lastUpdatedFields,\r\n isLoading: false,\r\n },\r\n };\r\n }\r\n case getType(amrTransactionHistoryActions.transactionFieldsUpdatedReset):\r\n return {\r\n ...state,\r\n lastUpdatedFields: {\r\n isLoading: false,\r\n },\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { getType } from 'typesafe-actions';\r\nimport { amrArrangerPipelineActions, TArrangerPipelineActions } from '../actions/amr-arranger-pipeline.actions';\r\nimport { constants, SORT } from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { ArrangerPipelineDealsState } from '../types/state/ArrangerPipelineDealsState';\r\nimport { sortSyndicateContacts } from '../utils/amr-pipeline.utils';\r\n\r\nconst initialState: ArrangerPipelineDealsState = {\r\n isLoading: true,\r\n deals: [],\r\n dealsSearchItems: [],\r\n selectedDealsLegalNames: [],\r\n sortBy: 'lastUpdated',\r\n sortDirection: SORT.DESC,\r\n hasMore: true,\r\n isExportLoad: false,\r\n isSubmitting: false,\r\n isSubmitted: false,\r\n anyPipelineExists: true,\r\n offset: 0,\r\n isSummaryRequesting: true,\r\n};\r\n\r\nexport const amrArrangerPipeline = (\r\n state: ArrangerPipelineDealsState = initialState,\r\n action: TArrangerPipelineActions,\r\n) => {\r\n switch (action.type) {\r\n case getType(amrArrangerPipelineActions.arrangerPipelinesRequest):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(amrArrangerPipelineActions.setAnyPipelineExists):\r\n return {\r\n ...state,\r\n anyPipelineExists: action.payload.anyPipelineExists,\r\n };\r\n case getType(amrArrangerPipelineActions.arrangerPipelinesResponse): {\r\n const { requestState, arrangerPipelines, nonVisibleCount } = action.payload;\r\n\r\n if (!arrangerPipelines || requestState === RequestState.failure) {\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n arrangerPipelines: state.arrangerPipelines\r\n ? [\r\n ...state.arrangerPipelines,\r\n ...arrangerPipelines.map(p => ({\r\n ...p,\r\n syndicateContacts: sortSyndicateContacts(p.syndicateContacts),\r\n })),\r\n ]\r\n : [\r\n ...arrangerPipelines.map(p => ({\r\n ...p,\r\n syndicateContacts: sortSyndicateContacts(p.syndicateContacts),\r\n })),\r\n ],\r\n offset: state.offset + arrangerPipelines.length,\r\n hasMore: arrangerPipelines.length === constants.defaultTransactionsSearchCriteria.count,\r\n nonVisibleCount,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.sortingChange): {\r\n const { sortBy, sortDirection } = action.payload;\r\n return {\r\n ...state,\r\n sortBy,\r\n sortDirection,\r\n arrangerPipelines: undefined,\r\n offset: 0,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.arrangerPipelineStatisticRequest):\r\n return {\r\n ...state,\r\n isSummaryRequesting: true,\r\n };\r\n case getType(amrArrangerPipelineActions.arrangerPipelineStatisticResponse):\r\n return {\r\n ...state,\r\n isSummaryRequesting: false,\r\n summary: action.payload.summary\r\n };\r\n case getType(amrArrangerPipelineActions.resetPipelines): {\r\n return {\r\n ...state,\r\n offset: 0,\r\n arrangerPipelines: undefined,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.dealsResponse): {\r\n return {\r\n ...state,\r\n deals: action.payload.deals,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.selectDealsFromSearch): {\r\n return {\r\n ...state,\r\n selectedDealsLegalNames: action.payload.dealsLegalNames,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.dealsSearchResponse): {\r\n return {\r\n ...state,\r\n dealsSearchItems: action.payload.arrangerPipelineDeals?.map(d => d.legalName),\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.edit): {\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.setEditLoadingStatus): {\r\n return {\r\n ...state,\r\n isLoading: action.payload.isLoading,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.submitArrangerPipeline): {\r\n return {\r\n ...state,\r\n isSubmitting: true,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.submitArrangerPipelineStatus): {\r\n return {\r\n ...state,\r\n isSubmitted: action.payload.isSubmitted,\r\n isSubmitting: false,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.exportLoad): {\r\n return {\r\n ...state,\r\n isExportLoad: action.payload.isLoading,\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.resetDeals): {\r\n return {\r\n ...state,\r\n deals: [],\r\n };\r\n }\r\n case getType(amrArrangerPipelineActions.reset): {\r\n return initialState;\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { AnyAction } from \"redux\";\r\nimport {\r\n amrPipelineActions as actionTypes,\r\n constants,\r\n SORT,\r\n} from \"../constants\";\r\nimport { AmrDealsState } from '../types/state/AmrDealsState';\r\nimport { PipelineType } from '../types/amr-pipeline/enums/PipelineType';\r\nimport { sortSyndicateContacts, withIndicatingRefinancedIoIs } from '../utils/amr-pipeline.utils';\r\nimport { OriginatingTransaction } from \"../types/amr-pipeline/models/OriginatingTransaction\";\r\n\r\nconst initialState: AmrDealsState = {\r\n isTransactionsSearching: false,\r\n isSummaryRequesting: false,\r\n isClassesSearching: false,\r\n isManagerPopupVisible: false,\r\n transactionsOffset: 0,\r\n classesOffset: 0,\r\n dealSortBy: \"transactionStatus\",\r\n dealSortDirection: SORT.ASC,\r\n classSortBy: \"transactionStatus\",\r\n classSortDirection: SORT.ASC,\r\n isExpanded: false,\r\n hasMoreTransactions: true,\r\n hasMoreTransactionsClasses: true,\r\n wasInitialAccessTracked: false,\r\n isExportLoad: false,\r\n syndicateContacts: null,\r\n anyIOIsExists: true,\r\n};\r\n\r\nexport const createAmrDealsWithNamedData = (pipelineType: PipelineType) => (\r\n state: AmrDealsState = initialState,\r\n action: AnyAction\r\n) => {\r\n if (action.pipelineType !== pipelineType) {\r\n return state;\r\n }\r\n\r\n switch (action.type) {\r\n case actionTypes.PIPELINE_INITIAL_LOAD:\r\n return {\r\n ...state,\r\n wasInitialAccessTracked: true,\r\n };\r\n case actionTypes.PIPELINE_SEARCH_TRANSACTIONS:\r\n return {\r\n ...state,\r\n isTransactionsSearching: action.isSearching,\r\n };\r\n case actionTypes.PIPELINE_SEARCH_CLASSES:\r\n return {\r\n ...state,\r\n isClassesSearching: action.isSearching,\r\n };\r\n case actionTypes.PIPELINE_DEAL_SORTING_CHANGED:\r\n return {\r\n ...state,\r\n dealSortBy: action.sortBy,\r\n transactions: [],\r\n transactionsOffset: 0,\r\n numberOfHiddenTransactions: undefined,\r\n dealSortDirection: action.direction,\r\n };\r\n case actionTypes.PIPELINE_CLASS_SORTING_CHANGED:\r\n return {\r\n ...state,\r\n classSortBy: action.sortBy,\r\n classes: [],\r\n classesOffset: 0,\r\n numberOfHiddenClasses: undefined,\r\n classSortDirection: action.direction,\r\n };\r\n case actionTypes.PIPELINE_STORE_TRANSACTIONS: {\r\n const transactions =\r\n pipelineType === PipelineType.IOIs\r\n ? action.transactions.items.map((t: OriginatingTransaction) => ({\r\n ...t,\r\n classes: withIndicatingRefinancedIoIs(t.classes),\r\n }))\r\n : action.transactions.items;\r\n\r\n return {\r\n ...state,\r\n transactions: state.transactions\r\n ? [...state.transactions, ...transactions]\r\n : transactions,\r\n numberOfHiddenTransactions: action.transactions.numberOfHiddenItems,\r\n transactionsOffset:\r\n state.transactionsOffset + transactions.length,\r\n hasMoreTransactions:\r\n transactions.length ===\r\n constants.defaultTransactionsSearchCriteria.count,\r\n };\r\n }\r\n case actionTypes.PIPELINE_STORE_CLASSES: {\r\n const classes =\r\n pipelineType === PipelineType.IOIs ? withIndicatingRefinancedIoIs(action.classes.items) : action.classes.items;\r\n\r\n return {\r\n ...state,\r\n classes: state.classes\r\n ? [...state.classes, ...classes]\r\n : classes,\r\n numberOfHiddenClasses: action.classes.numberOfHiddenItems,\r\n classesOffset: state.classesOffset + classes.length,\r\n hasMoreTransactionsClasses:\r\n classes.length ===\r\n constants.defaultTransactionsSearchCriteria.count,\r\n };\r\n }\r\n case actionTypes.PIPELINE_SUMMARY_REQUESTING_STATE:\r\n return {\r\n ...state,\r\n isSummaryRequesting: action.isLoading\r\n };\r\n case actionTypes.PIPELINE_STORE_SUMMARY:\r\n return {\r\n ...state,\r\n transactionsStatistic: action.transactionsSummary,\r\n classesStatistic: action.classesSummary\r\n }\r\n case actionTypes.PIPELINE_RESET_TRANSACTIONS:\r\n return {\r\n ...state,\r\n classesOffset: 0,\r\n transactionsOffset: 0,\r\n transactionsStatistic: undefined,\r\n classesStatictic: undefined,\r\n transactions: [],\r\n classes: [],\r\n numberOfHiddenTransactions: undefined,\r\n numberOfHiddenClasses: undefined,\r\n };\r\n case actionTypes.PIPELINE_SET_EXPANDED:\r\n return {\r\n ...state,\r\n isExpanded: action.expanded,\r\n };\r\n case actionTypes.PIPELINE_RESET:\r\n return initialState;\r\n case actionTypes.PIPELINE_SET_REDIRECT_FILTER:\r\n return {\r\n ...state,\r\n redirectFilters: action.filter,\r\n };\r\n case actionTypes.PIPELINE_EXPORT_LOAD:\r\n return {\r\n ...state,\r\n isExportLoad: action.isLoading,\r\n };\r\n case actionTypes.PIPELINE_SET_SYNDICATE_CONTACTS:\r\n return {\r\n ...state,\r\n syndicateContacts: action.contacts ? {\r\n arrangerName: action.arrangerName,\r\n contacts: sortSyndicateContacts(action.contacts),\r\n } : null,\r\n };\r\n case actionTypes.PIPELINE_SET_ANY_IOIS_EXISTS:\r\n return {\r\n ...state,\r\n anyIOIsExists: action.anyIOIsExists,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { combineReducers } from \"redux\";\r\nimport { PipelineType } from '../types/amr-pipeline/enums/PipelineType';\r\nimport { amrArrangerPipeline } from \"./amr-arranger-pipeline.reducer\";\r\nimport { createAmrDealsWithNamedData } from './amr-deals.reducer';\r\nimport { createSearchTransactionsNamedData } from './search-transactions.reducer';\r\nimport { createFilter } from \"./filter.reducer\";\r\n\r\nexport const createAmrPipelineWithNamedData = (pipelineType: PipelineType) => combineReducers({\r\n deals: pipelineType !== PipelineType.ArrangerPipeline ? createAmrDealsWithNamedData(pipelineType) : amrArrangerPipeline,\r\n filter: createFilter(pipelineType),\r\n searchTransactions: createSearchTransactionsNamedData(pipelineType),\r\n});\r\n","import { ActionType, getType } from \"typesafe-actions\";\r\nimport { apiOperationActions } from \"../actions\";\r\nimport { RequestState } from \"../constants/request-state\";\r\nimport { ApiOperation } from \"../types/api-operation/ApiOperation\";\r\nimport { ApiOperationResult } from \"../types/api-operation/ApiOperationResult\";\r\nimport { ApiOperationState } from \"../types/state/ApiOperationState\";\r\n\r\nconst initialState: ApiOperationState = {\r\n requests: [],\r\n responses: []\r\n}\r\n\r\nexport function apiOperation(\r\n state = initialState, \r\n action: ActionType): ApiOperationState {\r\n switch (action.type) {\r\n case getType(apiOperationActions.waitResult):\r\n return {\r\n ...state,\r\n requests: state.requests.concat(...action.payload.requests)\r\n };\r\n case getType(apiOperationActions.result):\r\n return {\r\n ...state,\r\n responses: state.responses.concat(action.payload.result)\r\n }\r\n case getType(apiOperationActions.success):\r\n return {\r\n ...state,\r\n requests: updateOperationState(state.requests, action.payload.result, RequestState.success),\r\n responses: state.responses.filter(r => r.token !== action.payload.result.token)\r\n };\r\n case getType(apiOperationActions.error):\r\n return {\r\n ...state,\r\n requests: updateOperationState(state.requests, action.payload.result, RequestState.failure),\r\n responses: state.responses.filter(r => r.token !== action.payload.result.token)\r\n };\r\n case getType(apiOperationActions.remove):\r\n return {\r\n ...state,\r\n requests: state.requests.filter(r => r.token !== action.payload.token),\r\n responses: state.responses.filter(r => r.token !== action.payload.token)\r\n };\r\n case getType(apiOperationActions.resetEvent): \r\n return {\r\n ...state,\r\n requests: state.requests.filter(r => r.event !== action.payload.event),\r\n responses: state.responses.filter(r => r.event !== action.payload.event)\r\n };\r\n case getType(apiOperationActions.reset):\r\n return { ...initialState };\r\n default: return state;\r\n }\r\n}\r\n\r\nfunction updateOperationState(requests: ApiOperation[], result: ApiOperationResult, state: RequestState) {\r\n return requests.map(r => r.token === result.token && r.event === result.event\r\n ? { ...r, state, result }\r\n : r\r\n );\r\n}\r\n","import {accountActions} from '../constants';\r\n\r\nconst initialState = {\r\n isLoading: false,\r\n authenticated: false,\r\n email: '',\r\n resetToken: '',\r\n tokenVerified: false\r\n};\r\n\r\nexport function authentication(state = initialState, action) {\r\n switch (action.type) {\r\n case accountActions.LOGIN_SUCCESS:\r\n return {\r\n ...state,\r\n authenticated: true,\r\n user: action.user\r\n };\r\n case accountActions.LOGOUT:\r\n return {...initialState};\r\n case accountActions.LOGIN_FAILURE:\r\n return {...initialState, error: action.error};\r\n case accountActions.LOGIN_REFRESH_AUTHENTICATION:\r\n return {\r\n ...state,\r\n authenticated: true\r\n };\r\n case accountActions.SETUP_PASSWORD_FAILURE:\r\n return {...state, error: action.error};\r\n case accountActions.CHANGE_PASSWORD_FAILURE:\r\n return {...state, error: action.error};\r\n case accountActions.SETUP_PASSWORD_INIT_COMPLETE:\r\n return {\r\n ...state,\r\n email: action.email,\r\n resetToken: action.resetToken,\r\n error: {},\r\n tokenVerified: true,\r\n };\r\n case accountActions.RESET_PASSWORD_SUCCESS:\r\n case accountActions.SETUP_PASSWORD_SUCCESS:\r\n return { ...state, success: action.success };\r\n case accountActions.RESET_PASSWORD_FAILURE:\r\n return { ...state, errorMessage: action.errorMessage };\r\n case accountActions.RESET_PASSWORD_RESET:\r\n case accountActions.SETUP_PASSWORD_RESET:\r\n case accountActions.CHANGE_PASSWORD_RESET:\r\n case accountActions.CHANGE_PHONE_NUMBER_RESET:\r\n case accountActions.CHANGE_PASSWORD_SUCCESS:\r\n return {\r\n ...state,\r\n email: '',\r\n resetToken: '',\r\n tokenVerified: false,\r\n errorMessage: '',\r\n error: {}\r\n };\r\n case accountActions.LOGIN_LOADING:\r\n return {\r\n ...state,\r\n isLoading: action.isLoading\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { compareBoolean, compareStrings } from '../utils/compare.utils';\r\nimport { BanksState } from '../types/state/BanksState';\r\nimport { Bank } from '../types/banks/Bank';\r\nimport { banksActions, TBanksActions } from '../actions/banks.actions';\r\nimport { compact, isNil } from 'lodash';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { BrokerDealerSave } from '../types/banks/BrokerDealerSave';\r\nimport { analyticDefaultFilters } from '../constants';\r\nimport { dateRangeFilterOptions } from '../constants/date-range.filter';\r\nimport { sortSyndicateContacts } from '../utils/amr-pipeline.utils';\r\nimport { BankSyndicateContacts } from '../types/banks/BankSyndicateContacts';\r\nimport { BrokerDealerContact } from '../types/amr-pipeline/models/BrokerDealerContact';\r\nimport { ContactType } from '../types/amr-pipeline/enums/ContactType';\r\nimport { Contact } from '../types/amr-pipeline/models/Contact';\r\n\r\nconst banksInitialState: BanksState = {\r\n isLoading: true,\r\n isDetailsLoading: true,\r\n isUpdating: false,\r\n events: [],\r\n syndicateContacts: {\r\n primaryContacts: {\r\n items: [],\r\n numberOfHiddenItems: 0,\r\n },\r\n secondaryContacts: {\r\n items: [],\r\n numberOfHiddenItems: 0,\r\n },\r\n },\r\n newsRequestState: RequestState.none,\r\n analytics: {\r\n isLoading: true,\r\n users: [],\r\n clientsActivity: {\r\n isLoading: false,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n profileHistoryViews: {\r\n isLoading: true,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n },\r\n exportTransactionCountLoading: false,\r\n};\r\n\r\nconst isOfType = (type: ContactType) => (contact: Contact) => contact.type === type;\r\nconst isDistributionList = isOfType(ContactType.DistributionList);\r\nconst isHeadOfDesk = isOfType(ContactType.HeadOfDesk);\r\nconst isHeadOfTrading = (contact: Contact) => contact.headOfTrading;\r\n\r\nfunction sortBanks(data: Bank[]) {\r\n const featuresCount = (bank: Bank) => compact([\r\n bank.hasActiveTransactions,\r\n bank.existsOnDealerInventory,\r\n bank.sendsPxTalk\r\n ]).length;\r\n\r\n return data.sort(\r\n (a, b) =>\r\n compareBoolean(a.isUserCompany, b.isUserCompany) ||\r\n featuresCount(b) - featuresCount(a) ||\r\n compareStrings(a.legalName, b.legalName)\r\n );\r\n}\r\n\r\nfunction sortByOrder(a: BrokerDealerContact, b: BrokerDealerContact) {\r\n return a.order - b.order;\r\n}\r\n\r\nfunction sortContacts(syndicateContacts: BankSyndicateContacts): BankSyndicateContacts {\r\n return {\r\n primaryContacts: {\r\n ...syndicateContacts.primaryContacts,\r\n items: sortSyndicateContacts(syndicateContacts.primaryContacts.items, sortByOrder) || [],\r\n },\r\n secondaryContacts: {\r\n ...syndicateContacts.secondaryContacts,\r\n items: sortSyndicateContacts(syndicateContacts.secondaryContacts.items, sortByOrder) || [],\r\n }\r\n };\r\n}\r\n\r\nexport const banks = (state = banksInitialState, action: TBanksActions): BanksState => {\r\n switch (action.type) {\r\n case getType(banksActions.getBanks):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(banksActions.getBanksResult):\r\n return {\r\n ...state,\r\n isLoading: false,\r\n data: sortBanks(action.payload.banks),\r\n };\r\n case getType(banksActions.getBankDetails):\r\n return {\r\n ...state,\r\n selectedBank: state.data?.find(x => x.referenceName === action.payload.referenceName),\r\n isDetailsLoading: true,\r\n newsRequestState: RequestState.request,\r\n };\r\n case getType(banksActions.getBankDetailsResult): {\r\n const {\r\n bankDetails,\r\n referenceName,\r\n aggregatedManagerTransactions,\r\n syndicateContacts,\r\n companyEvents,\r\n } = action.payload;\r\n\r\n return {\r\n ...state,\r\n isDetailsLoading: false,\r\n isUpdating: false,\r\n selectedBank:\r\n state.selectedBank?.referenceName === referenceName\r\n ? { ...state.selectedBank, details: bankDetails }\r\n : state.selectedBank,\r\n aggregatedManagersCount: aggregatedManagerTransactions,\r\n syndicateContacts: sortContacts(syndicateContacts),\r\n events: companyEvents,\r\n newsRequestState: RequestState.success,\r\n };\r\n };\r\n case getType(banksActions.managersTransactionCountFilterResult): {\r\n const aggregatedManagersCount = action.payload;\r\n\r\n return {\r\n ...state,\r\n aggregatedManagersCount,\r\n };\r\n };\r\n case getType(banksActions.exportTransactionCountRequest):\r\n return {\r\n ...state,\r\n exportTransactionCountLoading: true,\r\n };\r\n case getType(banksActions.exportTransactionCountResponse):\r\n return {\r\n ...state,\r\n exportTransactionCountLoading: false,\r\n };\r\n case getType(banksActions.editBank): {\r\n const {\r\n primaryContacts: { items: primary },\r\n secondaryContacts: { items: secondary },\r\n } = state.syndicateContacts;\r\n\r\n const headOfDeskContact = primary.find(isHeadOfDesk);\r\n const headOfDeskDistributionList = primary.find(isDistributionList);\r\n const headOfTradingContact = secondary.find(contact =>\r\n isHeadOfTrading(contact) && !isDistributionList(contact)\r\n );\r\n const headOfTradingDistributionList = secondary.find(isDistributionList);\r\n\r\n const leftPrimaryContacts = primary.filter(contact => isNil(contact.type));\r\n const leftSecondaryContacts = secondary.filter(contact => !isHeadOfTrading(contact) && !isDistributionList(contact));\r\n const contacts = [\r\n ...leftPrimaryContacts,\r\n ...leftSecondaryContacts,\r\n ].sort(sortByOrder);\r\n\r\n const headOfDesk: BrokerDealerSave = {\r\n id: 0,\r\n officePhoneNumber: '',\r\n mobilePhoneNumber: '',\r\n email: '',\r\n primaryDesk: false,\r\n order: 0,\r\n ...(headOfDeskContact || {}),\r\n distributionListEmail: headOfDeskDistributionList?.email,\r\n type: ContactType.HeadOfDesk,\r\n headOfTrading: false,\r\n };\r\n\r\n const headOfTrading: BrokerDealerSave = {\r\n id: 0,\r\n officePhoneNumber: '',\r\n mobilePhoneNumber: '',\r\n email: '',\r\n primaryDesk: false,\r\n order: 0,\r\n ...(headOfTradingContact || {}),\r\n distributionListEmail: headOfTradingDistributionList?.email,\r\n headOfTrading: true,\r\n };\r\n\r\n return {\r\n ...state,\r\n editBank: {\r\n headOfDesk,\r\n headOfTrading,\r\n events: state.events,\r\n contacts,\r\n },\r\n };\r\n };\r\n case getType(banksActions.editBankReset):\r\n return {\r\n ...state,\r\n editBank: undefined\r\n };\r\n case getType(banksActions.updateBank):\r\n return {\r\n ...state,\r\n isUpdating: true,\r\n };\r\n case getType(banksActions.updateBankResult): {\r\n const { requestState, result } = action.payload;\r\n\r\n if (requestState === RequestState.failure || !result) {\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n };\r\n }\r\n\r\n return {\r\n ...state,\r\n ...result,\r\n syndicateContacts: sortContacts(result.syndicateContacts),\r\n isUpdating: false,\r\n };\r\n };\r\n case getType(banksActions.setBankForAlertPopup):\r\n return {\r\n ...state,\r\n bankReferenceNameForAlert: action.payload.referenceName,\r\n };\r\n case getType(banksActions.analyticsInitResponse):\r\n const { users, analytics, numberOfHiddenItems } = action.payload;\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n users,\r\n general: analytics,\r\n isLoading: false,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n case getType(banksActions.analyticsReset):\r\n return {\r\n ...state,\r\n analytics: banksInitialState.analytics,\r\n };\r\n case getType(banksActions.clientsActivityRequest):\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n isLoading: true,\r\n },\r\n },\r\n };\r\n case getType(banksActions.clientsActivityResponse): {\r\n const { data, numberOfHiddenItems } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n data,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(banksActions.profileViewHistoryResponse): {\r\n const { data, numberOfHiddenItems } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n data,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(banksActions.clientsActivityFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n filter: {\r\n ...state.analytics.clientsActivity.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(banksActions.profileViewHistoryFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n filter: {\r\n ...state.analytics.profileHistoryViews.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(banksActions.profileViewHistoryFilterByBar): {\r\n const { accessType, date } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n filter: {\r\n ...banksInitialState.analytics.profileHistoryViews.filter,\r\n tabs: [accessType],\r\n dateOption: dateRangeFilterOptions.Custom,\r\n date: {\r\n dateFrom: date,\r\n dateTo: date,\r\n }\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(banksActions.reset):\r\n return banksInitialState;\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { AnyAction } from 'redux'\r\nimport { getType } from 'typesafe-actions';\r\nimport { BdInventoryState } from \"../types/state/BdInventoryState\"\r\nimport { bdInventoryActions } from '../actions/bd-inventory.actions';\r\nimport { RequestState } from '../constants/request-state';\r\n\r\nconst initialState: BdInventoryState = {\r\n isInventoryExist: false,\r\n requestStateInventoryExist: RequestState.none,\r\n requestStatusExportInventory: false,\r\n requestStatusSaveBloombergEmail: false,\r\n isVisibleAddBloombergEmailForm: false,\r\n advancedFilterBlocked: false\r\n};\r\n\r\nexport const bdInventory = (state = initialState, action: AnyAction): BdInventoryState => {\r\n switch (action.type) {\r\n case getType(bdInventoryActions.reset):\r\n return { ...initialState };\r\n case getType(bdInventoryActions.requestInventoryExistFlag):\r\n return {\r\n ...state,\r\n requestStateInventoryExist: RequestState.request\r\n };\r\n case getType(bdInventoryActions.inventoryExistFlag):\r\n return {\r\n ...state,\r\n requestStateInventoryExist: RequestState.success,\r\n isInventoryExist: action.payload.exist\r\n };\r\n case getType(bdInventoryActions.exportInventoryRequest):\r\n return {\r\n ...state,\r\n requestStatusExportInventory: true\r\n };\r\n case getType(bdInventoryActions.exportInventoryResponse):\r\n return {\r\n ...state,\r\n requestStatusExportInventory: false\r\n };\r\n case getType(bdInventoryActions.toggleVisibleAddBloombergEmailForm):\r\n return {\r\n ...state,\r\n isVisibleAddBloombergEmailForm: !state.isVisibleAddBloombergEmailForm\r\n };\r\n case getType(bdInventoryActions.addBloombergEmailRequest):\r\n return {\r\n ...state,\r\n requestStatusSaveBloombergEmail: true\r\n };\r\n case getType(bdInventoryActions.addBloombergEmailResponse):\r\n return {\r\n ...state,\r\n requestStatusSaveBloombergEmail: false\r\n };\r\n case getType(bdInventoryActions.advancedFilterBlocked):\r\n return {\r\n ...state,\r\n advancedFilterBlocked: action.payload.blocked\r\n }\r\n default:\r\n return state\r\n }\r\n};\r\n","import { ActionType, getType } from \"typesafe-actions\";\r\nimport { pushBwicActions } from \"../actions\";\r\nimport { bidOnBehalfParseActions } from \"../actions/bid-on-behalf-parse.actions\";\r\nimport { bidOnBehalfActions } from \"../actions/bid-on-behalf.actions\";\r\nimport { BidOnBehalfState, getEditKey, parseKey } from \"../types/state/BidOnBehalfState\";\r\n\r\nconst initialState: BidOnBehalfState = {\r\n isRequesting: false,\r\n isSubmitting: false,\r\n companies: [],\r\n editState: {},\r\n conflicts: [],\r\n isConflictsPpopupVisible: false,\r\n focusedBid: undefined,\r\n}\r\ntype TAction =\r\n ActionType |\r\n ActionType |\r\n ActionType;\r\n\r\nexport const bidOnBehalf = (state = initialState, action: TAction): BidOnBehalfState => {\r\n switch (action.type) {\r\n case getType(bidOnBehalfActions.setCompainesRequesting):\r\n return {\r\n ...state,\r\n isRequesting: action.payload.isRequesting\r\n };\r\n case getType(bidOnBehalfActions.submitProgress):\r\n return {\r\n ...state,\r\n isSubmitting: action.payload.inProgress\r\n };\r\n case getType(bidOnBehalfActions.storeCompanies):\r\n return {\r\n ...state,\r\n companies: action.payload.companies\r\n };\r\n case getType(bidOnBehalfActions.editBid): {\r\n const key = getEditKey(action.payload.positionId, action.payload.companyId);\r\n\r\n return {\r\n ...state,\r\n editState: {\r\n ...state.editState,\r\n [key]: {\r\n ...state.editState[key],\r\n editing: !action.payload.editCompleted,\r\n value: action.payload.value,\r\n error: action.payload.error,\r\n pass: undefined\r\n }\r\n }\r\n };\r\n }\r\n case getType(bidOnBehalfActions.resetBidEdit): {\r\n const key = getEditKey(action.payload.positionId, action.payload.companyId);\r\n const editState = { ...state.editState };\r\n delete editState[key];\r\n\r\n return {\r\n ...state,\r\n editState\r\n };\r\n };\r\n case getType(bidOnBehalfActions.resetCompanyBidsEdit): {\r\n const editState = { ...state.editState };\r\n const companyId: number = action.payload.companyId;\r\n\r\n Object\r\n .keys(editState)\r\n .forEach((key: string) => {\r\n const parsed = parseKey(key);\r\n if (parsed.companyId === companyId) {\r\n delete editState[key];\r\n }\r\n })\r\n\r\n return { ...state, editState };\r\n };\r\n case getType(bidOnBehalfActions.resetEdit):\r\n return { ...initialState, companies: state.companies };\r\n case getType(bidOnBehalfActions.pass): {\r\n const key = getEditKey(action.payload.positionId, action.payload.companyId);\r\n\r\n return {\r\n ...state,\r\n editState: {\r\n ...state.editState,\r\n [key]: {\r\n ...state.editState[key],\r\n value: undefined,\r\n error: undefined,\r\n editing: undefined,\r\n axed: false,\r\n final: false,\r\n pass: true\r\n }\r\n }\r\n };\r\n };\r\n case getType(bidOnBehalfActions.axed): {\r\n const key = getEditKey(action.payload.positionId, action.payload.companyId);\r\n\r\n return {\r\n ...state,\r\n editState: {\r\n ...state.editState,\r\n [key]: {\r\n ...state.editState[key],\r\n axed: action.payload.axed\r\n }\r\n }\r\n };\r\n };\r\n case getType(bidOnBehalfActions.final): {\r\n const key = getEditKey(action.payload.positionId, action.payload.companyId);\r\n\r\n return {\r\n ...state,\r\n editState: {\r\n ...state.editState,\r\n [key]: {\r\n ...state.editState[key],\r\n final: action.payload.final\r\n }\r\n }\r\n };\r\n };\r\n case getType(bidOnBehalfActions.storeConflicts):\r\n return {\r\n ...state,\r\n conflicts: state.conflicts.concat(action.payload.conflicts)\r\n };\r\n case getType(bidOnBehalfActions.resetConflicts):\r\n return {\r\n ...state,\r\n conflicts: []\r\n };\r\n case getType(bidOnBehalfActions.conflictsPopupVisible):\r\n return {\r\n ...state,\r\n isConflictsPpopupVisible: action.payload.visible\r\n };\r\n case getType(bidOnBehalfActions.setNextBidIdentifiers):\r\n return {\r\n ...state,\r\n focusedBid: {\r\n companyId: action.payload.companyId,\r\n positionId: action.payload.positionId\r\n }\r\n };\r\n case getType(bidOnBehalfActions.resetNextBidIdentifiers):\r\n return {\r\n ...state,\r\n focusedBid: undefined\r\n };\r\n case getType(pushBwicActions.tradeAction): {\r\n if (state.focusedBid && action.positionId === state.focusedBid.positionId) {\r\n return {\r\n ...state,\r\n focusedBid: undefined\r\n };\r\n }\r\n\r\n return state;\r\n }\r\n case getType(pushBwicActions.stagedBiddingStartStage2):\r\n case getType(pushBwicActions.stagedBiddingFinishStage2):\r\n return {\r\n ...state,\r\n editState: {},\r\n focusedBid: undefined\r\n };\r\n case getType(bidOnBehalfActions.reset):\r\n return { ...initialState };\r\n\r\n default: return state;\r\n }\r\n}\r\n","import { pushDataActions as actionTypes } from '../constants';\r\nimport { biddingUtils } from '../utils';\r\n\r\nexport const biddingPushDataReducer = (state, action) => {\r\n switch (action.type) {\r\n case actionTypes.PUSH_DATA_QUICK_FEEDBACK:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, feedback } = action;\r\n\r\n return {\r\n ...state,\r\n securities: state.securities && state.securities.map(s => s.id === positionId\r\n ? {\r\n ...s,\r\n bids: s.bids && s.bids.map(b => biddingUtils.getUniqueBidId(b) === biddingUtils.getUniqueBidIdFromFeedback(feedback)\r\n ? { ...b, feedback: feedback.feedback, feedbackCreatedUtc: action.feedback.feedbackCreatedUtc }\r\n : b\r\n )\r\n }\r\n : s)\r\n };\r\n case actionTypes.PUSH_DATA_TRADE: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, trade } = action;\r\n\r\n return {\r\n ...state,\r\n securities: state.securities.map(s => s.id === positionId\r\n ? { ...s, trade, isTradedAway: false }\r\n : s\r\n )\r\n };\r\n };\r\n case actionTypes.PUSH_DATA_TRADED_AWAY: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, isTradedAway } = action;\r\n const editBidState = { ...state.editBid };\r\n delete editBidState[positionId];\r\n\r\n return {\r\n ...state,\r\n editBid: editBidState,\r\n securities: state.securities.map(s => s.id === positionId\r\n ? { ...s, isTradedAway }\r\n : s\r\n )\r\n };\r\n };\r\n case actionTypes.PUSH_DATA_NEW_PX_TALK: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { priceTalk } = action;\r\n\r\n return {\r\n ...state,\r\n securities: state.securities && state.securities.map(s => s.id === priceTalk.positionId\r\n ? {\r\n ...s,\r\n pxTalks: (s.pxTalks || []).some(p => equals(p, priceTalk))\r\n ? priceTalk.isDeleted\r\n ? s.pxTalks.filter(p => !equals(p, priceTalk))\r\n : s.pxTalks.map(p => equals(p, priceTalk) ? priceTalk : p)\r\n : (s.pxTalks || []).concat(priceTalk),\r\n }\r\n : s)\r\n };\r\n\r\n function equals(priceTalk1, priceTalk2) { return priceTalk1.company.id === priceTalk2.company.id; }\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nexport function shouldHandlePushData(state, action) {\r\n return (\r\n state.securities.length &&\r\n state.securities.some(s => s.id === (action.positionId || action.payload.positionId))\r\n );\r\n}\r\n\r\n","import * as _ from 'lodash';\r\nimport {\r\n biddingActions as actionTypes,\r\n colorDistributionActions,\r\n pushDataActions,\r\n autoFeedbackSettingsActions\r\n} from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { OpenBiddingStatus } from '../types/enums/OpenBiddingStatus';\r\nimport { BwicProcessType } from '../types/models/Process';\r\n\r\nconst initialState = {\r\n bwic: undefined,\r\n visitorType: undefined,\r\n userCompany: undefined,\r\n isLoading: true,\r\n participantsLoadingState: RequestState.none,\r\n bwicDealers: [],\r\n bwicDealerUsers: [],\r\n bwicDealerContacts: []\r\n};\r\n\r\nexport const bidding = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.BIDDING_SAVE_BWIC_DEALERS:\r\n case actionTypes.BIDDING_LOADING:\r\n return {\r\n ...state,\r\n isLoading: action.isLoading\r\n };\r\n case actionTypes.BIDDING_STORE_ORIGINAL_BWIC:\r\n return {\r\n ...state,\r\n bwic: action.bwic\r\n };\r\n case actionTypes.BIDDING_STORE_VISITOR_TYPE:\r\n return {\r\n ...state,\r\n visitorType: action.visitorType,\r\n userCompany: action.userCompany\r\n };\r\n case actionTypes.BIDDING_IMPROVERS_LOADED:\r\n return {\r\n ...state,\r\n improvers: action.improvers\r\n };\r\n case colorDistributionActions.COLOR_DISTRIBUTION_SET_BWIC_COLOR_DISTRIBUTION:\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n isColorDistribution: action.isColorDistribution\r\n }\r\n };\r\n case actionTypes.STORE_BWIC_PARTICIPANTS:\r\n return {\r\n ...state,\r\n bwicDealers: action.payload.bwicDealers,\r\n bwicDealerUsers: action.payload.bwicDealerUsers,\r\n bwicDealerContacts: action.payload.bwicDealerContacts\r\n };\r\n case actionTypes.BIDDING_LOAD_PARTICIPANTS_REQUEST_STATUS:\r\n return {\r\n ...state,\r\n participantsLoadingState: action.payload.requestState\r\n };\r\n case actionTypes.LIVE_BIDDING_STAGE_2_TIMEOUT_END:\r\n return _.cloneDeep(state);\r\n case actionTypes.BIDDING_BWIC_STATUS_CHANGE:\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n status: action.nextStatus\r\n }\r\n };\r\n case autoFeedbackSettingsActions.AUTO_FEEDBACK_SETTINGS_STORE:\r\n return {\r\n ...state,\r\n bwic: state.bwic && {\r\n ...state.bwic,\r\n autoFeedbackConfiguration: action.settings\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_START_STAGE2:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const autoFeedbackConfiguration = state.bwic.process.type === BwicProcessType.TopX\r\n ? { onPlatform: true, offPlatform: true }\r\n : state.bwic.autoFeedbackConfiguration;\r\n\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n autoFeedbackConfiguration,\r\n process: {\r\n ...state.bwic.process,\r\n stagedBiddingStatus: OpenBiddingStatus.stage1Ended,\r\n jumpBall: state.bwic.process.jumpBall == null\r\n ? state.bwic.process.jumpBall\r\n : {\r\n ...state.bwic.process.jumpBall,\r\n stage1EndDateUtc: action.stage1EndDateUtc\r\n },\r\n topX: state.bwic.process.topX == null\r\n ? state.bwic.process.topX\r\n : {\r\n ...state.bwic.process.topX,\r\n stage1EndDateUtc: action.stage1EndDateUtc\r\n }\r\n\r\n }\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n process: {\r\n ...state.bwic.process,\r\n stagedBiddingStatus: OpenBiddingStatus.improvementRoundEnded,\r\n }\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_COLOR_DISTRIBUTION:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n isColorDistribution: action.isColorDistribution\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_AUTO_FEEDBACK_CONFIG:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n autoFeedbackConfiguration: action.settings\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_NEW_BID:\r\n return shouldHandlePushData(state, action)\r\n ? updateBwicParticipants(state, action.bid.company)\r\n : state;\r\n case pushDataActions.PUSH_DATA_QUICK_FEEDBACK:\r\n return shouldHandlePushData(state, action)\r\n ? updateBwicParticipants(state, action.feedback.brokerDealer)\r\n : state;\r\n case actionTypes.BIDDING_RESET:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nfunction shouldHandlePushData(state, action) {\r\n return (\r\n state.bwic &&\r\n state.bwic.referenceName === action.bwicReferenceName\r\n );\r\n}\r\n\r\nfunction updateBwicParticipants(state, company) {\r\n return {\r\n ...state,\r\n bwic: {\r\n ...state.bwic,\r\n companies: state.bwic.companies.some(c => c.id === company.id)\r\n ? state.bwic.companies\r\n : state.bwic.companies.concat(company)\r\n }\r\n };\r\n}\r\n\r\n","import { BlastMessageRecipientLevelState, BlastMessageState, BlastMessageTypes } from \"../types/state/BlastMessageState\";\r\nimport { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { blastMessageActions } from \"../actions/blast-message.actions\";\r\n\r\nconst initialState: BlastMessageState = {\r\n panelVisible: false,\r\n isSending: false,\r\n messageType: BlastMessageTypes.submitFinal,\r\n recipientLevel: BlastMessageRecipientLevelState.Top3,\r\n recipients: {},\r\n isSelectAllRecipients: true,\r\n stage1AboutToEndTimeout: '00:02:00',\r\n error: ''\r\n}\r\n\r\nexport function blastMessage(state = initialState, action: AnyAction): BlastMessageState {\r\n switch (action.type) {\r\n case getType(blastMessageActions.show):\r\n return { ...state, panelVisible: true };\r\n case getType(blastMessageActions.hide):\r\n return { ...initialState };\r\n case getType(blastMessageActions.messageTypeChange):\r\n return {\r\n ...state,\r\n messageType: action.payload.messageType,\r\n recipientLevel: BlastMessageRecipientLevelState.Top3\r\n };\r\n case getType(blastMessageActions.recipientLevelChange):\r\n return {\r\n ...state,\r\n messageType: BlastMessageTypes.submitFinal,\r\n recipientLevel: action.payload.recipientLevel\r\n };\r\n case getType(blastMessageActions.storeRecipients):\r\n return {\r\n ...state,\r\n recipients: action.payload.recipients\r\n };\r\n\r\n case getType(blastMessageActions.editMinutesAboutToEnd):\r\n return {\r\n ...state,\r\n stage1AboutToEndTimeout: action.payload.stage1AboutToEndTimeout\r\n };\r\n\r\n case getType(blastMessageActions.setError):\r\n return {\r\n ...state,\r\n error: action.payload.error\r\n };\r\n\r\n case getType(blastMessageActions.recipientSelectedChange):\r\n if (state.recipients[action.payload.companyIdentifier] == null) {\r\n return state;\r\n } else {\r\n return {\r\n ...state,\r\n recipients: {\r\n ...state.recipients,\r\n [action.payload.companyIdentifier]: !state.recipients[action.payload.companyIdentifier]\r\n }\r\n };\r\n }\r\n case getType(blastMessageActions.toggleSelectAllParticipantsFlag):\r\n return { ...state, isSelectAllRecipients: !state.isSelectAllRecipients };\r\n case getType(blastMessageActions.sending):\r\n return { ...state, isSending: action.payload.isSending };\r\n case getType(blastMessageActions.selectAllRecipientsChange): {\r\n const recipients = { ...state.recipients };\r\n\r\n Object\r\n .keys(recipients)\r\n .forEach((key: string) => recipients[key] = action.payload.isSelectAllRecipients);\r\n\r\n return {\r\n ...state,\r\n isSelectAllRecipients: action.payload.isSelectAllRecipients,\r\n recipients\r\n };\r\n };\r\n default: return state;\r\n }\r\n}\r\n","import { RequestState } from '../constants/request-state';\r\nimport { getType } from 'typesafe-actions';\r\nimport {\r\n blotterFiltersReset,\r\n blotterHasTradesFailure,\r\n blotterHasTradesRequest,\r\n blotterHasTradesSuccess,\r\n blotterSearchFailure,\r\n blotterSearchRequest,\r\n blotterSearchRequestNextPage,\r\n blotterSearchSuccess,\r\n blotterSetCurrency,\r\n blotterToggleConfirmed,\r\n blotterTogglePending,\r\n blotterToggleRejected,\r\n blotterExportRequest,\r\n blotterExportSuccess,\r\n blotterExportFailure,\r\n blotterToggleFilterBuy,\r\n blotterToggleFilterSell,\r\n blotterToggleFilterClient,\r\n blotterToggleFilterDesc,\r\n blotterDateFilterChange,\r\n blotterCustomDateFilterChange,\r\n blotterSetVconRequest,\r\n blotterSetVconSuccess,\r\n blotterSetVconFailure,\r\n blotterSetBookedRequest,\r\n blotterSetBookedSuccess,\r\n blotterSetBookedFailure,\r\n blotterToggleAllocationStatusUnsettled,\r\n blotterToggleAllocationStatusPendingSettlement,\r\n blotterToggleAllocationStatusPendingAllocation,\r\n blotterToggleAllocationStatusSettled,\r\n blotterSettlementDateFilterChange,\r\n blotterSettlementCustomDateFilterChange,\r\n blotterSetFilterDefaults,\r\n blotterResetCurrency,\r\n blotterSelectAllCurrencies,\r\n blotterToggleAllocationStatusPendingProceeds,\r\n blotterReset,\r\n blotterOrderByChange\r\n} from '../actions';\r\nimport { blotterTradeAllocationActions } from '../actions/blotter-trade-allocation.actions';\r\nimport { blotterTradeAllocationTemplateActions } from '../actions/blotter-trade-allocation-template.actions';\r\nimport { accountActions, bwicDateFilterOptions, pushDataActions, SORT } from '../constants';\r\nimport { Currencies } from '../types/enums/Currency';\r\nimport { isRequesting } from '../utils';\r\n\r\nconst initialFilter = {\r\n selectedDateOption: bwicDateFilterOptions.unspecified,\r\n customDateRange: {},\r\n settlementSelectedDateOption: bwicDateFilterOptions.unspecified,\r\n settlementCustomDateRange: {},\r\n confirmed: false,\r\n pending: false,\r\n rejected: false,\r\n currency: [],\r\n buySide: false,\r\n sellSide: false,\r\n client: false,\r\n desc: false,\r\n allocationStatus: {\r\n unsettled: false,\r\n pendingSettlement: false,\r\n pendingAllocation: false,\r\n pendingProceeds: false,\r\n settled: false\r\n }\r\n};\r\n\r\nconst initialState = {\r\n initialFilters: { ...initialFilter },\r\n filters: { ...initialFilter },\r\n prevFilters: { ...initialFilter },\r\n securities: [],\r\n requestStateSecurities: RequestState.none,\r\n ownTrades: {\r\n hasTrades: false,\r\n requestState: RequestState.none,\r\n },\r\n requestStateExport: RequestState.none,\r\n requestStatusSetVcon: {},\r\n requestStatusSetBooked: {},\r\n requestStateSaveTradeAllocation: RequestState.none,\r\n tradeAllocationTemplate: {\r\n saveRequestState: RequestState.none\r\n },\r\n totalRecordNumber: 0,\r\n page: 1,\r\n pageSize: 50,\r\n orderByColumn: 'tradeDate',\r\n orderByDirection: SORT.DESC\r\n};\r\n\r\nexport function blotter(state = initialState, action) {\r\n switch (action.type) {\r\n\r\n case getType(blotterFiltersReset):\r\n return {\r\n ...state,\r\n filters: { ...state.initialFilters },\r\n };\r\n case getType(blotterSetFilterDefaults):\r\n return {\r\n ...state,\r\n filters: { ...state.initialFilters },\r\n };\r\n case getType(blotterDateFilterChange):\r\n case getType(blotterCustomDateFilterChange):\r\n case getType(blotterToggleConfirmed):\r\n case getType(blotterTogglePending):\r\n case getType(blotterToggleRejected):\r\n case getType(blotterSetCurrency):\r\n case getType(blotterToggleFilterBuy):\r\n case getType(blotterToggleFilterSell):\r\n case getType(blotterToggleFilterClient):\r\n case getType(blotterToggleFilterDesc):\r\n case getType(blotterToggleAllocationStatusUnsettled):\r\n case getType(blotterToggleAllocationStatusPendingSettlement):\r\n case getType(blotterToggleAllocationStatusPendingAllocation):\r\n case getType(blotterToggleAllocationStatusPendingProceeds):\r\n case getType(blotterToggleAllocationStatusSettled):\r\n case getType(blotterSettlementDateFilterChange):\r\n case getType(blotterSettlementCustomDateFilterChange):\r\n case getType(blotterSelectAllCurrencies):\r\n case getType(blotterResetCurrency):\r\n if (!isRequesting(state.requestStateSecurities)) {\r\n return {\r\n ...state,\r\n filters: blotterFiltersReducer(state.filters, action),\r\n };\r\n }\r\n return state;\r\n case getType(blotterSearchRequest):\r\n return {\r\n ...state,\r\n requestStateSecurities: RequestState.request,\r\n securities: [],\r\n page: 1,\r\n totalRecordNumber: 0,\r\n prevFilters: state.filters,\r\n };\r\n case getType(blotterSearchRequestNextPage):\r\n return {\r\n ...state,\r\n requestStateSecurities: RequestState.request,\r\n };\r\n case getType(blotterSearchSuccess):\r\n return {\r\n ...state,\r\n requestStateSecurities: RequestState.success,\r\n totalRecordNumber: action.payload.totalRecordNumber,\r\n securities: state.securities.concat(action.payload.result),\r\n page: state.securities.length ? state.page + 1 : 1\r\n };\r\n case getType(blotterSearchFailure):\r\n return {\r\n ...state,\r\n requestStateSecurities: RequestState.failure,\r\n };\r\n case getType(blotterOrderByChange):\r\n return {\r\n ...state,\r\n orderByColumn: action.payload.orderByColumn,\r\n orderByDirection: state.orderByColumn === action.payload.orderByColumn\r\n ? state.orderByDirection === SORT.ASC ? SORT.DESC : SORT.ASC\r\n : SORT.ASC\r\n };\r\n case getType(blotterHasTradesRequest):\r\n return {\r\n ...state,\r\n ownTrades: {\r\n ...state.ownTrades,\r\n requestState: RequestState.request\r\n },\r\n };\r\n case getType(blotterHasTradesSuccess):\r\n return {\r\n ...state,\r\n ownTrades: {\r\n requestState: RequestState.success,\r\n hasTrades: action.payload.hasTrades,\r\n }\r\n };\r\n case getType(blotterHasTradesFailure):\r\n return {\r\n ...state,\r\n ownTrades: {\r\n ...state.ownTrades,\r\n requestState: RequestState.failure,\r\n }\r\n };\r\n case pushDataActions.PUSH_DATA_TRADE:\r\n return {\r\n ...state,\r\n securities: state.securities.map(s => s.tradeId === action.trade.id\r\n ? {\r\n ...s,\r\n status: action.trade.status,\r\n rejectReason: action.trade.rejectReason,\r\n settlementDate: action.trade.settlementDate,\r\n buyerSettlementStatus: action.trade.buyerSettlementStatus,\r\n sellerSettlementStatus: action.trade.sellerSettlementStatus,\r\n isAllocationManual: action.trade.isAllocationManual,\r\n allocationLock: action.trade.allocationLock,\r\n affirmedRejectedBy: action.trade.affirmedRejectedBy,\r\n createdBy: action.trade.createdBy\r\n }\r\n : s\r\n )\r\n };\r\n\r\n // TO DO: Commented code breaks redux action processing flow and should be rewritten.\r\n //case pushDataActions.PUSH_DATA_BWIC_STATUS_CHANGE:\r\n //case pushDataActions.PUSH_DATA_TRADED_AWAY:\r\n // return blotterPushDataReducer(state, action);\r\n\r\n case getType(blotterExportRequest):\r\n return {\r\n ...state,\r\n requestStateExport: RequestState.request\r\n };\r\n case getType(blotterExportSuccess):\r\n return {\r\n ...state,\r\n requestStateExport: RequestState.success\r\n };\r\n case getType(blotterExportFailure):\r\n return {\r\n ...state,\r\n requestStateExport: RequestState.failure\r\n };\r\n case accountActions.LOGOUT:\r\n return { ...initialState };\r\n case getType(blotterSetVconRequest):{\r\n const { tradeId, isBuyTrade } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetVcon: {\r\n ...state.requestStatusSetVcon,\r\n [getTradeKey(tradeId, isBuyTrade)]: true\r\n }\r\n };\r\n }\r\n case getType(blotterSetVconSuccess): {\r\n const { tradeId, isBuyTrade, value } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetVcon: {\r\n ...state.requestStatusSetVcon,\r\n [getTradeKey(tradeId, isBuyTrade)]: false\r\n },\r\n securities: state.securities.map(s => (s.tradeId === tradeId)\r\n ? {\r\n ...s,\r\n vconBuy: (isBuyTrade ? value : s.vconBuy),\r\n vconSell: (!isBuyTrade ? value : s.vconSell)\r\n }\r\n : s\r\n )\r\n }\r\n }\r\n case getType(blotterSetVconFailure):{\r\n const { tradeId, isBuyTrade } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetVcon: {\r\n ...state.requestStatusSetVcon,\r\n [getTradeKey(tradeId, isBuyTrade)]: false\r\n }\r\n };\r\n }\r\n case getType(blotterSetBookedRequest):{\r\n const { tradeId, isBuyTrade } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetBooked: {\r\n ...state.requestStatusSetBooked,\r\n [getTradeKey(tradeId, isBuyTrade)]: true\r\n }\r\n };\r\n }\r\n case getType(blotterSetBookedSuccess): {\r\n const { tradeId, isBuyTrade, value } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetBooked: {\r\n ...state.requestStatusSetBooked,\r\n [getTradeKey(tradeId, isBuyTrade)]: false\r\n },\r\n securities: state.securities.map(s => (s.tradeId === tradeId)\r\n ? {\r\n ...s,\r\n bookedBuy: (isBuyTrade ? value : s.bookedBuy),\r\n bookedSell: (!isBuyTrade ? value : s.bookedSell)\r\n }\r\n : s\r\n )\r\n }\r\n }\r\n case getType(blotterSetBookedFailure): {\r\n const { tradeId, isBuyTrade } = action.payload;\r\n return {\r\n ...state,\r\n requestStatusSetBooked: {\r\n ...state.requestStatusSetBooked,\r\n [getTradeKey(tradeId, isBuyTrade)]: false\r\n }\r\n };\r\n }\r\n case getType(blotterTradeAllocationActions.resetPopupState):\r\n case getType(blotterTradeAllocationActions.saveRequest):\r\n case getType(blotterTradeAllocationActions.saveSuccess):\r\n case getType(blotterTradeAllocationActions.saveFailure):\r\n return tradeAllocationReducer(state, action);\r\n case getType(blotterTradeAllocationTemplateActions.saveRequest):\r\n case getType(blotterTradeAllocationTemplateActions.saveSuccess):\r\n case getType(blotterTradeAllocationTemplateActions.saveFailure):\r\n case getType(blotterTradeAllocationTemplateActions.resetPanelState):\r\n return {\r\n ...state,\r\n tradeAllocationTemplate: tradeAllocationTemplateReducer(state.tradeAllocationTemplate, action)\r\n };\r\n case getType(blotterReset):\r\n return { ...initialState }\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n/*\r\n TO DO: use this function if pending trade must be shown even if 'Pending' filter option is deactivated\r\nfunction createTrade(actionTrade) {\r\n const trade = {};\r\n trade.bwicReferenceName = actionTrade.bwicReferenceName;\r\n trade.positionId = actionTrade.positionId;\r\n trade.tradeId = actionTrade.trade.id;\r\n trade.tradeDate = actionTrade.trade.tradeDate;\r\n trade.settleDate = actionTrade.trade.settleDate;\r\n trade.price = actionTrade.trade.price;\r\n trade.size = actionTrade.trade.size;\r\n trade.status = actionTrade.trade.status;\r\n trade.comment = actionTrade.trade.comment;\r\n trade.rejectReason = actionTrade.trade.rejectReason;\r\n trade.counterparty = actionTrade.trade.buyerCompany.name;\r\n trade.isinCusip = actionTrade.trade.isinCusip;\r\n trade.currency = actionTrade.trade.currency;\r\n trade.rating = actionTrade.trade.rating;\r\n trade.onBehalf = actionTrade.trade.onBehalf;\r\n trade.ticker = actionTrade.trade.ticker;\r\n return trade;\r\n}\r\n*/\r\n\r\n/*function blotterPushDataReducer(state, action) {\r\n for (let i = 0; i < state.securities.length; i++) {\r\n if (state.securities[i].positionId === action.positionId) {\r\n const securities = [...state.securities];\r\n const { status, rejectReason, comment } = action.trade;\r\n securities[i] = { ...securities[i], status, rejectReason, comment };\r\n return { ...state, securities };\r\n }\r\n }\r\n return state;\r\n}*/\r\n\r\nfunction tradeAllocationTemplateReducer(state, action) {\r\n switch (action.type) {\r\n case getType(blotterTradeAllocationTemplateActions.resetPanelState):\r\n return {\r\n saveRequestState: RequestState.none\r\n };\r\n case getType(blotterTradeAllocationTemplateActions.saveRequest):\r\n return {\r\n ...state,\r\n saveRequestState: RequestState.request\r\n };\r\n case getType(blotterTradeAllocationTemplateActions.saveSuccess):\r\n return {\r\n ...state,\r\n saveRequestState: RequestState.success\r\n };\r\n case getType(blotterTradeAllocationTemplateActions.saveFailure):\r\n return {\r\n ...state,\r\n saveRequestState: RequestState.failure\r\n };\r\n default: return state;\r\n }\r\n}\r\n\r\nfunction tradeAllocationReducer(state, action) {\r\n switch (action.type) {\r\n case getType(blotterTradeAllocationActions.resetPopupState):\r\n return { ...state, requestStateSaveTradeAllocation: RequestState.none };\r\n case getType(blotterTradeAllocationActions.saveRequest):\r\n return { ...state, requestStateSaveTradeAllocation: RequestState.request }\r\n case getType(blotterTradeAllocationActions.saveSuccess):\r\n return {\r\n ...state,\r\n securities: state.securities.map(t => t.tradeId === action.payload.tradeId\r\n ? {\r\n ...t,\r\n allocationLock: action.payload.allocationLock,\r\n buyerSettlementStatus: action.payload.buyerSettlementStatus,\r\n sellerSettlementStatus: action.payload.sellerSettlementStatus,\r\n isBuyerAllocationManual: action.payload.isBuyerAllocationManual,\r\n isSellerAllocationManual: action.payload.isSellerAllocationManual,\r\n }\r\n : t\r\n ),\r\n requestStateSaveTradeAllocation: RequestState.success\r\n }\r\n case getType(blotterTradeAllocationActions.saveFailure):\r\n return { ...state, requestStateSaveTradeAllocation: RequestState.failure };\r\n default: return state;\r\n }\r\n}\r\n\r\nfunction blotterFiltersReducer(state = initialState.filters, action) {\r\n switch (action.type) {\r\n case getType(blotterDateFilterChange):\r\n return {\r\n ...state,\r\n selectedDateOption: action.payload.dateOption,\r\n customDateRange: action.payload.dateOption.key === bwicDateFilterOptions.custom.key ?\r\n state.customDateRange : {}\r\n };\r\n case getType(blotterCustomDateFilterChange):\r\n return {\r\n ...state,\r\n selectedDateOption: bwicDateFilterOptions.custom,\r\n customDateRange: action.payload.dateRange\r\n };\r\n case getType(blotterSettlementDateFilterChange):\r\n return {\r\n ...state,\r\n settlementSelectedDateOption: action.payload.dateOption,\r\n settlementCustomDateRange: action.payload.dateOption.key === bwicDateFilterOptions.custom.key\r\n ? state.settlementCustomDateRange : {}\r\n };\r\n case getType(blotterSettlementCustomDateFilterChange):\r\n return {\r\n ...state,\r\n settlementSelectedDateOption: bwicDateFilterOptions.custom,\r\n settlementCustomDateRange: action.payload.dateRange\r\n };\r\n case getType(blotterSetCurrency):\r\n return {\r\n ...state,\r\n currency: state.currency.some(c => c === action.payload.currency)\r\n ? state.currency.filter(c => c !== action.payload.currency)\r\n : state.currency.concat(action.payload.currency),\r\n };\r\n case getType(blotterResetCurrency):\r\n return {\r\n ...state,\r\n currency: []\r\n };\r\n case getType(blotterSelectAllCurrencies):\r\n return {\r\n ...state,\r\n currency: [...Currencies]\r\n };\r\n case getType(blotterToggleConfirmed):\r\n return {\r\n ...state,\r\n confirmed: !state.confirmed,\r\n };\r\n case getType(blotterToggleRejected):\r\n return {\r\n ...state,\r\n rejected: !state.rejected,\r\n };\r\n case getType(blotterTogglePending):\r\n return {\r\n ...state,\r\n pending: !state.pending,\r\n };\r\n case getType(blotterToggleAllocationStatusUnsettled):\r\n return {\r\n ...state,\r\n allocationStatus: {\r\n ...state.allocationStatus,\r\n unsettled: !state.allocationStatus.unsettled\r\n }\r\n };\r\n case getType(blotterToggleAllocationStatusPendingSettlement):\r\n return {\r\n ...state,\r\n allocationStatus: {\r\n ...state.allocationStatus,\r\n pendingSettlement: !state.allocationStatus.pendingSettlement\r\n }\r\n };\r\n case getType(blotterToggleAllocationStatusPendingAllocation):\r\n return {\r\n ...state,\r\n allocationStatus: {\r\n ...state.allocationStatus,\r\n pendingAllocation: !state.allocationStatus.pendingAllocation\r\n }\r\n };\r\n case getType(blotterToggleAllocationStatusPendingProceeds):\r\n return {\r\n ...state,\r\n allocationStatus: {\r\n ...state.allocationStatus,\r\n pendingProceeds: !state.allocationStatus.pendingProceeds\r\n }\r\n };\r\n case getType(blotterToggleAllocationStatusSettled):\r\n return {\r\n ...state,\r\n allocationStatus: {\r\n ...state.allocationStatus,\r\n settled: !state.allocationStatus.settled\r\n }\r\n };\r\n case getType(blotterToggleFilterBuy):\r\n return {\r\n ...state,\r\n buySide: !state.buySide\r\n };\r\n case getType(blotterToggleFilterSell):\r\n return {\r\n ...state,\r\n sellSide: !state.sellSide\r\n };\r\n case getType(blotterToggleFilterClient):\r\n return {\r\n ...state,\r\n client: !state.client\r\n };\r\n case getType(blotterToggleFilterDesc):\r\n return {\r\n ...state,\r\n desc: !state.desc\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nfunction getTradeKey(tradeId, isBuyTrade) {\r\n return `${tradeId}_${isBuyTrade}`\r\n}\r\n","import { AnyAction } from 'redux';\r\nimport { bidPlacementActions, pushDataActions } from '../constants';\r\nimport { BidError, EditBidState } from '../types/state/BrokerDealerBiddingState';\r\n\r\nexport const bidPlacementReducer = (state: { [positionId: number]: EditBidState } = {}, action: AnyAction) => {\r\n switch (action.type) {\r\n case bidPlacementActions.BID_PLACEMENT_SET_BID_CAN_SUBMIT:\r\n return {\r\n ...state,\r\n [action.payload.positionId]: {\r\n ...state[action.payload.positionId],\r\n canSubmit: action.payload.canSubmit\r\n }\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_BID_CHANGE:\r\n return {\r\n ...state,\r\n [action.positionId]: {\r\n ...state[action.positionId],\r\n value: action.bid,\r\n pass: false\r\n }\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_AXED_CHANGE:\r\n return {\r\n ...state,\r\n [action.positionId]: {\r\n ...state[action.positionId],\r\n axed: action.axed\r\n }\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_FINAL_CHANGE:\r\n return {\r\n ...state,\r\n [action.positionId]: {\r\n ...state[action.positionId],\r\n final: action.final\r\n }\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_PASS_CHANGE:\r\n return {\r\n ...state,\r\n [action.positionId]: {\r\n ...state[action.positionId],\r\n pass: action.pass,\r\n value: undefined,\r\n axed: undefined,\r\n final: undefined,\r\n errors: undefined\r\n }\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_SET_BID_ERRORS: {\r\n const copy = { ...state };\r\n\r\n action.errors.forEach((e: { positionId: number, errors?: BidError }) => {\r\n copy[e.positionId].errors = e.errors;\r\n });\r\n\r\n return copy;\r\n }\r\n case bidPlacementActions.REVERT: {\r\n if(!state[action.payload.positionId]){\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n [action.payload.positionId]: {\r\n ...state[action.payload.positionId],\r\n canSubmit: false,\r\n value: undefined,\r\n axed: undefined,\r\n final: undefined,\r\n pass: undefined,\r\n errors: undefined\r\n }\r\n };\r\n }\r\n case bidPlacementActions.REVERT_ALL:\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2:\r\n return {};\r\n case bidPlacementActions.COMMISSION_CHANGE:\r\n return {\r\n ...state,\r\n [action.payload.positionId]: {\r\n ...state[action.payload.positionId],\r\n commission: action.payload.commission,\r\n commissionError: action.payload.error\r\n }\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { bidConfirmationActions } from '../actions/bid-confirmation.actions';\r\nimport { SubmitBidConfurmationState } from '../types/state/BrokerDealerBiddingState';\r\n\r\nexport const submitBidsConfirmationInitial: SubmitBidConfurmationState = {\r\n submitBidsConfirmationVisible: false,\r\n securities: undefined,\r\n submitInProgress: false,\r\n submitInProgressPositionId: undefined,\r\n submitResult: {}\r\n};\r\n\r\ntype TBidConfirmationActionType = ActionType<\r\n typeof bidConfirmationActions.submitInProgress |\r\n typeof bidConfirmationActions.reset |\r\n typeof bidConfirmationActions.submitResults |\r\n typeof bidConfirmationActions.confirmation\r\n>;\r\n\r\nexport const bidConfirmationReducer = (state = submitBidsConfirmationInitial, action: TBidConfirmationActionType) => {\r\n switch (action.type) {\r\n case getType(bidConfirmationActions.confirmation):\r\n return {\r\n ...state,\r\n securities: action.payload.positionIdList,\r\n submitBidsConfirmationVisible: action.payload.positionIdList != null && action.payload.positionIdList.length > 0\r\n };\r\n case getType(bidConfirmationActions.submitInProgress):\r\n return {\r\n ...state,\r\n submitInProgress: action.payload.inProgress,\r\n submitInProgressPositionId: action.payload.positionId\r\n };\r\n case getType(bidConfirmationActions.reset):\r\n return { ...submitBidsConfirmationInitial };\r\n case getType(bidConfirmationActions.submitResults):\r\n return {\r\n ...state,\r\n submitResult: {\r\n ...state.submitResult,\r\n ...action.payload.result\r\n }\r\n };\r\n }\r\n}\r\n","import * as _ from 'lodash';\r\nimport { getType } from 'typesafe-actions';\r\nimport { brokerDealerBiddingActions as actionTypes, pushDataActions, biddingActions, bidPlacementActions, tradeConfirmActions } from '../constants';\r\nimport { biddingPushDataReducer, shouldHandlePushData } from './bidding.push.data.reducer';\r\nimport { bidPlacementReducer } from './bid-placement.reducer';\r\nimport { submitBidsConfirmationInitial, bidConfirmationReducer } from './bid-confirmation.reducer';\r\nimport { bidConfirmationActions } from '../actions/bid-confirmation.actions';\r\nimport { pushBwicActions } from '../actions/push.bwic.actions';\r\n\r\nconst initialState = {\r\n accessState: null,\r\n securities: [],\r\n editBid: {},\r\n requestingPositions: [],\r\n submitBidsConfirmation: submitBidsConfirmationInitial\r\n};\r\n\r\nexport const brokerDealerBidding = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.BROKER_DEALER_BIDDING_RESET:\r\n case biddingActions.BIDDING_RESET:\r\n return initialState;\r\n case actionTypes.BROKER_DEALER_BIDDING_STORE_SECURITIES:\r\n return {\r\n ...state,\r\n securities: action.securities\r\n };\r\n case actionTypes.BROKER_DEALER_ACCESS_STATE:\r\n return {\r\n ...state,\r\n accessState: action.accessState\r\n };\r\n case biddingActions.LIVE_BIDDING_STAGE_2_TIMEOUT_END:\r\n return _.cloneDeep(state);\r\n case tradeConfirmActions.SET_TRADED_POSITION_STATUS:\r\n return {\r\n ...state,\r\n securities: state.securities.map(s => {\r\n if (action.positions.includes(s.id)) {\r\n return { ...s, status: action.status, rejectReason: action.rejectReason }\r\n }\r\n return s;\r\n }),\r\n };\r\n case bidPlacementActions.BID_PLACEMENT_SET_BID_CAN_SUBMIT:\r\n case bidPlacementActions.BID_PLACEMENT_BID_CHANGE:\r\n case bidPlacementActions.BID_PLACEMENT_AXED_CHANGE:\r\n case bidPlacementActions.BID_PLACEMENT_FINAL_CHANGE:\r\n case bidPlacementActions.BID_PLACEMENT_PASS_CHANGE:\r\n case bidPlacementActions.BID_PLACEMENT_SET_BID_ERRORS:\r\n case bidPlacementActions.COMMISSION_CHANGE:\r\n case bidPlacementActions.REVERT:\r\n case bidPlacementActions.REVERT_ALL:\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2:\r\n return {\r\n ...state,\r\n editBid: bidPlacementReducer(state.editBid, action)\r\n }\r\n case getType(bidConfirmationActions.confirmation):\r\n case getType(bidConfirmationActions.reset):\r\n case getType(bidConfirmationActions.submitInProgress):\r\n case getType(bidConfirmationActions.submitResults):\r\n return {\r\n ...state,\r\n submitBidsConfirmation: bidConfirmationReducer(state.submitBidsConfirmation, action)\r\n };\r\n // Push data\r\n case pushDataActions.PUSH_DATA_NEW_BID: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n editBid: {\r\n ...state.editBid,\r\n [action.positionId]: {\r\n commission: state.editBid[action.positionId]?.commission,\r\n commissionError: state.editBid[action.positionId]?.commissionError,\r\n }\r\n },\r\n securities: state.securities.map(p => p.id === action.positionId\r\n ? {\r\n ...p,\r\n bidLock: action.bid.modifiedDate,\r\n bids: [{ ...action.bid }],\r\n latestBidSubmission: action.bid.createdUtc,\r\n }\r\n : p\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_AXED_FINAL_CHANGE: {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, bidId, axed, final, modifiedDate } = action;\r\n\r\n let editBid = state.editBid;\r\n if (state.editBid[positionId]) {\r\n editBid = {\r\n ...state.editBid,\r\n [positionId]: { ...state.editBid[positionId], axed, final }\r\n };\r\n }\r\n\r\n return {\r\n ...state,\r\n editBid,\r\n securities: state.securities.map(p => p.id === positionId\r\n ? {\r\n ...p,\r\n bidLock: modifiedDate,\r\n bids: p.bids && p.bids.length\r\n ? p.bids.map(b => b.id === bidId ? { ...b, axed, final } : b)\r\n : p.bids\r\n }\r\n : p\r\n )\r\n };\r\n }\r\n case pushDataActions.PUSH_DATA_OPEN_BIDDING_STAGE2_LEVEL:\r\n if (!state.securities) return state;\r\n\r\n return {\r\n ...state,\r\n securities: state.securities.map(s => s.id === action.positionId\r\n ? {\r\n ...s,\r\n openBiddingStage2Level: action.level,\r\n tiedForBest: action.tiedForBest,\r\n latestBidSubmission: action.sentDateUtc,\r\n } : s\r\n )\r\n };\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_START_STAGE2:\r\n if (!state.securities?.length || !action.canDealerBidOnPositions) return state;\r\n\r\n const editBid = {};\r\n // Reset edit state for positions if canBidOnStage2 === false\r\n action.canDealerBidOnPositions.forEach(({ positionId, canBidOnStage2 }) => {\r\n if (canBidOnStage2 && state.editBid[positionId]) {\r\n editBid[positionId] = { ...state.editBid[positionId] };\r\n // Axed-Final flags are not available in Stage 2\r\n delete editBid['axed'];\r\n delete editBid['final'];\r\n }\r\n });\r\n\r\n return {\r\n ...state,\r\n editBid,\r\n securities: state.securities.map(s => {\r\n const found = action.canDealerBidOnPositions.find(c => s.id === c.positionId);\r\n if (found) {\r\n return {\r\n ...s,\r\n canBidOnStage2: found.canBidOnStage2,\r\n isStage2Participant: found.canBidOnStage2,\r\n tiedForBest: found.tiedForBest,\r\n openBiddingStage2Level: found.level\r\n }\r\n }\r\n\r\n return s;\r\n })\r\n }\r\n case pushDataActions.PUSH_DATA_NEW_PX_TALK:\r\n case pushDataActions.PUSH_DATA_QUICK_FEEDBACK:\r\n case pushDataActions.PUSH_DATA_TRADE:\r\n case pushDataActions.PUSH_DATA_TRADED_AWAY:\r\n return biddingPushDataReducer(state, action);\r\n case getType(pushBwicActions.bidRequest): {\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n const { positionId, bidRequest } = action;\r\n\r\n return {\r\n ...state,\r\n securities: state.securities?.map(s => s.id === positionId\r\n ? { ...s, bidRequest }\r\n : s\r\n )\r\n };\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { getType } from 'typesafe-actions';\r\nimport { pushBwicActions, sellerBuysideActions } from '../actions';\r\nimport {\r\n bwicHistoryActions as actionTypes,\r\n pushDataActions,\r\n biddingActions\r\n} from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { BwicVisitorType } from '../types/state/BiddingState';\r\nimport { user } from '../user/user';\r\n\r\nconst initialState = {\r\n actions: null,\r\n bwicReferenceName: null,\r\n positionId: null,\r\n ticker: null,\r\n visible: false,\r\n requestState: RequestState.none,\r\n visitorType: null\r\n}\r\n\r\nexport const bwicHistory = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.STORE_BWIC_HISTORY:\r\n return {\r\n ...state,\r\n bwicReferenceName: action.bwicReferenceName,\r\n positionId: action.positionId,\r\n actions: action.historyActions\r\n };\r\n case actionTypes.LOAD_HISTORY_REQUEST_STATE:\r\n return {\r\n ...state,\r\n requestState: action.requestState\r\n };\r\n case actionTypes.SHOW_BWIC_HISTORY:\r\n return {\r\n ...state,\r\n visible: action.visible,\r\n positionId: action.positionId,\r\n ticker: action.ticker\r\n };\r\n case actionTypes.MARK_HISTORY_MESSAGES_AS_READ:\r\n return {\r\n ...state,\r\n actions: Array.isArray(state.actions)\r\n ? state.actions\r\n .map(a => action.messages\r\n .some(m => m === a.referenceName) ? { ...a, isRead: true } : a)\r\n : state.actions\r\n };\r\n\r\n case pushDataActions.PUSH_DATA_BWIC_STATUS_CHANGE:\r\n case pushDataActions.PUSH_DATA_PUBLIC_COLORS:\r\n case pushDataActions.PUSH_DATA_TRADE:\r\n case pushDataActions.PUSH_DATA_TRADED_AWAY:\r\n case pushDataActions.PUSH_DATA_NEW_BID:\r\n case pushDataActions.PUSH_DATA_AXED_FINAL_CHANGE:\r\n case pushDataActions.PUSH_DATA_QUICK_FEEDBACK:\r\n case getType(pushBwicActions.bidRequest):\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_START_STAGE2:\r\n case pushDataActions.PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2:\r\n if (!shouldHandlePushData(state, action)) return state;\r\n\r\n return {\r\n ...state,\r\n actions: (state.actions || []).concat(action.historyAction ?? action.payload.historyAction)\r\n };\r\n case pushDataActions.PUSH_DATA_NEW_PX_TALK: {\r\n if (shouldHandlePushData(state, action) && (\r\n state.visitorType === BwicVisitorType.Seller ||\r\n user.current()?.companyId === action.priceTalk.company.id)) {\r\n return {\r\n ...state,\r\n actions: (state.actions || []).concat(action.historyAction)\r\n };\r\n }\r\n\r\n return state;\r\n }\r\n case getType(sellerBuysideActions.init):\r\n return { ...state, visitorType: BwicVisitorType.Buyer };\r\n case biddingActions.BIDDING_STORE_VISITOR_TYPE:\r\n return { ...state, visitorType: action.visitorType };\r\n case getType(sellerBuysideActions.reset):\r\n case biddingActions.BIDDING_RESET:\r\n return { ...initialState };\r\n case actionTypes.RESET:\r\n return { ...initialState, visitorType: state.visitorType };\r\n default: return state;\r\n }\r\n}\r\n\r\nfunction shouldHandlePushData(state, action) {\r\n return (\r\n state.bwicReferenceName === action.bwicReferenceName &&\r\n action.historyAction &&\r\n !action.historyAction.ignoreInHistory\r\n );\r\n}\r\n\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { bwicLogActions } from '../actions/bwic-log.actions';\r\nimport { BwicLogState } from '../types/state/BwicLogState';\r\n\r\nconst initialState: BwicLogState = {\r\n security: null,\r\n initRequestState: RequestState.none,\r\n exportDataRequestState: RequestState.none,\r\n securityBwicStatistics: { count: 0, securities: [] }\r\n};\r\n\r\nexport const bwicLogReducer = (\r\n state = initialState,\r\n action: ActionType): BwicLogState => {\r\n switch (action.type) {\r\n case getType(bwicLogActions.bwicLogInitRequest):\r\n return {\r\n ...initialState,\r\n initRequestState: RequestState.request,\r\n security: action.payload.security\r\n };\r\n case getType(bwicLogActions.bwicLogInitSuccess):\r\n return {\r\n ...state,\r\n initRequestState: RequestState.success,\r\n securityBwicStatistics: action.payload.statistics,\r\n };\r\n case getType(bwicLogActions.bwicLogInitFailure):\r\n return {\r\n ...state,\r\n initRequestState: RequestState.failure\r\n };\r\n case getType(bwicLogActions.bwicLogExportDataRequest):\r\n return {\r\n ...state,\r\n exportDataRequestState: RequestState.request\r\n };\r\n case getType(bwicLogActions.bwicLogExportDataSuccess):\r\n return {\r\n ...state,\r\n exportDataRequestState: RequestState.success\r\n };\r\n case getType(bwicLogActions.bwicLogExportDataFailure):\r\n return {\r\n ...state,\r\n exportDataRequestState: RequestState.failure\r\n };\r\n case getType(bwicLogActions.bwicLogReset):\r\n return { ...initialState };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { changeSubscriptionActions } from '../actions/change-subscription.actions';\r\nimport { ChangeSubscriptionState } from '../types/state/ChangeSubscriptionState';\r\n\r\nconst initialState: ChangeSubscriptionState = {\r\n popupVisible: false,\r\n company: undefined,\r\n isSubscriptionSavingFlag: false,\r\n};\r\n\r\nexport function changeSubscription(\r\n state = initialState,\r\n action: ActionType\r\n): ChangeSubscriptionState {\r\n switch (action.type) {\r\n case getType(changeSubscriptionActions.show):\r\n return {\r\n ...state,\r\n popupVisible: true,\r\n company: action.payload.company,\r\n };\r\n case getType(changeSubscriptionActions.hide):\r\n return { ...initialState };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { changeColorActions as actionTypes } from '../constants';\r\n\r\nconst initialState = {\r\n color: undefined,\r\n ticker: undefined,\r\n errors: {\r\n isValid: true,\r\n },\r\n isNormalizing: false\r\n};\r\n\r\nexport const changeColor = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.RESET:\r\n return { ...initialState };\r\n case actionTypes.SET_COLOR:\r\n return {\r\n ...state,\r\n ticker: action.data.ticker,\r\n color: {\r\n ...action.data.color,\r\n dm: action.data.color.dm !== undefined ? +action.data.color.dm : null,\r\n },\r\n };\r\n case actionTypes.CHANGE_COLOR_SET_DM:\r\n return {\r\n ...state,\r\n color: {\r\n ...state.color,\r\n dm: action.payload.dm !== '' ? +action.payload.dm : null\r\n }\r\n };\r\n case actionTypes.TRADED_CHANGE:\r\n return {\r\n ...state,\r\n color: { ...state.color, traded: action.traded }\r\n };\r\n case actionTypes.LEVEL_SPECIFICATION_CHANGE:\r\n return {\r\n ...state,\r\n color: { ...state.color, levelSpecificationType: action.levelSpecification }\r\n };\r\n case actionTypes.LEVEL_CHANGE:\r\n return {\r\n ...state,\r\n color: { ...state.color, level: action.level }\r\n };\r\n case actionTypes.NORMALIZED_LEVEL_CHANGE:\r\n return {\r\n ...state,\r\n color: { ...state.color, normalizedLevel: action.normalizedLevel, level: action.level || state.color.level }\r\n };\r\n case actionTypes.SET_LEVEL_ERROR:\r\n return {\r\n ...state,\r\n errors: { ...state.errors, level: action.error, isValid: !state.errors.color && !action.error }\r\n };\r\n case actionTypes.SET_COLOR_ERROR:\r\n return {\r\n ...state,\r\n errors: { ...state.errors, color: action.error, isValid: !state.errors.level && !action.error }\r\n };\r\n case actionTypes.LEVEL_TYPE_CHANGE:\r\n return {\r\n ...state,\r\n color: { ...state.color, levelType: action.levelType }\r\n };\r\n case actionTypes.NORMALIZING:\r\n return {\r\n ...state,\r\n isNormalizing: action.isNormalizing\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { AnyAction } from 'redux';\r\nimport { changePxTalkActions as actionTypes } from '../constants';\r\nimport { ChangePxTalkState } from '../types/state/ChangePxTalkState';\r\nimport { priceTalksActions } from '../actions/price-talks.actions';\r\nimport { isRequestSuccess } from '../utils';\r\n\r\nconst initialState: ChangePxTalkState = {\r\n visible: false,\r\n bwicReferenceName: undefined,\r\n positionId: undefined,\r\n ticker: undefined,\r\n pxTalks: undefined,\r\n deletedPriceTalks: [],\r\n isNormalizing: false\r\n};\r\n\r\nexport const changePxTalk = (state = initialState, action: AnyAction) => {\r\n switch (action.type) {\r\n case actionTypes.RESET:\r\n return { ...initialState };\r\n case actionTypes.STORE_PXTALKS:\r\n return {\r\n ...state,\r\n bwicReferenceName: action.bwicReferenceName,\r\n positionId: action.positionId,\r\n ticker: action.ticker,\r\n pxTalks: action.pxTalks,\r\n visible: true\r\n };\r\n case actionTypes.VALIDATION_RESULT:\r\n return {\r\n ...state,\r\n pxTalks: action.pxTalks\r\n };\r\n case actionTypes.ADD_PXTALK:\r\n return {\r\n ...state,\r\n pxTalks: [action.pxTalk].concat(state.pxTalks)\r\n };\r\n case actionTypes.TALK_CHANGE:\r\n return {\r\n ...state,\r\n pxTalks: state.pxTalks?.map(p =>\r\n p.company.id === action.change.companyId\r\n ? { ...p, talk: action.change.talk }\r\n : p)\r\n };\r\n case actionTypes.LEVEL_TYPE_CHANGE:\r\n return {\r\n ...state,\r\n pxTalks: state.pxTalks?.map(p =>\r\n p.company.id === action.change.companyId\r\n ? { ...p, levelType: action.change.levelType }\r\n : p)\r\n };\r\n case actionTypes.DELETE_PX_TALK: {\r\n const deletedPriceTalk = state.pxTalks?.find((p, i) => i === action.index);\r\n return {\r\n ...state,\r\n pxTalks: state.pxTalks?.filter((p, i) => i !== action.index),\r\n deletedPriceTalks: deletedPriceTalk?.talk ? [...state.deletedPriceTalks, deletedPriceTalk] : state.deletedPriceTalks\r\n };\r\n }\r\n case actionTypes.NORMALIZED_LEVEL_CHANGE:\r\n return {\r\n ...state,\r\n pxTalks: state.pxTalks?.map(p =>\r\n p.company.id === action.change.companyId\r\n ? { ...p, normalizedLevel: action.change.normalizedLevel, talk: action.change.talk || p.talk }\r\n : p)\r\n };\r\n case actionTypes.TALK_ERROR:\r\n return {\r\n ...state,\r\n pxTalks: state.pxTalks?.map(p =>\r\n p.company.id === action.error.companyId\r\n ? { ...p, error: action.error.errorMessage }\r\n : p)\r\n };\r\n case actionTypes.NORMALIZING:\r\n return {\r\n ...state,\r\n isNormalizing: action.isNormalizing\r\n };\r\n case getType(priceTalksActions.requestResult):\r\n if (action.payload.positionId === state.positionId && isRequestSuccess(action.payload.requestState)) {\r\n return {\r\n ...state,\r\n pxTalks: action.payload.priceTalks\r\n };\r\n }\r\n\r\n return state;\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { AnyAction } from 'redux';\r\nimport { getType } from 'typesafe-actions';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { ClientsCompaniesState } from '../types/state/ClientsCompaniesState';\r\nimport { clientsCompaniesActions } from '../actions/clients-companies.actions';\r\nimport { settlementAgentAgeementPushActions } from '../actions/settlement-agent-agreement-push.actions';\r\nimport { SettlementAgentClientAgreement } from '../types/bid-as-dealer/SettlementAgentClientAgreement';\r\nimport { user } from '../user';\r\n\r\nconst initialState: ClientsCompaniesState = {\r\n selectedCompanyForAffirm: null,\r\n companiesList: [],\r\n requestStateFetchClientsList: RequestState.none,\r\n requestStatusUpdateRequest: {},\r\n searchString: '',\r\n pendingAgreementCount: 0,\r\n requestStateFetchPendingAgreementCount: RequestState.none,\r\n currencyRate: [],\r\n requestStateGetCurrencyRate: RequestState.none,\r\n requestStateUpdateCurrencyRate: RequestState.none,\r\n visibleSetRatePopup: false,\r\n};\r\n\r\nexport const clientsCompanies = (state = initialState, action: AnyAction): ClientsCompaniesState => {\r\n switch (action.type) {\r\n case getType(clientsCompaniesActions.fetchListRequest):\r\n return { ...state, requestStateFetchClientsList: RequestState.request };\r\n case getType(clientsCompaniesActions.fetchListSuccess):\r\n return { ...state, requestStateFetchClientsList: RequestState.success, companiesList: action.payload.data };\r\n case getType(clientsCompaniesActions.fetchListFailure):\r\n return { ...state, requestStateFetchClientsList: RequestState.failure };\r\n case getType(clientsCompaniesActions.fetchPendingAgreementCountRequest):\r\n return { ...state, requestStateFetchPendingAgreementCount: RequestState.request };\r\n case getType(clientsCompaniesActions.fetchPendingAgreementsCountSuccess):\r\n return {\r\n ...state,\r\n pendingAgreementCount: action.payload.count,\r\n requestStateFetchPendingAgreementCount: RequestState.success\r\n };\r\n case getType(clientsCompaniesActions.fetchPendingAgreementsCountFailure):\r\n return { ...state, requestStateFetchPendingAgreementCount: RequestState.failure };\r\n case getType(clientsCompaniesActions.setSelectedAgreement):\r\n return { ...state, selectedCompanyForAffirm: action.payload.companyId };\r\n case getType(clientsCompaniesActions.resetSelectedAgreement):\r\n return { ...state, selectedCompanyForAffirm: null };\r\n case getType(clientsCompaniesActions.updateAgreementRequest):\r\n return { ...state, requestStatusUpdateRequest: { ...state.requestStatusUpdateRequest, [action.payload.requestData.assetManagerId]: RequestState.request }};\r\n case getType(clientsCompaniesActions.updateAgreementSuccess):\r\n return {\r\n ...state,\r\n requestStatusUpdateRequest: { ...state.requestStatusUpdateRequest, [action.payload.assetManagerId]: RequestState.success},\r\n selectedCompanyForAffirm: null\r\n };\r\n case getType(clientsCompaniesActions.updateAgreementFailure):\r\n return { ...state, requestStatusUpdateRequest: { ...state.requestStatusUpdateRequest, [action.payload.assetManagerId]: RequestState.failure} };\r\n case getType(settlementAgentAgeementPushActions.settlementAgentAgreementPushReceived):\r\n return { ...state, companiesList: updateCompaniesList([...state.companiesList], action.payload.data) };\r\n case getType(clientsCompaniesActions.setSearchString):\r\n return { ...state, searchString: action.payload.searchString };\r\n case getType(clientsCompaniesActions.reset):\r\n return {\r\n ...initialState,\r\n searchString: state.searchString\r\n };\r\n case getType(clientsCompaniesActions.setVisibleUpdateRatePopup):\r\n return { ...state, visibleSetRatePopup: action.payload.visible };\r\n\r\n case getType(clientsCompaniesActions.getCurrencyRate):\r\n return { ...state, requestStateGetCurrencyRate: RequestState.request, };\r\n case getType(clientsCompaniesActions.setResultGetCurrencyRate):\r\n return {\r\n ...state,\r\n requestStateGetCurrencyRate: action.payload.requestState,\r\n currencyRate: action.payload.rate\r\n };\r\n case getType(clientsCompaniesActions.updateCurrencyRate):\r\n return { ...state, requestStateUpdateCurrencyRate: RequestState.request };\r\n case getType(clientsCompaniesActions.setResultUpdateCurrencyRate):\r\n return {\r\n ...state,\r\n requestStateUpdateCurrencyRate: action.payload.requestState,\r\n currencyRate: action.payload.rate\r\n ? state.currencyRate.map((rate) =>\r\n rate.code === action.payload.rate.code\r\n ? action.payload.rate\r\n : rate\r\n )\r\n : state.currencyRate\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nfunction updateCompaniesList(companiesList: SettlementAgentClientAgreement[], data: SettlementAgentClientAgreement) {\r\n if (!user.current()?.isClearingBank) {\r\n return companiesList;\r\n }\r\n if (companiesList.some((c) => c.signatory.id === data.signatory.id)) {\r\n return companiesList.map(c => c.signatory.id === data.signatory.id ? {\r\n ...data,\r\n contacts: c.contacts\r\n } : c)\r\n }\r\n\r\n return companiesList.concat(data);\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { cloManagersActions, TCloManagersActions } from '../actions/clo-managers.actions';\r\nimport { CloManager } from '../types/clo-managers/CloManager';\r\nimport { CloManagersState } from '../types/state/CloManagersState';\r\nimport { compareBoolean, compareNumbersWithNullAcs, compareStrings } from '../utils/compare.utils';\r\nimport { analyticDefaultFilters } from '../constants';\r\nimport { dateRangeFilterOptions } from '../constants/date-range.filter';\r\n\r\nconst cloManagersInitialState: CloManagersState = {\r\n isLoading: true,\r\n isDetailsLoading: true,\r\n isUpdating: false,\r\n analytics: {\r\n isLoading: true,\r\n users: [],\r\n clientsActivity: {\r\n isLoading: false,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n profileHistoryViews: {\r\n isLoading: true,\r\n data: [],\r\n filter: analyticDefaultFilters,\r\n numberOfHiddenItems: 0,\r\n },\r\n },\r\n selectedSecurity: undefined,\r\n};\r\n\r\nfunction sortCloManagers(data: CloManager[]) {\r\n return data.sort(\r\n (a, b) =>\r\n compareBoolean(a.isUserCompany, b.isUserCompany) ||\r\n compareBoolean(a.hasActiveTransactions, b.hasActiveTransactions) ||\r\n compareStrings(a.legalName, b.legalName)\r\n );\r\n}\r\n\r\nfunction markFavorite(referenceName: string, favorite: boolean, data?: CloManager[]) {\r\n if (!data) {\r\n return [];\r\n }\r\n\r\n return data.map(cloManager => ({\r\n ...cloManager,\r\n favorite: cloManager.referenceName === referenceName\r\n ? favorite\r\n : cloManager.favorite,\r\n }));\r\n}\r\n\r\nexport const cloManagers = (state = cloManagersInitialState, action: TCloManagersActions): CloManagersState => {\r\n switch (action.type) {\r\n case getType(cloManagersActions.getCloManagers):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(cloManagersActions.getCloManagersResult): {\r\n return {\r\n ...state,\r\n isLoading: false,\r\n data: sortCloManagers(action.payload.cloManagers),\r\n };\r\n }\r\n case getType(cloManagersActions.getCloManager):\r\n return {\r\n ...state,\r\n selectedManager: state.data?.find(x => x.referenceName === action.payload.referenceName),\r\n isDetailsLoading: true,\r\n };\r\n case getType(cloManagersActions.setManagerForAlertPopup):\r\n return {\r\n ...state,\r\n managerReferenceNameForAlert: action.payload.referenceName,\r\n };\r\n case getType(cloManagersActions.getCloManagerResult): {\r\n const {\r\n cloManager,\r\n referenceName,\r\n bwicCloManagers,\r\n } = action.payload;\r\n\r\n const investmentTeam = {\r\n ...cloManager.investmentTeam,\r\n items: cloManager.investmentTeam.items\r\n ?.filter((contact) => !bwicCloManagers.some(m => m.fullName === contact.fullName))\r\n .sort((a, b) => a.order! - b.order!)\r\n };\r\n\r\n const sortedBwicCloManagers = bwicCloManagers.sort(\r\n (a , b) => compareNumbersWithNullAcs(a.status, b.status)\r\n || compareStrings(a.fullName, b.fullName)\r\n );\r\n\r\n return {\r\n ...state,\r\n isDetailsLoading: false,\r\n isUpdating: false,\r\n selectedManager:\r\n state.selectedManager?.referenceName === referenceName\r\n ? { ...state.selectedManager, details: { ...cloManager, investmentTeam } }\r\n : state.selectedManager,\r\n editManager: {\r\n ...cloManager,\r\n investmentTeam: investmentTeam.items,\r\n ownEquity: cloManager.ownEquity || false,\r\n proprietaryAnalyticalTools: cloManager.proprietaryAnalyticalTools || false,\r\n countryId: cloManager.country ? cloManager.country.id : null,\r\n stateId: cloManager.state ? cloManager.state.id : null,\r\n cityId: cloManager.city ? cloManager.city.id : null,\r\n newCity: null,\r\n },\r\n bwicCloManagers: sortedBwicCloManagers,\r\n editBwicCloManagers: sortedBwicCloManagers,\r\n };\r\n }\r\n case getType(cloManagersActions.editPlatformUsers): {\r\n const { email } = action.payload;\r\n\r\n const data = state.editBwicCloManagers?.map((manager) => {\r\n if (manager.email === email) {\r\n return {\r\n ...manager,\r\n meetingContact: !manager.meetingContact,\r\n };\r\n }\r\n\r\n return manager;\r\n });\r\n\r\n return {\r\n ...state,\r\n editBwicCloManagers: data,\r\n };\r\n }\r\n case getType(cloManagersActions.resetEditPlatformUsers): {\r\n return {\r\n ...state,\r\n editBwicCloManagers: state.bwicCloManagers\r\n }\r\n }\r\n case getType(cloManagersActions.setCloManagerSaveState):\r\n return {\r\n ...state,\r\n isUpdating: action.payload.isUpdating,\r\n };\r\n case getType(cloManagersActions.switchFavoriteResponse): {\r\n const { companyReferenceName, favorite } = action.payload;\r\n\r\n const data = markFavorite(companyReferenceName, favorite, state.data);\r\n\r\n return {\r\n ...state,\r\n data,\r\n };\r\n }\r\n case getType(cloManagersActions.analyticsInitResponse):\r\n const { users, analytics, numberOfHiddenItems } = action.payload;\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n users,\r\n general: analytics,\r\n isLoading: false,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n case getType(cloManagersActions.analyticsReset):\r\n return {\r\n ...state,\r\n analytics: cloManagersInitialState.analytics,\r\n };\r\n case getType(cloManagersActions.clientsActivityRequest):\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n isLoading: true,\r\n },\r\n },\r\n };\r\n case getType(cloManagersActions.clientsActivityResponse): {\r\n const { data, numberOfHiddenItems } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n data,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(cloManagersActions.profileViewHistoryResponse): {\r\n const { data, numberOfHiddenItems } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n data,\r\n numberOfHiddenItems,\r\n isLoading: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(cloManagersActions.clientsActivityFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n clientsActivity: {\r\n ...state.analytics.clientsActivity,\r\n filter: {\r\n ...state.analytics.clientsActivity.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(cloManagersActions.profileViewHistoryFilterChange): {\r\n const filter = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n filter: {\r\n ...state.analytics.profileHistoryViews.filter,\r\n ...filter,\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(cloManagersActions.profileViewHistoryFilterByBar): {\r\n const { accessType, date } = action.payload;\r\n\r\n return {\r\n ...state,\r\n analytics: {\r\n ...state.analytics,\r\n profileHistoryViews: {\r\n ...state.analytics.profileHistoryViews,\r\n filter: {\r\n ...cloManagersInitialState.analytics.profileHistoryViews.filter,\r\n tabs: [accessType],\r\n dateOption: dateRangeFilterOptions.Custom,\r\n date: {\r\n dateFrom: date,\r\n dateTo: date,\r\n }\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(cloManagersActions.selectedSecurityChange):\r\n return {\r\n ...state,\r\n selectedSecurity: action.payload.security\r\n }\r\n case getType(cloManagersActions.reset):\r\n return cloManagersInitialState;\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { bwicDateFilterOptions, companiesActions as actionTypes, companyColumns, memberColumns } from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { getType } from 'typesafe-actions';\r\nimport { pushUserActions } from '../actions/push.user.actions.js';\r\nimport { userRequestAdminActions } from '../actions/user-request-admin.actions';\r\nimport { userRequestAdminReducer } from './user-request-admin.reducer';\r\nimport { UserRequestStatus } from '../types/management/UserRequestStatus';\r\nimport { manageCompaniesFiltersActions } from '../actions/manage-companies-filter.actions';\r\nimport { manageCompaniesFiltersReducer } from './manage-companies-filter.reducer';\r\nimport { manageMembersFiltersActions } from '../actions/manage-members-filter.actions';\r\nimport { manageMembersFiltersReducer } from '../reducers/manage-members-filter.reducer';\r\n\r\nexport const companyFilterInitialState = {\r\n active: false,\r\n blocked: false,\r\n offPlatform: false,\r\n administrator: false,\r\n brokerDealer: false,\r\n seller: false,\r\n viewer: false,\r\n media: false,\r\n collateralManager: false,\r\n selectedDateOption: bwicDateFilterOptions.unspecified,\r\n customDateRange: { from: null, to: null },\r\n salesRepresentatives: [],\r\n regBy: [],\r\n searchTerm: ''\r\n};\r\n\r\nexport const memberFilterInitialState = {\r\n active: false,\r\n blocked: false,\r\n invited: false,\r\n notInvited: false,\r\n pendingApproval: false,\r\n administrator: false,\r\n arrangersClient: false,\r\n brokerDealerTrader: false,\r\n brokerDealerViewer: false,\r\n dataEntry: false,\r\n sellerAdmin: false,\r\n sellerTrader: false,\r\n sellerViewer: false,\r\n subscriptionManager: false,\r\n viewer: false,\r\n companies: [],\r\n selectedDateOption: bwicDateFilterOptions.unspecified,\r\n customDateRange: { from: null, to: null },\r\n regBy: [],\r\n searchTerm: ''\r\n}\r\n\r\nconst initialState = {\r\n isInitCompleted: false,\r\n initEditUserPageComplete: false,\r\n companies: [],\r\n users: [],\r\n userRequests: [],\r\n companyOrderBy: {\r\n column: companyColumns.legalName,\r\n direction: 'asc'\r\n },\r\n memberOrderBy: {\r\n column: memberColumns.fullName,\r\n direction: 'asc'\r\n },\r\n companyFilter: companyFilterInitialState,\r\n lastAppliedCompanyFilter: companyFilterInitialState,\r\n memberFilter: memberFilterInitialState,\r\n lastAppliedMemberFilter: memberFilterInitialState,\r\n editMember: {\r\n sendInvite: true,\r\n initialUser: {},\r\n },\r\n getEditUserRequestStatus: RequestState.none,\r\n companyStatusChangeConfirmation: null,\r\n approvalConfirmation: null,\r\n rejectionConfirmation: null,\r\n tfaStatusChangeConfirmation: null,\r\n rsStatusChange: {},\r\n rejectionReason: '',\r\n membersOfacRequestStatus: {},\r\n companiesOfacRequestStatus: {},\r\n exportUsersRequestState: RequestState.none,\r\n iRequestingExportCompanies: false,\r\n userLastLoginHistory: {\r\n history: [],\r\n user: null\r\n },\r\n salesRepresentatives: [],\r\n userRequestOperationState: {},\r\n requestStatusGetUserList: false,\r\n requestStateGetPendingUserRequestCount: RequestState.none,\r\n pendingUserRequestCount: 0,\r\n};\r\n\r\nexport const companies = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.INIT_COMPLETED:\r\n return {\r\n ...state,\r\n isInitCompleted: true\r\n };\r\n\r\n case actionTypes.COMPANIES:\r\n return {\r\n ...state,\r\n companies: action.companies\r\n };\r\n case actionTypes.RESET_SUBSCRIPTION:\r\n return {\r\n ...state,\r\n companies: state.companies.map(c => {\r\n if(c.id === action.payload.companyId) {\r\n return {\r\n ...c,\r\n subscription: null,\r\n subscriptionExpiration: null,\r\n }\r\n }\r\n return c\r\n })\r\n }\r\n case actionTypes.USERS:\r\n return {\r\n ...state,\r\n users: action.users\r\n };\r\n case actionTypes.USER_REQUESTS:\r\n return {\r\n ...state,\r\n userRequests: action.userRequests,\r\n pendingUserRequestCount: action.userRequests.filter(u => u.status === UserRequestStatus.Pending).length\r\n };\r\n case actionTypes.RESET:\r\n return {\r\n ...initialState\r\n }\r\n case actionTypes.RESET_EDIT_MEMBER:\r\n return {\r\n ...state,\r\n editMember: { ...initialState.editMember },\r\n initEditUserPageComplete: false\r\n }\r\n case actionTypes.ORDER_BY:\r\n return {\r\n ...state,\r\n companyOrderBy: action.orderBy\r\n };\r\n case actionTypes.COMPANY_REJECT_REASON_SET:\r\n return {\r\n ...state,\r\n rejectionReason: action.value,\r\n };\r\n case actionTypes.COMPANY_APPROVAL_CONFIRMATION_SHOW:\r\n return {\r\n ...state,\r\n approvalConfirmation: action.company,\r\n };\r\n case actionTypes.COMPANY_APPROVAL_CONFIRMATION_HIDE:\r\n return {\r\n ...state,\r\n approvalConfirmation: null,\r\n };\r\n case actionTypes.COMPANY_REJECTION_CONFIRMATION_SHOW:\r\n return {\r\n ...state,\r\n rejectionConfirmation: action.company,\r\n };\r\n case actionTypes.COMPANY_REJECTION_CONFIRMATION_HIDE:\r\n return {\r\n ...state,\r\n rejectionConfirmation: null,\r\n rejectionReason: '',\r\n };\r\n case actionTypes.COMPANY_APPROVE_REQUEST:\r\n return {\r\n ...state,\r\n rsStatusChange: {\r\n ...state.rsStatusChange,\r\n [action.companyId]: RequestState.request,\r\n },\r\n };\r\n case actionTypes.COMPANY_APPROVE_SUCCESS:\r\n return {\r\n ...state,\r\n approvalConfirmation: null,\r\n rejectionConfirmation: null,\r\n rejectionReason: '',\r\n rsStatusChange: {\r\n ...state.rsStatusChange,\r\n [action.companyId]: RequestState.success,\r\n },\r\n };\r\n case actionTypes.COMPANY_APPROVE_FAILURE:\r\n return {\r\n ...state,\r\n rsStatusChange: {\r\n ...state.rsStatusChange,\r\n [action.companyId]: RequestState.failure\r\n },\r\n };\r\n case actionTypes.COMPANY_STATUS_CHANGE_CONFIRMATION:\r\n return {\r\n ...state,\r\n companyStatusChangeConfirmation: action.confirmation\r\n };\r\n case actionTypes.MEMBER_STATUS_CHANGE_CONFIRMATION:\r\n return {\r\n ...state,\r\n memberStatusChangeConfirmation: action.confirmation\r\n };\r\n case actionTypes.TFA_STATUS_CHANGE_CONFIRMATION:\r\n return {\r\n ...state,\r\n tfaStatusChangeConfirmation: action.confirmation\r\n };\r\n case actionTypes.TFA_ENABLED_STATE_CHANGED:\r\n return {\r\n ...state,\r\n users: state.users.map(u => u.id === action.userId ? { ...u, tfaEnabled: !u.tfaEnabled } : u)\r\n };\r\n case actionTypes.COMPANY_FILTER_CHNAGED:\r\n return {\r\n ...state,\r\n companyFilter: {\r\n ...state.companyFilter,\r\n ...action.filter,\r\n },\r\n lastAppliedCompanyFilter: state.companyFilter\r\n };\r\n case actionTypes.COMPANY_FILTER_APPLY:\r\n return {\r\n ...state,\r\n lastAppliedCompanyFilter: state.companyFilter\r\n };\r\n case actionTypes.COMPANY_FILTER_RESET:\r\n return {\r\n ...state,\r\n companyFilter: {\r\n ...initialState.companyFilter,\r\n searchTerm: state.companyFilter.searchTerm\r\n },\r\n lastAppliedCompanyFilter: {\r\n ...initialState.lastAppliedCompanyFilter,\r\n searchTerm: state.lastAppliedCompanyFilter.searchTerm\r\n }\r\n };\r\n case actionTypes.MEMBERS_FILTER_CHNAGED:\r\n return {\r\n ...state,\r\n memberFilter: {\r\n ...state.memberFilter,\r\n ...action.filter,\r\n },\r\n lastAppliedMemberFilter: state.memberFilter\r\n };\r\n case actionTypes.MEMBER_FILTER_APPLY:\r\n return {\r\n ...state,\r\n lastAppliedMemberFilter: state.memberFilter\r\n };\r\n case actionTypes.MEMBER_FILTER_RESET:\r\n return {\r\n ...state,\r\n memberFilter: {\r\n ...initialState.memberFilter,\r\n searchTerm: state.memberFilter.searchTerm\r\n },\r\n lastAppliedMemberFilter: {\r\n ...initialState.lastAppliedMemberFilter,\r\n searchTerm: state.lastAppliedMemberFilter.searchTerm\r\n }\r\n };\r\n case actionTypes.COUNTRIES:\r\n return {\r\n ...state,\r\n countries: action.countries\r\n };\r\n case actionTypes.MEMBERS_ORDER_BY:\r\n return {\r\n ...state,\r\n memberOrderBy: action.orderBy\r\n };\r\n case actionTypes.RESEND_INVITE_CONFIRMATION:\r\n return {\r\n ...state,\r\n memberResendInviteConfirmation: action.confirmation\r\n };\r\n\r\n case actionTypes.RESET_PASSWORD_CONFIRMATION:\r\n return {\r\n ...state,\r\n memberResetPasswordConfirmation: action.confirmation\r\n };\r\n case actionTypes.COMPANY_UPDATE_INIT_STATUS_EDIT_USER:\r\n return {\r\n ...state,\r\n initEditUserPageComplete: true\r\n };\r\n case actionTypes.COMPANY_SET_EDITING_USER:\r\n return {\r\n ...state,\r\n editMember: {\r\n ...state.editMember,\r\n initialUser: { ...action.payload.user }\r\n }\r\n };\r\n case actionTypes.SAVING_USER:\r\n return {\r\n ...state,\r\n editMember: {\r\n ...state.editMember,\r\n savingUserFlag: !!action.savingUserFlag\r\n }\r\n };\r\n case actionTypes.COMPANY_GET_USER_LIST_REQUEST_STATUS:\r\n return {\r\n ...state,\r\n requestStatusGetUserList: action.payload.status\r\n };\r\n case actionTypes.COMPANY_PUSH_DATA_RECEIVED:\r\n return {\r\n ...state,\r\n companies: mergeCompanyUpdates(state.companies, action.payload.company),\r\n };\r\n case actionTypes.COMPANY_MEMBER_SET_OFAC_REQUEST:\r\n return {\r\n ...state,\r\n membersOfacRequestStatus: action.payload.membersOfacRequestStatus\r\n };\r\n case actionTypes.COMPANY_MEMBER_SET_OFAC_SUCCESS:\r\n return {\r\n ...state,\r\n membersOfacRequestStatus: action.payload.membersOfacRequestStatus,\r\n users: action.payload.users\r\n };\r\n case actionTypes.COMPANY_MEMBER_SET_OFAC_FAILURE:\r\n return {\r\n ...state,\r\n membersOfacRequestStatus: action.payload.membersOfacRequestStatus\r\n };\r\n\r\n case actionTypes.COMPANY_SET_OFAC_REQUEST:\r\n return {\r\n ...state,\r\n companiesOfacRequestStatus: action.payload.companiesOfacRequestStatus\r\n };\r\n case actionTypes.COMPANY_SET_OFAC_SUCCESS:\r\n return {\r\n ...state,\r\n companiesOfacRequestStatus: action.payload.companiesOfacRequestStatus,\r\n companies: action.payload.companies\r\n };\r\n case actionTypes.COMPANY_SET_OFAC_FAILURE:\r\n return {\r\n ...state,\r\n companiesOfacRequestStatus: action.payload.companiesOfacRequestStatus\r\n };\r\n\r\n case actionTypes.MANAGE_EXPORT_USERS_REQUEST:\r\n return {\r\n ...state,\r\n exportUsersRequestState: RequestState.request\r\n };\r\n case actionTypes.MANAGE_EXPORT_USERS_SUCCESS:\r\n return {\r\n ...state,\r\n exportUsersRequestState: RequestState.success\r\n };\r\n case actionTypes.MANAGE_EXPORT_USERS_FAILURE:\r\n return {\r\n ...state,\r\n exportUsersRequestState: RequestState.failure\r\n };\r\n case actionTypes.MANAGE_SET_REQUEST_STATE_EXPORT_COMPANIES:\r\n return {\r\n ...state,\r\n iRequestingExportCompanies: action.payload.status\r\n }\r\n case actionTypes.COMPANY_MEMBER_SET_USER_LAST_LOGIN_HISTORY:\r\n return {\r\n ...state,\r\n userLastLoginHistory: { history: action.payload.history, user: action.payload.user }\r\n };\r\n case actionTypes.COMPANY_MEMBER_RESET_USER_LAST_LOGIN_HISTORY:\r\n return {\r\n ...state,\r\n userLastLoginHistory: { ...initialState.userLastLoginHistory }\r\n\r\n };\r\n case getType(pushUserActions.user):\r\n const user = action.payload.user;\r\n return {\r\n ...state,\r\n users: state.users.map(currentUser => currentUser.id === user.id ? user : currentUser)\r\n };\r\n case actionTypes.COMPANY_MEMBER_SUBSCRIPTION_CHANGE:\r\n return {\r\n ...state,\r\n users: state.users.map(u => u.id === action.userId\r\n ? {\r\n ...u,\r\n subscription: action.subscriptionType,\r\n trialPeriodEnd: action.trialPeriodEnd || u.trialPeriodEnd\r\n }\r\n : u\r\n )\r\n };\r\n case actionTypes.COMPANY_SUBSCRIPTION_CHANGE:\r\n return {\r\n ...state,\r\n companies: state.companies.map(c => c.id === action.companyId\r\n ? {\r\n ...c,\r\n subscription: action.subscriptionType,\r\n subscriptionExpiration: action.subscriptionPeriodEnd\r\n }\r\n : c\r\n )\r\n };\r\n case actionTypes.STORE_SALES_REPRESENTATIVES:\r\n return {\r\n ...state,\r\n salesRepresentatives: action.salesRepresentatives\r\n };\r\n case actionTypes.COMPANY_SET_CLEARING_BANK:\r\n return {\r\n ...state,\r\n companies: state.companies.map(c => c.id === action.companyId\r\n ? { ...c, isClearingBank: action.isClearingBank }\r\n : c\r\n )\r\n };\r\n case actionTypes.COMPANY_MEMBER_DELETED:\r\n return {\r\n ...state,\r\n users: state.users.filter(u => u.id !== action.payload.userId)\r\n };\r\n case getType(userRequestAdminActions.setOperationState):\r\n case getType(userRequestAdminActions.userRequestApproved):\r\n case getType(userRequestAdminActions.userRequestBlocked):\r\n case getType(userRequestAdminActions.userRequestUnblocked):\r\n case getType(userRequestAdminActions.userRequestDeleted):\r\n case getType(userRequestAdminActions.setPendingUserRequestCount):\r\n return userRequestAdminReducer(state, action);\r\n case getType(manageCompaniesFiltersActions.setDateFilterChange):\r\n case getType(manageCompaniesFiltersActions.setDateFilterRangeChange):\r\n case getType(manageCompaniesFiltersActions.setFilterRegBy):\r\n case getType(manageCompaniesFiltersActions.setFilterSalesRepresentative):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRegBy):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRoleAdministrator):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRoleBrokerDealer):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRoleSeller):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRoleViewer):\r\n case getType(manageCompaniesFiltersActions.toogleFilterRoleMedia):\r\n case getType(manageCompaniesFiltersActions.toogleFilterSalesRepresentative):\r\n case getType(manageCompaniesFiltersActions.toogleFilterStatusActive):\r\n case getType(manageCompaniesFiltersActions.toogleFilterStatusBlocked):\r\n case getType(manageCompaniesFiltersActions.toogleFilterStatusOffPlatform):\r\n return {\r\n ...state,\r\n companyFilter: manageCompaniesFiltersReducer(state.companyFilter, action)\r\n }\r\n case getType(manageMembersFiltersActions.setDateFilterChange):\r\n case getType(manageMembersFiltersActions.setDateFilterRangeChange):\r\n case getType(manageMembersFiltersActions.setFilterRegBy):\r\n case getType(manageMembersFiltersActions.toogleFilterRegBy):\r\n case getType(manageMembersFiltersActions.setFilterCompanies):\r\n case getType(manageMembersFiltersActions.toogleFilterCompanies):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleAdministrator):\r\n case getType(manageMembersFiltersActions.toggleFilterRoleArrangersClient):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleBrokerDealerTrader):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleBrokerDealerViewer):\r\n case getType(manageMembersFiltersActions.toogleFilterRolesDataEntry):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleSellerAdministrator):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleSellerTrader):\r\n case getType(manageMembersFiltersActions.toogleFilterRolesSubscriptionManager):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleSellerViewer):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleViewer):\r\n case getType(manageMembersFiltersActions.toogleFilterStatusActive):\r\n case getType(manageMembersFiltersActions.toogleFilterStatusBlocked):\r\n case getType(manageMembersFiltersActions.toogleFilterStatusInvited):\r\n case getType(manageMembersFiltersActions.toogleFilterStatusNotInvited):\r\n case getType(manageMembersFiltersActions.toogleFilterStatusPendingApproval):\r\n case getType(manageMembersFiltersActions.toogleFilterCollateralManager):\r\n case getType(manageMembersFiltersActions.toogleFilterRoleMedia):\r\n return {\r\n ...state,\r\n memberFilter: manageMembersFiltersReducer(state.memberFilter, action)\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nfunction mergeCompanyUpdates(initialCompanyList, company) {\r\n let found = false;\r\n const companyList = [...initialCompanyList];\r\n for (let i = 0; i < companyList.length; i++) {\r\n if (companyList[i].id === company.id) {\r\n found = true;\r\n companyList[i] = company;\r\n }\r\n }\r\n if (!found) {\r\n companyList.push(company);\r\n }\r\n return companyList\r\n}\r\n","import { AnyAction } from 'redux';\r\nimport { CompanyDetailsState } from '../types/state/CompanyDetailsState';\r\nimport { companyDetailsActions } from '../actions/company-details.actions';\r\nimport { getType } from 'typesafe-actions';\r\n\r\nconst initialState: CompanyDetailsState = {\r\n isPanelVisible: false,\r\n isBrokerDealer: false,\r\n rowKey: 0,\r\n currentCompanyId: 0,\r\n companies: {},\r\n isRequestingCompany: {},\r\n};\r\n\r\nexport const companyDetails = (state = initialState, action: AnyAction) => {\r\n switch (action.type) {\r\n case getType(companyDetailsActions.show):\r\n return {\r\n ...state,\r\n isPanelVisible: !!action.payload.company,\r\n currentCompanyId: action.payload.company.id,\r\n isBrokerDealer: action.payload.isBrokerDealer,\r\n rowKey: action.payload.rowKey\r\n };\r\n case getType(companyDetailsActions.hide):\r\n return {\r\n ...state,\r\n isPanelVisible: false,\r\n currentCompanyId: 0,\r\n isBrokerDealer: false,\r\n rowKey: 0\r\n };\r\n case getType(companyDetailsActions.fetchCompanyDetailsRequest):\r\n return {\r\n ...state,\r\n isRequestingCompany: {\r\n ...state.isRequestingCompany,\r\n [action.payload.companyId]: true\r\n }\r\n };\r\n case getType(companyDetailsActions.fetchCompanyDetailsResponse):\r\n const isRequestingCompany = { ...state.isRequestingCompany };\r\n delete isRequestingCompany[action.payload.companyId];\r\n return {\r\n ...state,\r\n isRequestingCompany\r\n };\r\n case getType(companyDetailsActions.setCompanyDetails):\r\n return {\r\n ...state,\r\n companies: {\r\n ...state.companies,\r\n [action.payload.companyId]: action.payload.company\r\n }\r\n };\r\n case getType(companyDetailsActions.reset):\r\n return { ...initialState };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { RequestState } from '../constants/request-state';\r\nimport { getType } from 'typesafe-actions';\r\nimport { TCompanyMembersActions, companyMembersActions } from '../actions/company-members.actions';\r\n\r\nexport function companyMembers(state = {}, action: TCompanyMembersActions) {\r\n switch (action.type) {\r\n case getType(companyMembersActions.fetchCompanyMembers.request):\r\n return {\r\n ...state,\r\n [action.payload.companyId]: {\r\n members: [],\r\n requestState: RequestState.request,\r\n error: ''\r\n }\r\n };\r\n case getType(companyMembersActions.fetchCompanyMembers.success):\r\n return {\r\n ...state,\r\n [action.payload.companyId]: {\r\n members: action.payload.members,\r\n RequestState: RequestState.success,\r\n error: ''\r\n }\r\n };\r\n case getType(companyMembersActions.fetchCompanyMembers.failure):\r\n return {\r\n ...state,\r\n [action.payload.companyId]: {\r\n members: [],\r\n requestState: RequestState.failure,\r\n error: action.payload.error\r\n }\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { ContactSalesState } from \"../types/state/ContactSalesState\";\r\nimport { contactSalesActions } from '../actions';\r\n\r\nconst initialState: ContactSalesState = {\r\n popupVisible: false,\r\n isRequestSending: false\r\n}\r\n\r\nexport const contactSales = (state = initialState, action: AnyAction): ContactSalesState => {\r\n switch (action.type) {\r\n case (getType(contactSalesActions.show)):\r\n return {\r\n ...state,\r\n popupVisible: true\r\n };\r\n case (getType(contactSalesActions.hide)):\r\n return {\r\n ...state,\r\n popupVisible: false\r\n };\r\n case (getType(contactSalesActions.requestSendingFlag)):\r\n return {\r\n ...state,\r\n isRequestSending: action.payload.isSending\r\n };\r\n default: return state;\r\n }\r\n}\r\n","import { contactsSaveActions as actionTypes, contactsSaveViews } from '../constants';\r\n\r\nconst initialState = {\r\n view: contactsSaveViews.grid,\r\n isLoading: false,\r\n isEdit: false,\r\n isSaved: false,\r\n companies: [],\r\n conflicts: null,\r\n initialContacts: null,\r\n deletedContacts: [],\r\n companyDomains: [],\r\n companiesLookup: {\r\n companies: [],\r\n searchTerm: ''\r\n }\r\n};\r\n\r\nexport const contactsSave = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.RESET:\r\n return initialState;\r\n case actionTypes.CONTACT_SAVE_LOADING:\r\n return {\r\n ...state,\r\n isLoading: action.isLoading\r\n }\r\n case actionTypes.LOAD_COMPANIES:\r\n return {\r\n ...state,\r\n companies: action.companies\r\n };\r\n case actionTypes.LOAD_COMPANY_DOMAINS:\r\n return {\r\n ...state,\r\n companyDomains: action.companyDomains\r\n };\r\n case actionTypes.INITIAL_CONTACTS:\r\n return {\r\n ...state,\r\n initialContacts: action.contacts\r\n };\r\n case actionTypes.COMPANIES_LOOKUP:\r\n return {\r\n ...state,\r\n companiesLookup: action.lookup\r\n };\r\n case actionTypes.SWITCH_VIEW:\r\n return {\r\n ...state,\r\n view: action.view\r\n };\r\n case actionTypes.EDIT_MODE:\r\n return {\r\n ...state,\r\n isEdit: action.isEdit\r\n };\r\n case actionTypes.STORE_CONFLICTS:\r\n return {\r\n ...state,\r\n conflicts: action.conflicts\r\n };\r\n case actionTypes.RESET_CONFLICTS:\r\n return {\r\n ...state,\r\n conflicts: null,\r\n deletedContacts: state.deletedContacts.filter(id =>\r\n !state.conflicts.some(c =>\r\n c.duplicates.some(d => d.isDeleted && d.id === id)))\r\n };\r\n\r\n case actionTypes.CONTACTS_SAVED:\r\n return {\r\n ...state,\r\n isSaved: true\r\n };\r\n case actionTypes.DELETE_CONTACT:\r\n return {\r\n ...state,\r\n deletedContacts: state.deletedContacts.concat(action.contacts)\r\n };\r\n case actionTypes.DELETE_DUPLICATE_CONTACT:\r\n return {\r\n ...state,\r\n conflicts: state.conflicts.map(c => ({\r\n ...c,\r\n duplicates: c.duplicates.map(d =>\r\n (d.id && action.contact.id && d.id === action.contact.id) ||\r\n (d.contactIndex != null && action.contact.contactIndex != null && d.contactIndex === action.contact.contactIndex)\r\n ? { ...d, isDeleted: true }\r\n : d\r\n )\r\n }))\r\n };\r\n case actionTypes.ENSURE_CONFLICTS_RESOLVED:\r\n return {\r\n ...state,\r\n conflicts: state.conflicts.map(c => ({\r\n ...c,\r\n isResolved: c.duplicates.filter(d => !d.isDeleted).length <= 1\r\n }))\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport moment from 'moment';\r\nimport { RequestState } from '../constants/request-state';\r\nimport {\r\n dashboardInit,\r\n dashboardInitSuccess,\r\n dashboardInitFailure,\r\n dashboardFetchBwics,\r\n dashboardFetchPortfolioExist,\r\n dashboardFetchPortfolioSecurities,\r\n dashboardFetchColorRates,\r\n dashboardFetchDntRates,\r\n dashboardFetchSameDayPeriods,\r\n dashboardFetchTradingStats,\r\n dashboardFetchBidRequestsAsSeller,\r\n dashboardSetFilter,\r\n dashboardSetFilterActive,\r\n dashboardSetNotAppliedFilter,\r\n dashboardResetNotAppliedFilter,\r\n dashboardReset,\r\n dashboardSetSearchTermItem,\r\n dashboardFetchSecurityHistoryRequest,\r\n dashboardFetchSecurityHistorySuccess,\r\n dashboardFetchSecurityHistoryFailure,\r\n dashboardSetRequestStatusExportTradingStats,\r\n dashboardPushUpdateTradingStats,\r\n dashboardPushUpdateMostTradedTickers,\r\n dashboardFetchPriceLevel,\r\n dashboardPushUpdatePriceLevel,\r\n dashboardFetchDtcSellingBuying,\r\n dashboardFetchDtcIgHy,\r\n dashboardFetchAAAPriceLevel,\r\n dashboardFetchMostTradedTickers,\r\n dashboardFetchBiggestMovers,\r\n dashboardFetchPxTalkDeviation,\r\n dashboardFetchBwicPercentOfTrace,\r\n dashboardFetchKWatchNews,\r\n dashboardFetchTopIssuersResult,\r\n dashboardFetchTopArrangersResult,\r\n dashboardFetchTopTrusteesResult,\r\n dashboardFetchTopStaticDealsResult,\r\n dashboardFetchTopDebutDealsResult,\r\n dashboardPushBiggestMovers,\r\n dashboardClearFilter,\r\n dashboardIssueTransactionVolumeResult,\r\n dashboardFetchKIndicator,\r\n dashboardUsBslEsgNewIssueResult,\r\n dashboardUsBslEuCompliantDealsResult,\r\n dashboardGetPortfolioInventorySecuritiesSuccess,\r\n dashboardSetPortfolioInventoryCurrentPage,\r\n dashboardGetPortfolioInventorySecuritiesRequest,\r\n dashboardGetPortfolioInventorySecuritiesFailure,\r\n dashboardPortfolioInventoryReset,\r\n dashboardPortfolioInventorySortParamsChanged,\r\n dashboardShortLongDatedDealsResult,\r\n dashboardIssuanceSpreadResult,\r\n dashboardNewIssueWeeklySpreadsResult,\r\n dashboardSetRequestStatusExportTopIssuers,\r\n dashboardSetRequestStatusExportTopArrangers,\r\n dashboardSetRequestStatusExportTopTrustees,\r\n dashboardSetRequestStatusExportTopStaticDeals,\r\n dashboardSetRequestStatusExportTopDebutDeals,\r\n} from '../actions/dashboard.actions';\r\nimport { BidRequestStatus } from '../types/bid-as-dealer/BidRequestStatus';\r\nimport { numericUtils } from '../utils/numeric.utils';\r\nimport { ratingWithGroupValues } from '../types/dashboard/RatingGroup';\r\nimport { Currencies } from '../types/enums/Currency';\r\nimport { BwicStatus } from '../types/enums/BwicStatus';\r\nimport { ShortOrLongDated } from '../types/amr-pipeline/enums/ShortOrLongDated';\r\n\r\nconst initialFilterState = {\r\n selectedRatings: [],\r\n selectedCurrencies: [],\r\n};\r\n\r\nconst initialState = {\r\n isMounted: false,\r\n bwics: [],\r\n myBwics: [],\r\n portfolioExist: false,\r\n portfolioSecurities: [],\r\n portfolioInventory: {\r\n currentPage: 1,\r\n totalRecordNumber: 0,\r\n requestStateGetSecurities: RequestState.none,\r\n securities: {},\r\n sortField: 'lastUpdateDate',\r\n sortOrder: 'desc',\r\n },\r\n filter: { ...initialFilterState },\r\n notAppliedFilter: { ...initialFilterState },\r\n filterActive: false,\r\n selectedSecurityHistory: [],\r\n searchTermItem: '',\r\n colorRates: [],\r\n dntRates: [],\r\n sameDayPeriods: [],\r\n tradingStats: {\r\n periodName: '',\r\n tradingStatsData: []\r\n },\r\n priceLevel: {\r\n periodName: '',\r\n priceLevelData: []\r\n },\r\n bidAsDealerRequests: [],\r\n dtcSellingBuying: [],\r\n aaaPriceLevel: [],\r\n dtcIgHy: [],\r\n mostTradedTickers: {\r\n mostTradedTickers: [],\r\n name: '',\r\n startDate: new Date(),\r\n endDate: new Date()\r\n },\r\n biggestMovers: {\r\n details: [],\r\n name: '',\r\n startDate: new Date(),\r\n endDate: new Date()\r\n },\r\n pxTalkDeviation: [],\r\n bwicPercentOfTrace: [],\r\n kWatchNews: [],\r\n topIssuers: [],\r\n topArrangers: [],\r\n topTrustees: [],\r\n topStaticDeals: [],\r\n topDebutDeals: [],\r\n issueTransactionVolume: [],\r\n usBslEsgNewIssue: {\r\n esgLanguageDeals: [],\r\n usBslNewIssue: [],\r\n },\r\n usBslEuCompliantDeals: {\r\n usBslEuCompliantDeals: [],\r\n usBslDeals: [],\r\n },\r\n shortLongDatedDeals: [],\r\n issuanceSpread: {\r\n issuanceSpreads: [],\r\n median: 0\r\n },\r\n kIndicator: [],\r\n usBslNewIssueSpreads: [],\r\n requestStateInitDashboard: RequestState.none,\r\n requestStateFetchPortfolioExist: RequestState.none,\r\n requestStateFetchPortfolioSecurities: RequestState.none,\r\n requestStateFetchColorRates: RequestState.none,\r\n requestStateFetchDntRates: RequestState.none,\r\n requestStateFetchSameDayPeriods: RequestState.none,\r\n requestStateFetchTradingStats: RequestState.none,\r\n requestStateFetchSecurityHistory: RequestState.none,\r\n requestStateFetchPriceLevel: RequestState.none,\r\n requestStateFetchPxTalkDeviation: RequestState.none,\r\n requestStateFetchBwicPercentOfTrace: RequestState.none,\r\n requestStateFetchKWatchNews: RequestState.none,\r\n requestStateFetchAAAPriceLevel: RequestState.none,\r\n requestStateBidAsDealerRequests: RequestState.none,\r\n requestStateDtcSellingBuying: RequestState.none,\r\n requestStateMostTradedTickers: RequestState.none,\r\n requestStateFetchBiggestMovers: RequestState.none,\r\n requestStateExportTradingStats: false,\r\n requestStateDtcInvestmentGrade: RequestState.none,\r\n requestStateFetchTopIssuers: RequestState.none,\r\n requestStateFetchTopArrangers: RequestState.none,\r\n requestStateFetchTopTrustees: RequestState.none,\r\n requestStateFetchTopStaticDeals: RequestState.none,\r\n requestStateFetchTopDebutDeals: RequestState.none,\r\n requestStateFetchKIndicator: RequestState.none,\r\n requestStateIssueTransactionVolume: RequestState.none,\r\n requestStateUsBslEsgNewIssue: RequestState.none,\r\n requestStateUsBslEuCompliantDeals: RequestState.none,\r\n requestStateShortLongDatedDeals: RequestState.none,\r\n requestStateIssuanceSpread: RequestState.none,\r\n requestStateUsBslNewIssueSpreads: RequestState.none,\r\n requestStateExportTopIssuers: RequestState.none,\r\n requestStateExportTopArrangers: RequestState.none,\r\n requestStateExportTopTrustees: RequestState.none,\r\n requestStateExportStaticDeals: RequestState.none,\r\n requestStateExportDebutManagers: RequestState.none,\r\n requestStateFetchBwics: RequestState.none\r\n};\r\n\r\nfunction getSortedTopCompanyData(data) {\r\n if(!data) {\r\n return null;\r\n }\r\n return data.sort(\r\n (a, b) =>\r\n b.numberOfTransactions - a.numberOfTransactions || a.company.legalName.localeCompare(b.company.legalName)\r\n )\r\n}\r\n\r\nexport function dashboardReducer(state = initialState, action) {\r\n switch (action.type) {\r\n case getType(dashboardInit):\r\n return {\r\n ...state,\r\n requestStateInitDashboard: RequestState.request,\r\n isMounted: true,\r\n };\r\n case getType(dashboardInitSuccess):\r\n return {\r\n ...state,\r\n requestStateInitDashboard: RequestState.success,\r\n };\r\n case getType(dashboardInitFailure):\r\n return {\r\n ...state,\r\n requestStateInitDashboard: RequestState.failure\r\n };\r\n case getType(dashboardGetPortfolioInventorySecuritiesRequest):\r\n return {\r\n ...state,\r\n portfolioInventory: {\r\n ...state.portfolioInventory,\r\n requestStateGetSecurities: RequestState.request\r\n }\r\n }\r\n case getType(dashboardGetPortfolioInventorySecuritiesSuccess):\r\n return {\r\n ...state,\r\n portfolioInventory: {\r\n ...state.portfolioInventory,\r\n totalRecordNumber: action.payload.totalRecordNumber,\r\n requestStateGetSecurities: RequestState.success,\r\n securities: {\r\n ...state.portfolioInventory.securities,\r\n [action.payload.pageNumber]: action.payload.securities\r\n }\r\n },\r\n }\r\n case getType(dashboardGetPortfolioInventorySecuritiesFailure):\r\n return {\r\n ...state,\r\n portfolioInventory: {\r\n ...state.portfolioInventory,\r\n requestStateGetSecurities: RequestState.failure\r\n }\r\n }\r\n case getType(dashboardSetPortfolioInventoryCurrentPage):\r\n return {\r\n ...state,\r\n portfolioInventory: {\r\n ...state.portfolioInventory,\r\n currentPage: action.payload.currentPage\r\n }\r\n }\r\n case getType(dashboardPortfolioInventorySortParamsChanged):\r\n return {\r\n ...state,\r\n portfolioInventory: {\r\n ...state.portfolioInventory,\r\n sortField: action.payload.sortField,\r\n sortOrder: action.payload.sortOrder,\r\n securities: {},\r\n }\r\n }\r\n case getType(dashboardPortfolioInventoryReset):\r\n return {\r\n ...state,\r\n portfolioInventory: { ...initialState.portfolioInventory }\r\n }\r\n case getType(dashboardFetchBwics): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n bwics: data ? filterCanceledBwics(data) : state.bwics,\r\n myBwics: data ? getMyBwics(data) : state.bwics,\r\n requestStateFetchBwics: requestState\r\n };\r\n }\r\n case getType(dashboardFetchPortfolioExist):\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchPortfolioExist: requestState,\r\n portfolioExist: data || false,\r\n };\r\n case getType(dashboardFetchPortfolioSecurities): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchPortfolioSecurities: requestState,\r\n portfolioSecurities: data ? filterCanceledPortfolioSecurities(data) : state.portfolioSecurities\r\n };\r\n }\r\n case getType(dashboardFetchColorRates): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchColorRates: requestState,\r\n colorRates: data || state.colorRates\r\n };\r\n }\r\n case getType(dashboardFetchDntRates): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchDntRates: requestState,\r\n dntRates: data || state.dntRates\r\n };\r\n }\r\n case getType(dashboardFetchSameDayPeriods): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchSameDayPeriods: requestState,\r\n sameDayPeriods: data || state.sameDayPeriods\r\n };\r\n }\r\n case getType(dashboardFetchTradingStats): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchTradingStats: requestState,\r\n tradingStats: data || state.tradingStats\r\n };\r\n }\r\n case getType(dashboardFetchPriceLevel): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchPriceLevel: requestState,\r\n priceLevel: data || state.priceLevel\r\n };\r\n }\r\n case getType(dashboardFetchBidRequestsAsSeller): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n bidAsDealerRequests: processingBidAsDealerRequests(state.bidAsDealerRequests, data?.result || []),\r\n requestStateBidAsDealerRequests: requestState,\r\n };\r\n }\r\n case getType(dashboardFetchDtcSellingBuying): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n dtcSellingBuying: data || state.dtcSellingBuying,\r\n requestStateDtcSellingBuying: requestState\r\n };\r\n }\r\n\r\n case getType(dashboardFetchAAAPriceLevel): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n aaaPriceLevel: data || state.aaaPriceLevel,\r\n requestStateFetchAAAPriceLevel: requestState\r\n }\r\n }\r\n case getType(dashboardFetchMostTradedTickers): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n mostTradedTickers: data || state.mostTradedTickers,\r\n requestStateMostTradedTickers: requestState,\r\n };\r\n }\r\n case getType(dashboardFetchBiggestMovers): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n biggestMovers: data ? biggestMoversCalculations(data) : state.biggestMovers,\r\n requestStateFetchBiggestMovers: requestState,\r\n };\r\n }\r\n case getType(dashboardFetchKIndicator): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n kIndicator: data || state.kIndicator,\r\n requestStateFetchKIndicator: requestState\r\n }\r\n }\r\n case getType(dashboardPushBiggestMovers):\r\n return {\r\n ...state,\r\n biggestMovers: biggestMoversCalculations(action.payload.biggestMovers)\r\n };\r\n case getType(dashboardFetchDtcIgHy): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n dtcIgHy: data || state.dtcIgHy,\r\n requestStateDtcInvestmentGrade: requestState\r\n };\r\n }\r\n case getType(dashboardFetchPxTalkDeviation): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchPxTalkDeviation: requestState,\r\n pxTalkDeviation: data || state.pxTalkDeviation\r\n };\r\n }\r\n case getType(dashboardFetchBwicPercentOfTrace): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchBwicPercentOfTrace: requestState,\r\n bwicPercentOfTrace: data || state.bwicPercentOfTrace\r\n };\r\n }\r\n case getType(dashboardFetchKWatchNews): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchKWatchNews: requestState,\r\n kWatchNews: data || state.kWatchNews\r\n };\r\n }\r\n case getType(dashboardFetchTopIssuersResult): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchTopIssuers: requestState,\r\n topIssuers: getSortedTopCompanyData(data) || state.topIssuers,\r\n };\r\n }\r\n case getType(dashboardSetRequestStatusExportTopIssuers): {\r\n return {\r\n ...state,\r\n requestStateExportTopIssuers: action.payload.requestState,\r\n }\r\n }\r\n case getType(dashboardFetchTopArrangersResult): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchTopArrangers: requestState,\r\n topArrangers: getSortedTopCompanyData(data) || state.topArrangers,\r\n };\r\n }\r\n case getType(dashboardSetRequestStatusExportTopArrangers): {\r\n return {\r\n ...state,\r\n requestStateExportTopArrangers: action.payload.requestState,\r\n }\r\n }\r\n case getType(dashboardFetchTopTrusteesResult): {\r\n const { data, requestState } = action.payload;\r\n return {\r\n ...state,\r\n requestStateFetchTopTrustees: requestState,\r\n topTrustees: getSortedTopCompanyData(data) || state.topTrustees,\r\n };\r\n }\r\n case getType(dashboardSetRequestStatusExportTopTrustees): {\r\n return {\r\n ...state,\r\n requestStateExportTopTrustees: action.payload.requestState,\r\n }\r\n }\r\n case getType(dashboardFetchTopStaticDealsResult): {\r\n const { data, requestState } = action.payload;\r\n const topStaticDeals = data\r\n ? data.sort((a, b) => a.dealLegalName.localeCompare(b.dealLegalName))\r\n : state.topStaticDeals;\r\n\r\n return {\r\n ...state,\r\n requestStateFetchTopStaticDeals: requestState,\r\n topStaticDeals\r\n };\r\n }\r\n case getType(dashboardSetRequestStatusExportTopStaticDeals): {\r\n return {\r\n ...state,\r\n requestStateExportStaticDeals: action.payload.requestState,\r\n }\r\n }\r\n case getType(dashboardFetchTopDebutDealsResult): {\r\n const { data, requestState } = action.payload;\r\n const topDebutDeals = data\r\n ? data.sort((a, b) => a.dealLegalName.localeCompare(b.dealLegalName))\r\n : state.topDebutDeals;\r\n\r\n return {\r\n ...state,\r\n requestStateFetchTopDebutDeals: requestState,\r\n topDebutDeals,\r\n };\r\n }\r\n case getType(dashboardSetRequestStatusExportTopDebutDeals): {\r\n return {\r\n ...state,\r\n requestStateExportDebutManagers: action.payload.requestState,\r\n }\r\n }\r\n case getType(dashboardPushUpdatePriceLevel): {\r\n return {\r\n ...state,\r\n priceLevel: action.payload.priceLevel\r\n };\r\n }\r\n case getType(dashboardPushUpdateMostTradedTickers): {\r\n return {\r\n ...state,\r\n mostTradedTickers: action.payload.mostTradedTickers\r\n };\r\n }\r\n case getType(dashboardPushUpdateTradingStats):\r\n return {\r\n ...state,\r\n tradingStats: action.payload.tradingStats\r\n };\r\n case getType(dashboardSetFilter):\r\n return {\r\n ...state,\r\n filter: {\r\n ...action.payload.filter,\r\n selectedRatings: action.payload.filter.selectedRatings\r\n .sort((a, b) => (ratingWithGroupValues.indexOf(a) - ratingWithGroupValues.indexOf(b))),\r\n selectedCurrencies: action.payload.filter.selectedCurrencies\r\n .sort((a, b) => Currencies.indexOf(a) - Currencies.indexOf(b))\r\n },\r\n filterActive: false\r\n };\r\n case getType(dashboardSetNotAppliedFilter):\r\n return {\r\n ...state,\r\n notAppliedFilter: action.payload.filter\r\n };\r\n case getType(dashboardResetNotAppliedFilter):\r\n return {\r\n ...state,\r\n notAppliedFilter: { ...state.filter },\r\n filterActive: false\r\n }\r\n case getType(dashboardClearFilter):\r\n return {\r\n ...state,\r\n filter: {...initialFilterState},\r\n notAppliedFilter: {...initialFilterState},\r\n filterActive: false\r\n };\r\n case getType(dashboardSetFilterActive):\r\n return {\r\n ...state,\r\n filterActive: action.payload.active\r\n };\r\n case getType(dashboardSetSearchTermItem):\r\n return {\r\n ...state,\r\n searchTermItem: action.payload.text\r\n };\r\n case getType(dashboardFetchSecurityHistoryRequest):\r\n return {\r\n ...state,\r\n requestStateFetchSecurityHistory: RequestState.request\r\n };\r\n case getType(dashboardFetchSecurityHistorySuccess):\r\n return {\r\n ...state,\r\n selectedSecurityHistory: action.payload.securityHistory,\r\n requestStateFetchSecurityHistory: RequestState.success\r\n };\r\n case getType(dashboardFetchSecurityHistoryFailure):\r\n return {\r\n ...state,\r\n requestStateFetchSecurityHistory: RequestState.failure\r\n };\r\n case getType(dashboardSetRequestStatusExportTradingStats):\r\n return {\r\n ...state,\r\n requestStateExportTradingStats: action.payload.status\r\n };\r\n case getType(dashboardIssueTransactionVolumeResult): {\r\n const { data, requestState } = action.payload;\r\n\r\n return {\r\n ...state,\r\n issueTransactionVolume: data,\r\n requestStateIssueTransactionVolume: requestState\r\n };\r\n }\r\n case getType(dashboardUsBslEsgNewIssueResult): {\r\n const { requestState, esgLanguageDeals, usBslNewIssue } = action.payload;\r\n\r\n return {\r\n ...state,\r\n usBslEsgNewIssue: {\r\n ...state.usBslEsgNewIssue,\r\n esgLanguageDeals: esgLanguageDeals\r\n ? esgLanguageDeals.sort(compareVolumeCountRows)\r\n : esgLanguageDeals,\r\n usBslNewIssue: usBslNewIssue\r\n ? usBslNewIssue.sort(compareVolumeCountRows)\r\n : usBslNewIssue,\r\n },\r\n requestStateUsBslEsgNewIssue: requestState\r\n };\r\n }\r\n case getType(dashboardUsBslEuCompliantDealsResult): {\r\n const { requestState, usBslEuCompliantDeals, usBslDeals } = action.payload;\r\n\r\n return {\r\n ...state,\r\n usBslEuCompliantDeals: {\r\n ...state.usBslEuCompliantDeals,\r\n usBslEuCompliantDeals,\r\n usBslDeals,\r\n },\r\n requestStateUsBslEuCompliantDeals: requestState\r\n };\r\n }\r\n case getType(dashboardShortLongDatedDealsResult): {\r\n const { requestState, data } = action.payload;\r\n\r\n if (!data) {\r\n return {\r\n ...state,\r\n requestStateShortLongDatedDeals: requestState,\r\n };\r\n }\r\n\r\n const shortLongDatedDeals = data.filter(({ shortOrLong }) => shortOrLong !== ShortOrLongDated.None);\r\n\r\n return {\r\n ...state,\r\n shortLongDatedDeals,\r\n requestStateShortLongDatedDeals: requestState\r\n };\r\n }\r\n case getType(dashboardIssuanceSpreadResult): {\r\n const { requestState, data } = action.payload;\r\n\r\n if (!data) {\r\n return {\r\n ...state,\r\n requestStateIssuanceSpread: requestState,\r\n };\r\n }\r\n\r\n return {\r\n ...state,\r\n issuanceSpread: data,\r\n requestStateIssuanceSpread: requestState\r\n };\r\n }\r\n case getType(dashboardNewIssueWeeklySpreadsResult): {\r\n const { requestState, data } = action.payload;\r\n\r\n if (!data) {\r\n return {\r\n ...state,\r\n requestStateUsBslNewIssueSpreads: requestState,\r\n };\r\n }\r\n\r\n return {\r\n ...state,\r\n usBslNewIssueSpreads: data,\r\n requestStateUsBslNewIssueSpreads: RequestState.success,\r\n };\r\n }\r\n case getType(dashboardReset):\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nfunction filterCanceledBwics(bwics) {\r\n return bwics.filter((b) =>\r\n b.status === BwicStatus.scheduled\r\n || b.status === BwicStatus.bidding\r\n || b.status === BwicStatus.finished);\r\n}\r\n\r\nfunction getMyBwics(bwics) {\r\n return bwics.filter((b) => b.isMy || b.isParticipant);\r\n}\r\n\r\nfunction filterCanceledPortfolioSecurities(portfolios) {\r\n return portfolios.filter((s) => s.status !== BwicStatus.cancelled);\r\n}\r\n\r\nfunction processingBidAsDealerRequests(stateBidAsDealerRequests, newBidAsDealerRequests) {\r\n const filtered = newBidAsDealerRequests.filter(r => r.bidAsDealerRequest?.status !== BidRequestStatus.canceled) || stateBidAsDealerRequests;\r\n return filtered.map(r => ({ ...r, isinCusip: r.position.isinCusip, ticker: r.position.ticker }));\r\n}\r\n\r\nfunction biggestMoversCalculations(biggestMovers) {\r\n return {\r\n ...biggestMovers,\r\n details: biggestMovers.details.map(data => {\r\n const absDifference = Math.abs(data.difference);\r\n const daysBetweenTrade = (data.lastDate && data.prevDate)\r\n ? moment(data.lastDate).diff(moment(data.prevDate), 'days')\r\n : 0;\r\n return {\r\n ...data,\r\n absDifference,\r\n daysBetweenTrade,\r\n priceVelocity: numericUtils.divideSafe(data.difference, daysBetweenTrade) || 0\r\n };\r\n })\r\n };\r\n}\r\n\r\nfunction compareVolumeCountRows(rowA, rowB) {\r\n const rowADate = moment([rowA.year, rowA.month - 1]);\r\n const rowBDate = moment([rowB.year, rowB.month - 1]);\r\n\r\n return rowADate.unix() - rowBDate.unix();\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { ActionType } from '../types/ActionType';\r\nimport { DealerListFilter } from '../types/state/DealerListState';\r\nimport { DealerFilterOptions } from '../components/dealer-list/DealerFilterOptions';\r\nimport { dealersActions } from '../actions';\r\nimport { newBwicDealersActions } from '../actions/new-bwic-dealers.actions';\r\n\r\nexport const initialDealerListFilter: DealerListFilter = {\r\n filterOptions: [\r\n { value: DealerFilterOptions.Favorite, text: 'Favorite', selected: false },\r\n { value: DealerFilterOptions.OffPlatform, text: 'Off-platform', selected: false },\r\n { value: DealerFilterOptions.Platform, text: 'Platform', selected: false },\r\n ],\r\n searchTerm: ''\r\n};\r\n\r\nexport const dealerListFilterReducer = (state: DealerListFilter, action: ActionType): DealerListFilter => {\r\n switch (action.type) {\r\n case getType(newBwicDealersActions.updateFilterOptions):\r\n case getType(dealersActions.updateFilterOptions):\r\n return {\r\n ...state,\r\n filterOptions: state.filterOptions.map(option => {\r\n if (action.payload.filterOption.value === option.value) {\r\n return {\r\n ...option,\r\n selected: !option.selected\r\n }\r\n }\r\n return option;\r\n })\r\n };\r\n case getType(newBwicDealersActions.setSearchTerm):\r\n case getType(dealersActions.setSearchTerm):\r\n return {\r\n ...state,\r\n searchTerm: action.payload.searchTerm\r\n };\r\n case getType(newBwicDealersActions.clearFilterOptions):\r\n case getType(dealersActions.clearFilterOptions):\r\n return {\r\n ...state,\r\n filterOptions: [...initialDealerListFilter.filterOptions]\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { getType, ActionType } from \"typesafe-actions\";\r\nimport { dealerListPanelActions } from \"../actions/dealer-list-panel.actions\";\r\nimport { BidderCompanySlim } from \"../types/company/BidderCompanySlim\";\r\nimport { CompanyHiddenState, DealerListPanelState, DisabledCompaniesState } from \"../types/state/DealerListPanelState\";\r\nimport { apiUtils } from \"../utils\";\r\n\r\nconst initialState: DealerListPanelState = {\r\n panelVisible: false,\r\n companyHiddenState: {},\r\n isDefaultVisibilityApplied: false,\r\n allFavoriteCompaniesVisible: false,\r\n allPlatformCompaniesVisible: true,\r\n allOffPlatformCompaniesVisible: false,\r\n allSettlmentsClientsVisible: false,\r\n bidOnlyFlag: false,\r\n isStage2ParticipantsOnly: false,\r\n disabledCompanies: {},\r\n lastSelectedCompanyIdentifier: '',\r\n};\r\n\r\ntype TAction = ActionType;\r\n\r\nexport const dealerListPanel = (state = initialState, action: TAction): DealerListPanelState => {\r\n switch (action.type) {\r\n case getType(dealerListPanelActions.show):\r\n return {\r\n ...state,\r\n panelVisible: true\r\n };\r\n case getType(dealerListPanelActions.hide):\r\n return {\r\n ...state,\r\n panelVisible: false\r\n };\r\n case getType(dealerListPanelActions.toggleCompanyVisible):\r\n return {\r\n ...state,\r\n companyHiddenState: {\r\n ...state.companyHiddenState,\r\n [action.payload.identifier]: !state.companyHiddenState[action.payload.identifier]\r\n },\r\n lastSelectedCompanyIdentifier:\r\n !action.payload.setLastSelectedCompanyIdentifier ||\r\n !state.companyHiddenState[action.payload.identifier] ||\r\n state.lastSelectedCompanyIdentifier === action.payload.identifier\r\n ? ''\r\n : action.payload.identifier\r\n };\r\n case getType(dealerListPanelActions.toggleAllFavoriteCompaniesVisible): {\r\n const visible = !state.allFavoriteCompaniesVisible;\r\n return {\r\n ...state,\r\n allFavoriteCompaniesVisible: visible,\r\n companyHiddenState: setCompaniesHiddenState(!visible, state.companyHiddenState, action.payload.companies, state.disabledCompanies),\r\n lastSelectedCompanyIdentifier: ''\r\n }\r\n }\r\n case getType(dealerListPanelActions.toggleAllPlatformVisible): {\r\n const visible = action.payload.visible ?? !state.allPlatformCompaniesVisible;\r\n\r\n return {\r\n ...state,\r\n allPlatformCompaniesVisible: visible,\r\n companyHiddenState: setCompaniesHiddenState(!visible, state.companyHiddenState, action.payload.companies, state.disabledCompanies),\r\n lastSelectedCompanyIdentifier: '',\r\n };\r\n }\r\n case getType(dealerListPanelActions.toggleAllSettlmentsClientsVisible): {\r\n const visible = action.payload.visible ?? !state.allSettlmentsClientsVisible;\r\n\r\n return {\r\n ...state,\r\n allSettlmentsClientsVisible: visible,\r\n companyHiddenState: setCompaniesHiddenState(!visible, state.companyHiddenState, action.payload.companies, state.disabledCompanies),\r\n lastSelectedCompanyIdentifier: '',\r\n };\r\n }\r\n case getType(dealerListPanelActions.toggleAllOffPlatformVisible): {\r\n const visible = action.payload.visible ?? !state.allOffPlatformCompaniesVisible;\r\n\r\n return {\r\n ...state,\r\n allOffPlatformCompaniesVisible: visible,\r\n companyHiddenState: setCompaniesHiddenState(!visible, state.companyHiddenState, action.payload.companies, state.disabledCompanies),\r\n lastSelectedCompanyIdentifier: '',\r\n };\r\n }\r\n case getType(dealerListPanelActions.toggleAllFavoriteVisibleFlagOnly):\r\n return { ...state, allFavoriteCompaniesVisible: !state.allFavoriteCompaniesVisible };\r\n case getType(dealerListPanelActions.toggleAllPlatformVisibleFlagOnly):\r\n return { ...state, allPlatformCompaniesVisible: !state.allPlatformCompaniesVisible };\r\n case getType(dealerListPanelActions.toggleAllSettlmentsClientsFlagOnly):\r\n return { ...state, allSettlmentsClientsVisible: !state.allSettlmentsClientsVisible };\r\n case getType(dealerListPanelActions.toggleAllOffPlatformVisibleFlagOnly):\r\n return { ...state, allOffPlatformCompaniesVisible: !state.allOffPlatformCompaniesVisible };\r\n case getType(dealerListPanelActions.setDisabledCompanies): {\r\n const disabledCompanies = apiUtils.normalize(action.payload.disabledCompanies, c => c.identifier, () => true);\r\n return { ...state, disabledCompanies }\r\n }\r\n case getType(dealerListPanelActions.setDefaultVisibility): {\r\n return {\r\n ...state,\r\n companyHiddenState: setCompaniesHiddenState(\r\n true,\r\n {},\r\n action.payload.companiesToHide,\r\n state.disabledCompanies),\r\n isDefaultVisibilityApplied: true,\r\n };\r\n }\r\n case getType(dealerListPanelActions.reset):\r\n return { ...initialState };\r\n case getType(dealerListPanelActions.setBidOnlyFlag):\r\n return {\r\n ...state,\r\n bidOnlyFlag: action.payload.bidOnlyFlag\r\n }\r\n case getType(dealerListPanelActions.stage2ParticipantsFlagChange):\r\n return {\r\n ...state,\r\n isStage2ParticipantsOnly: action.payload.isStage2participantsOnly\r\n }\r\n default: return state;\r\n }\r\n}\r\n\r\n\r\nfunction setCompaniesHiddenState(\r\n hidden: boolean,\r\n state: CompanyHiddenState,\r\n identifiers: BidderCompanySlim[],\r\n disabledCompanies: DisabledCompaniesState) {\r\n const stateCopy = { ...state };\r\n identifiers.forEach(c => stateCopy[c.identifier] = hidden);\r\n return { ...stateCopy, ...disabledCompanies };\r\n}\r\n","import { ActionType } from '../types/ActionType';\r\nimport { dealerListActions } from '../actions/dealer-list.actions';\r\nimport { getType } from 'typesafe-actions';\r\nimport { DealerListState } from '../types/state/DealerListState';\r\n\r\nconst initialStateDealerList: DealerListState = {\r\n expandedDealers: {},\r\n editableContact: {\r\n contact: null,\r\n dealerName: '',\r\n updateRequestStatus: false,\r\n },\r\n inviteToJoinRequestStatus: {},\r\n expandedAll: true,\r\n};\r\n\r\nexport const dealerList = (state = initialStateDealerList, action: ActionType) => {\r\n switch (action.type) {\r\n //Control actions\r\n case getType(dealerListActions.setDealerExpanded):\r\n return {\r\n ...state,\r\n expandedDealers: {\r\n ...state.expandedDealers,\r\n [action.payload.dealerId]: !(state.expandedDealers[action.payload.dealerId] ?? true)\r\n }\r\n };\r\n case getType(dealerListActions.expandDealers):\r\n return {\r\n ...state,\r\n expandedDealers: action.payload.dealers,\r\n expandedAll: action.payload.expandedAll,\r\n };\r\n case getType(dealerListActions.toggleExpandedAllDealers):\r\n return {\r\n ...state,\r\n expandedAll: !state.expandedAll\r\n };\r\n case getType(dealerListActions.setExpandAllDealers):\r\n return {\r\n ...state,\r\n expandedAll: state.expandedAll\r\n }\r\n case getType(dealerListActions.reset):\r\n return { ...initialStateDealerList };\r\n //Edit contact\r\n case getType(dealerListActions.setEditableContact):\r\n return {\r\n ...state,\r\n editableContact: {\r\n contact: action.payload.contact,\r\n dealerName: action.payload.dealerName\r\n }\r\n };\r\n case getType(dealerListActions.editableContactUpdateDealer):\r\n return {\r\n ...state,\r\n editableContact: {\r\n ...state.editableContact,\r\n dealerName: action.payload.dealerName\r\n }\r\n };\r\n case getType(dealerListActions.editableContactSetRequestStatus):\r\n return {\r\n ...state,\r\n editableContact: {\r\n ...state.editableContact,\r\n updateRequestStatus: action.payload.requestStatus\r\n }\r\n };\r\n //Invite to join\r\n case getType(dealerListActions.contactInviteToJoinSetRequestStatus):\r\n const requestStatus = { ...state.inviteToJoinRequestStatus };\r\n if (requestStatus[action.payload.contactId] && !action.payload.requestStatus) {\r\n delete requestStatus[action.payload.contactId]\r\n } else {\r\n requestStatus[action.payload.contactId] = true;\r\n }\r\n return {\r\n ...state,\r\n inviteToJoinRequestStatus: requestStatus\r\n };\r\n case getType(dealerListActions.resetEditableContact):\r\n return {\r\n ...state,\r\n editableContact: { ...initialStateDealerList.editableContact }\r\n };\r\n default:\r\n return state\r\n }\r\n};\r\n","import { dealersStatsActions as actionTypes } from '../constants/actionTypes/dealers-stats.actions';\r\nimport { AnyAction } from \"redux\";\r\nimport { DealersStatsState } from \"../types/state/DealersStatsState\";\r\n\r\nconst initialState = {\r\n statsExist: false,\r\n fetchStatsRequestStatus: false,\r\n fetchStatsExistRequestState: false,\r\n exportStatsRequestStatus: false,\r\n stats: []\r\n};\r\n\r\nexport function dealersStats(state = initialState, action: AnyAction): DealersStatsState {\r\n switch (action.type) {\r\n case actionTypes.RESET_STATS:\r\n return initialState;\r\n case actionTypes.STORE_STATS_EXIST_STATUS:\r\n return {\r\n ...state,\r\n statsExist: action.payload.existStatus\r\n };\r\n case actionTypes.FETCH_STATS_REQUEST_STATUS:\r\n return {\r\n ...state,\r\n fetchStatsRequestStatus: action.payload.status\r\n };\r\n case actionTypes.STORE_STATS:\r\n return {\r\n ...state,\r\n stats: action.payload.stats,\r\n };\r\n case actionTypes.EXPORT_STATS_REQUEST_STATUS:\r\n return {\r\n ...state,\r\n exportStatsRequestStatus: action.payload.status,\r\n };\r\n case actionTypes.FETCH_STATS_EXIST_REQUEST_STATUS:\r\n return {\r\n ...state,\r\n fetchStatsExistRequestState: action.payload.status,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n","import { getType } from 'typesafe-actions';\r\nimport { dealersActions as actionTypes } from '../constants';\r\nimport { dealersActions } from '../actions';\r\nimport { ActionType } from '../types/ActionType';\r\nimport { DealersState } from '../types/state/DealersState';\r\nimport { dealerListFilterReducer, initialDealerListFilter } from './dealer-list-filter.reducer';\r\n\r\nconst initialState: DealersState = {\r\n requestToBidRequestState: false,\r\n filter: { ...initialDealerListFilter },\r\n confirmRequestToBidPopup: {\r\n visible: false,\r\n dealerId: 0\r\n }\r\n};\r\n\r\nexport const dealers = (state = initialState, action: ActionType): DealersState => {\r\n switch (action.type) {\r\n case actionTypes.DEALERS_SHOW_CONFIRM_BID_REQUEST_POPUP:\r\n return {\r\n ...state,\r\n confirmRequestToBidPopup: {\r\n visible: true,\r\n dealerId: action.payload.dealerId || 0\r\n }\r\n };\r\n case actionTypes.DEALERS_HIDE_CONFIRM_BID_REQUEST_POPUP:\r\n return {\r\n ...state,\r\n confirmRequestToBidPopup: { ...initialState.confirmRequestToBidPopup }\r\n };\r\n case actionTypes.DEALERS_REQUEST_TO_BID_SET_REQUEST_STATUS:\r\n return { ...state, requestToBidRequestState: action.payload.status };\r\n\r\n case actionTypes.DEALERS_RESET_STATE:\r\n return { ...initialState };\r\n case getType(dealersActions.setSearchTerm):\r\n case getType(dealersActions.updateFilterOptions):\r\n case getType(dealersActions.clearFilterOptions):\r\n return {\r\n ...state,\r\n filter: dealerListFilterReducer(state.filter, action)\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { getType } from 'typesafe-actions';\r\nimport { TDealsActions, dealsActions } from '../actions/deals.actions';\r\nimport { DealsState } from '../types/state/DealsState';\r\nimport { isNil, omit } from 'lodash';\r\n\r\nconst initialState: DealsState = {\r\n isLoading: false,\r\n isDetailsLoading: false,\r\n isUpdating: false,\r\n data: undefined,\r\n isSecondaryInfoLoading: false,\r\n selectedReferenceName: undefined,\r\n selectedDeal: undefined,\r\n editDeal: undefined,\r\n allClasses: {\r\n cachedInactiveClasses: {},\r\n },\r\n classSecurity: undefined,\r\n classSecurityStats: { count: 0, securities: [] },\r\n openFigiErrorTickers: [],\r\n};\r\n\r\nexport function deals(state = initialState, action: TDealsActions): DealsState {\r\n switch (action.type) {\r\n case getType(dealsActions.getDeals):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(dealsActions.getDealsResult):\r\n return {\r\n ...state,\r\n isLoading: false,\r\n data: action.payload.deals,\r\n };\r\n case getType(dealsActions.getDealDetails):\r\n return {\r\n ...state,\r\n isDetailsLoading: true,\r\n selectedReferenceName: action.payload.referenceName,\r\n };\r\n case getType(dealsActions.getDealDetailsResult):\r\n return {\r\n ...state,\r\n isDetailsLoading: false,\r\n selectedDeal: action.payload.dealDetails,\r\n };\r\n case getType(dealsActions.editDeal):\r\n return {\r\n ...state,\r\n editDeal: state.selectedDeal ? { ...state.selectedDeal } : undefined,\r\n };\r\n case getType(dealsActions.editDealReset):\r\n return {\r\n ...state,\r\n editDeal: undefined,\r\n };\r\n case getType(dealsActions.updateDeal):\r\n case getType(dealsActions.updateDealDocuments):\r\n case getType(dealsActions.deleteDealRequest):\r\n case getType(dealsActions.amrInfoSave):\r\n case getType(dealsActions.allClassesUpdate): {\r\n return {\r\n ...state,\r\n isUpdating: true,\r\n };\r\n }\r\n case getType(dealsActions.updateDealResult):\r\n case getType(dealsActions.updateDealDocumentsResult):\r\n case getType(dealsActions.allClassesUpdateResponse):\r\n case getType(dealsActions.saveAmrInfoResponse): {\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n };\r\n }\r\n case getType(dealsActions.getClassSecondaryInfo):\r\n return {\r\n ...state,\r\n isSecondaryInfoLoading: true,\r\n };\r\n case getType(dealsActions.getClassSecondaryInfoResult):\r\n return {\r\n ...state,\r\n isSecondaryInfoLoading: false,\r\n classSecurity: action.payload.security,\r\n classSecurityStats: action.payload.securityStatistics || initialState.classSecurityStats,\r\n };\r\n case getType(dealsActions.deleteDealResult):\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n editDeal: undefined,\r\n data: state.data?.filter(deal => deal.referenceName !== action.payload.referenceName),\r\n };\r\n case getType(dealsActions.allClassesEdit):\r\n return {\r\n ...state,\r\n allClasses: {\r\n ...state.allClasses,\r\n classes: action.payload.classes,\r\n },\r\n };\r\n case getType(dealsActions.allClassesCacheTranche): {\r\n const { rowIndex, tranche } = action.payload;\r\n\r\n return {\r\n ...state,\r\n allClasses: {\r\n ...state.allClasses,\r\n cachedInactiveClasses: {\r\n ...state.allClasses.cachedInactiveClasses,\r\n [rowIndex]: tranche,\r\n },\r\n },\r\n };\r\n }\r\n case getType(dealsActions.allClassesInvalidateTranceCache): {\r\n const { rowIndex } = action.payload;\r\n\r\n return {\r\n ...state,\r\n allClasses: {\r\n ...state.allClasses,\r\n cachedInactiveClasses: isNil(rowIndex)\r\n ? {}\r\n : omit(state.allClasses.cachedInactiveClasses, rowIndex),\r\n },\r\n };\r\n }\r\n case getType(dealsActions.openFigiErrorTickersResponse):\r\n return {\r\n ...state,\r\n openFigiErrorTickers: action.payload.errorTickers,\r\n };\r\n case getType(dealsActions.reset):\r\n return initialState;\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { directBiddingDisclaimerActions } from '../actions/direct-bidding-agreement-disclaimer.actions';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { ActionType, getType } from 'typesafe-actions';\r\nimport { DirectBiddingDisclaimerState } from '../types/state/DirectBiddingDisclaimerState';\r\n\r\nconst initialState: DirectBiddingDisclaimerState = {\r\n confirmRequestState: RequestState.none,\r\n downloadPdfRequestState: RequestState.none,\r\n visible: false,\r\n confirmed: undefined,\r\n blockerId: '',\r\n};\r\n\r\nexport const directBiddingDisclaimer = (\r\n state = initialState,\r\n action: ActionType\r\n): DirectBiddingDisclaimerState => {\r\n switch (action.type) {\r\n case getType(directBiddingDisclaimerActions.show):\r\n return {\r\n ...state,\r\n blockerId: action.payload.blockerId,\r\n confirmed: false,\r\n visible: true\r\n };\r\n case getType(directBiddingDisclaimerActions.hide):\r\n return {\r\n ...state,\r\n confirmed: action.payload.confirmed,\r\n visible: false\r\n };\r\n case getType(directBiddingDisclaimerActions.confirmRequest):\r\n return {\r\n ...state,\r\n confirmRequestState: RequestState.request\r\n };\r\n case getType(directBiddingDisclaimerActions.confirmSuccess):\r\n return {\r\n ...state,\r\n confirmRequestState: RequestState.success\r\n };\r\n case getType(directBiddingDisclaimerActions.confirmFailure):\r\n return {\r\n ...state,\r\n confirmRequestState: RequestState.failure\r\n };\r\n case getType(directBiddingDisclaimerActions.downloadPdfRequest):\r\n return {\r\n ...state,\r\n downloadPdfRequestState: RequestState.request\r\n };\r\n case getType(directBiddingDisclaimerActions.downloadPdfSuccess):\r\n return {\r\n ...state,\r\n downloadPdfRequestState: RequestState.success\r\n };\r\n case getType(directBiddingDisclaimerActions.downloadPdfFailure):\r\n return {\r\n ...state,\r\n downloadPdfRequestState: RequestState.failure\r\n };\r\n case getType(directBiddingDisclaimerActions.reset):\r\n return {\r\n ...initialState\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { getType } from \"typesafe-actions\";\r\nimport { EditNewsState } from \"../types/state/EditNewsState\";\r\nimport {\r\n editNewsActions,\r\n TEditNewsActions,\r\n} from \"../actions/edit-news.actions\";\r\n\r\nconst editNewsInitialState: EditNewsState = {\r\n isLoading: false,\r\n isMoreLoading: false,\r\n isDetailsLoading: false,\r\n isSearching: false,\r\n newsList: [],\r\n newsDetails: undefined,\r\n initialNews: undefined,\r\n managers: [],\r\n arrangers: [],\r\n offset: 0,\r\n totalCount: 0,\r\n searchTerm: \"\",\r\n};\r\n\r\nexport const editNews = (\r\n state = editNewsInitialState,\r\n action: TEditNewsActions\r\n): EditNewsState => {\r\n switch (action.type) {\r\n case getType(editNewsActions.init):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(editNewsActions.getInitResult): {\r\n const { newsList, managers, arrangers } = action.payload;\r\n return {\r\n ...state,\r\n newsList,\r\n managers,\r\n arrangers,\r\n isLoading: false,\r\n offset: newsList.length,\r\n };\r\n }\r\n case getType(editNewsActions.getTotalCountResult): {\r\n const { totalCount } = action.payload;\r\n return {\r\n ...state,\r\n totalCount,\r\n };\r\n }\r\n case getType(editNewsActions.loadMoreNewsList):\r\n return {\r\n ...state,\r\n isMoreLoading: true,\r\n };\r\n case getType(editNewsActions.loadMoreNewsListResult): {\r\n const { newsList } = action.payload;\r\n return {\r\n ...state,\r\n isMoreLoading: false,\r\n newsList: [...state.newsList, ...newsList],\r\n offset: state.offset + newsList.length,\r\n };\r\n }\r\n case getType(editNewsActions.setSearchTerm): {\r\n const { searchTerm } = action.payload;\r\n return {\r\n ...state,\r\n searchTerm,\r\n };\r\n }\r\n case getType(editNewsActions.searchNewsList): {\r\n const { searchTerm } = action.payload;\r\n return {\r\n ...state,\r\n isSearching: true,\r\n searchTerm,\r\n };\r\n }\r\n case getType(editNewsActions.searchNewsListResult): {\r\n const { newsList } = action.payload;\r\n return {\r\n ...state,\r\n isSearching: false,\r\n offset: newsList.length,\r\n newsList,\r\n };\r\n }\r\n case getType(editNewsActions.getNewsDetails):\r\n case getType(editNewsActions.createOrUpdateNews):\r\n case getType(editNewsActions.deleteNews):\r\n return {\r\n ...state,\r\n isDetailsLoading: true,\r\n };\r\n case getType(editNewsActions.getNewsDetailsResult): {\r\n return {\r\n ...state,\r\n isDetailsLoading: false,\r\n newsDetails: action.payload.newsData,\r\n };\r\n }\r\n case getType(editNewsActions.updateNewsList): {\r\n const { newsList } = action.payload;\r\n return {\r\n ...state,\r\n newsList,\r\n offset: newsList.length,\r\n isDetailsLoading: false,\r\n };\r\n }\r\n case getType(editNewsActions.setInitialNews): {\r\n const { initialNews } = action.payload;\r\n return {\r\n ...state,\r\n initialNews,\r\n newsDetails: initialNews,\r\n };\r\n }\r\n case getType(editNewsActions.resetNewsDetails):\r\n return {\r\n ...state,\r\n newsDetails: undefined,\r\n };\r\n\r\n case getType(editNewsActions.reset):\r\n return editNewsInitialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { editCompanyActions as actionTypes } from '../constants';\r\nimport { AnyAction } from 'redux';\r\nimport { EditCompanyState } from '../types/state/EditCompanyState';\r\n\r\nconst initialState: EditCompanyState = {\r\n loading: true,\r\n company: undefined,\r\n cities: [],\r\n countries: [],\r\n states: [],\r\n salesRepresentatives: [],\r\n saved: false,\r\n saving: false\r\n};\r\n\r\nexport const editCompany = (state = initialState, action: AnyAction) => {\r\n switch (action.type) {\r\n case actionTypes.EDIT_COMPANY_LOADING_STATUS:\r\n return {\r\n ...state,\r\n loading: action.payload.status\r\n }\r\n case actionTypes.COMPANY:\r\n return {\r\n ...state,\r\n company: action.company,\r\n };\r\n case actionTypes.COUNTRIES:\r\n return {\r\n ...state,\r\n countries: action.countries || []\r\n };\r\n case actionTypes.STATES:\r\n return {\r\n ...state,\r\n states: action.states || []\r\n };\r\n case actionTypes.CITIES:\r\n return {\r\n ...state,\r\n cities: action.cities\r\n };\r\n case actionTypes.SALES_REPRESENTATIVES:\r\n return {\r\n ...state,\r\n salesRepresentatives: action.salesRepresentatives\r\n };\r\n case actionTypes.SAVING:\r\n return {\r\n ...state,\r\n saving: action.isSaving\r\n };\r\n case actionTypes.SAVED:\r\n return {\r\n ...state,\r\n saved: true\r\n };\r\n case actionTypes.RESET:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n};\r\n","import moment from 'moment';\r\nimport { constants } from \"../constants\";\r\nimport { editParsedBwicActions as actionTypes } from '../constants';\r\nimport { estId, getTimeZones } from '../constants/timeZones';\r\n\r\nconst initialState = {\r\n isInitCompleted: false,\r\n errors: {},\r\n cancelDialog: {\r\n visible: false\r\n },\r\n emailReceivedDate: moment().format(constants.dateFormatISO8601),\r\n isSaving: false,\r\n saved: false,\r\n timeZones: getTimeZones(),\r\n timeZone: estId\r\n};\r\n\r\nexport const editParsedBwic = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.INIT_COMPLETED:\r\n return {\r\n ...state,\r\n isInitCompleted: true\r\n };\r\n case actionTypes.STORE_ORIGINAL_BWIC:\r\n return {\r\n ...state,\r\n bwic: action.bwic\r\n };\r\n case actionTypes.CHANGE_DATE:\r\n return {\r\n ...state,\r\n date: action.date\r\n };\r\n case actionTypes.DAYS_TO_SETTLE:\r\n return {\r\n ...state,\r\n daysToSettle: action.days\r\n };\r\n case actionTypes.TIME_ZONE:\r\n return {\r\n ...state,\r\n timeZone: action.timeZone\r\n };\r\n case actionTypes.BIDS_DUE:\r\n return {\r\n ...state,\r\n bidsDue: action.time\r\n };\r\n case actionTypes.GOOD_UNTIL:\r\n return {\r\n ...state,\r\n goodUntil: action.time\r\n };\r\n case actionTypes.RULES_TEXT:\r\n return {\r\n ...state,\r\n rulesText: action.rulesText\r\n };\r\n case actionTypes.RESERVE_LEVELS_APPLY_CHANHE:\r\n return {\r\n ...state,\r\n reserveLevelsApply: action.value\r\n };\r\n\r\n case actionTypes.CAN_TRADE_EARLY_CHANGE:\r\n return {\r\n ...state,\r\n canTradeEarly: action.value\r\n };\r\n\r\n case actionTypes.CAN_BID_EARLY_CHANGE:\r\n return {\r\n ...state,\r\n canBidEarly: action.value\r\n };\r\n case actionTypes.PARTIAL_BIDS_ACCEPTED_CHANHE:\r\n return {\r\n ...state,\r\n partialBidsAccepted: action.value\r\n };\r\n case actionTypes.BIDS_GOOD_FOR_HOURS_CHANGE:\r\n return {\r\n ...state,\r\n bidsGoodForHours: action.value\r\n };\r\n case actionTypes.BIDS_GOOD_FOR_MINUTES_CHANGE:\r\n return {\r\n ...state,\r\n bidsGoodForMinutes: action.value\r\n };\r\n case actionTypes.STAGE_1_TIME_CHANGE:\r\n return {\r\n ...state,\r\n stage1EndDateUtc: action.value\r\n };\r\n case actionTypes.STAGE_2_TIME_CHANGE:\r\n return {\r\n ...state,\r\n stage2EndDateUtc: action.value\r\n };\r\n case actionTypes.HARD_CUT_OFF_NUMBER_CHANGE:\r\n return {\r\n ...state,\r\n hardCutOff: action.value\r\n };\r\n case actionTypes.STAGE_2_PARTICIPANTS_CHANGE:\r\n return {\r\n ...state,\r\n improverCount: action.value\r\n };\r\n case actionTypes.BWIC_PROCESS_TYPE_CHANGE:\r\n return {\r\n ...state,\r\n bwicProcessType: action.value\r\n }\r\n case actionTypes.VALIDATE:\r\n return {\r\n ...state,\r\n isValid: action.validation.isValid,\r\n errors: action.validation.errors\r\n };\r\n case actionTypes.CANCEL_DIALOG:\r\n return {\r\n ...state,\r\n cancelDialog: action.cancelDialog\r\n };\r\n case actionTypes.SET_EMAIL_RECEIVED_DATE:\r\n return {\r\n ...state,\r\n emailReceivedDate: action.payload.date\r\n };\r\n case actionTypes.SAVING_STATE:\r\n return {\r\n ...state,\r\n isSaving: action.isSaving\r\n };\r\n case actionTypes.BWIC_SAVED:\r\n return {\r\n ...state,\r\n saved: true\r\n };\r\n case actionTypes.RESET:\r\n return initialState;\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { editPortfolioActions as actionTypes } from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\n\r\nconst initialState = {\r\n portfolio: {\r\n name: '',\r\n securities: [],\r\n id: 0,\r\n referenceName: '',\r\n bwicAlert: false,\r\n dealersInventoryAlert: false\r\n },\r\n renamePortfolioDialog: {\r\n visible: false\r\n },\r\n deletePortfolioDialog: {\r\n visible: false\r\n },\r\n updatePortfolioRequestState: RequestState.none,\r\n isRequestingExportPortfolio: false,\r\n};\r\n\r\nexport const editPortfolio = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.PORTFOLIO_LOADED:\r\n return {\r\n ...state,\r\n portfolio: action.portfolio\r\n };\r\n case actionTypes.PORTFOLIO_SAVED:\r\n return {\r\n ...state,\r\n saved: true\r\n };\r\n case actionTypes.RESET:\r\n return initialState;\r\n case actionTypes.RENAME_DIALOG_VISIBLE:\r\n return {\r\n ...state,\r\n renamePortfolioDialog: action.dialog\r\n };\r\n case actionTypes.DELETE_PORTFOLIO_DIALOG:\r\n return {\r\n ...state,\r\n deletePortfolioDialog: action.dialog\r\n };\r\n case actionTypes.PORTFOLIO_DELETED:\r\n return {\r\n ...state,\r\n deleted: true\r\n };\r\n case actionTypes.EDIT_PORTFOLIO_LOADING:\r\n return {\r\n ...state,\r\n isLoading: action.isLoading\r\n };\r\n case actionTypes.PORTFOLIO_UPDATE_REQUEST:\r\n return {\r\n ...state,\r\n updatePortfolioRequestState: RequestState.request\r\n };\r\n case actionTypes.PORTFOLIO_UPDATE_SUCCESS:\r\n return {\r\n ...state,\r\n updatePortfolioRequestState: RequestState.success\r\n };\r\n case actionTypes.PORTFOLIO_UPDATE_FAILURE:\r\n return {\r\n ...state,\r\n updatePortfolioRequestState: RequestState.failure\r\n };\r\n case actionTypes.PORTFOLIO_SET_REQUESTING_EXPORT_STATE:\r\n return {\r\n ...state,\r\n isRequestingExportPortfolio: action.payload.status\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { InventoryPosition } from '../../types/inventory/InventoryPosition';\r\nimport { InventoryPositionStatus } from '../../types/inventory/InventoryPositionStatus';\r\n\r\nexport function updateInventoryPushReducer(currentInventoryList: InventoryPosition[], inventoryListUpdates: InventoryPosition[]) {\r\n let inventoryList = [...currentInventoryList];\r\n\r\n inventoryListUpdates.forEach(position => {\r\n if (position.status === InventoryPositionStatus.obsolete || position.status === InventoryPositionStatus.removed) {\r\n inventoryList = inventoryList.filter(i => i.id !== position.id);\r\n } else if (inventoryList.some(i => i.id === position.id)) {\r\n const index = inventoryList.findIndex(i => i.id === position.id);\r\n inventoryList.splice(index, 1);\r\n inventoryList.unshift(position);\r\n } else {\r\n inventoryList.unshift(position);\r\n }\r\n });\r\n\r\n return inventoryList;\r\n}\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { bdInventoryActions } from \"../../actions/bd-inventory.actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { isRequestSuccess } from '../../utils';\r\nimport { BdInventoryEntityState } from '../../types/state/BdInventoryEntityState';\r\nimport { updateInventoryPushReducer } from './update-inventory-push.reducer';\r\nimport { user } from \"../../user\";\r\nimport { InventoryPosition } from \"../../types/inventory/InventoryPosition\";\r\n\r\nexport const inventoryReducerDefaultState: BdInventoryEntityState = {\r\n items: [],\r\n lockModifiedDate: undefined,\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function bdInventoryReducer(state: BdInventoryEntityState, action: AnyAction): BdInventoryEntityState {\r\n switch (action.type) {\r\n case getType(bdInventoryActions.request):\r\n return {\r\n items: [],\r\n lockModifiedDate: undefined,\r\n requestState: RequestState.request\r\n };\r\n\r\n case getType(bdInventoryActions.requestResult):\r\n return {\r\n items: action.payload.response.inventorySecurities || [],\r\n lockModifiedDate: action.payload.response.lockModifiedDate,\r\n requestState: action.payload.requestState\r\n };\r\n\r\n case getType(bdInventoryActions.inventoryStatusChange):\r\n return {\r\n ...state,\r\n items: state.items.map(i => i.id === action.payload.inventoryPositionId\r\n ? { ...i, status: action.payload.status }\r\n : i)\r\n };\r\n case getType(bdInventoryActions.pushInventory): {\r\n const bdCompanyId: number | undefined = user.current()?.companyId;\r\n const lockModifiedDate: Date | undefined = action.payload.data.lockModifiedDate;\r\n const inventoryPositions: InventoryPosition[] = action.payload.data.updatedInventorySecurities;\r\n\r\n if (!bdCompanyId || !isRequestSuccess(state.requestState) || !inventoryPositions.some(p => p.dealer.id === bdCompanyId)) {\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n items: updateInventoryPushReducer(state.items, inventoryPositions),\r\n lockModifiedDate\r\n };\r\n };\r\n case getType(bdInventoryActions.resetEntities):\r\n return { ...inventoryReducerDefaultState };\r\n default:\r\n return state\r\n }\r\n}\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { inventoryActions } from '../../actions/inventory.actions';\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { InventoryPosition } from \"../../types/inventory/InventoryPosition\";\r\nimport { InventoryPositionWithLock } from \"../../types/inventory/InventoryPositionWithLock\";\r\nimport { InventoryState } from '../../types/state/InventoryState';\r\nimport { isRequestSuccess } from '../../utils';\r\nimport { updateInventoryPushReducer } from './update-inventory-push.reducer';\r\n\r\nexport const allInventoryReducerDefaultState: InventoryState = {\r\n items: [],\r\n requestState: RequestState.none,\r\n totalRecordNumber: 0,\r\n currentPageNumber: 1,\r\n pageSize: 50,\r\n summary: undefined,\r\n};\r\n\r\nexport function inventoryReducer(state: InventoryState, action: AnyAction): InventoryState {\r\n switch (action.type) {\r\n case (getType(inventoryActions.request)):\r\n return {\r\n ...state,\r\n requestState: RequestState.request,\r\n };\r\n case (getType(inventoryActions.requestResult)):\r\n return {\r\n ...state,\r\n items: action.payload.result ? state.items.concat(action.payload.result) : state.items,\r\n requestState: action.payload.requestState,\r\n totalRecordNumber: action.payload.totalRecordNumber || 0,\r\n summary: action.payload.summary ? action.payload.summary: state.summary\r\n };\r\n case getType(inventoryActions.loadNextPage):\r\n return {\r\n ...state,\r\n currentPageNumber: state.currentPageNumber + 1\r\n };\r\n case getType(inventoryActions.resetEntities):\r\n return { ...allInventoryReducerDefaultState };\r\n case getType(inventoryActions.pushInventory): {\r\n if (!isRequestSuccess(state.requestState)) return state;\r\n\r\n const pushInventories: InventoryPosition[] = action.payload.inventories;\r\n const lockModifiedDate: Date = action.payload.lockModifiedDate;\r\n\r\n const [position] = pushInventories;\r\n\r\n const items =\r\n updateInventoryPushReducer(state.items, pushInventories).map(p =>\r\n p.dealer.id === position?.dealer.id\r\n ? { ...p, lockModifiedDate }\r\n : p as InventoryPositionWithLock\r\n );\r\n\r\n return { ...state, items };\r\n };\r\n case getType(inventoryActions.inventoryStatusChange):\r\n return {\r\n ...state,\r\n items: state.items.map(i => i.id === action.payload.inventoryPositionId\r\n ? { ...i, status: action.payload.status }\r\n : i)\r\n };\r\n case getType(inventoryActions.resetSummary):\r\n return {\r\n ...state,\r\n summary: undefined\r\n }\r\n default:\r\n return state\r\n }\r\n}\r\n","import { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { EntityListState } from \"../../types/state/entities/EntityListState\";\r\nimport { brokerDealerListActions } from '../../actions/broker-dealer-list.actions';\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { BrokerDealerCompanySlim } from '../../types/company/BrokerDealerCompanySlim';\r\n\r\nexport const brokerDealerListInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function brokerDealerListReducer(state = brokerDealerListInitialState, action: AnyAction) {\r\n switch (action.type) {\r\n case getType(brokerDealerListActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(brokerDealerListActions.requestResult):\r\n return {\r\n items: action.payload.result || [],\r\n requestState: action.payload.requestState\r\n };\r\n case getType(brokerDealerListActions.updateDealerDistributionListInvitationSent):\r\n return {\r\n ...state,\r\n items: state.items.map(item => {\r\n if (item.id === action.payload.dealerId) {\r\n item.distributionListInvitationSent = true;\r\n return { ...item }\r\n }\r\n return item\r\n })\r\n };\r\n case getType(brokerDealerListActions.updateDealerHeadOfTradingInvitationSent):\r\n return {\r\n ...state,\r\n items: state.items.map(item => {\r\n if (item.headOfTrading && item.id === action.payload.dealerId) {\r\n item.headOfTradingInvitationSent = true;\r\n return { ...item }\r\n }\r\n return item\r\n })\r\n };\r\n case getType(brokerDealerListActions.resetEntities):\r\n return { ...brokerDealerListInitialState };\r\n default: return state;\r\n }\r\n}\r\n","import { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { ActionType } from '../../types/ActionType';\r\nimport { getType } from 'typesafe-actions';\r\nimport { brokerDealerContactListActions } from '../../actions/broker-dealer-contact-list.actions';\r\nimport { Contact } from '../../types/company/Contact';\r\n\r\nexport const brokerDealerContactListInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function brokerDealerContactListReducer(state = brokerDealerContactListInitialState, action: ActionType) {\r\n switch (action.type) {\r\n case getType(brokerDealerContactListActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(brokerDealerContactListActions.requestResult):\r\n return {\r\n items: action.payload.result || [],\r\n requestState: action.payload.requestState\r\n };\r\n case getType(brokerDealerContactListActions.pushUpdateList):\r\n return {\r\n ...state,\r\n items: pushUpdateListReducer([...state.items], action.payload.contacts)\r\n };\r\n case getType(brokerDealerContactListActions.setContactInvitationSent):\r\n return {\r\n ...state,\r\n items: state.items.map(i => {\r\n if (i.id === action.payload.contactId) {\r\n i.invitationSent = true;\r\n return { ...i }\r\n }\r\n return i;\r\n })\r\n };\r\n case getType(brokerDealerContactListActions.resetEntities):\r\n return { ...brokerDealerContactListInitialState };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nconst pushUpdateListReducer = (currentContacts: Contact[], pushContactsList: Contact[]) => {\r\n pushContactsList.forEach(contact => {\r\n if (currentContacts.some(cc => cc.id === contact.id)) {\r\n const contactIndex = currentContacts.findIndex((c) => c.id === contact.id);\r\n if (contact.deleted) {\r\n currentContacts.splice(contactIndex, 1);\r\n } else {\r\n currentContacts[contactIndex] = contact;\r\n }\r\n } else {\r\n currentContacts.push(contact)\r\n }\r\n });\r\n return currentContacts;\r\n};\r\n","import { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { ActionType } from '../../types/ActionType';\r\nimport { getType } from 'typesafe-actions';\r\nimport { brokerDealerUserListActions } from '../../actions/broker-dealer-user-list.actions';\r\nimport { UserSlim } from '../../types/account/UserSlim';\r\n\r\nexport const brokerDealerUserListInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function brokerDealerUserListReducer(state = brokerDealerUserListInitialState, action: ActionType) {\r\n switch (action.type) {\r\n case getType(brokerDealerUserListActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(brokerDealerUserListActions.requestResult):\r\n return {\r\n items: action.payload.result || [],\r\n requestState: action.payload.requestState\r\n };\r\n case getType(brokerDealerUserListActions.resetEntities):\r\n return { ...brokerDealerUserListInitialState };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { SettlementAgentAgreement } from '../../types/bid-as-dealer/SettlementAgentAgreement';\r\nimport { ActionType } from '../../types/ActionType';\r\nimport { getType } from 'typesafe-actions';\r\nimport { settlementAgentAgreementActions } from '../../actions/settlement-agent-agreements.actions';\r\nimport { user } from '../../user';\r\n\r\nexport const settlementAgentAgreementsInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function settlementAgentAgreementsReducer(state = settlementAgentAgreementsInitialState, action: ActionType) {\r\n switch (action.type) {\r\n case getType(settlementAgentAgreementActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(settlementAgentAgreementActions.requestResult):\r\n return {\r\n items: action.payload.result || [],\r\n requestState: action.payload.requestState\r\n };\r\n case getType(settlementAgentAgreementActions.pushDataReceived):\r\n return {\r\n ...state,\r\n items: updateAgreementsList([...state.items], action.payload.agreement)\r\n };\r\n case getType(settlementAgentAgreementActions.resetEntities):\r\n return settlementAgentAgreementsInitialState;\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nconst updateAgreementsList = (currentAgreements: SettlementAgentAgreement[], agreement: SettlementAgentAgreement) => {\r\n if (user.current()?.isClearingBank) {\r\n return currentAgreements;\r\n }\r\n if (currentAgreements.some(a => a.settlementAgent.id === agreement.settlementAgent.id)) {\r\n return currentAgreements.map(a => {\r\n if (a.settlementAgent.id === agreement.settlementAgent.id) {\r\n return agreement;\r\n }\r\n return a;\r\n })\r\n }\r\n currentAgreements.push(agreement);\r\n return currentAgreements;\r\n};\r\n","import { getType, ActionType } from \"typesafe-actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { AdminInventoryEditState } from \"../../types/state/AdminInventoryEditState\";\r\nimport { adminInventoryEditActions } from '../../actions/admin-inventory-edit.actions';\r\n\r\nexport type TAdminEditActionType =\r\n ActionType<\r\n typeof adminInventoryEditActions.requestInventory |\r\n typeof adminInventoryEditActions.requestInventorySuccess |\r\n typeof adminInventoryEditActions.requestInventoryError |\r\n typeof adminInventoryEditActions.reset\r\n >;\r\n\r\nexport const adminInventoryEditInitialState: AdminInventoryEditState = {\r\n items: [],\r\n requestState: RequestState.none\r\n}\r\n\r\nexport function adminInventoryEditReducer(\r\n state: AdminInventoryEditState = adminInventoryEditInitialState,\r\n action: TAdminEditActionType): AdminInventoryEditState {\r\n switch (action.type) {\r\n case getType(adminInventoryEditActions.requestInventory):\r\n return {\r\n ...state,\r\n requestState: RequestState.request,\r\n items: []\r\n };\r\n case getType(adminInventoryEditActions.requestInventorySuccess):\r\n return {\r\n ...state,\r\n requestState: RequestState.success,\r\n bdCompany: action.payload.company,\r\n lockModifiedDate: action.payload.lockModifiedDate,\r\n items: action.payload.positions\r\n };\r\n case getType(adminInventoryEditActions.requestInventoryError):\r\n return {\r\n ...adminInventoryEditInitialState,\r\n requestState: RequestState.failure\r\n };\r\n case getType(adminInventoryEditActions.reset):\r\n return {\r\n ...adminInventoryEditInitialState\r\n };\r\n default: return state;\r\n }\r\n}\r\n","import { RequestState } from '../../constants/request-state';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { TRejectedTradesActionType, rejectedTradeActions } from '../../actions/entities/rejected-trades.actions';\r\nimport { getType } from 'typesafe-actions';\r\nimport { RejectedTrade } from '../../types/trades/RejectedTrade';\r\n\r\nexport const rejectedTradesInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n}\r\n\r\nexport const rejectedTradesReducer = (state = rejectedTradesInitialState, action: TRejectedTradesActionType) => {\r\n switch (action.type) {\r\n case getType(rejectedTradeActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request,\r\n }\r\n case getType(rejectedTradeActions.requestResult):\r\n return {\r\n items: action.payload.trades,\r\n requestState: action.payload.requestState,\r\n }\r\n case getType(rejectedTradeActions.setTradesAsResolved):\r\n return {\r\n ...state,\r\n items: state.items.filter(i => !(action.payload.tradeIds.includes(i.id)))\r\n }\r\n case getType(rejectedTradeActions.pushBuyerRejectTrade):\r\n return {\r\n ...state,\r\n items: [...state.items, action.payload.trade]\r\n }\r\n\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { EntityListState } from \"../../types/state/entities/EntityListState\";\r\nimport { Portfolio} from \"../../types/portfolio/Portfolio\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { AnyAction } from \"redux\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { portfolioListActions } from \"../../actions/portfolio-list.actions\";\r\nimport { bwicStatuses } from \"../../constants\";\r\nimport { apiUtils, isRequestSuccess } from \"../../utils\";\r\nimport { SecurityBwicStatistics } from \"../../types/security/SecurityBwicStatistics\";\r\n\r\nexport const portfolioListInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none,\r\n}\r\n\r\nexport function portfolioListReducer(state = portfolioListInitialState, action: AnyAction) {\r\n switch (action.type) {\r\n case getType(portfolioListActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request,\r\n };\r\n case getType(portfolioListActions.requestResult):\r\n return {\r\n items: action.payload.result,\r\n requestState: action.payload.requestResult,\r\n };\r\n case getType(portfolioListActions.resetEntities):\r\n return { ...portfolioListInitialState };\r\n case getType(portfolioListActions.colorDistributionSend):\r\n return updateSecurityHistory(\r\n state,\r\n action.payload.data,\r\n history => ({\r\n ...history,\r\n color: action.payload.data.colors.find((c: { positionId: number }) => c.positionId === history.positionId)?.color\r\n }));\r\n case getType(portfolioListActions.bwicStatusChanged):\r\n return updateSecurityHistory(\r\n state,\r\n action.payload.data,\r\n history => ({ ...history, status: action.payload.data.bwicStatus })\r\n );\r\n case getType(portfolioListActions.updateSendAlertState): {\r\n if (!isRequestSuccess(state.requestState)) return state;\r\n\r\n type TSendAlertState = {\r\n portfolioId: number;\r\n bwicAlert?: boolean;\r\n dealersInventoryAlert?: boolean;\r\n cleansingNoticeAlert?: boolean;\r\n issuanceMonitorAlert?: boolean;\r\n outOfRiPeriodAlert?: boolean;\r\n outOfNcPeriodAlert?: boolean;\r\n rollerDeadlineAlert?: boolean;\r\n };\r\n\r\n const sendAlerState: TSendAlertState[] = action.payload.sendAlertState;\r\n const sendAlerStateNormalized = apiUtils.normalize(\r\n sendAlerState,\r\n (item: TSendAlertState) => item.portfolioId,\r\n (item: TSendAlertState) => item\r\n );\r\n\r\n return {\r\n ...state,\r\n items: state.items.map(p => sendAlerStateNormalized[p.id]\r\n ? {\r\n ...p,\r\n bwicAlert: sendAlerStateNormalized[p.id].bwicAlert ?? p.bwicAlert,\r\n dealersInventoryAlert: sendAlerStateNormalized[p.id].dealersInventoryAlert ?? p.dealersInventoryAlert,\r\n cleansingNoticeAlert: sendAlerStateNormalized[p.id].cleansingNoticeAlert ?? p.cleansingNoticeAlert,\r\n issuanceMonitorAlert: sendAlerStateNormalized[p.id].issuanceMonitorAlert ?? p.issuanceMonitorAlert,\r\n outOfRiPeriodAlert: sendAlerStateNormalized[p.id].outOfRiPeriodAlert ?? p.outOfRiPeriodAlert,\r\n outOfNcPeriodAlert: sendAlerStateNormalized[p.id].outOfNcPeriodAlert ?? p.outOfNcPeriodAlert,\r\n rollerDeadlineAlert: sendAlerStateNormalized[p.id].rollerDeadlineAlert ?? p.rollerDeadlineAlert\r\n }\r\n : p)\r\n };\r\n }\r\n case getType(portfolioListActions.deletePortfolio):\r\n return {\r\n ...state,\r\n items: state.items.filter(item => item.id !== action.payload.portfolioId)\r\n }\r\n case getType(portfolioListActions.reset):\r\n return { ...portfolioListInitialState }\r\n default: return state;\r\n }\r\n}\r\n\r\n\r\nfunction updateSecurityHistory(\r\n state: EntityListState,\r\n action: AnyAction,\r\n updateCallback: (history: SecurityBwicStatistics\r\n ) => SecurityBwicStatistics) {\r\n if (!state.items || !state.items.length || !isRequestSuccess(state.requestState)) return state;\r\n\r\n const { bwicReferenceName } = action;\r\n\r\n return {\r\n ...state,\r\n items: state.items.map(p => ({\r\n ...p,\r\n securities: p.securities && p.securities.map(s => ({\r\n ...s,\r\n history: s.history\r\n .map(h => h.referenceName === bwicReferenceName ? updateCallback(h) : h)\r\n .filter(h => h.status !== bwicStatuses.cancelled.key)\r\n }))\r\n }))\r\n };\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { emailPreferencesActions, TEmailPreferecnesActionTypes } from '../actions/email-preferences.actions';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { EmailPreferencesState } from '../types/state/EmailPreferencesState';\r\nimport { isRequestSuccess } from '../utils/request-state.utils';\r\n\r\nexport const emailPreferencesInitialState: EmailPreferencesState = {\r\n requestState: RequestState.none\r\n}\r\n\r\nexport const emailPreferencesReducer = (state = emailPreferencesInitialState, action: TEmailPreferecnesActionTypes): EmailPreferencesState => {\r\n switch (action.type) {\r\n case getType(emailPreferencesActions.request):\r\n return {\r\n ...state,\r\n requestState: RequestState.request,\r\n preferences: undefined\r\n }\r\n case getType(emailPreferencesActions.requestResult):\r\n return {\r\n ...state,\r\n requestState: action.payload.requestState,\r\n preferences: action.payload.preferences\r\n };\r\n case getType(emailPreferencesActions.reset):\r\n return { ...emailPreferencesInitialState };\r\n case getType(emailPreferencesActions.inventoryAlertChange):\r\n if (isRequestSuccess(state.requestState) && state.preferences != null) {\r\n return {\r\n ...state,\r\n preferences: {\r\n ...state.preferences,\r\n portfolioDealersInventoryAlertState: action.payload.enabled\r\n }\r\n };\r\n }\r\n\r\n return state;\r\n case getType(emailPreferencesActions.bwicAlertChange):\r\n if (isRequestSuccess(state.requestState) && state.preferences != null) {\r\n return {\r\n ...state,\r\n preferences: {\r\n ...state.preferences,\r\n portfolioBwicAlertState: action.payload.enabled\r\n }\r\n };\r\n }\r\n\r\n return state;\r\n };\r\n}\r\n","import { getType, ActionType } from \"typesafe-actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { activeInventorySecurityActions } from '../../actions/active-inventory-security.actions';\r\nimport { ActiveInventorySecurityState } from '../../types/state/ActiveInventorySecurityState';\r\n\r\nexport type TActiveInventorySecuritiesActionType =\r\n ActionType<\r\n typeof activeInventorySecurityActions.requestActiveInventorySecurities |\r\n typeof activeInventorySecurityActions.requestActiveInventorySecuritiesSuccess |\r\n typeof activeInventorySecurityActions.requestActiveInventorySecuritiesError |\r\n typeof activeInventorySecurityActions.reset\r\n >;\r\n\r\nexport const activeInventorySecurityInitialState: ActiveInventorySecurityState = {\r\n items: {},\r\n requestState: RequestState.none\r\n}\r\n\r\nexport function activeInventorySecuritiesReducer(\r\n state: ActiveInventorySecurityState = activeInventorySecurityInitialState,\r\n action: TActiveInventorySecuritiesActionType): ActiveInventorySecurityState {\r\n switch (action.type) {\r\n case getType(activeInventorySecurityActions.requestActiveInventorySecurities):\r\n return {\r\n ...state,\r\n requestState: RequestState.request,\r\n items: {}\r\n };\r\n case getType(activeInventorySecurityActions.requestActiveInventorySecuritiesSuccess):\r\n return {\r\n ...state,\r\n requestState: RequestState.success,\r\n items: aggregate(action.payload.securityIds)\r\n };\r\n case getType(activeInventorySecurityActions.requestActiveInventorySecuritiesError):\r\n return {\r\n ...activeInventorySecurityInitialState,\r\n requestState: RequestState.failure\r\n };\r\n case getType(activeInventorySecurityActions.reset):\r\n return {\r\n ...activeInventorySecurityInitialState\r\n }\r\n default: return state;\r\n }\r\n}\r\n\r\nconst aggregate = (securityIds: number[]) => {\r\n const aggregatedList: {[securityId: number]: number} = {}\r\n securityIds.forEach(securityId => {\r\n aggregatedList[securityId] = aggregatedList[securityId]\r\n ? ++aggregatedList[securityId]\r\n : 1;\r\n });\r\n return aggregatedList;\r\n}\r\n","import { SettlementAgentCommissionState } from '../../types/state/entities/SettlementAgentCommissionState';\r\nimport { clearingBankActions, TSettlementAgentCommissionActionType } from '../../actions/clearing-bank.actions';\r\nimport { getType } from 'typesafe-actions';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { SettlementAgentCommissionByRating } from '../../types/bid-as-dealer/SettlementAgentCommissionByRating';\r\n\r\nexport const settlementAgentCommissionInitialState: SettlementAgentCommissionState = {\r\n commission: {}\r\n}\r\n\r\nexport function settlementAgentCommissionReducer(\r\n state = settlementAgentCommissionInitialState,\r\n action: TSettlementAgentCommissionActionType): SettlementAgentCommissionState {\r\n switch (action.type) {\r\n case getType(clearingBankActions.settlementAgentCommissionRequest):\r\n return {\r\n ...state,\r\n commission: {\r\n ...state.commission,\r\n [action.payload.companyId]: {\r\n requestState: RequestState.request,\r\n values: {} as SettlementAgentCommissionByRating\r\n }\r\n }\r\n };\r\n case getType(clearingBankActions.settlementAgentCommissionResponse):\r\n return {\r\n ...state,\r\n commission: {\r\n ...state.commission,\r\n [action.payload.companyId]: {\r\n requestState: action.payload.requestState,\r\n values: action.payload.commission ?? {} as SettlementAgentCommissionByRating\r\n }\r\n }\r\n };\r\n default: return state;\r\n }\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { settlementAccountActions, TSettlementAccountActionType } from \"../../actions/settlement-account.actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { SettlementAccount } from \"../../types/settlement/SettlementAccount\";\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\n\r\nexport const settlementAccountInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function settlementAccountReducer(\r\n state = settlementAccountInitialState,\r\n action: TSettlementAccountActionType): EntityListState {\r\n switch (action.type) {\r\n case getType(settlementAccountActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(settlementAccountActions.requestResult):\r\n return {\r\n items: applyOrdering(action.payload.settlementAccounts),\r\n requestState: action.payload.requestState\r\n };\r\n case getType(settlementAccountActions.update):\r\n const { account } = action.payload;\r\n return {\r\n ...state,\r\n items: applyOrdering(state.items.some(i => i.id === account.id)\r\n ? state.items.map(i => i.id === account.id ? account : i)\r\n : state.items.concat(account))\r\n }\r\n case getType(settlementAccountActions.deleteAccount):\r\n return {\r\n ...state,\r\n items: state.items.filter(i => i.id !== action.payload.accountId)\r\n }\r\n case getType(settlementAccountActions.reset):\r\n return { ...settlementAccountInitialState };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\nfunction applyOrdering(settlementAccounts: SettlementAccount[] = []) {\r\n return settlementAccounts.sort((a, b) => a.accountName.localeCompare(b.accountName))\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { CompanySlim } from '../../types/company/CompanySlim';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { TAssetManagerActionType, assetManagerActions } from '../../actions/asset-manager.actions';\r\n\r\nexport const assetManagerInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n}\r\n\r\nexport function assetManagerReducer(state = assetManagerInitialState, action: TAssetManagerActionType) {\r\n switch (action.type) {\r\n case getType(assetManagerActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(assetManagerActions.requestResult):\r\n return {\r\n items: action.payload.companies,\r\n requestState: action.payload.requestState\r\n };\r\n default: return state;\r\n };\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { tradeAllocationActions, TradeAllocationActionType } from \"../../actions/trade-allocation.actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { TradeAllocationState } from \"../../types/state/entities/TradeAllocationState\";\r\n\r\nexport const tradeAllocationInitialState: TradeAllocationState = {\r\n items: {}\r\n}\r\n\r\nexport function tradeAllocationReducer(\r\n state = tradeAllocationInitialState,\r\n action: TradeAllocationActionType): TradeAllocationState {\r\n switch (action.type) {\r\n case getType(tradeAllocationActions.request):\r\n return {\r\n items: {\r\n ...state.items,\r\n [action.payload.tradeId]: {\r\n requestState: RequestState.request,\r\n tradeAllocationItems: []\r\n }\r\n }\r\n };\r\n case getType(tradeAllocationActions.requestResult):\r\n return {\r\n items: {\r\n ...state.items,\r\n [action.payload.tradeId]: {\r\n requestState: action.payload.requestState,\r\n tradeAllocationItems: action.payload.tradeAllocationItems\r\n }\r\n }\r\n };\r\n case getType(tradeAllocationActions.update):\r\n return {\r\n items: {\r\n ...state.items,\r\n [action.payload.tradeId]: {\r\n requestState: RequestState.success,\r\n tradeAllocationItems: action.payload.items\r\n }\r\n }\r\n };\r\n case getType(tradeAllocationActions.reset):\r\n return { ...tradeAllocationInitialState };\r\n }\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { tradeAllocationTemplateActions, TradeAllocationTemplateActionType } from \"../../actions/trade-allocation-template.actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { TradeAllocationTemplate } from \"../../types/trade-allocation/template/TradeAllocationTemplate\";\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { compareBoolean, compareStrings } from \"../../utils/compare.utils\";\r\n\r\nexport const tradeAllocationTemplateInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n};\r\n\r\nexport function tradeAllocationTemplateReducer(\r\n state = tradeAllocationTemplateInitialState,\r\n action: TradeAllocationTemplateActionType): EntityListState {\r\n switch (action.type) {\r\n case getType(tradeAllocationTemplateActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(tradeAllocationTemplateActions.requestResult):\r\n return {\r\n items: sortTemplates(action.payload.templates),\r\n requestState: action.payload.requestState\r\n };\r\n case getType(tradeAllocationTemplateActions.update):\r\n const { template } = action.payload;\r\n return {\r\n ...state,\r\n items: sortTemplates(\r\n state.items.some(i => i.id === template.id)\r\n ? state.items.map(i => i.id === template.id ? template : i)\r\n : state.items.concat(template)\r\n )\r\n }\r\n case getType(tradeAllocationTemplateActions.deleteTemplate):\r\n return {\r\n ...state,\r\n items: state.items.filter(i => i.id !== action.payload.templateId)\r\n };\r\n case getType(tradeAllocationTemplateActions.activeChange):\r\n return {\r\n ...state,\r\n items: sortTemplates(\r\n state.items.map(i => {\r\n if (i.id === action.payload.activated?.id) return action.payload.activated\r\n if (i.id === action.payload.deactivated?.id) return action.payload.deactivated\r\n return i;\r\n })\r\n )\r\n };\r\n default:\r\n return state;\r\n };\r\n}\r\n\r\nfunction sortTemplates(templates: TradeAllocationTemplate[]) {\r\n return templates.sort((a, b) =>\r\n compareBoolean(a.active, b.active) ||\r\n compareStrings(a.name, b.name)\r\n );\r\n}\r\n","import { RequestState } from '../../constants/request-state';\r\nimport { getType } from 'typesafe-actions';\r\nimport { awaitingTradesActions, AwaitingTradesActionTypes } from '../../actions/entities/awaitingTrades.actions';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { AwaitingTrade } from '../../types/trades/AwaitingTrade';\r\n\r\nexport const awaitingTradesInitialState: EntityListState = {\r\n requestState: RequestState.none,\r\n items: [],\r\n}\r\n\r\nexport const awaitingTrades = (state = awaitingTradesInitialState, action: AwaitingTradesActionTypes): EntityListState => {\r\n switch (action.type) {\r\n case getType(awaitingTradesActions.requestTrades):\r\n return {\r\n ...state,\r\n requestState: RequestState.request\r\n }\r\n case getType(awaitingTradesActions.requestTradesResult):\r\n return {\r\n ...state,\r\n requestState: action.payload.requestStatus,\r\n items: action.payload.awaitingTrades,\r\n }\r\n case getType(awaitingTradesActions.trade):\r\n return {\r\n ...state,\r\n items: state.items.some(t => t.id === action.payload.trade.id)\r\n ? state.items.map(t => t.id === action.payload.trade.id ? action.payload.trade : t)\r\n : state.items.concat(action.payload.trade)\r\n }\r\n case getType(awaitingTradesActions.tradeAllocationCreated):\r\n return {\r\n ...state,\r\n items: state\r\n .items\r\n .map(t => t.id === action.payload.tradeId ? {\r\n ...t,\r\n buyerSettlementStatus: action.payload.buyerSettlementStatus,\r\n sellerSettlementStatus: action.payload.sellerSettlementStatus\r\n } : t)\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { Company } from '../../types/amr-pipeline/models/Company';\r\nimport { collateralManagersActions } from '../../actions/entities/collateralManagers.action';\r\n\r\nexport const collateralManagersDefaultState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none,\r\n};\r\n\r\nexport type CollateralManagersActionTypes = ActionType<\r\n | typeof collateralManagersActions.requestCollateralManagers\r\n | typeof collateralManagersActions.responseCollateralManagers\r\n>;\r\n\r\nexport function collateralManagersReducer(\r\n state = collateralManagersDefaultState,\r\n action: CollateralManagersActionTypes,\r\n): EntityListState {\r\n switch (action.type) {\r\n case getType(collateralManagersActions.requestCollateralManagers):\r\n return {\r\n ...state,\r\n requestState: action.payload.requestState,\r\n };\r\n case getType(collateralManagersActions.responseCollateralManagers):\r\n return {\r\n ...state,\r\n items: action.payload.collateralManagers,\r\n requestState: action.payload.requestState,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { Company } from '../../types/amr-pipeline/models/Company';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { TTrusteeActionType, trusteeActions } from '../../actions/entities/trustee.actions';\r\n\r\nexport const trusteeInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none\r\n}\r\n\r\nexport function trusteeReducer(state = trusteeInitialState, action: TTrusteeActionType): EntityListState {\r\n switch (action.type) {\r\n case getType(trusteeActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(trusteeActions.requestResult):\r\n return {\r\n items: action.payload.trustee,\r\n requestState: action.payload.requestState\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { RequestState } from \"../../constants/request-state\";\r\nimport { getType } from \"typesafe-actions\";\r\nimport { TPageConfigActions, pageConfigActions } from \"../../actions/page-config.actions\";\r\nimport { PageConfigState } from \"../../types/state/entities/PageConfigState\";\r\n\r\nexport const pageConfigDefaultState = {\r\n requestState: RequestState.none,\r\n defaultConfigRequestState: RequestState.none,\r\n defaultConfigs: {},\r\n configs: {}\r\n}\r\n\r\nexport function pageConfigReducer(state: PageConfigState, action: TPageConfigActions): PageConfigState {\r\n switch (action.type) {\r\n case getType(pageConfigActions.getConfigs.request):\r\n return {\r\n ...state,\r\n requestState: RequestState.request\r\n };\r\n case getType(pageConfigActions.getDefaultConfig.request):\r\n return {\r\n ...state,\r\n defaultConfigRequestState: RequestState.request\r\n };\r\n case getType(pageConfigActions.getConfigs.success):\r\n return {\r\n ...state,\r\n configs: action.payload.configs,\r\n requestState: RequestState.success\r\n }\r\n case getType(pageConfigActions.saveColumns.success):\r\n return {\r\n ...state,\r\n configs: {\r\n ...state.configs,\r\n [action.payload.configType]: {\r\n ...state.configs[action.payload.configType],\r\n columns: action.payload.columns\r\n }\r\n }\r\n }\r\n case getType(pageConfigActions.getDefaultConfig.success):\r\n return {\r\n ...state,\r\n defaultConfigRequestState: RequestState.success,\r\n defaultConfigs: {\r\n ...state.defaultConfigs,\r\n [action.payload.configType]: {\r\n ...state.defaultConfigs[action.payload.configType],\r\n ...action.payload.config,\r\n }\r\n }\r\n }\r\n case getType(pageConfigActions.getConfigs.failure):\r\n return {\r\n ...state,\r\n requestState: RequestState.failure\r\n }\r\n default:\r\n return state\r\n }\r\n}\r\n","import { getType } from 'typesafe-actions';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { LiveBiddingPosition } from '../../types/live-bidding/LiveBiddingPosition';\r\nimport { TLiveBiddingAction, liveBiddingActions } from '../../actions/entities/live-bidding.actions';\r\n\r\nexport const liveBiddingInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none // not used\r\n}\r\n\r\nexport function liveBiddingReducer(state = liveBiddingInitialState, action: TLiveBiddingAction): EntityListState {\r\n switch (action.type) {\r\n case getType(liveBiddingActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request\r\n };\r\n case getType(liveBiddingActions.response):\r\n return {\r\n items: action.payload.positions,\r\n requestState: action.payload.requestState\r\n };\r\n case getType(liveBiddingActions.reset):\r\n return {\r\n ...state,\r\n items: state.items.filter(x => x.bwicReferenceName !== action.payload.bwicReferenceName)\r\n };\r\n case getType(liveBiddingActions.stage2LevelChange):\r\n return {\r\n ...state,\r\n items: state.items.map(x =>\r\n x.bwicReferenceName === action.payload.bwicReferenceName && x.positionId === action.payload.positionId ? {\r\n ...x,\r\n openBiddingStage2Level: action.payload.level,\r\n tiedForBest: action.payload.tiedForBest,\r\n latestBidSubmission: action.payload.sentDateUtc\r\n } : x\r\n )\r\n };\r\n case getType(liveBiddingActions.stage2Start):\r\n return {\r\n ...state,\r\n items: state.items\r\n .filter(x => x.bwicReferenceName !== action.payload.bwicReferenceName)\r\n .concat(action.payload.canDealerBidOnPositions?.map(x => ({\r\n bwicReferenceName: action.payload.bwicReferenceName,\r\n positionId: x.positionId,\r\n isStage2Participant: x.canBidOnStage2,\r\n openBiddingStage2Level: x.level,\r\n tiedForBest: x.tiedForBest,\r\n latestBidSubmission: undefined\r\n })) ?? [])\r\n };\r\n\r\n default: return state;\r\n };\r\n}\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { cloSystemInfrastructureActions } from '../../actions/entities/cloSystemInfrastructure';\r\nimport { CloSystemInfrastructures } from '../../types/clo-managers/CloSystemInfrastructures';\r\n\r\nexport const cloSystemInfrastructureDefaultState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none,\r\n};\r\n\r\nexport type cloSystemInfrastructureActionTypes = ActionType<\r\n | typeof cloSystemInfrastructureActions.requestData\r\n | typeof cloSystemInfrastructureActions.responseData\r\n>;\r\n\r\nexport function cloSystemInfrastructureReducer(\r\n state = cloSystemInfrastructureDefaultState,\r\n action: cloSystemInfrastructureActionTypes,\r\n): EntityListState {\r\n switch (action.type) {\r\n case getType(cloSystemInfrastructureActions.requestData):\r\n return {\r\n ...state,\r\n requestState: action.payload.requestState,\r\n };\r\n case getType(cloSystemInfrastructureActions.responseData):\r\n return {\r\n ...state,\r\n items: action.payload.cloSystemInfrastructure,\r\n requestState: action.payload.requestState,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { Company } from \"../../types/amr-pipeline/models/Company\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport {\r\n TPartiesActionType,\r\n partiesActions,\r\n} from \"../../actions/entities/parties.actions\";\r\nimport { PartiesState } from \"../../types/state/entities/PartiesState\";\r\n\r\nconst sortCompany = (a: Company, b: Company) =>\r\n a.legalName.localeCompare(b.legalName);\r\n\r\nexport const partiesInitialState: PartiesState = {\r\n items: undefined,\r\n requestState: RequestState.none,\r\n};\r\n\r\nexport function partiesReducer(\r\n state = partiesInitialState,\r\n action: TPartiesActionType\r\n): PartiesState {\r\n switch (action.type) {\r\n case getType(partiesActions.request):\r\n return {\r\n items: undefined,\r\n requestState: RequestState.request,\r\n };\r\n case getType(partiesActions.requestResult):\r\n const { items, requestState } = action.payload;\r\n return {\r\n requestState,\r\n items: items\r\n ? {\r\n arrangerCompanies:\r\n items.arrangerCompanies.sort(sortCompany),\r\n trusteeCompanies:\r\n items.trusteeCompanies.sort(sortCompany),\r\n collateralManagerCompanies:\r\n items.collateralManagerCompanies.sort(\r\n sortCompany\r\n ),\r\n majorityEquityCompanies:\r\n items.majorityEquityCompanies.sort(sortCompany),\r\n amrAgentCompanies:\r\n items.amrAgentCompanies.sort(sortCompany),\r\n }\r\n : undefined,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n\r\n","import { getType } from 'typesafe-actions';\r\nimport { Company } from '../../types/amr-pipeline/models/Company';\r\nimport { EntityListState } from '../../types/state/entities/EntityListState';\r\nimport { RequestState } from '../../constants/request-state';\r\nimport {\r\n TAvailableBrokerDealersActionType,\r\n availableBrokerDealersActions,\r\n} from '../../actions/entities/availableBrokerDealers.actions';\r\nimport { CompanyStatus } from '../../types/amr-pipeline/enums/CompanyStatus';\r\n\r\nexport const availableBrokerDealersInitialState: EntityListState = {\r\n items: [],\r\n requestState: RequestState.none,\r\n};\r\n\r\nexport function availableBrokerDealersReducer(\r\n state = availableBrokerDealersInitialState,\r\n action: TAvailableBrokerDealersActionType,\r\n): EntityListState {\r\n switch (action.type) {\r\n case getType(availableBrokerDealersActions.request):\r\n return {\r\n items: [],\r\n requestState: RequestState.request,\r\n };\r\n case getType(availableBrokerDealersActions.requestResult):\r\n return {\r\n items: action.payload.companies\r\n .filter(c => c.status === CompanyStatus.Active)\r\n .sort((a, b) => a.legalName.localeCompare(b.legalName)),\r\n requestState: action.payload.requestState,\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { EntityMapState } from \"../../types/state/entities/EntityMapState\";\r\nimport { latestTransactionActions, TLatestTransactionActionType } from \"../../actions/entities/latest-transaction.actions\";\r\nimport { apiUtils } from \"../../utils\";\r\nimport { TransactionSlim } from \"../../types/amr-pipeline/models/TransactionSlim\";\r\n\r\nexport const latestTransactionInitialState: EntityMapState = {\r\n requestState: RequestState.none,\r\n items: {}\r\n}\r\n\r\nexport function latestTransactionReducer(\r\n state = latestTransactionInitialState,\r\n action: TLatestTransactionActionType): EntityMapState {\r\n switch (action.type) {\r\n case getType(latestTransactionActions.request):\r\n return {\r\n requestState: RequestState.request,\r\n items: {}\r\n }\r\n case getType(latestTransactionActions.response):\r\n return {\r\n requestState: action.payload.requestState,\r\n items: apiUtils.normalize(action.payload.transactions, t => t.dealTicker.toLowerCase(), t => t)\r\n }\r\n case getType(latestTransactionActions.reset):\r\n return { ...latestTransactionInitialState };\r\n default: return state;\r\n }\r\n}\r\n","import { getType } from \"typesafe-actions\";\r\nimport { RequestState } from \"../../constants/request-state\";\r\nimport { EntityMapState } from \"../../types/state/entities/EntityMapState\";\r\nimport { apiUtils } from \"../../utils\";\r\nimport { ArrangerPipeline } from \"../../types/amr-pipeline/models/ArrangerPipeline\";\r\nimport { arrangersPipelineActions, TArrangersPipelineActionType } from \"../../actions/entities/arrangers-pipeline.actions\";\r\n\r\nexport const arrangersPipelineInitialState: EntityMapState = {\r\n requestState: RequestState.none,\r\n items: {}\r\n}\r\n\r\nexport function arrangersPipelineReducer(\r\n state = arrangersPipelineInitialState,\r\n action: TArrangersPipelineActionType): EntityMapState {\r\n switch (action.type) {\r\n case getType(arrangersPipelineActions.request):\r\n return {\r\n requestState: RequestState.request,\r\n items: {}\r\n }\r\n case getType(arrangersPipelineActions.response):\r\n return {\r\n requestState: action.payload.requestState,\r\n items: apiUtils.normalize(action.payload.pipeline, t => t.dealTicker?.toLowerCase() ?? '', t => t)\r\n }\r\n case getType(arrangersPipelineActions.reset):\r\n return { ...arrangersPipelineInitialState };\r\n default: return state;\r\n }\r\n}\r\n","import { TTrusteeActionType } from '../../actions/entities/trustee.actions';\r\nimport { EntitiesState } from \"../../types/state/entities/EntitiesState\";\r\nimport { ActionType } from '../../types/ActionType';\r\nimport { bdInventoryReducer, inventoryReducerDefaultState } from \"./bd-inventory.reducer\";\r\nimport { inventoryReducer, allInventoryReducerDefaultState } from './inventory-reducer';\r\nimport { brokerDealerListInitialState, brokerDealerListReducer } from './broker-dealers-list.reducer';\r\nimport {\r\n brokerDealerContactListInitialState,\r\n brokerDealerContactListReducer,\r\n} from './broker-dealer-contact-list.reducer';\r\nimport { brokerDealerUserListInitialState, brokerDealerUserListReducer } from './broker-dealer-user-list.reducer';\r\nimport {\r\n settlementAgentAgreementsInitialState,\r\n settlementAgentAgreementsReducer\r\n} from './settlement-agent-agreements.reducer';\r\nimport {\r\n TAdminEditActionType,\r\n adminInventoryEditInitialState,\r\n adminInventoryEditReducer\r\n} from './admin-inventory-edit.reducer';\r\nimport {\r\n priceTalksInitialState,\r\n priceTalksReducer\r\n} from '../price-talks.reducer';\r\nimport { rejectedTradesReducer, rejectedTradesInitialState } from './rejected-trades.reducer';\r\nimport { TPriceTalksActionType } from '../../actions/price-talks.actions';\r\nimport { portfolioListInitialState, portfolioListReducer } from './portfolio-list.reducer';\r\nimport { accountActions } from \"../../constants\";\r\nimport { emailPreferencesInitialState, emailPreferencesReducer } from \"../email-preferences.reducer\";\r\nimport { TEmailPreferecnesActionTypes } from \"../../actions/email-preferences.actions\";\r\nimport { activeInventorySecurityInitialState, activeInventorySecuritiesReducer, TActiveInventorySecuritiesActionType } from './active-inventory-security.reducer';\r\nimport { settlementAgentCommissionReducer, settlementAgentCommissionInitialState } from './settlement-agent-commission.reducer';\r\nimport { TSettlementAgentCommissionActionType } from '../../actions';\r\nimport { TSettlementAccountActionType } from '../../actions/settlement-account.actions';\r\nimport { settlementAccountInitialState, settlementAccountReducer } from './settlement-account.reducer';\r\nimport { assetManagerInitialState, assetManagerReducer } from './asset-manager.reducer';\r\nimport { TAssetManagerActionType } from \"../../actions/asset-manager.actions\";\r\nimport { tradeAllocationInitialState, tradeAllocationReducer } from './trade-allocation.reducer';\r\nimport { TradeAllocationActionType } from \"../../actions/trade-allocation.actions\";\r\nimport { tradeAllocationTemplateInitialState, tradeAllocationTemplateReducer } from './trade-allocation-template.reducer';\r\nimport { TradeAllocationTemplateActionType } from \"../../actions/trade-allocation-template.actions\";\r\nimport { awaitingTrades, awaitingTradesInitialState } from './awaiting-trades.reducer';\r\nimport { AwaitingTradesActionTypes } from '../../actions/entities/awaitingTrades.actions';\r\nimport { TRejectedTradesActionType } from '../../actions/entities/rejected-trades.actions';\r\nimport { CollateralManagersActionTypes, collateralManagersDefaultState, collateralManagersReducer } from \"./collateral-managers.reducer\";\r\nimport { trusteeInitialState, trusteeReducer } from './trustee.reducer';\r\nimport { pageConfigDefaultState, pageConfigReducer } from \"./page-config.reducer\";\r\nimport { TPageConfigActions } from \"../../actions/page-config.actions\";\r\nimport { liveBiddingInitialState, liveBiddingReducer } from './live-bidding.reducer';\r\nimport { TLiveBiddingAction } from '../../actions/entities/live-bidding.actions';\r\nimport { cloSystemInfrastructureActionTypes, cloSystemInfrastructureDefaultState, cloSystemInfrastructureReducer } from './cloSystemInfrastructure.reducer';\r\nimport { partiesInitialState, partiesReducer } from './parties.reducer';\r\nimport { TPartiesActionType } from '../../actions/entities/parties.actions';\r\nimport { availableBrokerDealersInitialState, availableBrokerDealersReducer } from './availableBrokerDealers.reducer';\r\nimport { TAvailableBrokerDealersActionType } from '../../actions/entities/availableBrokerDealers.actions';\r\nimport { latestTransactionInitialState, latestTransactionReducer } from './latest-transaction.reducer';\r\nimport { TLatestTransactionActionType } from '../../actions/entities/latest-transaction.actions';\r\nimport { arrangersPipelineInitialState, arrangersPipelineReducer } from './arrangers-pipeline.reducer';\r\nimport { TArrangersPipelineActionType } from '../../actions/entities/arrangers-pipeline.actions';\r\n\r\nconst initialState: EntitiesState = {\r\n inventory: inventoryReducerDefaultState,\r\n allInventory: allInventoryReducerDefaultState,\r\n brokerDealerList: brokerDealerListInitialState,\r\n brokerDealerContactList: brokerDealerContactListInitialState,\r\n brokerDealerUserList: brokerDealerUserListInitialState,\r\n settlementAgentAgreements: settlementAgentAgreementsInitialState,\r\n portfolios: portfolioListInitialState,\r\n adminInventoryEdit: adminInventoryEditInitialState,\r\n priceTalks: priceTalksInitialState,\r\n emailPreferences: emailPreferencesInitialState,\r\n activeInventorySecurities: activeInventorySecurityInitialState,\r\n settlementAgentCommission: settlementAgentCommissionInitialState,\r\n settlementAccount: settlementAccountInitialState,\r\n assetManager: assetManagerInitialState,\r\n tradeAllocation: tradeAllocationInitialState,\r\n tradeAllocationTemplate: tradeAllocationTemplateInitialState,\r\n awaitingTrades: awaitingTradesInitialState,\r\n rejectedTrades: rejectedTradesInitialState,\r\n trustee: trusteeInitialState,\r\n collateralManagers: collateralManagersDefaultState,\r\n pageConfig: pageConfigDefaultState,\r\n liveBidding: liveBiddingInitialState,\r\n cloSystemInfrastructure: cloSystemInfrastructureDefaultState,\r\n parties: partiesInitialState,\r\n availableBrokerDealers: availableBrokerDealersInitialState,\r\n latestTransaction: latestTransactionInitialState,\r\n arrangersPipeline: arrangersPipelineInitialState\r\n};\r\n\r\nexport function entities(state = initialState, action: ActionType): EntitiesState {\r\n if (action.type === accountActions.LOGOUT) return { ...initialState };\r\n\r\n const [branch, feature] = action.type.split('/');\r\n\r\n if (branch !== 'entities') {\r\n return state;\r\n }\r\n\r\n switch (feature) {\r\n case 'bd-inventory':\r\n return {\r\n ...state,\r\n inventory: bdInventoryReducer(state.inventory, action)\r\n };\r\n case 'inventory':\r\n return {\r\n ...state,\r\n allInventory: inventoryReducer(state.allInventory, action)\r\n };\r\n case 'admin-inventory-edit':\r\n return {\r\n ...state,\r\n adminInventoryEdit: adminInventoryEditReducer(state.adminInventoryEdit, action as TAdminEditActionType)\r\n }\r\n case 'broker-dealer-list':\r\n return {\r\n ...state,\r\n brokerDealerList: brokerDealerListReducer(state.brokerDealerList, action)\r\n };\r\n case 'broker-dealer-contact-list':\r\n return {\r\n ...state,\r\n brokerDealerContactList: brokerDealerContactListReducer(state.brokerDealerContactList, action)\r\n };\r\n case 'broker-dealer-user-list':\r\n return {\r\n ...state,\r\n brokerDealerUserList: brokerDealerUserListReducer(state.brokerDealerUserList, action)\r\n };\r\n case 'settlement-agent-agreements':\r\n return {\r\n ...state,\r\n settlementAgentAgreements: settlementAgentAgreementsReducer(state.settlementAgentAgreements, action)\r\n };\r\n case 'portfolio-list':\r\n return {\r\n ...state,\r\n portfolios: portfolioListReducer(state.portfolios, action)\r\n }\r\n case 'priceTalks':\r\n return {\r\n ...state,\r\n priceTalks: priceTalksReducer(state.priceTalks, action as TPriceTalksActionType)\r\n }\r\n case 'email-preferences':\r\n return {\r\n ...state,\r\n emailPreferences: emailPreferencesReducer(state.emailPreferences, action as TEmailPreferecnesActionTypes)\r\n };\r\n case 'active-inventories-securities':\r\n return {\r\n ...state,\r\n activeInventorySecurities: activeInventorySecuritiesReducer(state.activeInventorySecurities, action as TActiveInventorySecuritiesActionType)\r\n };\r\n case 'settlement-agent-commission':\r\n return {\r\n ...state,\r\n settlementAgentCommission: settlementAgentCommissionReducer(state.settlementAgentCommission, action as TSettlementAgentCommissionActionType)\r\n };\r\n case 'settlement-account':\r\n return {\r\n ...state,\r\n settlementAccount: settlementAccountReducer(state.settlementAccount, action as TSettlementAccountActionType)\r\n };\r\n case 'asset-manager':\r\n return {\r\n ...state,\r\n assetManager: assetManagerReducer(state.assetManager, action as TAssetManagerActionType)\r\n };\r\n case 'trade-allocation':\r\n return {\r\n ...state,\r\n tradeAllocation: tradeAllocationReducer(state.tradeAllocation, action as TradeAllocationActionType)\r\n };\r\n case 'trade-allocation-template':\r\n return {\r\n ...state,\r\n tradeAllocationTemplate: tradeAllocationTemplateReducer(state.tradeAllocationTemplate, action as TradeAllocationTemplateActionType)\r\n };\r\n case 'awaitingTrades':\r\n return {\r\n ...state,\r\n awaitingTrades: awaitingTrades(state.awaitingTrades, action as AwaitingTradesActionTypes)\r\n }\r\n case 'rejected-trades':\r\n return {\r\n ...state,\r\n rejectedTrades: rejectedTradesReducer(state.rejectedTrades, action as TRejectedTradesActionType)\r\n }\r\n case 'collateral-managers':\r\n return {\r\n ...state,\r\n collateralManagers: collateralManagersReducer(state.collateralManagers, action as CollateralManagersActionTypes)\r\n }\r\n case 'trustee':\r\n return {\r\n ...state,\r\n trustee: trusteeReducer(state.trustee, action as TTrusteeActionType)\r\n }\r\n case 'page-config':\r\n return {\r\n ...state,\r\n pageConfig: pageConfigReducer(state.pageConfig, action as TPageConfigActions)\r\n }\r\n case 'live-bidding':\r\n return {\r\n ...state,\r\n liveBidding: liveBiddingReducer(state.liveBidding, action as TLiveBiddingAction)\r\n }\r\n case 'cloSystemInfrastructure':\r\n return {\r\n ...state,\r\n cloSystemInfrastructure: cloSystemInfrastructureReducer(state.cloSystemInfrastructure, action as cloSystemInfrastructureActionTypes)\r\n }\r\n case 'parties':\r\n return {\r\n ...state,\r\n parties: partiesReducer(state.parties, action as TPartiesActionType),\r\n };\r\n case 'availableBrokerDealers':\r\n return {\r\n ...state,\r\n availableBrokerDealers: availableBrokerDealersReducer(state.availableBrokerDealers, action as TAvailableBrokerDealersActionType),\r\n }\r\n case 'latestTransaction':\r\n return {\r\n ...state,\r\n latestTransaction: latestTransactionReducer(\r\n state.latestTransaction,\r\n action as TLatestTransactionActionType\r\n )\r\n }\r\n case 'arrangersPipeline':\r\n return {\r\n ...state,\r\n arrangersPipeline: arrangersPipelineReducer(\r\n state.arrangersPipeline,\r\n action as TArrangersPipelineActionType\r\n )\r\n }\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { errorActions as actionTypes } from '../constants';\r\n\r\nconst initialState = {\r\n criticalError: false,\r\n error: undefined\r\n}\r\n\r\nexport const error = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.CRITICAL_ERROR:\r\n return { criticalError: true, error: action.error };\r\n case actionTypes.ERROR_RESET:\r\n return { ...initialState };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { AnyAction } from 'redux';\r\nimport { getType } from 'typesafe-actions';\r\nimport { FavoriteBrokerDealersState } from '../types/state/FavoriteBrokerDealersState';\r\nimport { favoriteBrokerDealersActions } from '../actions/favorite-broker-dealers.actions';\r\nimport { RequestState } from '../constants/request-state';\r\n\r\nconst initialState: FavoriteBrokerDealersState = {\r\n favorites: {},\r\n requestState: RequestState.none,\r\n isUpdatingFavorite: {}\r\n};\r\n\r\nexport const favoriteBrokerDealers = (state = initialState, action: AnyAction): FavoriteBrokerDealersState => {\r\n switch (action.type) {\r\n case getType(favoriteBrokerDealersActions.fetchFavoriteBrokerDealersRequest):\r\n return {\r\n ...state,\r\n requestState: RequestState.request\r\n };\r\n case getType(favoriteBrokerDealersActions.fetchFavoriteBrokerDealersSuccess):\r\n return {\r\n ...state,\r\n requestState: RequestState.success,\r\n favorites: action.payload.favorites\r\n };\r\n case getType(favoriteBrokerDealersActions.fetchFavoriteBrokerDealersFailure):\r\n return {\r\n ...state,\r\n requestState: RequestState.failure,\r\n };\r\n case getType(favoriteBrokerDealersActions.updateFavoriteBrokerDealerRequest):\r\n return {\r\n ...state,\r\n isUpdatingFavorite: { ...state.isUpdatingFavorite, [action.payload.dealerId]: true }\r\n };\r\n case getType(favoriteBrokerDealersActions.updateFavoriteBrokerDealerSuccess): {\r\n const isUpdatingFavorite = { ...state.isUpdatingFavorite };\r\n delete isUpdatingFavorite[action.payload.dealerId];\r\n return {\r\n ...state,\r\n isUpdatingFavorite,\r\n favorites: action.payload.favorites\r\n };\r\n }\r\n case getType(favoriteBrokerDealersActions.updateFavoriteBrokerDealerFailure): {\r\n const isUpdatingFavorite = { ...state.isUpdatingFavorite };\r\n delete isUpdatingFavorite[action.payload.dealerId];\r\n return {\r\n ...state,\r\n isUpdatingFavorite\r\n };\r\n }\r\n case getType(favoriteBrokerDealersActions.reset):\r\n return { ...initialState };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { Action, Reducer } from \"redux\";\r\nimport { filterActions } from 'redux-ignore';\r\nimport { user } from '../user/user';\r\n\r\nexport const filterActionsReducer = (\r\n reducer: Reducer,\r\n roles?: string[],\r\n filter?: (action: Action) => boolean) => {\r\n return filterActions(\r\n reducer,\r\n action => hasRoles(roles) && (filter == null || filter(action))\r\n );\r\n}\r\n\r\nconst hasRoles = (roles?: string[]) => (roles && roles.length) ? user.hasRoles(...roles) : true\r\n","import { cloneDeep, first, isNil, last } from 'lodash';\r\nimport { ActionType, getType } from 'typesafe-actions';\r\nimport { createFilterActions } from '../actions/filter.actions';\r\nimport { portfolioInitialFilters } from '../components/portfolio/filter/portfolioInitialFilters';\r\nimport { accountActions, amrArrangerPipelineFilters, pipelineFilters } from '../constants';\r\nimport { dateRangeFilterOptions } from '../constants/date-range.filter';\r\nimport { TFilter, FilterState, TFilterType, BwicFilterType } from '../types/filters/FilterState';\r\nimport { PipelineType } from '../types/amr-pipeline/enums/PipelineType';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { FilterBooleanGroup, FilterDateGroup, FilterSelectGroup } from '../types/filters/FilterGroup';\r\nimport { FilterOption, FilterOptionBase } from '../types/filters/FilterOption';\r\nimport { RedirectFilterOption } from '../types/filters/RedirectFilterOption';\r\nimport { filterUtils } from '../utils/filtering/filter.utils';\r\nimport { numericUtils } from '../utils';\r\nimport { deserializeFilters } from '../utils/filtering/serializers/amr-pipeline/deserializeFilters';\r\nimport { inventoryFilters } from '../components/inventory/filter/inventoryFilters';\r\nimport { bdInventoryFilters } from '../components/inventory/bd/filter/bdInventoryFilters';\r\nimport { bwicMonitorBuyFilters, bwicMonitorFilters, bwicMonitorSellFilters } from '../types/state/AllBwicsState';\r\n\r\nfunction getDefaultFilter(filterType: TFilterType): TFilter {\r\n switch (filterType) {\r\n case PipelineType.ArrangerPipeline:\r\n return amrArrangerPipelineFilters.defaultFilter;\r\n case PipelineType.Deals:\r\n case PipelineType.IOIs:\r\n return pipelineFilters.defaultFilter;\r\n case BwicFilterType.Portfolio:\r\n return portfolioInitialFilters.defaultFilter;\r\n case BwicFilterType.Inventory:\r\n return inventoryFilters.defaultFilter;\r\n case BwicFilterType.BDInventory:\r\n return bdInventoryFilters.defaultFilter;\r\n case BwicFilterType.BwicMonitor:\r\n return bwicMonitorFilters.defaultFilters();\r\n case BwicFilterType.BwicMonitorSell:\r\n return bwicMonitorSellFilters.defaultFilters;\r\n case BwicFilterType.BwicMonitorBuy:\r\n return bwicMonitorBuyFilters.defaultFilters;\r\n default:\r\n return {};\r\n }\r\n}\r\n\r\nfunction getInitialVisibleFilters(filterType: TFilterType): string[] {\r\n switch (filterType) {\r\n case PipelineType.ArrangerPipeline:\r\n return amrArrangerPipelineFilters.visibleFilters;\r\n case PipelineType.Deals:\r\n case PipelineType.IOIs:\r\n return pipelineFilters.visibleFilters;\r\n case BwicFilterType.Portfolio:\r\n return portfolioInitialFilters.visibleFilters;\r\n case BwicFilterType.Inventory:\r\n return inventoryFilters.visibleFilters\r\n case BwicFilterType.BDInventory:\r\n return bdInventoryFilters.visibleFilters;\r\n case BwicFilterType.BwicMonitor:\r\n return bwicMonitorFilters.visibleFilters;\r\n case BwicFilterType.BwicMonitorSell:\r\n return bwicMonitorSellFilters.visibleFilters;\r\n case BwicFilterType.BwicMonitorBuy:\r\n return bwicMonitorBuyFilters.visibleFilters;\r\n default:\r\n return [];\r\n }\r\n}\r\n\r\nfunction getInitialState(filterType: TFilterType): FilterState {\r\n return {\r\n filter: getDefaultFilter(filterType),\r\n visibleFilters: getInitialVisibleFilters(filterType),\r\n lastAppliedFilter: undefined,\r\n selectedFilter: undefined,\r\n redirectFilters: null,\r\n filterChanged: false,\r\n filterApplied: true,\r\n filterModified: false,\r\n };\r\n}\r\n\r\nexport const createFilter = (filterType: TFilterType) => {\r\n const actions = createFilterActions(filterType);\r\n type TFilterActions = ActionType<(typeof actions)[keyof typeof actions]>;\r\n\r\n return (state: FilterState = getInitialState(filterType), action: TFilterActions) => {\r\n const initialState = getInitialState(filterType);\r\n\r\n if (action.type === accountActions.LOGOUT) {\r\n return initialState;\r\n }\r\n if (action.payload?.filterType !== filterType) {\r\n return state;\r\n }\r\n\r\n switch (action.type) {\r\n case getType(actions.init): {\r\n return {\r\n ...state,\r\n visibleFilters: state.redirectFilters\r\n ? visibleRedirectFilters(state, state.redirectFilters)\r\n : state.visibleFilters,\r\n initialFilter: { ...action.payload.filter },\r\n filter: state.redirectFilters\r\n ? applyRedirect(action.payload.filter, state.redirectFilters, filterType)\r\n : { ...action.payload.filter }\r\n };\r\n }\r\n case getType(actions.resetFilter): {\r\n const filter = resetFilter(state.filter, state.initialFilter);\r\n\r\n return {\r\n ...state,\r\n filterApplied: true,\r\n filterChanged: false,\r\n filter,\r\n lastAppliedFilter: undefined,\r\n };\r\n }\r\n case getType(actions.resetFiltersVisibility): {\r\n return {\r\n ...state,\r\n visibleFilters: getInitialVisibleFilters(filterType),\r\n };\r\n }\r\n case getType(actions.updateFilterState):\r\n return {\r\n ...state,\r\n filterApplied: false,\r\n filterChanged: filterUtils.isFilterChanged(filterType, state.filter, state.initialFilter),\r\n filterModified: filterUtils.isFilterChanged(filterType, state.filter, state.selectedFilter),\r\n };\r\n case getType(actions.applyFilter):\r\n return {\r\n ...state,\r\n filterApplied: true,\r\n filter: setFilterApplied(state.filter, true),\r\n lastAppliedFilter: setFilterApplied(state.filter, true),\r\n };\r\n case getType(actions.storeFilterData.request):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n requestState: RequestState.request,\r\n },\r\n },\r\n };\r\n case getType(actions.storeFilterData.success):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n filter: action.payload.data,\r\n requestState: RequestState.success,\r\n },\r\n },\r\n };\r\n case getType(actions.storeFilterData.failure):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n requestState: RequestState.failure,\r\n },\r\n },\r\n };\r\n case getType(actions.filterSelectChange):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: state.filter[action.payload.filterName].filter.map((r: FilterOption) =>\r\n action.payload.option === r.value ? { ...r, selected: !r.selected } : r,\r\n ),\r\n },\r\n },\r\n };\r\n case getType(actions.changeRangeFilter):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: action.payload.value,\r\n },\r\n },\r\n };\r\n case getType(actions.filterDateClearSelectedOptions):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n selectedOption: undefined,\r\n options: {\r\n ...initialState.filter[action.payload.filterName].filter.options,\r\n },\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterDateSelectOption): {\r\n const { option, filterName } = action.payload;\r\n\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [filterName]: {\r\n ...state.filter[filterName],\r\n isApplied: false,\r\n filter: {\r\n selectedOption: option,\r\n options: {\r\n ...initialState.filter[filterName].filter.options,\r\n customYearsRange: numericUtils.isNumber(option.from) && numericUtils.isNumber(option.to)\r\n ? { from: String(option.from), to: String(option.to) }\r\n : initialState.filter[filterName].filter.options.customYearsRange,\r\n },\r\n },\r\n },\r\n },\r\n };\r\n }\r\n case getType(actions.filterDateTimeOptionSelected):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...state.filter[action.payload.filterName].filter,\r\n selectedOption: action.payload.option,\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterDateSelectYearsRange):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...state.filter[action.payload.filterName].filter,\r\n options: {\r\n ...state.filter[action.payload.filterName].filter.options,\r\n customYearsRange: action.payload.option,\r\n },\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterDateSelectCustomRange):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...state.filter[action.payload.filterName].filter,\r\n options: {\r\n ...state.filter[action.payload.filterName].filter.options,\r\n customDateRange: action.payload.option,\r\n },\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterDateTimeSelectCustomRange):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...state.filter[action.payload.filterName].filter,\r\n selectedOption: {\r\n ...state.filter[action.payload.filterName].filter.selectedOption,\r\n ...action.payload.option,\r\n },\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterRadioChange):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...state.filter[action.payload.filterName].filter,\r\n selectedOption: action.payload.option,\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterRadioClearOption):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...initialState.filter[action.payload.filterName].filter,\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterSelectSelectAll):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: [\r\n ...state.filter[action.payload.filterName].filter.map((f: FilterOption) => ({\r\n ...f,\r\n selected: f.text.toLowerCase().includes(action.payload.searchTerm)\r\n ? true\r\n : f.selected,\r\n })),\r\n ],\r\n },\r\n },\r\n };\r\n case getType(actions.filterSelectClearAll):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: [\r\n ...state.filter[action.payload.filterName].filter.map((f: FilterOption) => ({\r\n ...f,\r\n selected: false,\r\n })),\r\n ],\r\n },\r\n },\r\n };\r\n case getType(actions.filterRangeClearSelectedOptions):\r\n return {\r\n ...state,\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...state.filter[action.payload.filterName],\r\n isApplied: false,\r\n filter: {\r\n ...initialState.filter[action.payload.filterName].filter,\r\n },\r\n },\r\n },\r\n };\r\n case getType(actions.filterVisibilityChange):\r\n const visible = !state.filter[action.payload.filterName].visible;\r\n const selected = !state.filter[action.payload.filterName].selected;\r\n const currentFilter = state.filter[action.payload.filterName];\r\n\r\n return {\r\n ...state,\r\n visibleFilters: visible\r\n ? [...state.visibleFilters, action.payload.filterName]\r\n : state.visibleFilters.filter(f => f !== action.payload.filterName),\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...currentFilter,\r\n visible,\r\n selected,\r\n filter: visible\r\n ? currentFilter.filter\r\n : state.initialFilter\r\n ? state.initialFilter[action.payload.filterName].filter\r\n : getDefaultFilter(filterType)[action.payload.filterName].filter,\r\n },\r\n },\r\n };\r\n case getType(actions.makeFilterVisible): {\r\n const currentFilter = state.filter[action.payload.filterName];\r\n\r\n return {\r\n ...state,\r\n visibleFilters: [...state.visibleFilters, action.payload.filterName],\r\n filter: {\r\n ...state.filter,\r\n [action.payload.filterName]: {\r\n ...currentFilter,\r\n visible: true,\r\n selected: true,\r\n },\r\n },\r\n };\r\n }\r\n case getType(actions.setFilterByReferenceName):\r\n return {\r\n ...state,\r\n filterModified: false,\r\n selectedFilterReferenceName: action.payload.selectedFilterReferenceName,\r\n selectedFilter: action.payload.selectedFilter,\r\n };\r\n case getType(actions.selectFilterFromConfig):\r\n if (state.redirectFilters) {\r\n return {\r\n ...state,\r\n redirectFilters: null,\r\n };\r\n }\r\n\r\n const { selectedFilter, referenceName } = action.payload;\r\n\r\n if (!selectedFilter) {\r\n return {\r\n ...state,\r\n };\r\n }\r\n\r\n const selectedFilterReferenceName = referenceName || selectedFilter.referenceName;\r\n const deserializedFilter = deserializeFilters(selectedFilter, state.filter, filterType);\r\n\r\n let visibleFilters = [...initialState.visibleFilters];\r\n\r\n const newFilterState = Object.entries(deserializedFilter).reduce((acc: any, [key, configFilter]) => {\r\n const { initialFilter } = state;\r\n\r\n // Bypass state change if initial filter is not initialized\r\n if (!initialFilter || !initialFilter[key]) {\r\n return acc;\r\n }\r\n\r\n const stateFilter = initialFilter[key];\r\n\r\n // Return initial filter value if config filter is undefined\r\n if (!deserializedFilter[key as keyof typeof deserializedFilter]) {\r\n return {\r\n ...acc,\r\n [key]: { ...stateFilter },\r\n };\r\n }\r\n\r\n // Add key to visible filters list, if user config filter is defined and\r\n // default visible filters list doesn't include this key\r\n visibleFilters =\r\n !!configFilter && !initialState.visibleFilters.includes(key)\r\n ? [...visibleFilters, key]\r\n : visibleFilters;\r\n\r\n return {\r\n ...acc,\r\n [key]: {\r\n ...stateFilter,\r\n filter: configFilter || stateFilter.filter,\r\n visible: !!configFilter,\r\n selected: !!configFilter,\r\n isApplied: !!configFilter,\r\n },\r\n };\r\n }, {});\r\n\r\n const mergedState = {\r\n ...state.filter,\r\n ...newFilterState,\r\n };\r\n\r\n return {\r\n ...state,\r\n filterModified: false,\r\n selectedFilter: mergedState,\r\n selectedFilterReferenceName,\r\n filterApplied: true,\r\n filterChanged: true,\r\n filter: mergedState,\r\n visibleFilters,\r\n };\r\n case getType(actions.setRedirectFilters):\r\n return {\r\n ...state,\r\n redirectFilters: action.payload.filter,\r\n };\r\n case getType(actions.resetFilterState):\r\n return initialState;\r\n case getType(actions.resetSelectedFilter):\r\n return {\r\n ...state,\r\n selectedFilterReferenceName: undefined,\r\n selectedFilter: undefined\r\n };\r\n default:\r\n return state;\r\n }\r\n };\r\n};\r\n\r\nconst resetFilter = (filter: TFilter, initialFilter: TFilter | undefined) => {\r\n const result = cloneDeep(filter);\r\n const filterKeys = Object.keys(filter);\r\n filterKeys.forEach(key => {\r\n const filterName = key;\r\n result[filterName] = initialFilter ? { ...initialFilter[filterName] } : { ...filter[filterName] };\r\n result[filterName].visible = filter[filterName].visible;\r\n result[filterName].selected = filter[filterName].selected;\r\n });\r\n return result;\r\n};\r\n\r\nfunction setFilterApplied(filter: TFilter, isApplied: boolean) {\r\n const filterKeys = Object.keys(filter);\r\n\r\n return filterKeys.reduce((acc, key) => {\r\n const currentFilter: any = filter[key];\r\n\r\n if (Array.isArray(currentFilter)) {\r\n return { ...acc, [key]: currentFilter };\r\n }\r\n\r\n return {\r\n ...acc,\r\n [key]: {\r\n ...filter[key],\r\n isApplied,\r\n },\r\n };\r\n }, {});\r\n}\r\n\r\nfunction setFilterOption(filter: FilterSelectGroup, options?: FilterOptionBase[]) {\r\n const filterData = filter.filter;\r\n\r\n return isNil(options)\r\n ? filter\r\n : {\r\n ...filter,\r\n visible: true,\r\n selected: true,\r\n disabled: false,\r\n filter: filterData.map(o => {\r\n const optionForSelect = options.find(option => o.value === option.value);\r\n\r\n return optionForSelect ? { ...optionForSelect, selected: true, visible: true, disabled: false } : o;\r\n }),\r\n };\r\n}\r\n\r\nfunction setFilterBoolean(filter: FilterBooleanGroup, selectedOption?: boolean) {\r\n return isNil(selectedOption)\r\n ? filter\r\n : {\r\n ...filter,\r\n visible: true,\r\n selected: true,\r\n disabled: false,\r\n filter: {\r\n selectedOption,\r\n },\r\n };\r\n}\r\n\r\nfunction setFilterYearsRange(filter: FilterDateGroup, selectedOptions?: [number, number]) {\r\n return isNil(selectedOptions)\r\n ? filter\r\n : ({\r\n ...filter,\r\n visible: true,\r\n selected: true,\r\n disabled: false,\r\n filter: {\r\n selectedOption: dateRangeFilterOptions.YearsRange,\r\n options: {\r\n customDateRange: {\r\n from: null,\r\n to: null,\r\n },\r\n customYearsRange: {\r\n from: first(selectedOptions)?.toString(),\r\n to: last(selectedOptions)?.toString(),\r\n },\r\n },\r\n },\r\n } as FilterDateGroup);\r\n}\r\n\r\nfunction setFilterDataRange(filter: FilterDateGroup, selectedOptions?: [Date, Date]) {\r\n return isNil(selectedOptions)\r\n ? filter\r\n : ({\r\n ...filter,\r\n visible: true,\r\n selected: true,\r\n disabled: false,\r\n filter: {\r\n selectedOption: dateRangeFilterOptions.Custom,\r\n options: {\r\n customDateRange: {\r\n from: first(selectedOptions),\r\n to: last(selectedOptions),\r\n },\r\n customYearsRange: {\r\n from: '',\r\n to: '',\r\n },\r\n },\r\n },\r\n } as FilterDateGroup);\r\n}\r\n\r\nfunction visibleRedirectFilters(state: FilterState, redirectFilters: RedirectFilterOption) {\r\n const { visibleFilters } = state;\r\n\r\n return Object.keys(redirectFilters).reduce((acc: string[], key: string) => {\r\n if (redirectFilters[key as keyof RedirectFilterOption] && visibleFilters.includes(key)) {\r\n return acc;\r\n }\r\n\r\n return [...acc, key];\r\n }, visibleFilters);\r\n}\r\n\r\nfunction applyRedirect(\r\n initialFilter: TFilter,\r\n redirectFilters: RedirectFilterOption,\r\n filterType: T,\r\n) {\r\n const cloned = cloneDeep(initialFilter);\r\n\r\n switch (filterType) {\r\n case PipelineType.ArrangerPipeline:\r\n return {\r\n ...cloned,\r\n managers: setFilterOption(cloned.managers as FilterSelectGroup, redirectFilters.managers),\r\n };\r\n case PipelineType.Deals:\r\n case PipelineType.IOIs:\r\n return {\r\n ...cloned,\r\n classNames: setFilterOption(cloned.classNames, redirectFilters.classNames),\r\n ratings: setFilterOption(cloned.ratings, redirectFilters.ratings),\r\n statuses: setFilterOption(cloned.statuses, redirectFilters.statuses),\r\n transactionTypes: setFilterOption(cloned.transactionTypes, redirectFilters.transactionTypes),\r\n managers: setFilterOption(cloned.managers as FilterSelectGroup, redirectFilters.managers),\r\n arrangers: setFilterOption(cloned.arrangers as FilterSelectGroup, redirectFilters.arrangers),\r\n trustees: setFilterOption(cloned.trustees, redirectFilters.trustees),\r\n amrDeal: setFilterBoolean(cloned.amrDeal, redirectFilters.amrDeal),\r\n euCompliance: setFilterBoolean(cloned.euCompliance, redirectFilters.euCompliance),\r\n esg: setFilterBoolean(cloned.esg, redirectFilters.esg),\r\n staticDeal: setFilterBoolean(cloned.staticDeal, redirectFilters.staticDeal),\r\n currency: setFilterOption(cloned.currency, redirectFilters.currency),\r\n reinvestmentEnd: setFilterYearsRange(cloned.reinvestmentEnd, redirectFilters.reinvestmentEnd),\r\n nonCallEnd: setFilterYearsRange(cloned.nonCallEnd, redirectFilters.nonCallEnd),\r\n pricingDate: setFilterDataRange(cloned.pricingDate, redirectFilters.pricingDate),\r\n };\r\n default: {\r\n return cloned;\r\n }\r\n }\r\n}\r\n","import { combineReducers } from 'redux';\r\nimport { BwicFilterType } from '../types/filters/FilterState';\r\nimport { createFilter } from './filter.reducer';\r\n\r\nexport const filters = combineReducers({\r\n portfolio: createFilter(BwicFilterType.Portfolio),\r\n inventory: createFilter(BwicFilterType.Inventory),\r\n bdInventory: createFilter(BwicFilterType.BDInventory),\r\n bwicMonitor: createFilter(BwicFilterType.BwicMonitor),\r\n bwicMonitorSell: createFilter(BwicFilterType.BwicMonitorSell),\r\n bwicMonitorBuy: createFilter(BwicFilterType.BwicMonitorBuy)\r\n})\r\n","import { formsActions as actionTypes } from '../constants';\r\n\r\nconst initialState = {\r\n triggerValidation: false,\r\n displayErrors: false\r\n}\r\n\r\nexport const forms = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.DISPLAY_VALIDATION_ERRORS:\r\n return action.activate ? {\r\n triggerValidation: !state.triggerValidation,\r\n displayErrors: true\r\n } : initialState;\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { constants, gridActions as actionTypes, uploadStatus } from '../constants';\r\nimport { OrderByDirection } from '../types/OrderByDirection';\r\n\r\nconst initialState = {\r\n searchTerm: '',\r\n lastAppliedSearchTerm: '',\r\n orderBy: {\r\n columnName: undefined,\r\n direction: OrderByDirection.asc\r\n },\r\n dataItems: [],\r\n selection: [],\r\n upload: { status: uploadStatus.none, progress: 0 },\r\n isDataProcessing: false,\r\n inputBlocked: false,\r\n mountedKey: 0,\r\n isValid: false,\r\n rowsLimit: constants.gridRowsLimit,\r\n position: {\r\n index: 0,\r\n editing: false,\r\n editingValue: ''\r\n },\r\n minDrafts: constants.gridRowsLimit\r\n};\r\n\r\nexport const grid = (state = initialState, action) => {\r\n switch (action.type) {\r\n case actionTypes.ROWS_LIMIT:\r\n return {\r\n ...state,\r\n rowsLimit: action.rowsLimit,\r\n minDrafts: action.minDrafts\r\n };\r\n case actionTypes.GRID_SET_MOUNTED_KEY:\r\n return {\r\n ...state,\r\n mountedKey: action.payload.key\r\n };\r\n case actionTypes.POSITION_CHANGE:\r\n return {\r\n ...state,\r\n selection: [],\r\n position: action.position\r\n };\r\n case actionTypes.APPLY_EDIT: {\r\n const { position } = state;\r\n const dataItems = state.dataItems.map((dataItem, index) =>\r\n position.index === index\r\n ? {\r\n ...dataItem,\r\n [position.columnName]: action.editingValue,\r\n errors: action.errors ?? []\r\n }\r\n : dataItem\r\n );\r\n\r\n return {\r\n ...state,\r\n position: { index: position.index, columnName: position.columnName },\r\n dataItems,\r\n selection: []\r\n };\r\n }\r\n case (actionTypes.UPDATE_DRAFT):\r\n return {\r\n ...state,\r\n dataItems: state.dataItems.map((item, index) =>\r\n index === action.rowIndex ? { ...item, draft: action.draft } : item)\r\n };\r\n case (actionTypes.ORDER_BY): {\r\n\r\n const { orderBy, dataItems } = action.ordering;\r\n return {\r\n ...state,\r\n orderBy,\r\n dataItems,\r\n selection: []\r\n };\r\n }\r\n case (actionTypes.DELETE_ROW):\r\n return {\r\n ...state,\r\n selection: [],\r\n position: state.position && state.position.index === action.index\r\n ? { index: state.position.index, columnName: state.position.columnName }\r\n : state.position,\r\n dataItems: state.dataItems.filter((e, i) => i !== action.index)\r\n };\r\n case (actionTypes.DELETE_SELECTED): {\r\n\r\n const { dataItems, selection } = state;\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: dataItems\r\n .filter((item, index) =>\r\n item.draft ||\r\n !selection.some(selected => selected === index))\r\n .sort((a, b) => !!a.draft - !!b.draft)\r\n };\r\n }\r\n case (actionTypes.DELETE_INVALID):\r\n if (state.isValid) {\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: deleteItemsWithErrorReducer(state.dataItems)\r\n };\r\n case (actionTypes.DELETE_FLAGGED):\r\n\r\n const { dataItems } = state;\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: dataItems\r\n .filter(item => !item.isFlagged)\r\n };\r\n case (actionTypes.EDITING): {\r\n\r\n const position = {\r\n ...state.position,\r\n editingValue: action.editing.value,\r\n editingError: action.editing.errorMessage\r\n };\r\n\r\n return {\r\n ...state,\r\n position,\r\n selection: []\r\n };\r\n }\r\n case actionTypes.SETUP_HEADERS:\r\n return {\r\n ...state,\r\n headers: action.headers\r\n };\r\n case actionTypes.ADD_COLUMN:\r\n return {\r\n ...state,\r\n headers: action.positionIndex == null\r\n ? state.headers.concat(action.column)\r\n : state.headers\r\n .slice(0, action.positionIndex)\r\n .concat(action.column)\r\n .concat(state.headers.slice(action.positionIndex))\r\n };\r\n case actionTypes.MOVE_COLUMN_DATA:\r\n return {\r\n ...state,\r\n dataItems: state.dataItems.map(i => {\r\n if (i.draft) return i;\r\n const changed = { ...i, [action.toColumnName]: i[action.fromColumnName] };\r\n delete changed[action.fromColumnName];\r\n\r\n return changed;\r\n })\r\n };\r\n case actionTypes.REMOVE_COLUMN:\r\n return {\r\n ...state,\r\n headers: state.headers.filter(h => h.name !== action.name),\r\n dataItems: state.dataItems.map(i => {\r\n if (i.draft) return i;\r\n\r\n const copy = { ...i };\r\n delete copy[action.name];\r\n\r\n return {\r\n ...copy,\r\n errors: copy.errors?.filter(e => e.columnName !== action.name)\r\n }\r\n })\r\n };\r\n case actionTypes.ADD_DATA_ITEMS: {\r\n const { currentItems, newItems } = action.payload;\r\n const length = currentItems.length + newItems.length;\r\n\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: currentItems\r\n .concat(newItems)\r\n .concat(state.dataItems.slice(length)),\r\n }\r\n };\r\n case actionTypes.REPLACE_DATA_ITEM:\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: state.dataItems.map((item, itemIndex) =>\r\n itemIndex === action.payload.index ? action.payload.dataItem : item)\r\n };\r\n case actionTypes.INSERT_DATA_ITEMS:\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems: state.dataItems\r\n .slice(0, action.payload.index)\r\n .concat(action.payload.newItems)\r\n .concat(state.dataItems.slice(action.payload.index))\r\n .slice(0, state.rowsLimit)\r\n };\r\n case actionTypes.APPEND_DATA_ITEMS:\r\n return {\r\n ...state,\r\n dataItems: [...state.dataItems, ...action.dataItems],\r\n selection: []\r\n };\r\n case actionTypes.SET_SELECTION:\r\n return {\r\n ...state,\r\n selection: action.selection\r\n };\r\n case actionTypes.VALIDATE:\r\n return {\r\n ...state,\r\n headers: action.validation.headers,\r\n dataItems: action.validation.dataItems,\r\n isValid: action.validation.isValid\r\n };\r\n case actionTypes.SHOW_HELP:\r\n return {\r\n ...state,\r\n showHelp: true\r\n };\r\n case actionTypes.HIDE_HELP:\r\n return {\r\n ...state,\r\n showHelp: false\r\n };\r\n case actionTypes.DATA_ITEMS_UPLOAD_STATE:\r\n return {\r\n ...state,\r\n upload: action.state\r\n };\r\n case actionTypes.RESET:\r\n return { ...initialState };\r\n case actionTypes.BLOCK_INPUT:\r\n return {\r\n ...state,\r\n inputBlocked: action.block\r\n };\r\n case actionTypes.DATA_PROCESSING:\r\n return {\r\n ...state,\r\n isDataProcessing: action.isDataProcessing\r\n };\r\n case actionTypes.CHANGE_ROW_ORDER: {\r\n const dataItems = [...state.dataItems];\r\n dataItems[action.payload.index] = state.dataItems[action.payload.newIndex];\r\n dataItems[action.payload.newIndex] = state.dataItems[action.payload.index];\r\n\r\n return {\r\n ...state,\r\n selection: [],\r\n dataItems\r\n };\r\n }\r\n case actionTypes.CLEAR:\r\n return {\r\n ...state,\r\n dataItems: state.dataItems.filter(i => i.draft)\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nconst deleteItemsWithErrorReducer = (dataItems) => {\r\n // filter non duplicate errors and drafts\r\n let items = dataItems\r\n .filter(i => !i.draft && (!i.errors || !i.errors.length || !i.errors.some(e => !e.isDuplicated)));\r\n while (true) {\r\n const duplicate = items.find(i => i.errors && i.errors.length);\r\n if (!duplicate) break;\r\n [...duplicate.errors].forEach(({ columnName }) => {\r\n const duplicateIndexes = items\r\n .filter(i => i[columnName] === duplicate[columnName])\r\n .map(i => items.indexOf(i));\r\n if (duplicateIndexes.length) {\r\n const alive = Math.min(...duplicateIndexes);\r\n const indexesToRemove = duplicateIndexes.filter(i => i !== alive);\r\n const filteredItems = items.filter((item, index) => !indexesToRemove.some(i => index === i));\r\n // remove resolved error\r\n filteredItems[alive] = {\r\n ...filteredItems[alive],\r\n errors: filteredItems[alive].errors.filter(e => e.columnName !== columnName)\r\n };\r\n /*eslint no-loop-func: 0*/\r\n items = filteredItems;\r\n }\r\n });\r\n }\r\n return items;\r\n};\r\n","import { HelpResourcesState } from '../types/state/HelpResourcesState';\r\nimport { helpResourcesActions, TResourcesActions } from '../actions/help-resources.actions';\r\nimport { getType } from 'typesafe-actions';\r\nimport { RequestState } from \"../constants/request-state\";\r\n\r\nconst initialState: HelpResourcesState = {\r\n categories: [],\r\n activeSectionArticles: [],\r\n search: {\r\n results: [],\r\n totalRecordNumber: 0\r\n },\r\n categoriesRequestState: RequestState.none,\r\n sectionRequestState: RequestState.none,\r\n searchRequestState: RequestState.none\r\n}\r\n\r\nexport const helpResources = (state = initialState, action: TResourcesActions) => {\r\n switch (action.type) {\r\n case getType(helpResourcesActions.resetSearch):\r\n return {\r\n ...state,\r\n search: {\r\n results: []\r\n },\r\n searchRequestState: RequestState.none\r\n }\r\n case getType(helpResourcesActions.resetSection):\r\n return {\r\n ...state,\r\n activeSectionArticles: [],\r\n sectionRequestState: RequestState.none\r\n }\r\n case getType(helpResourcesActions.fetchCategories.request):\r\n return {\r\n ...state,\r\n categoriesRequestState: RequestState.request\r\n }\r\n case getType(helpResourcesActions.fetchSection.request):\r\n return {\r\n ...state,\r\n sectionRequestState: RequestState.request\r\n }\r\n case getType(helpResourcesActions.fetchBySearch.request):\r\n return {\r\n ...state,\r\n searchRequestState: RequestState.request,\r\n totalRecordNumber: 0\r\n }\r\n case getType(helpResourcesActions.fetchCategories.success):\r\n return {\r\n ...state,\r\n categories: action.payload,\r\n categoriesRequestState: RequestState.success\r\n }\r\n case getType(helpResourcesActions.fetchBySearch.success):\r\n return {\r\n ...state,\r\n search: {\r\n ...state.search,\r\n results: action.payload.results,\r\n totalRecordNumber: action.payload.totalRecordNumber\r\n },\r\n searchRequestState: RequestState.success\r\n }\r\n case getType(helpResourcesActions.loadMoreSearch.success):\r\n return {\r\n ...state,\r\n search: {\r\n ...state.search,\r\n results: [\r\n ...state.search.results,\r\n ...action.payload.results\r\n ],\r\n totalRecordNumber: action.payload.totalRecordNumber\r\n },\r\n searchRequestState: RequestState.success\r\n }\r\n case getType(helpResourcesActions.fetchSection.success):\r\n return {\r\n ...state,\r\n activeSectionArticles: action.payload.articles,\r\n sectionRequestState: RequestState.success\r\n }\r\n default:\r\n return state;\r\n }\r\n}","import { AnyAction } from \"redux\";\r\nimport { ImDetailsDealsState } from \"../types/state/ImDetailsDealsState\";\r\nimport { imDetailsDealsActions as actionTypes } from \"../constants\";\r\nimport { AmrClass } from \"../types/amr-pipeline/models/AmrClass\";\r\n\r\nconst initialState: ImDetailsDealsState = {\r\n loadedDealReferenceNames: [],\r\n isDealsRequesting: false,\r\n isDealDetailsRequesting: false,\r\n isTrancheDetailsRequesting: false\r\n}\r\n\r\nexport const imDetailsDeals = (state: ImDetailsDealsState = initialState, action: AnyAction): ImDetailsDealsState => {\r\n switch (action.type) {\r\n case actionTypes.DEALS_RESET:\r\n return initialState;\r\n case actionTypes.DEALS_REQUESTING_STATE:\r\n return {\r\n ...state,\r\n isDealsRequesting: action.isRequesting\r\n };\r\n case actionTypes.DEAL_DETAILS_REQUESTING_STATE:\r\n return {\r\n ...state,\r\n isDealDetailsRequesting: action.isRequesting\r\n };\r\n case actionTypes.DEALS_TRANCHE_DETAILS_REQUESTUNG_STATE:\r\n return {\r\n ...state,\r\n isTrancheDetailsRequesting: action.isRequesting\r\n };\r\n case actionTypes.DEALS_STORE_DEALS:\r\n return {\r\n ...state,\r\n deals: action.deals\r\n };\r\n case actionTypes.DEALS_STORE_ACTUAL_AMR_CLASSES:\r\n return {\r\n ...state,\r\n loadedDealReferenceNames: state.loadedDealReferenceNames.concat(action.dealReferenceName),\r\n deals: state.deals?.map(d => d.referenceName === action.dealReferenceName\r\n ? {\r\n ...d,\r\n classes: d.classes.map(c => ({\r\n ...c,\r\n actualAuction: action.amrClasses.find((a: AmrClass) => a.referenceName === c.referenceName)\r\n })),\r\n }\r\n : d)\r\n };\r\n case actionTypes.DEALS_STORE_AMR_CLASSES:\r\n return {\r\n ...state,\r\n deals: state.deals?.map(d => d.referenceName === action.dealReferenceName\r\n ? {\r\n ...d,\r\n classes: d.classes.map(c => c.referenceName === action.classReferenceName\r\n ? { ...c, auctions: action.amrClasses } : c)\r\n }\r\n : d)\r\n };\r\n case actionTypes.DEALS_STORE_DOCUMENTS:\r\n return {\r\n ...state,\r\n deals: state.deals?.map(d => d.referenceName === action.dealReferenceName\r\n ? {\r\n ...d,\r\n documents: action.documents\r\n }\r\n : d)\r\n };\r\n case actionTypes.DEALS_STORE_DOCUMENTS_SEARCH_RESULTS:\r\n return {\r\n ...state,\r\n deals: state.deals?.map(d => d.referenceName === action.dealReferenceName\r\n ? {\r\n ...d,\r\n filteredDocuments: action.filteredDocuments\r\n }\r\n : d)\r\n };\r\n case actionTypes.DEALS_RESET_DOCUMENTS_SEARCH:\r\n return {\r\n ...state,\r\n deals: state.deals?.map(d =>\r\n ({\r\n ...d,\r\n filteredDocuments: undefined\r\n }))\r\n };\r\n default:\r\n return state;\r\n }\r\n}\r\n","import { ActionType, getType } from 'typesafe-actions';\r\nimport { imUserConfigActions } from '../actions';\r\nimport { pipelineRoleColumns } from '../constants';\r\nimport { RequestState } from '../constants/request-state';\r\nimport { StatisticsAlertOption } from '../types/amr-pipeline/enums/AlertOption';\r\nimport { AlertOption } from '../types/email-preferences/EmailPreferences';\r\nimport { UserConfigState } from '../types/state/UserConfigState';\r\nimport {\r\n CompanyAlertsConfig,\r\n ColumnsConfig,\r\n FilterConfig,\r\n ImAlertConfig,\r\n SecondaryStatsAlertsConfig,\r\n SummaryDailyAlertConfig,\r\n TransactionAlertConfig,\r\n WeeklyStatsAlertConfig,\r\n DailyStatsAlertsConfig,\r\n} from '../types/user-config/UserConfig';\r\nimport { UserConfigType } from '../types/user-config/UserConfigType';\r\nimport { user } from '../user';\r\nimport { mapConfig } from '../utils/amr-pipeline.utils';\r\n\r\nexport const userConfigInitialState: UserConfigState = {\r\n isLoading: false,\r\n isUpdating: false,\r\n isLoadingDefault: false,\r\n isDeleting: false,\r\n columnsConfig: [],\r\n filtersConfig: {\r\n [UserConfigType.imFilter]: {\r\n type: UserConfigType.imFilter,\r\n value: [],\r\n },\r\n [UserConfigType.apFilter]: {\r\n type: UserConfigType.apFilter,\r\n value: [],\r\n },\r\n },\r\n imAlertConfig: {\r\n type: UserConfigType.imAlert,\r\n value: {\r\n alertOption: AlertOption.Never,\r\n },\r\n },\r\n newTransactionAlertConfig: {\r\n type: UserConfigType.newPublishedTransactionAlert,\r\n value: {\r\n alertOption: AlertOption.Never,\r\n },\r\n },\r\n weeklyStatsAlertConfig: {\r\n type: UserConfigType.weeklyStatsEmail,\r\n value: {\r\n emailOption: StatisticsAlertOption.Never,\r\n },\r\n },\r\n transactionAlertConfig: {\r\n type: UserConfigType.transactionAlert,\r\n value: [],\r\n },\r\n apAlertConfig: {\r\n type: UserConfigType.arrangerPipelineAlert,\r\n value: {\r\n alertOption: AlertOption.Never,\r\n },\r\n },\r\n cloManagerAnalyticsAlert: {\r\n type: UserConfigType.cloManagerAnalyticsAlert,\r\n value: [],\r\n },\r\n cloManagerIssuanceMonitorAlert: {\r\n type: UserConfigType.cloManagerIssuanceMonitorAlert,\r\n value: [],\r\n },\r\n cloManagerArrangerPipelineAlert: {\r\n type: UserConfigType.cloManagerArrangerPipelineAlert,\r\n value: [],\r\n },\r\n cloManagerBwicAlert: {\r\n type: UserConfigType.cloManagerBwicAlert,\r\n value: [],\r\n },\r\n cloManagerDealerInventoryAlert: {\r\n type: UserConfigType.cloManagerDealerInventoryAlert,\r\n value: [],\r\n },\r\n bankAnalyticsAlert: {\r\n type: UserConfigType.bankAnalyticsAlert,\r\n value: [],\r\n },\r\n bankDealerInventoryAlert: {\r\n type: UserConfigType.bankDealerInventoryAlert,\r\n value: [],\r\n },\r\n bankIssuanceMonitorAlert: {\r\n type: UserConfigType.bankIssuanceMonitorAlert,\r\n value: [],\r\n },\r\n bankArrangerPipelineAlert: {\r\n type: UserConfigType.bankArrangerPipelineAlert,\r\n value: [],\r\n },\r\n summaryDailyAlertConfig: {\r\n type: UserConfigType.summaryDailyAlerts,\r\n value: [],\r\n },\r\n columnsDefaultConfig: [],\r\n};\r\n\r\nfunction filterForRoles(configs: ColumnsConfig[]) {\r\n return configs.map(el => ({\r\n ...el,\r\n value: el.value.filter(({ name }) => {\r\n const { includeFor = [], excludeFor = [] } = pipelineRoleColumns[name] || {};\r\n\r\n if (excludeFor.some((role: string) => user.hasRoles(role))) {\r\n return false;\r\n }\r\n\r\n return !includeFor.length || includeFor.some((role: string) => user.hasRoles(role));\r\n }),\r\n }));\r\n}\r\n\r\nexport const imUserConfig = (\r\n state = userConfigInitialState,\r\n action: ActionType<(typeof imUserConfigActions)[keyof typeof imUserConfigActions]>,\r\n): UserConfigState => {\r\n switch (action.type) {\r\n case getType(imUserConfigActions.getUserConfig):\r\n return {\r\n ...state,\r\n isLoading: true,\r\n };\r\n case getType(imUserConfigActions.getUserConfigResult):\r\n case getType(imUserConfigActions.updateUserConfigResult): {\r\n const config = mapConfig(action.payload.userConfig);\r\n const existingConfigTypes = config.map(({ type }) => type);\r\n const columnsConfig = config.filter(({ type }) =>\r\n [UserConfigType.imColumnsClassTab, UserConfigType.imColumnsDealTab].includes(type),\r\n ) as ColumnsConfig[];\r\n\r\n const dealsPipelineFilterConfig = config.find(({ type }) =>\r\n [UserConfigType.imFilter].includes(type),\r\n ) as FilterConfig;\r\n const arrangerPipelineFilterConfig = config.find(({ type }) =>\r\n [UserConfigType.apFilter].includes(type),\r\n ) as FilterConfig;\r\n const imAlertConfig = config.find(({ type }) => [UserConfigType.imAlert].includes(type)) as ImAlertConfig;\r\n const newTransactionAlertConfig = config.find(({ type }) =>\r\n [UserConfigType.newPublishedTransactionAlert].includes(type),\r\n ) as ImAlertConfig;\r\n const weeklyStatsAlertConfig = config.find(({ type }) =>\r\n [UserConfigType.weeklyStatsEmail].includes(type),\r\n ) as WeeklyStatsAlertConfig;\r\n const transactionAlertConfig = config.find(({ type }) =>\r\n [UserConfigType.transactionAlert].includes(type),\r\n ) as TransactionAlertConfig;\r\n const summaryDailyAlertConfig = config.find(({ type }) =>\r\n [UserConfigType.summaryDailyAlerts].includes(type),\r\n ) as SummaryDailyAlertConfig;\r\n const apAlertConfig = config.find(({ type }) =>\r\n [UserConfigType.arrangerPipelineAlert].includes(type),\r\n ) as ImAlertConfig;\r\n const cloManagerAnalyticsAlert = config.find(({ type }) =>\r\n [UserConfigType.cloManagerAnalyticsAlert].includes(type),\r\n ) as CompanyAlertsConfig;\r\n const cloManagerIssuanceMonitorAlert = config.find(({ type }) =>\r\n [UserConfigType.cloManagerIssuanceMonitorAlert].includes(type),\r\n ) as CompanyAlertsConfig;\r\n const cloManagerArrangerPipelineAlert = config.find(({ type }) =>\r\n [UserConfigType.cloManagerArrangerPipelineAlert].includes(type),\r\n ) as CompanyAlertsConfig;\r\n const cloManagerBwicAlert = config.find(({ type }) =>\r\n [UserConfigType.cloManagerBwicAlert].includes(type),\r\n ) as SecondaryStatsAlertsConfig;\r\n const cloManagerDealerInventoryAlert = config.find(({ type }) =>\r\n [UserConfigType.cloManagerDealerInventoryAlert].includes(type),\r\n ) as SecondaryStatsAlertsConfig;\r\n const bankAnalyticsAlert = config.find(({ type }) =>\r\n [UserConfigType.bankAnalyticsAlert].includes(type),\r\n ) as DailyStatsAlertsConfig;\r\n const bankArrangerPipelineAlert = config.find(({ type }) =>\r\n [UserConfigType.bankArrangerPipelineAlert].includes(type),\r\n ) as CompanyAlertsConfig;\r\n const bankIssuanceMonitorAlert = config.find(({ type }) =>\r\n [UserConfigType.bankIssuanceMonitorAlert].includes(type),\r\n ) as SecondaryStatsAlertsConfig;\r\n const bankDealerInventoryAlert = config.find(({ type }) =>\r\n [UserConfigType.bankDealerInventoryAlert].includes(type),\r\n ) as SecondaryStatsAlertsConfig;\r\n\r\n const filtersConfig = {\r\n [UserConfigType.imFilter]: dealsPipelineFilterConfig || state.filtersConfig[UserConfigType.imFilter],\r\n [UserConfigType.apFilter]: arrangerPipelineFilterConfig || state.filtersConfig[UserConfigType.apFilter],\r\n };\r\n\r\n return {\r\n ...state,\r\n isLoading: false,\r\n isLoadingDefault: false,\r\n isUpdating: false,\r\n isDeleting: false,\r\n columnsConfig: [\r\n ...state.columnsConfig.filter(({ type }) => !existingConfigTypes.includes(type)),\r\n ...filterForRoles(columnsConfig),\r\n ],\r\n filtersConfig: filtersConfig,\r\n imAlertConfig: imAlertConfig || state.imAlertConfig,\r\n newTransactionAlertConfig:\r\n newTransactionAlertConfig || userConfigInitialState.newTransactionAlertConfig,\r\n weeklyStatsAlertConfig: weeklyStatsAlertConfig || state.weeklyStatsAlertConfig,\r\n transactionAlertConfig: transactionAlertConfig || userConfigInitialState.transactionAlertConfig,\r\n summaryDailyAlertConfig: summaryDailyAlertConfig || userConfigInitialState.summaryDailyAlertConfig,\r\n apAlertConfig: apAlertConfig || userConfigInitialState.apAlertConfig,\r\n cloManagerAnalyticsAlert: cloManagerAnalyticsAlert || userConfigInitialState.cloManagerAnalyticsAlert,\r\n cloManagerIssuanceMonitorAlert:\r\n cloManagerIssuanceMonitorAlert || userConfigInitialState.cloManagerIssuanceMonitorAlert,\r\n cloManagerArrangerPipelineAlert:\r\n cloManagerArrangerPipelineAlert || userConfigInitialState.cloManagerArrangerPipelineAlert,\r\n cloManagerBwicAlert:\r\n cloManagerBwicAlert || userConfigInitialState.cloManagerBwicAlert,\r\n cloManagerDealerInventoryAlert:\r\n cloManagerDealerInventoryAlert || userConfigInitialState.cloManagerDealerInventoryAlert,\r\n bankAnalyticsAlert:\r\n bankAnalyticsAlert || userConfigInitialState.bankAnalyticsAlert,\r\n bankArrangerPipelineAlert:\r\n bankArrangerPipelineAlert || userConfigInitialState.bankArrangerPipelineAlert,\r\n bankIssuanceMonitorAlert:\r\n bankIssuanceMonitorAlert || userConfigInitialState.bankIssuanceMonitorAlert,\r\n bankDealerInventoryAlert:\r\n bankDealerInventoryAlert || userConfigInitialState.bankDealerInventoryAlert,\r\n };\r\n }\r\n case getType(imUserConfigActions.getUserFilterConfigResult): {\r\n const config = mapConfig(action.payload.userConfig);\r\n const dealsPipelineFilterConfig = config.find(({ type }) =>\r\n [UserConfigType.imFilter].includes(type),\r\n ) as FilterConfig;\r\n const arrangerPipelineFilterConfig = config.find(({ type }) =>\r\n [UserConfigType.apFilter].includes(type),\r\n ) as FilterConfig;\r\n\r\n const filtersConfig = {\r\n [UserConfigType.imFilter]: dealsPipelineFilterConfig || state.filtersConfig[UserConfigType.imFilter],\r\n [UserConfigType.apFilter]: arrangerPipelineFilterConfig || state.filtersConfig[UserConfigType.apFilter],\r\n };\r\n\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n filtersConfig,\r\n };\r\n }\r\n case getType(imUserConfigActions.getDefaultUserColumnsConfig):\r\n return {\r\n ...state,\r\n isLoadingDefault: true,\r\n };\r\n case getType(imUserConfigActions.getDefaultUserColumnsConfigResult): {\r\n const { columnConfig } = action.payload;\r\n const resetState = {\r\n ...state,\r\n isLoadingDefault: false,\r\n };\r\n\r\n if (!columnConfig) {\r\n return resetState;\r\n }\r\n\r\n const config = mapConfig(columnConfig);\r\n const columnsDefaultConfig = filterForRoles(config);\r\n\r\n return {\r\n ...resetState,\r\n columnsDefaultConfig,\r\n };\r\n }\r\n case getType(imUserConfigActions.updateUserConfig):\r\n case getType(imUserConfigActions.createUserFilter):\r\n case getType(imUserConfigActions.updateUserFilter):\r\n case getType(imUserConfigActions.updateUserFilterEmailAlerts):\r\n case getType(imUserConfigActions.saveTransactionAlerts):\r\n case getType(imUserConfigActions.saveCompanyAlerts):\r\n return {\r\n ...state,\r\n isUpdating: true,\r\n };\r\n case getType(imUserConfigActions.createUserFilterResult):\r\n case getType(imUserConfigActions.updateUserFilterResult):\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n };\r\n\r\n case getType(imUserConfigActions.setUserFilterParamsResult): {\r\n const { filtersConfig } = state;\r\n const { requestResult, userConfigFilter, filterType } = action.payload;\r\n\r\n if (requestResult === RequestState.failure || !userConfigFilter) {\r\n return state;\r\n }\r\n\r\n let filterValues = filtersConfig[filterType].value;\r\n\r\n if (userConfigFilter.default) {\r\n filterValues = filterValues.map(filterValue => ({\r\n ...filterValue,\r\n default: false,\r\n }));\r\n }\r\n\r\n const value = filterValues\r\n .filter(x => x.referenceName !== userConfigFilter.referenceName)\r\n .concat(userConfigFilter);\r\n\r\n return {\r\n ...state,\r\n isUpdating: false,\r\n filtersConfig: {\r\n ...filtersConfig,\r\n [filterType]: {\r\n ...filtersConfig[filterType],\r\n value,\r\n },\r\n },\r\n };\r\n }\r\n case getType(imUserConfigActions.deleteUserFilter):\r\n return {\r\n ...state,\r\n isDeleting: true,\r\n };\r\n case getType(imUserConfigActions.deleteUserFilterResult): {\r\n const { requestResult, referenceName, filterType } = action.payload;\r\n\r\n if (requestResult === RequestState.failure) {\r\n return state;\r\n }\r\n\r\n return {\r\n ...state,\r\n isDeleting: false,\r\n filtersConfig: {\r\n ...state.filtersConfig,\r\n [filterType]: {\r\n ...state.filtersConfig[filterType],\r\n value: state.filtersConfig[filterType].value.filter(x => x.referenceName !== referenceName),\r\n },\r\n },\r\n };\r\n }\r\n case getType(imUserConfigActions.reset): {\r\n return userConfigInitialState;\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n"],"names":["reactPlugin","ReactPlugin","instrumentationKey","process","ai","ApplicationInsights","config","extensions","extensionConfig","_defineProperty","identifier","history","loadAppInsights","addTelemetryInitializer","item","baseType","ext","trace","name","location","pathname","currentUser","user","current","setAuthenticatedUserContext","email","undefined","clearAuthenticatedUserContext","e","console","log","appInsights","logger","exception","message","silent","writeToConsole","trackException","severityLevel","SeverityLevel","Error","addFePrefix","payload","trackTrace","Information","useContentVisibilityLogger","targetRef","traceText","visibleTimoutSeconds","arguments","length","_useIntersectionObser","useIntersectionObserver","id","visible","visibleRef","useRef","timeout","useLayoutEffect","setTimeout","trackingService","trackAction","clearTimeout","initialState","popupVisible","selectedPortfolio","isSaving","error","addToPortfolio","state","action","type","getType","addToPortfolioActions","setPopupVisibility","_objectSpread","setSelectedPortfolio","reset","setSubmittingProgress","storeError","createRegionReducer","loadAction","responseAction","initialRegionState","data","isLoading","isLoaded","address","combineReducers","countries","addressActions","loadCountries","loadCountriesResponse","states","loadStates","loadStatesResponse","cities","loadCities","loadCitiesResponse","pagingInitialState","currentPageNumber","pageSize","totalRecordNumber","bwics","searchInProgress","RequestState","none","activeBwicReferenceName","isNextPageRequesting","isRequestingExportBwics","myBwicsOnly","isAllToAll","sortBy","BwicMonitorSortByOptions","NewestFirst","advancedFilterBlocked","summary","allBWICS","actionTypes","MY_BWICS","ALL_TO_ALL","BWICS_SEARCH_PROGRESS","status","BWICS_SEARCH_COMPLETE","_action$summary","currentBwicList","requestedBwics","map","b","collapsed","collapseAll","concat","success","ALL_BWICS_SET_EXPORTING_STATUS","SET_ACTIVE_BWIC","bwicReferenceName","SET_BWIC_COLLAPSED_STATE","referenceName","bwic","SET_COLLAPSE_ALL","ALL_BWICS_NEXT_PAGE_REQUESTING","isRequesting","ALL_BWICS_RESET_PAGING","LIVE_BIDDING_STAGE2_EXPIRED","_toConsumableArray","ADVANCED_FILTER_BLOCKED","blocked","RESET_SUMMARY","RESET","sellerBiddingActions","MARK_BIDS_SHOWN","some","securities","s","positionId","bids","bidList","bid","biddingUtils","getUniqueBidId","isNew","ADD_POSITION_BIDS","SORTING_CHANGED","pushDataActions","PUSH_DATA_COLOR_DISTRIBUTION","shouldHandlePushData","isColorDistribution","PUSH_DATA_TRADED_AWAY","isTradedAway","trade","PUSH_DATA_TRADE","PUSH_DATA_NEW_BID","newBid","_s$bids","getBidCompanyIdentifier","PUSH_DATA_AXED_FINAL_CHANGE","bidId","axed","final","company","_s$bids2","PUSH_DATA_NEW_PX_TALK","priceTalk","pxTalks","p","isDeleted","filter","PUSH_DATA_PUBLIC_COLORS","colors","c","color","find","PUSH_DATA_BWIC_STATUS_CHANGE","bwicStatus","PUSH_DATA_QUICK_FEEDBACK","_s$bids3","feedback","feedbackCreatedUtc","getUniqueBidIdFromFeedback","pushBwicActions","bidRequest","PUSH_DATA_STAGED_BIDDING_START_STAGE2","_b$securities","stagedBiddingStatus","OpenBiddingStatus","stage1Ended","jumpBall","stage1EndDateUtc","topX","_action$canDealerBidO","_action$canDealerBidO2","_action$canDealerBidO3","canBidOnStage2","canDealerBidOnPositions","x","isStage2Participant","PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2","improvementRoundEnded","PUSH_DATA_OPEN_BIDDING_STAGE2_LEVEL","_b$securities2","latestBidSubmission","sentDateUtc","allBwicsPushEnabled","userCompany","requestState","amrPipelineCommon","amrPipelineCommonActions","loadUserCompanyRequest","registerUser","request","loadUserCompanyResponse","loadUserCompanyError","failure","loadedTransactionsWithDetails","isTransactionsRequesting","isTransactionDetailsRequesting","isIOIsSubmitting","hasMoreTransactions","searchTerm","offset","editIOIs","investorPopup","isVisible","analytics","versions","documentDownloads","totalDocumentsDownloads","recentTransactionViews","totalTransactionViews","daysInMarket","users","clientsActivity","analyticDefaultFilters","numberOfHiddenItems","transactionHistoryViews","amrPipelineDetailed","_state$loadedTransact","_state$transactions","_state$initialTransac2","_action$dataItems3","_state$loadedTransact2","_state$initialTransac3","_state$initialTransac4","TRANSACTIONS_REQUESTING_STATE","EDIT_IOIS","isEdit","TRANSACTION_DETAILS_REQUESTING_STATE","TRANSACTION_DETAILS_IOIS_SUBMITTING","isSubmitting","STORE_TRANSACTIONS","transactions","items","t","_state$initialTransac","initialTransaction","dealReferenceName","numberOfHiddenTransactions","constants","defaultTransactionsSearchCriteria","count","STORE_INITIAL_TRANSACTION","transaction","SEARCH_TERM_CHANGE","STORE_TRANSACTION_DETAILS","filteredDocuments","collateralQualityTests","sortCollateralQualityTests","syndicateContacts","sortSyndicateContacts","STORE_IOIS","_action$dataItems","transactionReferenceName","iois","dataItems","formatIoI","sort","compareIOI","_action$dataItems2","SET_UNREAD_IOIS_READ","ioi","isRead","STORE_DOCUMENTS_SEARCH_RESULTS","RESET_TRANSACTIONS","SHOW_INVESTOR_POPUP","investor","members","compareFullNames","isPopupVisible","amrTransactionAnalyticsActions","analyticsInit","analyticsInitResponse","clientsActivityRequest","clientsActivityResponse","transactionViewHistoryResponse","clientsActivityFilterChange","transactionViewHistoryFilterChange","transactionViewHistoryFilterByBar","_action$payload","accessType","date","tabs","dateOption","dateRangeFilterOptions","Custom","dateFrom","dateTo","lastUpdatedFields","amrPipelineHistory","_state$history","amrTransactionHistoryActions","transactionHistoryRequest","transactionHistoryResponse","transactionsHistory","allHistoryClassesList","h","storeTransactionDetais","_action$payload2","version","transactionDetails","isDetailsLoaded","transactionFieldsUpdatedRequest","transactionFieldsUpdatedResponse","_action$payload3","transactionFieldsUpdatedReset","deals","dealsSearchItems","selectedDealsLegalNames","sortDirection","SORT","DESC","hasMore","isExportLoad","isSubmitted","anyPipelineExists","isSummaryRequesting","amrArrangerPipeline","amrArrangerPipelineActions","arrangerPipelinesRequest","setAnyPipelineExists","arrangerPipelinesResponse","arrangerPipelines","nonVisibleCount","sortingChange","arrangerPipelineStatisticRequest","arrangerPipelineStatisticResponse","resetPipelines","dealsResponse","selectDealsFromSearch","dealsLegalNames","dealsSearchResponse","_action$payload$arran","arrangerPipelineDeals","d","legalName","edit","setEditLoadingStatus","submitArrangerPipeline","submitArrangerPipelineStatus","exportLoad","resetDeals","isTransactionsSearching","isClassesSearching","isManagerPopupVisible","transactionsOffset","classesOffset","dealSortBy","dealSortDirection","ASC","classSortBy","classSortDirection","isExpanded","hasMoreTransactionsClasses","wasInitialAccessTracked","anyIOIsExists","createAmrDealsWithNamedData","pipelineType","PIPELINE_INITIAL_LOAD","PIPELINE_SEARCH_TRANSACTIONS","isSearching","PIPELINE_SEARCH_CLASSES","PIPELINE_DEAL_SORTING_CHANGED","direction","PIPELINE_CLASS_SORTING_CHANGED","classes","numberOfHiddenClasses","PIPELINE_STORE_TRANSACTIONS","PipelineType","IOIs","withIndicatingRefinancedIoIs","PIPELINE_STORE_CLASSES","PIPELINE_SUMMARY_REQUESTING_STATE","PIPELINE_STORE_SUMMARY","transactionsStatistic","transactionsSummary","classesStatistic","classesSummary","PIPELINE_RESET_TRANSACTIONS","classesStatictic","PIPELINE_SET_EXPANDED","expanded","PIPELINE_RESET","PIPELINE_SET_REDIRECT_FILTER","redirectFilters","PIPELINE_EXPORT_LOAD","PIPELINE_SET_SYNDICATE_CONTACTS","contacts","arrangerName","PIPELINE_SET_ANY_IOIS_EXISTS","createAmrPipelineWithNamedData","ArrangerPipeline","createFilter","searchTransactions","createSearchTransactionsNamedData","requests","responses","apiOperation","_state$requests","apiOperationActions","waitResult","apply","result","updateOperationState","r","token","remove","resetEvent","event","authenticated","resetToken","tokenVerified","authentication","accountActions","LOGIN_SUCCESS","LOGOUT","LOGIN_FAILURE","LOGIN_REFRESH_AUTHENTICATION","SETUP_PASSWORD_FAILURE","CHANGE_PASSWORD_FAILURE","SETUP_PASSWORD_INIT_COMPLETE","RESET_PASSWORD_SUCCESS","SETUP_PASSWORD_SUCCESS","RESET_PASSWORD_FAILURE","errorMessage","RESET_PASSWORD_RESET","SETUP_PASSWORD_RESET","CHANGE_PASSWORD_RESET","CHANGE_PHONE_NUMBER_RESET","CHANGE_PASSWORD_SUCCESS","LOGIN_LOADING","banksInitialState","isDetailsLoading","isUpdating","events","primaryContacts","secondaryContacts","newsRequestState","profileHistoryViews","exportTransactionCountLoading","isOfType","contact","isDistributionList","ContactType","DistributionList","isHeadOfDesk","HeadOfDesk","isHeadOfTrading","headOfTrading","sortBanks","featuresCount","bank","compact","hasActiveTransactions","existsOnDealerInventory","sendsPxTalk","a","compareBoolean","isUserCompany","compareStrings","sortByOrder","order","sortContacts","banks","_state$data","banksActions","getBanks","getBanksResult","getBankDetails","selectedBank","getBankDetailsResult","_state$selectedBank","bankDetails","aggregatedManagerTransactions","companyEvents","details","aggregatedManagersCount","managersTransactionCountFilterResult","exportTransactionCountRequest","exportTransactionCountResponse","editBank","_state$syndicateConta","primary","secondary","headOfDeskContact","headOfDeskDistributionList","headOfTradingContact","headOfTradingDistributionList","leftPrimaryContacts","isNil","leftSecondaryContacts","headOfDesk","officePhoneNumber","mobilePhoneNumber","primaryDesk","distributionListEmail","editBankReset","updateBank","updateBankResult","setBankForAlertPopup","bankReferenceNameForAlert","general","analyticsReset","_action$payload4","profileViewHistoryResponse","_action$payload5","profileViewHistoryFilterChange","profileViewHistoryFilterByBar","_action$payload6","isInventoryExist","requestStateInventoryExist","requestStatusExportInventory","requestStatusSaveBloombergEmail","isVisibleAddBloombergEmailForm","bdInventory","bdInventoryActions","requestInventoryExistFlag","inventoryExistFlag","exist","exportInventoryRequest","exportInventoryResponse","toggleVisibleAddBloombergEmailForm","addBloombergEmailRequest","addBloombergEmailResponse","companies","editState","conflicts","isConflictsPpopupVisible","focusedBid","bidOnBehalf","bidOnBehalfActions","setCompainesRequesting","submitProgress","inProgress","storeCompanies","editBid","key","getEditKey","companyId","editing","editCompleted","value","pass","resetBidEdit","resetCompanyBidsEdit","Object","keys","forEach","parseKey","resetEdit","storeConflicts","resetConflicts","conflictsPopupVisible","setNextBidIdentifiers","resetNextBidIdentifiers","tradeAction","stagedBiddingStartStage2","stagedBiddingFinishStage2","biddingPushDataReducer","editBidState","equals","priceTalk1","priceTalk2","visitorType","participantsLoadingState","bwicDealers","bwicDealerUsers","bwicDealerContacts","bidding","BIDDING_SAVE_BWIC_DEALERS","BIDDING_LOADING","BIDDING_STORE_ORIGINAL_BWIC","BIDDING_STORE_VISITOR_TYPE","BIDDING_IMPROVERS_LOADED","improvers","colorDistributionActions","COLOR_DISTRIBUTION_SET_BWIC_COLOR_DISTRIBUTION","STORE_BWIC_PARTICIPANTS","BIDDING_LOAD_PARTICIPANTS_REQUEST_STATUS","LIVE_BIDDING_STAGE_2_TIMEOUT_END","_","BIDDING_BWIC_STATUS_CHANGE","nextStatus","autoFeedbackSettingsActions","AUTO_FEEDBACK_SETTINGS_STORE","autoFeedbackConfiguration","settings","BwicProcessType","TopX","onPlatform","offPlatform","PUSH_DATA_AUTO_FEEDBACK_CONFIG","updateBwicParticipants","brokerDealer","BIDDING_RESET","panelVisible","isSending","messageType","BlastMessageTypes","submitFinal","recipientLevel","BlastMessageRecipientLevelState","Top3","recipients","isSelectAllRecipients","stage1AboutToEndTimeout","blastMessage","blastMessageActions","show","hide","messageTypeChange","recipientLevelChange","storeRecipients","editMinutesAboutToEnd","setError","recipientSelectedChange","companyIdentifier","toggleSelectAllParticipantsFlag","sending","selectAllRecipientsChange","initialFilter","selectedDateOption","bwicDateFilterOptions","unspecified","customDateRange","settlementSelectedDateOption","settlementCustomDateRange","confirmed","pending","rejected","currency","buySide","sellSide","client","desc","allocationStatus","unsettled","pendingSettlement","pendingAllocation","pendingProceeds","settled","initialFilters","filters","prevFilters","requestStateSecurities","ownTrades","hasTrades","requestStateExport","requestStatusSetVcon","requestStatusSetBooked","requestStateSaveTradeAllocation","tradeAllocationTemplate","saveRequestState","page","orderByColumn","orderByDirection","blotter","blotterFiltersReset","blotterSetFilterDefaults","blotterDateFilterChange","blotterCustomDateFilterChange","blotterToggleConfirmed","blotterTogglePending","blotterToggleRejected","blotterSetCurrency","blotterToggleFilterBuy","blotterToggleFilterSell","blotterToggleFilterClient","blotterToggleFilterDesc","blotterToggleAllocationStatusUnsettled","blotterToggleAllocationStatusPendingSettlement","blotterToggleAllocationStatusPendingAllocation","blotterToggleAllocationStatusPendingProceeds","blotterToggleAllocationStatusSettled","blotterSettlementDateFilterChange","blotterSettlementCustomDateFilterChange","blotterSelectAllCurrencies","blotterResetCurrency","blotterFiltersReducer","blotterSearchRequest","blotterSearchRequestNextPage","blotterSearchSuccess","blotterSearchFailure","blotterOrderByChange","blotterHasTradesRequest","blotterHasTradesSuccess","blotterHasTradesFailure","tradeId","rejectReason","settlementDate","buyerSettlementStatus","sellerSettlementStatus","isAllocationManual","allocationLock","affirmedRejectedBy","createdBy","blotterExportRequest","blotterExportSuccess","blotterExportFailure","blotterSetVconRequest","isBuyTrade","getTradeKey","blotterSetVconSuccess","vconBuy","vconSell","blotterSetVconFailure","blotterSetBookedRequest","blotterSetBookedSuccess","bookedBuy","bookedSell","blotterSetBookedFailure","blotterTradeAllocationActions","resetPopupState","saveRequest","saveSuccess","saveFailure","isBuyerAllocationManual","isSellerAllocationManual","tradeAllocationReducer","blotterTradeAllocationTemplateActions","resetPanelState","tradeAllocationTemplateReducer","blotterReset","custom","dateRange","Currencies","bidPlacementReducer","bidPlacementActions","BID_PLACEMENT_SET_BID_CAN_SUBMIT","canSubmit","BID_PLACEMENT_BID_CHANGE","BID_PLACEMENT_AXED_CHANGE","BID_PLACEMENT_FINAL_CHANGE","BID_PLACEMENT_PASS_CHANGE","errors","BID_PLACEMENT_SET_BID_ERRORS","copy","REVERT","REVERT_ALL","COMMISSION_CHANGE","commission","commissionError","submitBidsConfirmationInitial","submitBidsConfirmationVisible","submitInProgress","submitInProgressPositionId","submitResult","bidConfirmationReducer","bidConfirmationActions","confirmation","positionIdList","submitResults","accessState","requestingPositions","submitBidsConfirmation","brokerDealerBidding","_state$securities","BROKER_DEALER_BIDDING_RESET","biddingActions","BROKER_DEALER_BIDDING_STORE_SECURITIES","BROKER_DEALER_ACCESS_STATE","tradeConfirmActions","SET_TRADED_POSITION_STATUS","positions","includes","_state$editBid$action","_state$editBid$action2","bidLock","modifiedDate","createdUtc","openBiddingStage2Level","level","tiedForBest","_ref","found","_state$securities2","actions","ticker","bwicHistory","_action$historyAction","STORE_BWIC_HISTORY","historyActions","LOAD_HISTORY_REQUEST_STATE","SHOW_BWIC_HISTORY","MARK_HISTORY_MESSAGES_AS_READ","Array","isArray","messages","m","historyAction","_user$current","BwicVisitorType","Seller","sellerBuysideActions","init","Buyer","ignoreInHistory","security","initRequestState","exportDataRequestState","securityBwicStatistics","bwicLogReducer","bwicLogActions","bwicLogInitRequest","bwicLogInitSuccess","statistics","bwicLogInitFailure","bwicLogExportDataRequest","bwicLogExportDataSuccess","bwicLogExportDataFailure","bwicLogReset","isSubscriptionSavingFlag","changeSubscription","changeSubscriptionActions","isValid","isNormalizing","changeColor","SET_COLOR","dm","CHANGE_COLOR_SET_DM","TRADED_CHANGE","traded","LEVEL_SPECIFICATION_CHANGE","levelSpecificationType","levelSpecification","LEVEL_CHANGE","NORMALIZED_LEVEL_CHANGE","normalizedLevel","SET_LEVEL_ERROR","SET_COLOR_ERROR","LEVEL_TYPE_CHANGE","levelType","NORMALIZING","deletedPriceTalks","changePxTalk","_state$pxTalks","_state$pxTalks2","_state$pxTalks5","_state$pxTalks6","STORE_PXTALKS","VALIDATION_RESULT","ADD_PXTALK","pxTalk","TALK_CHANGE","change","talk","DELETE_PX_TALK","_state$pxTalks3","_state$pxTalks4","deletedPriceTalk","i","index","TALK_ERROR","priceTalksActions","requestResult","isRequestSuccess","priceTalks","selectedCompanyForAffirm","companiesList","requestStateFetchClientsList","requestStatusUpdateRequest","searchString","pendingAgreementCount","requestStateFetchPendingAgreementCount","currencyRate","requestStateGetCurrencyRate","requestStateUpdateCurrencyRate","visibleSetRatePopup","clientsCompanies","clientsCompaniesActions","fetchListRequest","fetchListSuccess","fetchListFailure","fetchPendingAgreementCountRequest","fetchPendingAgreementsCountSuccess","fetchPendingAgreementsCountFailure","setSelectedAgreement","resetSelectedAgreement","updateAgreementRequest","requestData","assetManagerId","updateAgreementSuccess","updateAgreementFailure","settlementAgentAgeementPushActions","settlementAgentAgreementPushReceived","updateCompaniesList","setSearchString","setVisibleUpdateRatePopup","getCurrencyRate","setResultGetCurrencyRate","rate","updateCurrencyRate","setResultUpdateCurrencyRate","code","isClearingBank","signatory","cloManagersInitialState","selectedSecurity","sortCloManagers","cloManagers","cloManagersActions","getCloManagers","getCloManagersResult","getCloManager","selectedManager","setManagerForAlertPopup","managerReferenceNameForAlert","getCloManagerResult","_cloManager$investmen","_state$selectedManage","cloManager","bwicCloManagers","investmentTeam","fullName","sortedBwicCloManagers","compareNumbersWithNullAcs","editManager","ownEquity","proprietaryAnalyticalTools","countryId","country","stateId","cityId","city","newCity","editBwicCloManagers","editPlatformUsers","_state$editBwicCloMan","manager","meetingContact","resetEditPlatformUsers","setCloManagerSaveState","switchFavoriteResponse","favorite","markFavorite","companyReferenceName","selectedSecurityChange","companyFilterInitialState","active","administrator","seller","viewer","media","collateralManager","from","to","salesRepresentatives","regBy","memberFilterInitialState","invited","notInvited","pendingApproval","arrangersClient","brokerDealerTrader","brokerDealerViewer","dataEntry","sellerAdmin","sellerTrader","sellerViewer","subscriptionManager","isInitCompleted","initEditUserPageComplete","userRequests","companyOrderBy","column","companyColumns","memberOrderBy","memberColumns","companyFilter","lastAppliedCompanyFilter","memberFilter","lastAppliedMemberFilter","editMember","sendInvite","initialUser","getEditUserRequestStatus","companyStatusChangeConfirmation","approvalConfirmation","rejectionConfirmation","tfaStatusChangeConfirmation","rsStatusChange","rejectionReason","membersOfacRequestStatus","companiesOfacRequestStatus","exportUsersRequestState","iRequestingExportCompanies","userLastLoginHistory","userRequestOperationState","requestStatusGetUserList","requestStateGetPendingUserRequestCount","pendingUserRequestCount","INIT_COMPLETED","COMPANIES","RESET_SUBSCRIPTION","subscription","subscriptionExpiration","USERS","USER_REQUESTS","u","UserRequestStatus","Pending","RESET_EDIT_MEMBER","ORDER_BY","orderBy","COMPANY_REJECT_REASON_SET","COMPANY_APPROVAL_CONFIRMATION_SHOW","COMPANY_APPROVAL_CONFIRMATION_HIDE","COMPANY_REJECTION_CONFIRMATION_SHOW","COMPANY_REJECTION_CONFIRMATION_HIDE","COMPANY_APPROVE_REQUEST","COMPANY_APPROVE_SUCCESS","COMPANY_APPROVE_FAILURE","COMPANY_STATUS_CHANGE_CONFIRMATION","MEMBER_STATUS_CHANGE_CONFIRMATION","memberStatusChangeConfirmation","TFA_STATUS_CHANGE_CONFIRMATION","TFA_ENABLED_STATE_CHANGED","userId","tfaEnabled","COMPANY_FILTER_CHNAGED","COMPANY_FILTER_APPLY","COMPANY_FILTER_RESET","MEMBERS_FILTER_CHNAGED","MEMBER_FILTER_APPLY","MEMBER_FILTER_RESET","COUNTRIES","MEMBERS_ORDER_BY","RESEND_INVITE_CONFIRMATION","memberResendInviteConfirmation","RESET_PASSWORD_CONFIRMATION","memberResetPasswordConfirmation","COMPANY_UPDATE_INIT_STATUS_EDIT_USER","COMPANY_SET_EDITING_USER","SAVING_USER","savingUserFlag","COMPANY_GET_USER_LIST_REQUEST_STATUS","COMPANY_PUSH_DATA_RECEIVED","mergeCompanyUpdates","COMPANY_MEMBER_SET_OFAC_REQUEST","COMPANY_MEMBER_SET_OFAC_SUCCESS","COMPANY_MEMBER_SET_OFAC_FAILURE","COMPANY_SET_OFAC_REQUEST","COMPANY_SET_OFAC_SUCCESS","COMPANY_SET_OFAC_FAILURE","MANAGE_EXPORT_USERS_REQUEST","MANAGE_EXPORT_USERS_SUCCESS","MANAGE_EXPORT_USERS_FAILURE","MANAGE_SET_REQUEST_STATE_EXPORT_COMPANIES","COMPANY_MEMBER_SET_USER_LAST_LOGIN_HISTORY","COMPANY_MEMBER_RESET_USER_LAST_LOGIN_HISTORY","pushUserActions","COMPANY_MEMBER_SUBSCRIPTION_CHANGE","subscriptionType","trialPeriodEnd","COMPANY_SUBSCRIPTION_CHANGE","subscriptionPeriodEnd","STORE_SALES_REPRESENTATIVES","COMPANY_SET_CLEARING_BANK","COMPANY_MEMBER_DELETED","userRequestAdminActions","setOperationState","userRequestApproved","userRequestBlocked","userRequestUnblocked","userRequestDeleted","setPendingUserRequestCount","userRequestAdminReducer","manageCompaniesFiltersActions","setDateFilterChange","setDateFilterRangeChange","setFilterRegBy","setFilterSalesRepresentative","toogleFilterRegBy","toogleFilterRoleAdministrator","toogleFilterRoleBrokerDealer","toogleFilterRoleSeller","toogleFilterRoleViewer","toogleFilterRoleMedia","toogleFilterSalesRepresentative","toogleFilterStatusActive","toogleFilterStatusBlocked","toogleFilterStatusOffPlatform","manageCompaniesFiltersReducer","manageMembersFiltersActions","setFilterCompanies","toogleFilterCompanies","toggleFilterRoleArrangersClient","toogleFilterRoleBrokerDealerTrader","toogleFilterRoleBrokerDealerViewer","toogleFilterRolesDataEntry","toogleFilterRoleSellerAdministrator","toogleFilterRoleSellerTrader","toogleFilterRolesSubscriptionManager","toogleFilterRoleSellerViewer","toogleFilterStatusInvited","toogleFilterStatusNotInvited","toogleFilterStatusPendingApproval","toogleFilterCollateralManager","manageMembersFiltersReducer","initialCompanyList","companyList","push","isPanelVisible","isBrokerDealer","rowKey","currentCompanyId","isRequestingCompany","companyDetails","companyDetailsActions","fetchCompanyDetailsRequest","fetchCompanyDetailsResponse","setCompanyDetails","companyMembers","companyMembersActions","fetchCompanyMembers","isRequestSending","contactSales","contactSalesActions","requestSendingFlag","view","contactsSaveViews","grid","isSaved","initialContacts","deletedContacts","companyDomains","companiesLookup","contactsSave","CONTACT_SAVE_LOADING","LOAD_COMPANIES","LOAD_COMPANY_DOMAINS","INITIAL_CONTACTS","COMPANIES_LOOKUP","lookup","SWITCH_VIEW","EDIT_MODE","STORE_CONFLICTS","RESET_CONFLICTS","duplicates","CONTACTS_SAVED","DELETE_CONTACT","DELETE_DUPLICATE_CONTACT","contactIndex","ENSURE_CONFLICTS_RESOLVED","isResolved","initialFilterState","selectedRatings","selectedCurrencies","isMounted","myBwics","portfolioExist","portfolioSecurities","portfolioInventory","currentPage","requestStateGetSecurities","sortField","sortOrder","notAppliedFilter","filterActive","selectedSecurityHistory","searchTermItem","colorRates","dntRates","sameDayPeriods","tradingStats","periodName","tradingStatsData","priceLevel","priceLevelData","bidAsDealerRequests","dtcSellingBuying","aaaPriceLevel","dtcIgHy","mostTradedTickers","startDate","Date","endDate","biggestMovers","pxTalkDeviation","bwicPercentOfTrace","kWatchNews","topIssuers","topArrangers","topTrustees","topStaticDeals","topDebutDeals","issueTransactionVolume","usBslEsgNewIssue","esgLanguageDeals","usBslNewIssue","usBslEuCompliantDeals","usBslDeals","shortLongDatedDeals","issuanceSpread","issuanceSpreads","median","kIndicator","usBslNewIssueSpreads","requestStateInitDashboard","requestStateFetchPortfolioExist","requestStateFetchPortfolioSecurities","requestStateFetchColorRates","requestStateFetchDntRates","requestStateFetchSameDayPeriods","requestStateFetchTradingStats","requestStateFetchSecurityHistory","requestStateFetchPriceLevel","requestStateFetchPxTalkDeviation","requestStateFetchBwicPercentOfTrace","requestStateFetchKWatchNews","requestStateFetchAAAPriceLevel","requestStateBidAsDealerRequests","requestStateDtcSellingBuying","requestStateMostTradedTickers","requestStateFetchBiggestMovers","requestStateExportTradingStats","requestStateDtcInvestmentGrade","requestStateFetchTopIssuers","requestStateFetchTopArrangers","requestStateFetchTopTrustees","requestStateFetchTopStaticDeals","requestStateFetchTopDebutDeals","requestStateFetchKIndicator","requestStateIssueTransactionVolume","requestStateUsBslEsgNewIssue","requestStateUsBslEuCompliantDeals","requestStateShortLongDatedDeals","requestStateIssuanceSpread","requestStateUsBslNewIssueSpreads","requestStateExportTopIssuers","requestStateExportTopArrangers","requestStateExportTopTrustees","requestStateExportStaticDeals","requestStateExportDebutManagers","requestStateFetchBwics","getSortedTopCompanyData","numberOfTransactions","localeCompare","dashboardReducer","portfolios","dashboardInit","dashboardInitSuccess","dashboardInitFailure","dashboardGetPortfolioInventorySecuritiesRequest","dashboardGetPortfolioInventorySecuritiesSuccess","pageNumber","dashboardGetPortfolioInventorySecuritiesFailure","dashboardSetPortfolioInventoryCurrentPage","dashboardPortfolioInventorySortParamsChanged","dashboardPortfolioInventoryReset","dashboardFetchBwics","BwicStatus","scheduled","finished","getMyBwics","dashboardFetchPortfolioExist","dashboardFetchPortfolioSecurities","cancelled","dashboardFetchColorRates","dashboardFetchDntRates","dashboardFetchSameDayPeriods","dashboardFetchTradingStats","_action$payload7","dashboardFetchPriceLevel","_action$payload8","dashboardFetchBidRequestsAsSeller","_action$payload9","processingBidAsDealerRequests","dashboardFetchDtcSellingBuying","_action$payload10","dashboardFetchAAAPriceLevel","_action$payload11","dashboardFetchMostTradedTickers","_action$payload12","dashboardFetchBiggestMovers","_action$payload13","biggestMoversCalculations","dashboardFetchKIndicator","_action$payload14","dashboardPushBiggestMovers","dashboardFetchDtcIgHy","_action$payload15","dashboardFetchPxTalkDeviation","_action$payload16","dashboardFetchBwicPercentOfTrace","_action$payload17","dashboardFetchKWatchNews","_action$payload18","dashboardFetchTopIssuersResult","_action$payload19","dashboardSetRequestStatusExportTopIssuers","dashboardFetchTopArrangersResult","_action$payload20","dashboardSetRequestStatusExportTopArrangers","dashboardFetchTopTrusteesResult","_action$payload21","dashboardSetRequestStatusExportTopTrustees","dashboardFetchTopStaticDealsResult","_action$payload22","dealLegalName","dashboardSetRequestStatusExportTopStaticDeals","dashboardFetchTopDebutDealsResult","_action$payload23","dashboardSetRequestStatusExportTopDebutDeals","dashboardPushUpdatePriceLevel","dashboardPushUpdateMostTradedTickers","dashboardPushUpdateTradingStats","dashboardSetFilter","ratingWithGroupValues","indexOf","dashboardSetNotAppliedFilter","dashboardResetNotAppliedFilter","dashboardClearFilter","dashboardSetFilterActive","dashboardSetSearchTermItem","text","dashboardFetchSecurityHistoryRequest","dashboardFetchSecurityHistorySuccess","securityHistory","dashboardFetchSecurityHistoryFailure","dashboardSetRequestStatusExportTradingStats","dashboardIssueTransactionVolumeResult","_action$payload24","dashboardUsBslEsgNewIssueResult","_action$payload25","compareVolumeCountRows","dashboardUsBslEuCompliantDealsResult","_action$payload26","dashboardShortLongDatedDealsResult","_action$payload27","shortOrLong","ShortOrLongDated","None","dashboardIssuanceSpreadResult","_action$payload28","dashboardNewIssueWeeklySpreadsResult","_action$payload29","dashboardReset","isMy","isParticipant","stateBidAsDealerRequests","newBidAsDealerRequests","_r$bidAsDealerRequest","bidAsDealerRequest","BidRequestStatus","canceled","isinCusip","position","absDifference","Math","abs","difference","daysBetweenTrade","lastDate","prevDate","moment","diff","priceVelocity","numericUtils","divideSafe","rowA","rowB","rowADate","year","month","rowBDate","unix","initialDealerListFilter","filterOptions","DealerFilterOptions","Favorite","selected","OffPlatform","Platform","dealerListFilterReducer","newBwicDealersActions","updateFilterOptions","dealersActions","option","filterOption","setSearchTerm","clearFilterOptions","companyHiddenState","isDefaultVisibilityApplied","allFavoriteCompaniesVisible","allPlatformCompaniesVisible","allOffPlatformCompaniesVisible","allSettlmentsClientsVisible","bidOnlyFlag","isStage2ParticipantsOnly","disabledCompanies","lastSelectedCompanyIdentifier","dealerListPanel","dealerListPanelActions","toggleCompanyVisible","setLastSelectedCompanyIdentifier","toggleAllFavoriteCompaniesVisible","setCompaniesHiddenState","toggleAllPlatformVisible","_action$payload$visib","toggleAllSettlmentsClientsVisible","_action$payload$visib2","toggleAllOffPlatformVisible","_action$payload$visib3","toggleAllFavoriteVisibleFlagOnly","toggleAllPlatformVisibleFlagOnly","toggleAllSettlmentsClientsFlagOnly","toggleAllOffPlatformVisibleFlagOnly","setDisabledCompanies","apiUtils","normalize","setDefaultVisibility","companiesToHide","setBidOnlyFlag","stage2ParticipantsFlagChange","isStage2participantsOnly","hidden","identifiers","stateCopy","initialStateDealerList","expandedDealers","editableContact","dealerName","updateRequestStatus","inviteToJoinRequestStatus","expandedAll","dealerList","_state$expandedDealer","dealerListActions","setDealerExpanded","dealerId","expandDealers","dealers","toggleExpandedAllDealers","setExpandAllDealers","setEditableContact","editableContactUpdateDealer","editableContactSetRequestStatus","requestStatus","contactInviteToJoinSetRequestStatus","contactId","resetEditableContact","statsExist","fetchStatsRequestStatus","fetchStatsExistRequestState","exportStatsRequestStatus","stats","dealersStats","RESET_STATS","STORE_STATS_EXIST_STATUS","existStatus","FETCH_STATS_REQUEST_STATUS","STORE_STATS","EXPORT_STATS_REQUEST_STATUS","FETCH_STATS_EXIST_REQUEST_STATUS","requestToBidRequestState","confirmRequestToBidPopup","DEALERS_SHOW_CONFIRM_BID_REQUEST_POPUP","DEALERS_HIDE_CONFIRM_BID_REQUEST_POPUP","DEALERS_REQUEST_TO_BID_SET_REQUEST_STATUS","DEALERS_RESET_STATE","isSecondaryInfoLoading","selectedReferenceName","selectedDeal","editDeal","allClasses","cachedInactiveClasses","classSecurity","classSecurityStats","openFigiErrorTickers","dealsActions","getDeals","getDealsResult","getDealDetails","getDealDetailsResult","dealDetails","editDealReset","updateDeal","updateDealDocuments","deleteDealRequest","amrInfoSave","allClassesUpdate","updateDealResult","updateDealDocumentsResult","allClassesUpdateResponse","saveAmrInfoResponse","getClassSecondaryInfo","getClassSecondaryInfoResult","securityStatistics","deleteDealResult","deal","allClassesEdit","allClassesCacheTranche","rowIndex","tranche","allClassesInvalidateTranceCache","omit","openFigiErrorTickersResponse","errorTickers","confirmRequestState","downloadPdfRequestState","blockerId","directBiddingDisclaimer","directBiddingDisclaimerActions","confirmRequest","confirmSuccess","confirmFailure","downloadPdfRequest","downloadPdfSuccess","downloadPdfFailure","editNewsInitialState","isMoreLoading","newsList","newsDetails","initialNews","managers","arrangers","totalCount","editNews","editNewsActions","getInitResult","getTotalCountResult","loadMoreNewsList","loadMoreNewsListResult","searchNewsList","searchNewsListResult","getNewsDetails","createOrUpdateNews","deleteNews","getNewsDetailsResult","newsData","updateNewsList","setInitialNews","resetNewsDetails","loading","saved","saving","editCompany","EDIT_COMPANY_LOADING_STATUS","COMPANY","STATES","CITIES","SALES_REPRESENTATIVES","SAVING","SAVED","cancelDialog","emailReceivedDate","format","dateFormatISO8601","timeZones","getTimeZones","timeZone","estId","editParsedBwic","STORE_ORIGINAL_BWIC","CHANGE_DATE","DAYS_TO_SETTLE","daysToSettle","days","TIME_ZONE","BIDS_DUE","bidsDue","time","GOOD_UNTIL","goodUntil","RULES_TEXT","rulesText","RESERVE_LEVELS_APPLY_CHANHE","reserveLevelsApply","CAN_TRADE_EARLY_CHANGE","canTradeEarly","CAN_BID_EARLY_CHANGE","canBidEarly","PARTIAL_BIDS_ACCEPTED_CHANHE","partialBidsAccepted","BIDS_GOOD_FOR_HOURS_CHANGE","bidsGoodForHours","BIDS_GOOD_FOR_MINUTES_CHANGE","bidsGoodForMinutes","STAGE_1_TIME_CHANGE","STAGE_2_TIME_CHANGE","stage2EndDateUtc","HARD_CUT_OFF_NUMBER_CHANGE","hardCutOff","STAGE_2_PARTICIPANTS_CHANGE","improverCount","BWIC_PROCESS_TYPE_CHANGE","bwicProcessType","VALIDATE","validation","CANCEL_DIALOG","SET_EMAIL_RECEIVED_DATE","SAVING_STATE","BWIC_SAVED","portfolio","bwicAlert","dealersInventoryAlert","renamePortfolioDialog","deletePortfolioDialog","updatePortfolioRequestState","isRequestingExportPortfolio","editPortfolio","PORTFOLIO_LOADED","PORTFOLIO_SAVED","RENAME_DIALOG_VISIBLE","dialog","DELETE_PORTFOLIO_DIALOG","PORTFOLIO_DELETED","deleted","EDIT_PORTFOLIO_LOADING","PORTFOLIO_UPDATE_REQUEST","PORTFOLIO_UPDATE_SUCCESS","PORTFOLIO_UPDATE_FAILURE","PORTFOLIO_SET_REQUESTING_EXPORT_STATE","updateInventoryPushReducer","currentInventoryList","inventoryListUpdates","inventoryList","InventoryPositionStatus","obsolete","removed","findIndex","splice","unshift","inventoryReducerDefaultState","lockModifiedDate","bdInventoryReducer","response","inventorySecurities","inventoryStatusChange","inventoryPositionId","pushInventory","bdCompanyId","inventoryPositions","updatedInventorySecurities","dealer","resetEntities","allInventoryReducerDefaultState","inventoryReducer","inventoryActions","loadNextPage","pushInventories","inventories","_slicedToArray","resetSummary","brokerDealerListInitialState","brokerDealerListReducer","brokerDealerListActions","updateDealerDistributionListInvitationSent","distributionListInvitationSent","updateDealerHeadOfTradingInvitationSent","headOfTradingInvitationSent","brokerDealerContactListInitialState","brokerDealerContactListReducer","brokerDealerContactListActions","pushUpdateList","pushUpdateListReducer","setContactInvitationSent","invitationSent","currentContacts","pushContactsList","cc","brokerDealerUserListInitialState","brokerDealerUserListReducer","brokerDealerUserListActions","settlementAgentAgreementsInitialState","settlementAgentAgreementsReducer","settlementAgentAgreementActions","pushDataReceived","updateAgreementsList","agreement","currentAgreements","settlementAgent","adminInventoryEditInitialState","adminInventoryEditReducer","adminInventoryEditActions","requestInventory","requestInventorySuccess","bdCompany","requestInventoryError","rejectedTradesInitialState","rejectedTradesReducer","rejectedTradeActions","trades","setTradesAsResolved","tradeIds","pushBuyerRejectTrade","portfolioListInitialState","portfolioListReducer","portfolioListActions","colorDistributionSend","updateSecurityHistory","_action$payload$data$","bwicStatusChanged","updateSendAlertState","sendAlerState","sendAlertState","sendAlerStateNormalized","portfolioId","_sendAlerStateNormali","_sendAlerStateNormali2","_sendAlerStateNormali3","_sendAlerStateNormali4","_sendAlerStateNormali5","_sendAlerStateNormali6","_sendAlerStateNormali7","cleansingNoticeAlert","issuanceMonitorAlert","outOfRiPeriodAlert","outOfNcPeriodAlert","rollerDeadlineAlert","deletePortfolio","updateCallback","bwicStatuses","emailPreferencesInitialState","emailPreferencesReducer","emailPreferencesActions","preferences","inventoryAlertChange","portfolioDealersInventoryAlertState","enabled","bwicAlertChange","portfolioBwicAlertState","activeInventorySecurityInitialState","activeInventorySecuritiesReducer","activeInventorySecurityActions","requestActiveInventorySecurities","requestActiveInventorySecuritiesSuccess","aggregate","securityIds","requestActiveInventorySecuritiesError","aggregatedList","securityId","settlementAgentCommissionInitialState","settlementAgentCommissionReducer","_action$payload$commi","clearingBankActions","settlementAgentCommissionRequest","values","settlementAgentCommissionResponse","settlementAccountInitialState","settlementAccountReducer","settlementAccountActions","applyOrdering","settlementAccounts","update","account","deleteAccount","accountId","accountName","assetManagerInitialState","assetManagerReducer","assetManagerActions","tradeAllocationInitialState","tradeAllocationActions","tradeAllocationItems","tradeAllocationTemplateInitialState","tradeAllocationTemplateActions","sortTemplates","templates","template","deleteTemplate","templateId","activeChange","_action$payload$activ","_action$payload$deact","activated","deactivated","awaitingTradesInitialState","awaitingTrades","awaitingTradesActions","requestTrades","requestTradesResult","tradeAllocationCreated","collateralManagersDefaultState","collateralManagersReducer","collateralManagersActions","requestCollateralManagers","responseCollateralManagers","collateralManagers","trusteeInitialState","trusteeReducer","trusteeActions","trustee","pageConfigDefaultState","defaultConfigRequestState","defaultConfigs","configs","pageConfigReducer","pageConfigActions","getConfigs","getDefaultConfig","saveColumns","configType","columns","liveBiddingInitialState","liveBiddingReducer","_action$payload$canDe","_action$payload$canDe2","liveBiddingActions","stage2LevelChange","stage2Start","cloSystemInfrastructureDefaultState","cloSystemInfrastructureReducer","cloSystemInfrastructureActions","responseData","cloSystemInfrastructure","sortCompany","partiesInitialState","partiesReducer","partiesActions","arrangerCompanies","trusteeCompanies","collateralManagerCompanies","majorityEquityCompanies","amrAgentCompanies","availableBrokerDealersInitialState","availableBrokerDealersReducer","availableBrokerDealersActions","CompanyStatus","Active","latestTransactionInitialState","latestTransactionReducer","latestTransactionActions","dealTicker","toLowerCase","arrangersPipelineInitialState","arrangersPipelineReducer","arrangersPipelineActions","pipeline","_t$dealTicker$toLower","_t$dealTicker","inventory","allInventory","brokerDealerList","brokerDealerContactList","brokerDealerUserList","settlementAgentAgreements","adminInventoryEdit","priceTalksInitialState","emailPreferences","activeInventorySecurities","settlementAgentCommission","settlementAccount","assetManager","tradeAllocation","rejectedTrades","pageConfig","liveBidding","parties","availableBrokerDealers","latestTransaction","arrangersPipeline","entities","_action$type$split","split","_action$type$split2","branch","feature","priceTalksReducer","criticalError","CRITICAL_ERROR","ERROR_RESET","favorites","isUpdatingFavorite","favoriteBrokerDealers","favoriteBrokerDealersActions","fetchFavoriteBrokerDealersRequest","fetchFavoriteBrokerDealersSuccess","fetchFavoriteBrokerDealersFailure","updateFavoriteBrokerDealerRequest","updateFavoriteBrokerDealerSuccess","updateFavoriteBrokerDealerFailure","filterActionsReducer","reducer","roles","filterActions","hasRoles","getDefaultFilter","filterType","amrArrangerPipelineFilters","defaultFilter","Deals","pipelineFilters","BwicFilterType","Portfolio","portfolioInitialFilters","Inventory","inventoryFilters","BDInventory","bdInventoryFilters","BwicMonitor","bwicMonitorFilters","defaultFilters","BwicMonitorSell","bwicMonitorSellFilters","BwicMonitorBuy","bwicMonitorBuyFilters","getInitialVisibleFilters","visibleFilters","getInitialState","lastAppliedFilter","selectedFilter","filterChanged","filterApplied","filterModified","createFilterActions","visibleRedirectFilters","applyRedirect","resetFilter","resetFiltersVisibility","updateFilterState","filterUtils","isFilterChanged","applyFilter","setFilterApplied","storeFilterData","filterName","filterSelectChange","isApplied","changeRangeFilter","filterDateClearSelectedOptions","selectedOption","options","filterDateSelectOption","customYearsRange","isNumber","String","filterDateTimeOptionSelected","filterDateSelectYearsRange","filterDateSelectCustomRange","filterDateTimeSelectCustomRange","filterRadioChange","filterRadioClearOption","filterSelectSelectAll","f","filterSelectClearAll","filterRangeClearSelectedOptions","filterVisibilityChange","currentFilter","makeFilterVisible","setFilterByReferenceName","selectedFilterReferenceName","selectFilterFromConfig","deserializedFilter","deserializeFilters","newFilterState","entries","reduce","acc","_ref2","configFilter","stateFilter","mergedState","setRedirectFilters","resetFilterState","resetSelectedFilter","cloneDeep","setFilterOption","filterData","disabled","o","optionForSelect","setFilterBoolean","setFilterYearsRange","selectedOptions","_first","_last","YearsRange","first","toString","last","cloned","classNames","ratings","statuses","transactionTypes","trustees","amrDeal","euCompliance","esg","staticDeal","reinvestmentEnd","nonCallEnd","pricingDate","bwicMonitor","bwicMonitorSell","bwicMonitorBuy","triggerValidation","displayErrors","forms","DISPLAY_VALIDATION_ERRORS","activate","lastAppliedSearchTerm","columnName","OrderByDirection","asc","selection","upload","uploadStatus","progress","isDataProcessing","inputBlocked","mountedKey","rowsLimit","gridRowsLimit","editingValue","minDrafts","ROWS_LIMIT","GRID_SET_MOUNTED_KEY","POSITION_CHANGE","APPLY_EDIT","dataItem","_action$errors","UPDATE_DRAFT","draft","_action$ordering","ordering","DELETE_ROW","DELETE_SELECTED","DELETE_INVALID","deleteItemsWithErrorReducer","DELETE_FLAGGED","isFlagged","EDITING","editingError","SETUP_HEADERS","headers","ADD_COLUMN","positionIndex","slice","MOVE_COLUMN_DATA","changed","toColumnName","fromColumnName","REMOVE_COLUMN","_copy$errors","ADD_DATA_ITEMS","currentItems","newItems","REPLACE_DATA_ITEM","itemIndex","INSERT_DATA_ITEMS","APPEND_DATA_ITEMS","SET_SELECTION","SHOW_HELP","showHelp","HIDE_HELP","DATA_ITEMS_UPLOAD_STATE","BLOCK_INPUT","block","DATA_PROCESSING","CHANGE_ROW_ORDER","newIndex","CLEAR","isDuplicated","_loop","duplicate","duplicateIndexes","alive","min","indexesToRemove","filteredItems","categories","activeSectionArticles","search","results","categoriesRequestState","sectionRequestState","searchRequestState","helpResources","helpResourcesActions","resetSearch","resetSection","fetchCategories","fetchSection","fetchBySearch","loadMoreSearch","articles","loadedDealReferenceNames","isDealsRequesting","isDealDetailsRequesting","isTrancheDetailsRequesting","imDetailsDeals","_state$deals","_state$deals2","_state$deals3","_state$deals4","_state$deals5","DEALS_RESET","DEALS_REQUESTING_STATE","DEAL_DETAILS_REQUESTING_STATE","DEALS_TRANCHE_DETAILS_REQUESTUNG_STATE","DEALS_STORE_DEALS","DEALS_STORE_ACTUAL_AMR_CLASSES","actualAuction","amrClasses","DEALS_STORE_AMR_CLASSES","classReferenceName","auctions","DEALS_STORE_DOCUMENTS","documents","DEALS_STORE_DOCUMENTS_SEARCH_RESULTS","DEALS_RESET_DOCUMENTS_SEARCH","userConfigInitialState","isLoadingDefault","isDeleting","columnsConfig","filtersConfig","UserConfigType","imFilter","apFilter","imAlertConfig","imAlert","alertOption","AlertOption","Never","newTransactionAlertConfig","newPublishedTransactionAlert","weeklyStatsAlertConfig","weeklyStatsEmail","emailOption","StatisticsAlertOption","transactionAlertConfig","transactionAlert","apAlertConfig","arrangerPipelineAlert","cloManagerAnalyticsAlert","cloManagerIssuanceMonitorAlert","cloManagerArrangerPipelineAlert","cloManagerBwicAlert","cloManagerDealerInventoryAlert","bankAnalyticsAlert","bankDealerInventoryAlert","bankIssuanceMonitorAlert","bankArrangerPipelineAlert","summaryDailyAlertConfig","summaryDailyAlerts","columnsDefaultConfig","filterForRoles","el","pipelineRoleColumns","_ref2$includeFor","includeFor","_ref2$excludeFor","excludeFor","role","imUserConfig","imUserConfigActions","getUserConfig","getUserConfigResult","updateUserConfigResult","mapConfig","userConfig","existingConfigTypes","_ref3","_ref4","imColumnsClassTab","imColumnsDealTab","dealsPipelineFilterConfig","_ref5","arrangerPipelineFilterConfig","_ref6","_ref7","_ref8","_ref9","_ref10","_ref11","_ref12","_ref13","_ref14","_ref15","_ref16","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","getUserFilterConfigResult","_ref23","_ref24","getDefaultUserColumnsConfig","getDefaultUserColumnsConfigResult","columnConfig","resetState","updateUserConfig","createUserFilter","updateUserFilter","updateUserFilterEmailAlerts","saveTransactionAlerts","saveCompanyAlerts","createUserFilterResult","updateUserFilterResult","setUserFilterParamsResult","userConfigFilter","filterValues","default","filterValue","deleteUserFilter","deleteUserFilterResult"],"sourceRoot":""}