{"version":3,"file":"static/js/main-0a037d97.8c0cac41.js","mappings":"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","sources":["reducers/change.color.reducer.js","reducers/direct-bidding-agreement-disclaimer.reducer.ts","reducers/dealers.reducer.ts","reducers/edit-news.reducer.ts","reducers/forms.reducer.js","reducers/filter.reducer.ts","logging/app-insights.ts","logging/logger.ts","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","logging/useContentVisibilityLogger.ts","reducers/bid-on-behalf.reducer.ts","reducers/change-subscription.reducer.ts","reducers/amr-arranger-pipeline.reducer.ts","reducers/amr-deals.reducer.ts","reducers/amr-pipeline.reducer.ts","reducers/address.reducer.ts","reducers/im-details-deals.reducer.ts","reducers/company-members.reducer.ts","reducers/amr-pipeline-history.reducer.ts","reducers/bidding.reducer.js","reducers/im-user-config.reducer.ts","reducers/filter-actions.reducer.ts","reducers/clo-managers.reducer.ts","reducers/companies.reducer.js","reducers/dealer-list.reducer.ts","reducers/dealer-list-panel.reducer.ts","reducers/company-details.reducer.ts","reducers/edit.portfolio.reducer.js","reducers/filters.reducer.ts","reducers/amr-common.reducer.ts","reducers/clients-companies.reducer.ts","reducers/edit.company.reducer.ts","reducers/amr-pipeline-detailed.reducer.ts","reducers/bidding.push.data.reducer.js","reducers/contacts.save.reducer.js","reducers/deals.reducer.ts","reducers/contact-sales.reducer.ts","reducers/error.reducer.js","reducers/add-to-portfolio.reducer.ts","reducers/blast-message.reducer.ts","reducers/bwic-history.reducer.js","reducers/change.pxTalk.reducer.ts","reducers/blotter.reducer.js","reducers/authentication.reducer.js","reducers/help-resources.reducer.ts","reducers/grid.reducer.js","reducers/dealer-list-filter.reducer.ts","reducers/favorite-broker-dealers.reducer.ts","reducers/edit.parsed.bwic.reducer.js","reducers/bid-placement.reducer.ts","reducers/bid-confirmation.reducer.ts","reducers/brokerDealer.bidding.reducer.js","reducers/bwic-log.reducer.ts","reducers/bd-inventory.reducer.ts","reducers/api-operation.reducer.ts","reducers/dealers-stats.reducer.ts","reducers/dashboard.reducer.js","reducers/all.bwics.reducer.js","reducers/banks.reducer.ts"],"sourcesContent":["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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 * 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 { 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","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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 { 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 {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 { 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 { 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 { 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 { 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 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 { 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 { 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 { 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 { 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 { 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 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 {\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 { 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"],"names":["initialState","color","undefined","ticker","errors","isValid","isNormalizing","changeColor","state","arguments","length","action","type","actionTypes","RESET","_objectSpread","SET_COLOR","data","dm","CHANGE_COLOR_SET_DM","payload","TRADED_CHANGE","traded","LEVEL_SPECIFICATION_CHANGE","levelSpecificationType","levelSpecification","LEVEL_CHANGE","level","NORMALIZED_LEVEL_CHANGE","normalizedLevel","SET_LEVEL_ERROR","error","SET_COLOR_ERROR","LEVEL_TYPE_CHANGE","levelType","NORMALIZING","confirmRequestState","RequestState","none","downloadPdfRequestState","visible","confirmed","blockerId","directBiddingDisclaimer","getType","directBiddingDisclaimerActions","show","hide","confirmRequest","request","confirmSuccess","success","confirmFailure","failure","downloadPdfRequest","downloadPdfSuccess","downloadPdfFailure","reset","requestToBidRequestState","filter","initialDealerListFilter","confirmRequestToBidPopup","dealerId","dealers","DEALERS_SHOW_CONFIRM_BID_REQUEST_POPUP","DEALERS_HIDE_CONFIRM_BID_REQUEST_POPUP","DEALERS_REQUEST_TO_BID_SET_REQUEST_STATUS","status","DEALERS_RESET_STATE","dealersActions","setSearchTerm","updateFilterOptions","clearFilterOptions","dealerListFilterReducer","editNewsInitialState","isLoading","isMoreLoading","isDetailsLoading","isSearching","newsList","newsDetails","initialNews","managers","arrangers","offset","totalCount","searchTerm","editNews","editNewsActions","init","getInitResult","_action$payload","getTotalCountResult","loadMoreNewsList","loadMoreNewsListResult","concat","_toConsumableArray","searchNewsList","searchNewsListResult","getNewsDetails","createOrUpdateNews","deleteNews","getNewsDetailsResult","newsData","updateNewsList","setInitialNews","resetNewsDetails","triggerValidation","displayErrors","forms","DISPLAY_VALIDATION_ERRORS","activate","getDefaultFilter","filterType","PipelineType","ArrangerPipeline","amrArrangerPipelineFilters","defaultFilter","Deals","IOIs","pipelineFilters","BwicFilterType","Portfolio","portfolioInitialFilters","Inventory","inventoryFilters","BDInventory","bdInventoryFilters","BwicMonitor","bwicMonitorFilters","defaultFilters","BwicMonitorSell","bwicMonitorSellFilters","BwicMonitorBuy","bwicMonitorBuyFilters","getInitialVisibleFilters","visibleFilters","getInitialState","lastAppliedFilter","selectedFilter","redirectFilters","filterChanged","filterApplied","filterModified","createFilter","actions","createFilterActions","accountActions","LOGOUT","visibleRedirectFilters","initialFilter","applyRedirect","resetFilter","resetFiltersVisibility","updateFilterState","filterUtils","isFilterChanged","applyFilter","setFilterApplied","storeFilterData","_defineProperty","filterName","requestState","filterSelectChange","isApplied","map","r","option","value","selected","changeRangeFilter","filterDateClearSelectedOptions","selectedOption","options","filterDateSelectOption","_action$payload2","customYearsRange","numericUtils","isNumber","from","to","String","filterDateTimeOptionSelected","filterDateSelectYearsRange","filterDateSelectCustomRange","customDateRange","filterDateTimeSelectCustomRange","filterRadioChange","filterRadioClearOption","filterSelectSelectAll","f","text","toLowerCase","includes","filterSelectClearAll","filterRangeClearSelectedOptions","filterVisibilityChange","currentFilter","makeFilterVisible","setFilterByReferenceName","selectedFilterReferenceName","selectFilterFromConfig","_action$payload3","referenceName","deserializedFilter","deserializeFilters","newFilterState","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray","key","configFilter","stateFilter","mergedState","setRedirectFilters","resetFilterState","resetSelectedFilter","result","cloneDeep","keys","forEach","Array","isArray","setFilterOption","filterData","isNil","disabled","o","optionForSelect","find","setFilterBoolean","setFilterYearsRange","selectedOptions","_first","_last","dateRangeFilterOptions","YearsRange","first","toString","last","cloned","classNames","ratings","statuses","transactionTypes","trustees","amrDeal","euCompliance","esg","staticDeal","currency","reinvestmentEnd","nonCallEnd","pricingDate","Custom","reactPlugin","ReactPlugin","instrumentationKey","process","ai","ApplicationInsights","config","extensions","extensionConfig","identifier","history","loadAppInsights","addTelemetryInitializer","item","baseType","ext","trace","name","location","pathname","currentUser","user","current","setAuthenticatedUserContext","email","clearAuthenticatedUserContext","e","console","log","appInsights","logger","exception","message","silent","writeToConsole","trackException","severityLevel","SeverityLevel","Error","addFePrefix","trackTrace","Information","REACT_APP_CONSOLE_LOGGING_ENABLED","updateInventoryPushReducer","currentInventoryList","inventoryListUpdates","inventoryList","position","InventoryPositionStatus","obsolete","removed","i","id","some","index","findIndex","splice","unshift","inventoryReducerDefaultState","items","lockModifiedDate","bdInventoryReducer","bdInventoryActions","requestResult","response","inventorySecurities","inventoryStatusChange","inventoryPositionId","pushInventory","_user$current","bdCompanyId","companyId","inventoryPositions","updatedInventorySecurities","isRequestSuccess","p","dealer","resetEntities","allInventoryReducerDefaultState","totalRecordNumber","currentPageNumber","pageSize","summary","inventoryReducer","inventoryActions","loadNextPage","pushInventories","inventories","resetSummary","brokerDealerListInitialState","brokerDealerListReducer","brokerDealerListActions","updateDealerDistributionListInvitationSent","distributionListInvitationSent","updateDealerHeadOfTradingInvitationSent","headOfTrading","headOfTradingInvitationSent","brokerDealerContactListInitialState","brokerDealerContactListReducer","brokerDealerContactListActions","pushUpdateList","pushUpdateListReducer","contacts","setContactInvitationSent","contactId","invitationSent","currentContacts","pushContactsList","contact","cc","contactIndex","c","deleted","push","brokerDealerUserListInitialState","brokerDealerUserListReducer","brokerDealerUserListActions","settlementAgentAgreementsInitialState","settlementAgentAgreementsReducer","settlementAgentAgreementActions","pushDataReceived","updateAgreementsList","agreement","currentAgreements","isClearingBank","a","settlementAgent","adminInventoryEditInitialState","adminInventoryEditReducer","adminInventoryEditActions","requestInventory","requestInventorySuccess","bdCompany","company","positions","requestInventoryError","rejectedTradesInitialState","rejectedTradesReducer","rejectedTradeActions","trades","setTradesAsResolved","tradeIds","pushBuyerRejectTrade","trade","portfolioListInitialState","portfolioListReducer","portfolioListActions","colorDistributionSend","updateSecurityHistory","_action$payload$data$","colors","positionId","bwicStatusChanged","bwicStatus","updateSendAlertState","sendAlerState","sendAlertState","sendAlerStateNormalized","apiUtils","normalize","portfolioId","_sendAlerStateNormali","_sendAlerStateNormali2","_sendAlerStateNormali3","_sendAlerStateNormali4","_sendAlerStateNormali5","_sendAlerStateNormali6","_sendAlerStateNormali7","bwicAlert","dealersInventoryAlert","cleansingNoticeAlert","issuanceMonitorAlert","outOfRiPeriodAlert","outOfNcPeriodAlert","rollerDeadlineAlert","deletePortfolio","updateCallback","bwicReferenceName","securities","s","h","bwicStatuses","cancelled","emailPreferencesInitialState","emailPreferencesReducer","emailPreferencesActions","preferences","inventoryAlertChange","portfolioDealersInventoryAlertState","enabled","bwicAlertChange","portfolioBwicAlertState","activeInventorySecurityInitialState","activeInventorySecuritiesReducer","activeInventorySecurityActions","requestActiveInventorySecurities","requestActiveInventorySecuritiesSuccess","aggregate","securityIds","requestActiveInventorySecuritiesError","aggregatedList","securityId","settlementAgentCommissionInitialState","commission","settlementAgentCommissionReducer","_action$payload$commi","clearingBankActions","settlementAgentCommissionRequest","values","settlementAgentCommissionResponse","settlementAccountInitialState","settlementAccountReducer","settlementAccountActions","applyOrdering","settlementAccounts","update","account","deleteAccount","accountId","sort","b","accountName","localeCompare","assetManagerInitialState","assetManagerReducer","assetManagerActions","companies","tradeAllocationInitialState","tradeAllocationReducer","tradeAllocationActions","tradeId","tradeAllocationItems","tradeAllocationTemplateInitialState","tradeAllocationTemplateReducer","tradeAllocationTemplateActions","sortTemplates","templates","template","deleteTemplate","templateId","activeChange","_action$payload$activ","_action$payload$deact","activated","deactivated","compareBoolean","active","compareStrings","awaitingTradesInitialState","awaitingTrades","awaitingTradesActions","requestTrades","requestTradesResult","requestStatus","t","tradeAllocationCreated","buyerSettlementStatus","sellerSettlementStatus","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","x","stage2LevelChange","openBiddingStage2Level","tiedForBest","latestBidSubmission","sentDateUtc","stage2Start","canDealerBidOnPositions","isStage2Participant","canBidOnStage2","cloSystemInfrastructureDefaultState","cloSystemInfrastructureReducer","cloSystemInfrastructureActions","requestData","responseData","cloSystemInfrastructure","sortCompany","legalName","partiesInitialState","partiesReducer","partiesActions","arrangerCompanies","trusteeCompanies","collateralManagerCompanies","majorityEquityCompanies","amrAgentCompanies","availableBrokerDealersInitialState","availableBrokerDealersReducer","availableBrokerDealersActions","CompanyStatus","Active","latestTransactionInitialState","latestTransactionReducer","latestTransactionActions","transactions","dealTicker","arrangersPipelineInitialState","arrangersPipelineReducer","arrangersPipelineActions","pipeline","_t$dealTicker$toLower","_t$dealTicker","inventory","allInventory","brokerDealerList","brokerDealerContactList","brokerDealerUserList","settlementAgentAgreements","portfolios","adminInventoryEdit","priceTalks","priceTalksInitialState","emailPreferences","activeInventorySecurities","settlementAgentCommission","settlementAccount","assetManager","tradeAllocation","tradeAllocationTemplate","rejectedTrades","pageConfig","liveBidding","parties","availableBrokerDealers","latestTransaction","arrangersPipeline","entities","_action$type$split","split","_action$type$split2","branch","feature","priceTalksReducer","useContentVisibilityLogger","targetRef","traceText","visibleTimoutSeconds","_useIntersectionObser","useIntersectionObserver","visibleRef","useRef","timeout","useLayoutEffect","setTimeout","trackingService","trackAction","clearTimeout","isRequesting","isSubmitting","editState","conflicts","isConflictsPpopupVisible","focusedBid","bidOnBehalf","bidOnBehalfActions","setCompainesRequesting","submitProgress","inProgress","storeCompanies","editBid","getEditKey","editing","editCompleted","pass","resetBidEdit","resetCompanyBidsEdit","parseKey","resetEdit","axed","final","storeConflicts","resetConflicts","conflictsPopupVisible","setNextBidIdentifiers","resetNextBidIdentifiers","pushBwicActions","tradeAction","stagedBiddingStartStage2","stagedBiddingFinishStage2","popupVisible","isSubscriptionSavingFlag","changeSubscription","changeSubscriptionActions","deals","dealsSearchItems","selectedDealsLegalNames","sortBy","sortDirection","SORT","DESC","hasMore","isExportLoad","isSubmitted","anyPipelineExists","isSummaryRequesting","amrArrangerPipeline","amrArrangerPipelineActions","arrangerPipelinesRequest","setAnyPipelineExists","arrangerPipelinesResponse","arrangerPipelines","nonVisibleCount","syndicateContacts","sortSyndicateContacts","constants","defaultTransactionsSearchCriteria","count","sortingChange","arrangerPipelineStatisticRequest","arrangerPipelineStatisticResponse","resetPipelines","dealsResponse","selectDealsFromSearch","dealsLegalNames","dealsSearchResponse","_action$payload$arran","arrangerPipelineDeals","d","edit","setEditLoadingStatus","submitArrangerPipeline","submitArrangerPipelineStatus","exportLoad","resetDeals","isTransactionsSearching","isClassesSearching","isManagerPopupVisible","transactionsOffset","classesOffset","dealSortBy","dealSortDirection","ASC","classSortBy","classSortDirection","isExpanded","hasMoreTransactions","hasMoreTransactionsClasses","wasInitialAccessTracked","anyIOIsExists","createAmrDealsWithNamedData","pipelineType","PIPELINE_INITIAL_LOAD","PIPELINE_SEARCH_TRANSACTIONS","PIPELINE_SEARCH_CLASSES","PIPELINE_DEAL_SORTING_CHANGED","numberOfHiddenTransactions","direction","PIPELINE_CLASS_SORTING_CHANGED","classes","numberOfHiddenClasses","PIPELINE_STORE_TRANSACTIONS","withIndicatingRefinancedIoIs","numberOfHiddenItems","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","PIPELINE_EXPORT_LOAD","PIPELINE_SET_SYNDICATE_CONTACTS","arrangerName","PIPELINE_SET_ANY_IOIS_EXISTS","createAmrPipelineWithNamedData","combineReducers","searchTransactions","createSearchTransactionsNamedData","createRegionReducer","loadAction","responseAction","initialRegionState","isLoaded","address","countries","addressActions","loadCountries","loadCountriesResponse","states","loadStates","loadStatesResponse","cities","loadCities","loadCitiesResponse","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","dealReferenceName","actualAuction","amrClasses","DEALS_STORE_AMR_CLASSES","classReferenceName","auctions","DEALS_STORE_DOCUMENTS","documents","DEALS_STORE_DOCUMENTS_SEARCH_RESULTS","filteredDocuments","DEALS_RESET_DOCUMENTS_SEARCH","companyMembers","companyMembersActions","fetchCompanyMembers","members","lastUpdatedFields","amrPipelineHistory","_state$history","amrTransactionHistoryActions","transactionHistoryRequest","transactionHistoryResponse","transactionsHistory","allHistoryClassesList","transaction","collateralQualityTests","sortCollateralQualityTests","storeTransactionDetais","version","transactionDetails","isDetailsLoaded","transactionFieldsUpdatedRequest","transactionFieldsUpdatedResponse","transactionFieldsUpdatedReset","bwic","visitorType","userCompany","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","isColorDistribution","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","pushDataActions","PUSH_DATA_STAGED_BIDDING_START_STAGE2","shouldHandlePushData","BwicProcessType","TopX","onPlatform","offPlatform","stagedBiddingStatus","OpenBiddingStatus","stage1Ended","jumpBall","stage1EndDateUtc","topX","PUSH_DATA_STAGED_BIDDING_FINISH_STAGE2","improvementRoundEnded","PUSH_DATA_COLOR_DISTRIBUTION","PUSH_DATA_AUTO_FEEDBACK_CONFIG","PUSH_DATA_NEW_BID","updateBwicParticipants","bid","PUSH_DATA_QUICK_FEEDBACK","feedback","brokerDealer","BIDDING_RESET","userConfigInitialState","isUpdating","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","hasRoles","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","filterActionsReducer","reducer","roles","filterActions","apply","cloManagersInitialState","analytics","users","clientsActivity","analyticDefaultFilters","profileHistoryViews","selectedSecurity","sortCloManagers","isUserCompany","hasActiveTransactions","cloManagers","_state$data","cloManagersActions","getCloManagers","getCloManagersResult","getCloManager","selectedManager","setManagerForAlertPopup","managerReferenceNameForAlert","getCloManagerResult","_cloManager$investmen","_state$selectedManage","cloManager","bwicCloManagers","investmentTeam","m","fullName","order","sortedBwicCloManagers","compareNumbersWithNullAcs","details","editManager","ownEquity","proprietaryAnalyticalTools","countryId","country","stateId","cityId","city","newCity","editBwicCloManagers","editPlatformUsers","_state$editBwicCloMan","manager","meetingContact","resetEditPlatformUsers","setCloManagerSaveState","switchFavoriteResponse","favorite","markFavorite","companyReferenceName","analyticsInitResponse","general","analyticsReset","clientsActivityRequest","clientsActivityResponse","_action$payload4","profileViewHistoryResponse","_action$payload5","clientsActivityFilterChange","profileViewHistoryFilterChange","profileViewHistoryFilterByBar","_action$payload6","accessType","date","tabs","dateOption","dateFrom","dateTo","selectedSecurityChange","security","companyFilterInitialState","blocked","administrator","seller","viewer","media","collateralManager","selectedDateOption","bwicDateFilterOptions","unspecified","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","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","found","companyList","initialStateDealerList","expandedDealers","editableContact","dealerName","updateRequestStatus","inviteToJoinRequestStatus","expandedAll","dealerList","_state$expandedDealer","dealerListActions","setDealerExpanded","expandDealers","toggleExpandedAllDealers","setExpandAllDealers","setEditableContact","editableContactUpdateDealer","editableContactSetRequestStatus","contactInviteToJoinSetRequestStatus","resetEditableContact","panelVisible","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","setDefaultVisibility","companiesToHide","setBidOnlyFlag","stage2ParticipantsFlagChange","isStage2participantsOnly","hidden","identifiers","stateCopy","isPanelVisible","isBrokerDealer","rowKey","currentCompanyId","isRequestingCompany","companyDetails","companyDetailsActions","fetchCompanyDetailsRequest","fetchCompanyDetailsResponse","setCompanyDetails","portfolio","renamePortfolioDialog","deletePortfolioDialog","updatePortfolioRequestState","isRequestingExportPortfolio","editPortfolio","PORTFOLIO_LOADED","PORTFOLIO_SAVED","saved","RENAME_DIALOG_VISIBLE","dialog","DELETE_PORTFOLIO_DIALOG","PORTFOLIO_DELETED","EDIT_PORTFOLIO_LOADING","PORTFOLIO_UPDATE_REQUEST","PORTFOLIO_UPDATE_SUCCESS","PORTFOLIO_UPDATE_FAILURE","PORTFOLIO_SET_REQUESTING_EXPORT_STATE","filters","bdInventory","bwicMonitor","bwicMonitorSell","bwicMonitorBuy","amrPipelineCommon","amrPipelineCommonActions","loadUserCompanyRequest","registerUser","loadUserCompanyResponse","loadUserCompanyError","selectedCompanyForAffirm","companiesList","requestStateFetchClientsList","requestStatusUpdateRequest","searchString","pendingAgreementCount","requestStateFetchPendingAgreementCount","currencyRate","requestStateGetCurrencyRate","requestStateUpdateCurrencyRate","visibleSetRatePopup","clientsCompanies","clientsCompaniesActions","fetchListRequest","fetchListSuccess","fetchListFailure","fetchPendingAgreementCountRequest","fetchPendingAgreementsCountSuccess","fetchPendingAgreementsCountFailure","setSelectedAgreement","resetSelectedAgreement","updateAgreementRequest","assetManagerId","updateAgreementSuccess","updateAgreementFailure","settlementAgentAgeementPushActions","settlementAgentAgreementPushReceived","updateCompaniesList","setSearchString","setVisibleUpdateRatePopup","getCurrencyRate","setResultGetCurrencyRate","rate","updateCurrencyRate","setResultUpdateCurrencyRate","code","signatory","loading","saving","editCompany","EDIT_COMPANY_LOADING_STATUS","COMPANY","STATES","CITIES","SALES_REPRESENTATIVES","SAVING","isSaving","SAVED","loadedTransactionsWithDetails","isTransactionsRequesting","isTransactionDetailsRequesting","isIOIsSubmitting","editIOIs","investorPopup","isVisible","versions","documentDownloads","totalDocumentsDownloads","recentTransactionViews","totalTransactionViews","daysInMarket","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","STORE_TRANSACTIONS","_state$initialTransac","initialTransaction","STORE_INITIAL_TRANSACTION","SEARCH_TERM_CHANGE","STORE_TRANSACTION_DETAILS","STORE_IOIS","_action$dataItems","transactionReferenceName","iois","dataItems","formatIoI","compareIOI","_action$dataItems2","SET_UNREAD_IOIS_READ","ioi","isRead","STORE_DOCUMENTS_SEARCH_RESULTS","RESET_TRANSACTIONS","SHOW_INVESTOR_POPUP","investor","compareFullNames","isPopupVisible","amrTransactionAnalyticsActions","analyticsInit","transactionViewHistoryResponse","transactionViewHistoryFilterChange","transactionViewHistoryFilterByBar","biddingPushDataReducer","bids","biddingUtils","getUniqueBidId","getUniqueBidIdFromFeedback","feedbackCreatedUtc","PUSH_DATA_TRADE","isTradedAway","PUSH_DATA_TRADED_AWAY","editBidState","PUSH_DATA_NEW_PX_TALK","priceTalk","pxTalks","equals","isDeleted","priceTalk1","priceTalk2","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","ENSURE_CONFLICTS_RESOLVED","isResolved","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","isRequestSending","contactSales","contactSalesActions","requestSendingFlag","isSending","criticalError","CRITICAL_ERROR","ERROR_RESET","selectedPortfolio","addToPortfolio","addToPortfolioActions","setPopupVisibility","setSelectedPortfolio","setSubmittingProgress","storeError","messageType","BlastMessageTypes","submitFinal","recipientLevel","BlastMessageRecipientLevelState","Top3","recipients","isSelectAllRecipients","stage1AboutToEndTimeout","blastMessage","blastMessageActions","messageTypeChange","recipientLevelChange","storeRecipients","editMinutesAboutToEnd","setError","recipientSelectedChange","companyIdentifier","toggleSelectAllParticipantsFlag","sending","selectAllRecipientsChange","bwicHistory","_action$historyAction","STORE_BWIC_HISTORY","historyActions","LOAD_HISTORY_REQUEST_STATE","SHOW_BWIC_HISTORY","MARK_HISTORY_MESSAGES_AS_READ","messages","PUSH_DATA_BWIC_STATUS_CHANGE","PUSH_DATA_PUBLIC_COLORS","PUSH_DATA_AXED_FINAL_CHANGE","bidRequest","historyAction","BwicVisitorType","Seller","sellerBuysideActions","Buyer","biddingActions","ignoreInHistory","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","TALK_ERROR","errorMessage","priceTalksActions","settlementSelectedDateOption","settlementCustomDateRange","pending","rejected","buySide","sellSide","client","desc","allocationStatus","unsettled","pendingSettlement","pendingAllocation","pendingProceeds","settled","initialFilters","prevFilters","requestStateSecurities","ownTrades","hasTrades","requestStateExport","requestStatusSetVcon","requestStatusSetBooked","requestStateSaveTradeAllocation","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","rejectReason","settlementDate","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","blotterTradeAllocationTemplateActions","resetPanelState","blotterReset","custom","dateRange","Currencies","authenticated","resetToken","tokenVerified","authentication","LOGIN_SUCCESS","LOGIN_FAILURE","LOGIN_REFRESH_AUTHENTICATION","SETUP_PASSWORD_FAILURE","CHANGE_PASSWORD_FAILURE","SETUP_PASSWORD_INIT_COMPLETE","RESET_PASSWORD_SUCCESS","SETUP_PASSWORD_SUCCESS","RESET_PASSWORD_FAILURE","RESET_PASSWORD_RESET","SETUP_PASSWORD_RESET","CHANGE_PASSWORD_RESET","CHANGE_PHONE_NUMBER_RESET","CHANGE_PASSWORD_SUCCESS","LOGIN_LOADING","categories","activeSectionArticles","search","results","categoriesRequestState","sectionRequestState","searchRequestState","helpResources","helpResourcesActions","resetSearch","resetSection","fetchCategories","fetchSection","fetchBySearch","loadMoreSearch","articles","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","copy","ADD_DATA_ITEMS","currentItems","newItems","REPLACE_DATA_ITEM","itemIndex","INSERT_DATA_ITEMS","APPEND_DATA_ITEMS","SET_SELECTION","VALIDATE","validation","SHOW_HELP","showHelp","HIDE_HELP","DATA_ITEMS_UPLOAD_STATE","BLOCK_INPUT","block","DATA_PROCESSING","CHANGE_ROW_ORDER","newIndex","CLEAR","isDuplicated","_loop","duplicate","duplicateIndexes","indexOf","alive","Math","min","indexesToRemove","filteredItems","filterOptions","DealerFilterOptions","Favorite","OffPlatform","Platform","newBwicDealersActions","filterOption","favorites","isUpdatingFavorite","favoriteBrokerDealers","favoriteBrokerDealersActions","fetchFavoriteBrokerDealersRequest","fetchFavoriteBrokerDealersSuccess","fetchFavoriteBrokerDealersFailure","updateFavoriteBrokerDealerRequest","updateFavoriteBrokerDealerSuccess","updateFavoriteBrokerDealerFailure","cancelDialog","emailReceivedDate","moment","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","CANCEL_DIALOG","SET_EMAIL_RECEIVED_DATE","SAVING_STATE","BWIC_SAVED","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","BID_PLACEMENT_SET_BID_ERRORS","REVERT","REVERT_ALL","COMMISSION_CHANGE","commissionError","submitBidsConfirmationInitial","submitBidsConfirmationVisible","submitInProgress","submitInProgressPositionId","submitResult","bidConfirmationReducer","bidConfirmationActions","positionIdList","submitResults","accessState","requestingPositions","submitBidsConfirmation","brokerDealerBidding","_state$securities","BROKER_DEALER_BIDDING_RESET","BROKER_DEALER_BIDDING_STORE_SECURITIES","BROKER_DEALER_ACCESS_STATE","tradeConfirmActions","SET_TRADED_POSITION_STATUS","_state$editBid$action","_state$editBid$action2","bidLock","modifiedDate","createdUtc","bidId","PUSH_DATA_OPEN_BIDDING_STAGE2_LEVEL","_state$securities2","initRequestState","exportDataRequestState","securityBwicStatistics","bwicLogReducer","bwicLogActions","bwicLogInitRequest","bwicLogInitSuccess","statistics","bwicLogInitFailure","bwicLogExportDataRequest","bwicLogExportDataSuccess","bwicLogExportDataFailure","bwicLogReset","isInventoryExist","requestStateInventoryExist","requestStatusExportInventory","requestStatusSaveBloombergEmail","isVisibleAddBloombergEmailForm","advancedFilterBlocked","requestInventoryExistFlag","inventoryExistFlag","exist","exportInventoryRequest","exportInventoryResponse","toggleVisibleAddBloombergEmailForm","addBloombergEmailRequest","addBloombergEmailResponse","requests","responses","apiOperation","_state$requests","apiOperationActions","waitResult","updateOperationState","token","remove","resetEvent","event","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","initialFilterState","selectedRatings","selectedCurrencies","isMounted","bwics","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","dashboardReducer","dashboardInit","dashboardInitSuccess","dashboardInitFailure","dashboardGetPortfolioInventorySecuritiesRequest","dashboardGetPortfolioInventorySecuritiesSuccess","pageNumber","dashboardGetPortfolioInventorySecuritiesFailure","dashboardSetPortfolioInventoryCurrentPage","dashboardPortfolioInventorySortParamsChanged","dashboardPortfolioInventoryReset","dashboardFetchBwics","BwicStatus","scheduled","finished","getMyBwics","dashboardFetchPortfolioExist","dashboardFetchPortfolioSecurities","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","dashboardSetNotAppliedFilter","dashboardResetNotAppliedFilter","dashboardClearFilter","dashboardSetFilterActive","dashboardSetSearchTermItem","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","absDifference","abs","difference","daysBetweenTrade","lastDate","prevDate","diff","priceVelocity","divideSafe","rowA","rowB","rowADate","year","month","rowBDate","unix","pagingInitialState","searchInProgress","activeBwicReferenceName","isNextPageRequesting","isRequestingExportBwics","myBwicsOnly","isAllToAll","BwicMonitorSortByOptions","NewestFirst","allBWICS","MY_BWICS","ALL_TO_ALL","BWICS_SEARCH_PROGRESS","BWICS_SEARCH_COMPLETE","_action$summary","currentBwicList","requestedBwics","collapsed","collapseAll","ALL_BWICS_SET_EXPORTING_STATUS","SET_ACTIVE_BWIC","SET_BWIC_COLLAPSED_STATE","SET_COLLAPSE_ALL","ALL_BWICS_NEXT_PAGE_REQUESTING","ALL_BWICS_RESET_PAGING","LIVE_BIDDING_STAGE2_EXPIRED","ADVANCED_FILTER_BLOCKED","RESET_SUMMARY","sellerBiddingActions","MARK_BIDS_SHOWN","bidList","isNew","ADD_POSITION_BIDS","SORTING_CHANGED","newBid","_s$bids","getBidCompanyIdentifier","_s$bids2","_s$bids3","_b$securities","_action$canDealerBidO","_action$canDealerBidO2","_action$canDealerBidO3","_b$securities2","allBwicsPushEnabled","banksInitialState","events","primaryContacts","secondaryContacts","newsRequestState","exportTransactionCountLoading","isOfType","isDistributionList","ContactType","DistributionList","isHeadOfDesk","HeadOfDesk","isHeadOfTrading","sortBanks","featuresCount","bank","compact","existsOnDealerInventory","sendsPxTalk","sortByOrder","sortContacts","banks","banksActions","getBanks","getBanksResult","getBankDetails","selectedBank","getBankDetailsResult","_state$selectedBank","bankDetails","aggregatedManagerTransactions","companyEvents","aggregatedManagersCount","managersTransactionCountFilterResult","exportTransactionCountRequest","exportTransactionCountResponse","editBank","_state$syndicateConta","primary","secondary","headOfDeskContact","headOfDeskDistributionList","headOfTradingContact","headOfTradingDistributionList","leftPrimaryContacts","leftSecondaryContacts","headOfDesk","officePhoneNumber","mobilePhoneNumber","primaryDesk","distributionListEmail","editBankReset","updateBank","updateBankResult","setBankForAlertPopup","bankReferenceNameForAlert"],"sourceRoot":""}