{"version":3,"file":"static/js/main-0a037d97.d823bdbd.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 securitiesRequestState: RequestState.none,\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 securities: 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.arrangerPipelineSecuritiesRequest):\r\n return {\r\n ...state,\r\n securitiesRequestState: RequestState.request,\r\n };\r\n case getType(amrArrangerPipelineActions.arrangerPipelineSecuritiesResponse):\r\n return {\r\n ...state,\r\n securitiesRequestState: action.payload.requestState,\r\n securities: [\r\n ...state.securities ?? [],\r\n ...(action.payload.statistics ?? []),\r\n ],\r\n arrangerPipelines: state.arrangerPipelines?.map(p => ({\r\n ...p,\r\n hasDocuments: action.payload.statistics?.find(s => s.ticker === p.dealTicker)?.hasDocuments ?? false,\r\n })),\r\n };\r\n case getType(amrArrangerPipelineActions.resetPipelines): {\r\n return {\r\n ...state,\r\n offset: 0,\r\n arrangerPipelines: undefined,\r\n securities: 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 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 { 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 return data.sort(\r\n (a, b) =>\r\n compareBoolean(a.isUserCompany, b.isUserCompany) ||\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","securitiesRequestState","amrArrangerPipeline","_state$securities","_action$payload$stati","_state$arrangerPipeli","amrArrangerPipelineActions","arrangerPipelinesRequest","setAnyPipelineExists","arrangerPipelinesResponse","arrangerPipelines","nonVisibleCount","syndicateContacts","sortSyndicateContacts","constants","defaultTransactionsSearchCriteria","count","sortingChange","arrangerPipelineStatisticRequest","arrangerPipelineStatisticResponse","arrangerPipelineSecuritiesRequest","arrangerPipelineSecuritiesResponse","statistics","_action$payload$stati2","_action$payload$stati3","_action$payload$stati4","hasDocuments","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","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","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","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","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":""}