{"version":3,"sources":["../../types/dist/Account.js","../../types/dist/Language.js","../../types/dist/AccountManagement.js","../../types/dist/Application.js","../../types/dist/enums.js","../../types/dist/Blocks.js","../../types/dist/BlockSettings.js","../../types/dist/Cashiering.js","../../types/dist/Country.js","../../types/dist/Duration.js","../../types/dist/constants.js","../../types/dist/Entitlements.js","../../types/dist/Expirations.js","../../types/dist/Information.js","../../types/dist/Exceptions.js","../../types/dist/Layout.js","../../types/dist/Order.js","../../types/dist/OrderStatus.js","../../types/dist/Session.js","../../types/dist/State.js","../../types/dist/Quote.js","../../types/dist/ResponseCode.js","../../types/dist/schema/dashboard.js","../../types/dist/schema/block.js","../../types/dist/schema/order.js","../../types/dist/schema/db.js","../../types/dist/StateSync.js","../../types/dist/Strategy.js","../../types/dist/Streaming.js","../../types/dist/Token.js","../../types/dist/translations/index.js","../../types/dist/Urls.js","../../types/dist/User.js","../../types/dist/util.js","../../types/dist/index.js","data/global/actions/admin/index.ts","data/global/actions.ts","components/dashboard/DashboardSymbolPicker.tsx","components/form/GenericField.tsx","assets/sounds/ok.mp3","assets/sounds/error.mp3","assets/sounds/updates.mp3","data/global/actions/CashieringEventActions.ts","data/global/actions/QuoteActions.ts","data/global/actions/AccountStatementsActions.ts","../../api/dist/utilities.js","../../api/dist/ApiClient.js","../../api/dist/blocks/blockUtilities.js","../../api/dist/commands/getPnLItem.js","../../api/dist/commands/account.js","../../api/dist/jsonEncode.js","../../api/dist/utilities/JwtUtilities.js","../../api/dist/commands/auth.js","../../api/dist/config.js","../../api/dist/feed/WebsocketFeedParser.js","../../api/dist/logger.js","../../api/dist/utilities/SymbolUtilities.js","../../api/dist/strategies/strikeValidator.js","../../api/dist/strategies/directionValidator.js","../../api/dist/strategies/strategyValidator.js","../../api/dist/strategies/spreadRatioValidation.js","../../api/dist/strategies/validation.js","../../api/dist/strategies/strategies.js","../../api/dist/strategies/CustomStrategy.js","../../api/dist/utilities/DateUtilities.js","../../api/dist/utilities/OrderUtilities.js","../../api/dist/orders/orderPrice.js","../../api/dist/orders/orderBuilder.js","../../api/dist/orders/orderStatusCategories.js","../../api/dist/orders/utility.js","../../api/dist/performance/pnl.js","../../api/dist/strategies/profitloss.js","../../api/dist/commands/getToken.js","../../api/dist/commands/getBalances.js","../../api/dist/commands/getBars.js","../../api/dist/commands/marketSchedule.js","../../api/dist/commands/quote.js","../../api/dist/commands/symbols.js","../../api/dist/commands/positions.js","../../api/dist/commands/options.js","../../api/dist/commands/history.js","../../api/dist/commands/orderApi.js","../../api/dist/commands/application.js","../../api/dist/commands/userCommands.js","../../api/dist/commands/information.js","../../api/dist/commands/entitlements.js","../../api/dist/commands/downloads.js","../../api/dist/commands/historyGetBalance.js","../../api/dist/commands/nopass.js","../../api/dist/commands/subaccounts.js","../../api/dist/TradingBlockApi.js","../../api/dist/types.js","../../api/dist/utilities/ObjectUtilities.js","../../api/dist/utilities/SiteUtilities.js","../../api/dist/utilities/DocumentUtilities.js","../../api/dist/index.js","data/global/selectors/transforms.ts","data/global/actions/admin/AdminClientActions.ts","data/feed/FeedState.tsx","data/feed/DataFeed.ts","data/feed/useFeedActions.ts","data/feed/context/DataFeedSymbolsContext.tsx","data/feed/DataFeedInitializer.tsx","data/quotes/QuoteRequestHandler.tsx","data/Initializer.tsx","data/async/dashboards.ts","blocks/Activity/state/ActivityActions.ts","blocks/Order/state/OrderActionUtility.ts","utilities/date.ts","blocks/Order/state/orderReducerUtilities.ts","blocks/Order/state/transforms/orderStateTransforms.ts","blocks/Order/state/reducers/OrderPreviewReducer.ts","blocks/Order/state/OrderReducer.ts","blocks/BlockStateFactory.ts","utilities/dashboard.ts","components/dashboard/hooks/useDefaultDashboards.ts","utilities/url.ts","components/dashboard/drawer/EditDashboardModal.tsx","components/dashboard/drawer/DashboardItem.tsx","components/dashboard/DashboardPresetCarousel.tsx","data/global/selectors/originSelector.ts","components/basic/TradingBlockLink.tsx","components/basic/SiteName.tsx","components/dashboard/DashboardDrawer.tsx","data/global/selectors/environmentSelector.ts","hooks/useVirtualTrading.tsx","data/global/initialState.ts","components/dashboard/DashboardSettings.tsx","hooks/useReduxConfiguration.tsx","components/DebugSettings.tsx","components/useDebugSettings.tsx","components/admin/Links.ts","components/dashboard/menu/UserNameAndEnvironment.tsx","components/basic/LogoutLink.tsx","components/dashboard/navigation/ToggleVirtualTradingButton.tsx","components/dashboard/Menu.tsx","components/notifications/NotificationWrapper.tsx","components/notifications/DashboardNotification.tsx","components/notifications/ClientNotifications.tsx","data/global/utilities/options.ts","utilities/activity.ts","data/global/utilities/activity.ts","data/global/utilities/notification.ts","data/global/selectors/orderSelector.ts","components/notifications/TradeOrderNotifications.tsx","components/dashboard/TradingStatus.tsx","components/dashboard/navigation/DashboardMarketClosedCountdown.tsx","components/basic/Logo.tsx","hooks/useQuoteData.tsx","components/dashboard/DashboardSymbolWidget.tsx","components/dashboard/DashboardNavigation.tsx","components/dashboard/DashboardContentWrapper.tsx","blocks/shared/useBboxDimensions.ts","blocks/shared/table/useBlockTableActions.tsx","blocks/shared/table/BlockTableContent.tsx","blocks/shared/table/useBlockTableSize.tsx","blocks/shared/BlockTable.tsx","blocks/Order/hooks/useOrderSettings.tsx","blocks/Order/state/useOrderState.ts","blocks/Order/data/orderSelectors.ts","blocks/Order/hooks/useOrderPrice.tsx","blocks/Order/state/useOrderActions.tsx","data/global/selectors/symbolSelector.ts","hooks/useSounds.tsx","blocks/Order/hooks/useOrderTotal.tsx","blocks/Order/components/Preview/useOrderPreview.tsx","data/global/selectors/expirationStrikeSelector.ts","blocks/Order/data/useOrderStatus.ts","blocks/Order/components/PriceComponent.tsx","blocks/Order/components/Preview/PreviewLimitPrice.tsx","blocks/Order/components/Preview/PreviewStopPrice.tsx","blocks/Order/components/Preview/PreviewOrderTotal.tsx","blocks/Order/components/DebitCreditToggle.tsx","blocks/Order/components/Preview/PreviewDebitOrCredit.tsx","blocks/Order/components/Preview/EstCommissionPreview.tsx","blocks/Order/components/Preview/PreviewContent.tsx","components/dashboard/DashboardWrapper.tsx","components/hotkeys/BlockHotkeys.tsx","components/hotkeys/DashboardHotkeys.tsx","components/hotkeys/GridHotkeys.tsx","components/blocks/BlockDataLoader.tsx","blocks/shared/useBlockDimensions.tsx","data/global/selectors/groupSelectors.ts","components/blocks/content/BlockContentWrapper.tsx","components/blocks/useBlockGroupSync.tsx","data/global/utilities.ts","components/blocks/BlockLinkingDropdown.tsx","components/blocks/BlockSettingsDropdown.tsx","components/blocks/VirtualTradingModal.tsx","blocks/OptionChain/data/useOptionChainSettings.tsx","components/blocks/content/BlockContentHeader.tsx","components/blocks/BlockLinkingMask.tsx","components/blocks/content/BlockLink.tsx","components/blocks/content/BlockContentHeaderTitle.tsx","components/blocks/content/BlockLoadingHeaderIndicator.tsx","components/blocks/Block.tsx","blocks/PriceChart/state/PriceChartSelectors.ts","context/GroupManager.tsx","hooks/useFavorite.tsx","components/blocks/FavoriteButton.tsx","blocks/shared/QuoteTime.tsx","components/basic/Directional.tsx","blocks/shared/SymbolPrice.tsx","blocks/shared/SymbolPickerHeader.tsx","blocks/PriceChart/PriceChartHeader.tsx","../../tradingview/dist/charting_library/charting_library.esm.js","../../tradingview/dist/ChartBuilder.js","../../tradingview/dist/streaming.js","../../tradingview/dist/DataFeed.js","blocks/PriceChart/PriceChartGraph.tsx","../../tradingview/dist/constants.js","data/charts/CachedApi.ts","blocks/PriceChart/hooks/useTradingviewDatafeed.tsx","blocks/PriceChart/options/overrides.ts","blocks/PriceChart/options/drawingOverrides.ts","blocks/PriceChart/PriceChartContent.tsx","blocks/PriceChart/PriceChartBlock.tsx","blocks/PriceChart/hooks/usePriceChartGroupHandler.ts","components/blocks/useBlockSubscriptions.ts","data/global/selectors/positionSelector.ts","data/global/selectors/performanceSelectors.ts","data/global/selectors/PnLSelectors.ts","blocks/shared/DirectionalCurrency.tsx","blocks/Positions/PositionHeader.tsx","components/blocks/hooks/useBlockLog.ts","blocks/shared/PositionSync.tsx","components/trading/DirectionalPrice.tsx","components/blocks/hooks/useOrderBlock.ts","components/blocks/hooks/usePriceChartBlock.ts","components/blocks/actions/OrderActionButtons.tsx","blocks/Positions/PositionActions.tsx","blocks/Positions/util.ts","components/blocks/content/PrettySymbol.tsx","blocks/Positions/PositionLegActions.tsx","blocks/Positions/components/PositionLegDailyPL.tsx","blocks/Positions/hooks/usePositionInfo.ts","blocks/Positions/GroupedPositionLegActions.tsx","blocks/Positions/hooks/useAggregatedPositions.ts","blocks/Positions/PositionLeg.tsx","blocks/Positions/components/PositionDropdown.tsx","blocks/shared/SubAccountFilter.tsx","data/global/sliceReducers/performance/utilities.ts","data/global/sliceReducers/performance/performanceBySymbolReducer.ts","blocks/Positions/components/PositionTable.tsx","blocks/Positions/PositionBlockContent.tsx","blocks/Positions/PositionBlock.tsx","components/basic/Column.tsx","components/blocks/BlockColumn.tsx","data/global/utilities/balances.ts","blocks/Account/AccountBalanceView.tsx","blocks/Account/AccountContent.tsx","blocks/Account/AccountHeader.tsx","blocks/Account/AccountBlock.tsx","blocks/AccountManagement/state/AccountManagementState.tsx","blocks/AccountManagement/state/AccountManagementBlockAction.ts","blocks/AccountManagement/modals/Validation.ts","hooks/useClearer.tsx","blocks/AccountManagement/modals/AddressUpdate.tsx","blocks/AccountManagement/modals/EmailUpdate.tsx","blocks/AccountManagement/modals/PhoneUpdate.tsx","blocks/AccountManagement/modals/TrustedContactUpdate.tsx","components/basic/DetailFields.tsx","utilities/accountManagement.tsx","blocks/AccountManagement/modals/EmployInfoUpdate.tsx","blocks/AccountManagement/modals/RemoveTrustedContactOrTradeAuth.tsx","blocks/AccountManagement/modals/ResetPassword.tsx","blocks/AccountManagement/AccountDetails.tsx","blocks/AccountManagement/modals/FinancialUpdate.tsx","blocks/AccountManagement/modals/TradeExperience.tsx","blocks/AccountManagement/modals/components/RiskLevelIcon.tsx","blocks/AccountManagement/modals/SuitabilityUpdate.tsx","components/form/UploadMiscFile.tsx","blocks/AccountManagement/modals/TradeGoalUpdate.tsx","blocks/AccountManagement/modals/FlexibilityTypeUpdate.tsx","blocks/AccountManagement/FinancialDetails.tsx","blocks/AccountManagement/modals/IndividualRepresentations.tsx","components/form/DateField.tsx","blocks/AccountManagement/modals/TradeAuthUpdate.tsx","blocks/AccountManagement/modals/IndustryEmployedUpdate.tsx","blocks/AccountManagement/modals/AccountDisclosuresUpdate.tsx","blocks/AccountManagement/modals/ServiceProfileUpdate.tsx","blocks/AccountManagement/AccountDisclosures.tsx","blocks/AccountManagement/modals/RemoveAllBeneficiaries.tsx","blocks/admin/Applications/services/formatters.ts","blocks/AccountManagement/Beneficiaries.tsx","blocks/AccountManagement/components/table/AuthHistoryTable.tsx","blocks/AccountManagement/Security.tsx","blocks/AccountManagement/modals/CommunicationPreferencesUpdate.tsx","blocks/AccountManagement/modals/MarketDataProfileReview.tsx","blocks/AccountManagement/Preferences.tsx","blocks/AccountManagement/AccountManagementContent.tsx","blocks/AccountManagement/AccountManagmentHeader.tsx","blocks/AccountManagement/AccountManagementBlock.tsx","components/basic/SymbolName.tsx","blocks/Favorites/FavoritesContent.tsx","blocks/Favorites/FavoritesHeader.tsx","blocks/Favorites/FavoritesBlock.tsx","blocks/Order/OrderHeader.tsx","blocks/Order/data/useExpirationStrikeData.tsx","utilities/order.ts","blocks/Order/hooks/useOrderPositionSync.ts","blocks/Order/components/OrderSentiment.tsx","blocks/Order/components/OrderStrategyMatch.tsx","blocks/Order/components/OrderValidationIcon.tsx","blocks/Order/components/Order/OrderQuantity.tsx","blocks/Order/components/OrderStrategyPicker.tsx","blocks/Order/state/useLegsActions.tsx","blocks/Order/components/AddOrderLeg.tsx","blocks/Order/components/AddOrderLegContent.tsx","blocks/Order/components/ClearOrder.tsx","blocks/Order/components/PriceAndQuoteSync.tsx","blocks/Order/components/OrderTypePicker.tsx","blocks/Order/components/OrderPrice.tsx","blocks/Order/components/PriceSlider.tsx","blocks/Order/components/DurationPicker.tsx","blocks/Order/components/StopOrderPrice.tsx","blocks/Order/components/content/OrderContentSettings.tsx","components/blocks/StrategyButton.tsx","blocks/Order/components/StrategyTemplateButtons.tsx","components/blocks/blockProp/BlockProp.tsx","blocks/Order/hooks/useStrikesFilteredForStrategy.ts","components/basic/Loading.tsx","blocks/Order/components/Legs/Expiration.tsx","blocks/Order/components/Legs/Strikes.tsx","blocks/Order/components/useLastPrice.tsx","blocks/Order/components/Legs/Action.tsx","blocks/Order/components/Legs/Quantity.tsx","blocks/Order/components/Legs/Position.tsx","blocks/Order/components/useBidAsk.tsx","components/symbol/Price.tsx","blocks/Order/components/Legs/BidAsk.tsx","blocks/Order/components/Leg.tsx","blocks/Order/state/useOrderLegData.tsx","blocks/Order/OrderLegs.tsx","blocks/Order/OrderContent.tsx","blocks/Order/state/useOrderSymbols.ts","blocks/Order/components/Preview/OrderPreviewActions.tsx","blocks/Order/components/Preview/PreviewPopupContent.tsx","blocks/Order/components/Preview/AdminCommissionOrderActions.tsx","blocks/Order/components/Preview/AdminBypassMargin.tsx","blocks/Order/components/Preview/PreviewPopup.tsx","blocks/Order/components/ProfitLoss.tsx","blocks/Order/OrderFooter.tsx","blocks/Order/OrderBlock.tsx","blocks/Order/hooks/useOrderBlockGroupHandler.ts","components/blocks/BlockAccessors.tsx","blocks/Activity/ActivityOrderStatusWrapper.tsx","blocks/Activity/components/orders/OrderActivityStatus.tsx","blocks/Activity/state/ActivitySelector.ts","blocks/Activity/useActivitySettings.tsx","blocks/Activity/data/useActivityTimeframe.tsx","blocks/Activity/state/ActivityState.ts","blocks/Activity/components/ActivityOrderEventsSubRow.tsx","blocks/Activity/components/ActivityOrdersBidAsk.tsx","blocks/Activity/components/ActivityOrdersTable.tsx","components/basic/TimeframePresets.tsx","components/basic/Timeframe.tsx","blocks/Activity/components/TimeframeContainer.tsx","blocks/Activity/components/ActivityOrderStats.tsx","blocks/Activity/components/ActivityOrderTimeframe.tsx","blocks/Activity/ActivityOrderContent.tsx","blocks/Activity/components/ActivityMessagesTable.tsx","blocks/Activity/ActivityMessages.tsx","blocks/Activity/components/ActivitySummaryTable.tsx","blocks/Activity/ActivitySummaryTotals.tsx","blocks/Activity/ActivitySummary.tsx","blocks/Activity/ActivityContent.tsx","components/blocks/BlockTabWell.tsx","blocks/Activity/ActivityBlock.tsx","blocks/Analytics/AnalyticsChart.tsx","blocks/Analytics/AnalyticsHelper.ts","blocks/Analytics/AnalyticsBalanceHistory.tsx","blocks/Analytics/AnalyticsCashFlow.tsx","blocks/Analytics/AnalyticsHeader.tsx","components/basic/CircularProgressBar.tsx","blocks/Analytics/AnalyticsBlock.tsx","utilities/cashiering.tsx","components/cashiering/CashieringEntityStatus.tsx","blocks/AccountTransfer/AccountTransferContent.tsx","blocks/AccountTransfer/AccountTransferNotSupportedContent.tsx","blocks/AccountTransfer/AccountTransferBlock.tsx","blocks/OptionChain/state/OptionChainState.tsx","blocks/OptionChain/state/OptionChainAction.tsx","blocks/OptionChain/state/useOptionChainActions.tsx","blocks/OptionChain/OptionChainHeader.tsx","blocks/OptionChain/data/useOptionChain.ts","blocks/OptionChain/state/OptionChainSelector.ts","blocks/OptionChain/components/OptionChainTableRow.tsx","blocks/OptionChain/OptionChainTypes.ts","blocks/OptionChain/components/RootExpirationRow.tsx","blocks/OptionChain/AddRemoveFavorite.tsx","blocks/OptionChain/OptionChainOrderDropdown.tsx","blocks/OptionChain/components/BidAsk.tsx","blocks/OptionChain/components/OptionPairVolume.tsx","blocks/shared/ExpirationsFilter.tsx","blocks/OptionChain/OptionChainTable.tsx","blocks/OptionChain/OptionChainContent.tsx","blocks/OptionChain/OptionChainBlock.tsx","blocks/OptionChain/data/useOptionChainSymbols.tsx","blocks/OptionChain/state/useOptionChainGroupHandler.ts","blocks/OptionChain/state/OptionChainReducer.tsx","blocks/QuoteExtended/QuoteHeader.tsx","components/blocks/TradeButton.tsx","blocks/QuoteExtended/SymbolInfo.tsx","blocks/QuoteExtended/SymbolOrders.tsx","blocks/QuoteExtended/Company.tsx","blocks/QuoteExtended/state/QuoteState.tsx","blocks/QuoteExtended/Summary.tsx","blocks/QuoteExtended/state/QuoteBlockAction.ts","blocks/QuoteExtended/Dividends.tsx","blocks/QuoteExtended/Earnings.tsx","blocks/QuoteExtended/QuoteContent.tsx","blocks/QuoteExtended/QuoteExtendedBlock.tsx","blocks/QuoteExtended/state/QuoteBlockReducer.ts","blocks/Info/state/InfoBlockAction.ts","blocks/Info/state/InfoBlockReducer.ts","blocks/Info/InfoHeader.tsx","blocks/Info/hooks/useInfoSettings.tsx","blocks/Info/utils/MarketSymbols.tsx","blocks/Info/MarketNews.tsx","blocks/Info/ActiveAlerts.tsx","blocks/Info/state/InfoState.tsx","data/global/utilities/infoUtilities.ts","data/global/selectors/infoSelectors.ts","blocks/Info/useInfo.tsx","blocks/Info/components/ReleaseNotesTable.tsx","blocks/Info/InfoContent.tsx","blocks/Info/InfoBlock.tsx","blocks/AccountManagement/state/AccountManagementReducer.ts","blocks/admin/state/AdminToolsState.tsx","blocks/admin/state/AdminToolsBlockAction.ts","data/global/utilities/accountManagementUtilities.ts","data/global/selectors/admin/accountManagementSelector.ts","blocks/admin/AccountManagement/useAccountManagement.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateStatus.tsx","blocks/admin/AccountManagement/components/table/AccountManagementItemCell.tsx","blocks/admin/AccountManagement/components/table/AccountManagementActionCell.tsx","blocks/admin/AccountManagement/components/AccountUpdateDetails.tsx","blocks/admin/AccountManagement/components/AccountManagementUserDetails.tsx","blocks/admin/AccountManagement/components/details/AccountUpdateEntityAuditItems.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateItemStatus.tsx","blocks/admin/AccountManagement/components/AccountManagementUpdateRequest.tsx","blocks/admin/AccountManagement/components/details/AccountUpdateEntityNotes.tsx","blocks/admin/AccountManagement/components/AccountManagementFinancialDetails.tsx","blocks/admin/AccountManagement/components/AccountManagementDocReview.tsx","blocks/admin/AccountManagement/AdminAccountManagementDetail.tsx","blocks/admin/AccountManagement/components/AccountManagementFilters.tsx","blocks/admin/AccountManagement/components/AccountManagementTable.tsx","blocks/admin/AccountManagement/AdminAccountManagementIndex.tsx","data/global/utilities/alertUtilities.ts","data/global/selectors/admin/alertsSelector.ts","blocks/admin/SystemAlerts/useAlertsData.tsx","blocks/admin/SystemAlerts/components/table/AlertsActionCell.tsx","blocks/admin/SystemAlerts/components/AddAlertMessage.tsx","blocks/admin/SystemAlerts/components/EditAlertMessage.tsx","blocks/admin/SystemAlerts/components/AlertsTable.tsx","data/global/utilities/entitlementsUtilities.ts","data/global/selectors/admin/entitlementsSelector.ts","blocks/admin/Entitlements/components/table/EntitlementsActionCell.tsx","blocks/admin/Entitlements/components/table/EntitlementsItemCell.tsx","blocks/admin/Entitlements/components/EntitlementsFooter.tsx","blocks/admin/Entitlements/components/EntitlementRequestDetails.tsx","blocks/admin/Entitlements/components/EntitlementRequestAccountDetails.tsx","blocks/admin/Entitlements/components/EntitlementRequestFinancialDetails.tsx","blocks/admin/Entitlements/AdminEntitlementsDetail.tsx","blocks/admin/Entitlements/components/EntitlementsTable.tsx","blocks/admin/Entitlements/useEntitlements.tsx","blocks/admin/Entitlements/AdminEntitlementsIndex.tsx","data/global/utilities/applicationUtilities.ts","data/global/selectors/admin/applicationsSelector.ts","blocks/admin/Applications/useApplications.tsx","blocks/admin/Applications/components/table/ApplicationsActionCell.tsx","blocks/admin/Applications/components/details/SecureAccount.tsx","blocks/admin/Applications/components/details/InvestingProfile.tsx","blocks/admin/Applications/components/details/AccountInformation.tsx","blocks/admin/Applications/components/details/BeneficiaryInformation.tsx","blocks/admin/Applications/components/details/DocumentsRequested.tsx","blocks/admin/Applications/components/details/Agreements.tsx","blocks/admin/Applications/services/getAllAgreementKeys.ts","blocks/admin/Applications/AdminApplicationsDetail.tsx","blocks/admin/Applications/components/ApplicationsFilters.tsx","blocks/admin/Applications/components/ApplicationsTable.tsx","blocks/admin/Applications/AdminApplicationsIndex.tsx","blocks/admin/ReleaseNotes/components/AddReleaseNotes.tsx","blocks/admin/ReleaseNotes/components/EditReleaseNotes.tsx","blocks/admin/ReleaseNotes/components/ReleaseNotesAdminTable.tsx","blocks/admin/ReleaseNotes/components/ReleaseNotesAdminIndex.tsx","blocks/admin/ApplicationErrors/components/ApplicationErrorsSubRow.tsx","blocks/admin/ApplicationErrors/components/ApplicationErrorsDownloadCSV.tsx","blocks/admin/ApplicationErrors/components/ApplicationErrorsFilters.tsx","blocks/admin/ApplicationErrors/components/ApplicationErrorsTable.tsx","blocks/admin/ApplicationErrors/AdminApplicationErrorsIndex.tsx","blocks/admin/AdminToolsContent.tsx","blocks/admin/AdminToolsHeader.tsx","blocks/admin/AdminToolsBlock.tsx","blocks/admin/state/AdminToolsReducer.ts","blocks/AccountStatements/AccountStatementsHeader.tsx","data/global/selectors/accountStatementsSelectors.ts","blocks/AccountStatements/components/DownloadComponent.tsx","blocks/AccountStatements/tabs/AccountStatementsDailyConfirms.tsx","components/basic/YearPicker.tsx","blocks/AccountStatements/tabs/AccountStatementsMonthlyStatements.tsx","blocks/AccountStatements/tabs/AccountStatementsTaxDocuments.tsx","blocks/AccountStatements/AccountStatements.tsx","blocks/SubAccountManagement/SubAccountManagementHeader.tsx","blocks/SubAccountManagement/EditSubAccountModel.tsx","blocks/SubAccountManagement/DeleteSubAccountModel.tsx","blocks/SubAccountManagement/JournalAccountModel.tsx","blocks/SubAccountManagement/SubAccountManagementSubRow.tsx","blocks/SubAccountManagement/CreateSubAccountModel.tsx","blocks/SubAccountManagement/UpdateDistributionRatioModel.tsx","blocks/SubAccountManagement/SubAccountManagementTable.tsx","blocks/SubAccountManagement/SubAccountManagementBlock.tsx","components/blocks/BlockFactory.tsx","components/dashboard/GridResizeSync.tsx","hooks/dom/useDocumentWidth.tsx","components/dashboard/hooks/useAccountSettings.tsx","components/dashboard/DashboardGrid.tsx","components/hotkeys/AudioHotkeys.tsx","components/hotkeys/EnvironmentHotkeys.tsx","components/notifications/AlertMessage.tsx","pages/views/DashboardView.tsx","hooks/useDashboardDrawer.tsx","pages/views/cashiering/data/useCashieringData.ts","pages/views/cashiering/AuthorizeView.tsx","pages/views/cashiering/data/cashieringValidation.ts","pages/views/cashiering/WithdrawalAmountView.tsx","pages/views/cashiering/components/SelectCheckTransfer.tsx","pages/views/cashiering/components/GenericAccountList.tsx","pages/views/cashiering/components/AccountRenameForm.tsx","pages/views/cashiering/components/AchRelationshipForm.tsx","pages/views/cashiering/components/AchRelationshipVerifyForm.tsx","pages/views/cashiering/components/AchRelationshipList.tsx","pages/views/cashiering/components/SelectAchRelationshipTransfer.tsx","pages/views/cashiering/components/RecipientBankForm.tsx","pages/views/cashiering/components/RecipientBankList.tsx","pages/views/cashiering/components/SelectWireTransfer.tsx","hooks/useCurrentDayACHTransfers.tsx","pages/views/cashiering/components/AccountsList.tsx","pages/views/cashiering/WithdrawalTypeView.tsx","data/global/utilities/cashieringUtilities.ts","data/global/selectors/admin/cashieringSelectors.ts","components/cashiering/CashieringEntityOwnerNames.tsx","components/cashiering/CashieringEntityDetails.tsx","components/cashiering/AccountWithdrawalDisplay.tsx","pages/views/cashiering/WithdrawalReviewView.tsx","pages/views/cashiering/DepositAmountView.tsx","pages/views/cashiering/DepositTypeView.tsx","components/cashiering/AccountDepositDisplay.tsx","pages/views/cashiering/DepositReviewView.tsx","pages/views/cashiering/ManageView.tsx","pages/views/cashiering/OAuthPlaidRedirectView.tsx","pages/views/cashiering/data/useCashieringView.ts","pages/views/ScreenWrapper.tsx","pages/views/BaseCashieringView.tsx","components/SessionExpiredModal.tsx","components/ErrorModal.tsx","pages/wrappers/SessionWrapper.tsx","framework/WrappedRoute.tsx","components/account/SelectSubAccountButton.tsx","components/account/SubAccountTable.tsx","components/account/AccountSelectionButton.tsx","components/account/AccountTable.tsx","components/account/AccountSwitcher.tsx","pages/modals/PendingEntitlementModal.tsx","pages/RootContentPage.tsx","data/feed/FeedSelectors.tsx","data/feed/FeedSync.tsx","data/feed/WebsocketHandler.tsx","data/feed/Feed.tsx","utilities/auth.ts","pages/AuthenticationPage.tsx","pages/LogoutPage.tsx","pages/admin/AdminRoot.tsx","pages/admin/cashiering/useCashiering.tsx","pages/admin/cashiering/components/CashieringTable.tsx","pages/admin/cashiering/components/CashieringFilters.tsx","hooks/useLatestPendingCashieringDate.tsx","pages/admin/cashiering/components/table/CashieringTransactionCell.tsx","pages/admin/cashiering/components/table/CashieringMethodCell.tsx","pages/admin/cashiering/components/details/CashieringEntityNotes.tsx","pages/admin/cashiering/components/table/CashieringNoteCell.tsx","pages/admin/cashiering/components/table/CashieringActionCell.tsx","pages/admin/cashiering/AdminCashieringIndex.tsx","data/global/selectors/admin/accountSelectors.ts","components/basic/ValueArray.tsx","pages/admin/cashiering/components/CustomerAccountDetails.tsx","pages/admin/cashiering/components/CashieringTransferDetails.tsx","pages/admin/cashiering/components/details/CashieringReviewFormActions.tsx","pages/admin/cashiering/components/CashieringReviewForm.tsx","pages/admin/cashiering/components/CashieringRelationshipDetails.tsx","pages/admin/cashiering/components/CashieringDetailError.tsx","pages/admin/cashiering/components/details/CashieringEntityAuditItems.tsx","pages/admin/cashiering/components/CashieringRelationshipStatus.tsx","pages/admin/cashiering/components/CashieringTransferStatus.tsx","pages/admin/cashiering/components/CashieringDocReview.tsx","pages/admin/cashiering/components/CashieringTransferInstructionDetails.tsx","pages/admin/cashiering/components/CashieringTransferInstructionStatus.tsx","pages/admin/cashiering/components/FilterForAccount.tsx","pages/admin/cashiering/AdminCashieringDetail.tsx","pages/admin/AdminRouter.tsx","pages/NoAccountPage.tsx","data/global/middleware/versioningMiddleware.ts","data/global/utilities/blockStateUtilities.ts","blocks/PriceChart/state/PriceChartActions.ts","data/global/middleware/groupMiddleware.ts","data/global/middleware/handlers/block.ts","data/global/middleware/handlers/feed.ts","data/global/middleware/dataRequestMiddleware.ts","data/global/middleware/handlers/orders.ts","data/global/middleware/debounceMiddleware.ts","data/global/middleware/throttleMiddleware.ts","data/global/middleware/notificationMiddleware.ts","data/global/middleware/crashReporterMiddleware.ts","data/global/middleware/eventLogMiddleware.ts","data/global/middleware/layoutMiddleware.ts","data/global/middleware/stateSyncMiddleware.ts","data/global/middleware/handlers/dashboard.ts","data/global/middleware/handlers/optionchain.ts","data/global/middleware/handlers/options.ts","data/global/middleware/handlers/settingsHandler.ts","data/global/middleware/handlers/favorites.ts","data/global/middleware/handlers/account.ts","data/global/utilities/accountUtilities.ts","data/global/selectors/admin/clientListSelectors.ts","data/global/middleware/handlers/quote.ts","data/global/middleware/handlers/chain.ts","data/global/middleware/handlers/tokenhandler.ts","data/global/middleware/handlers/cashieringEventMiddleware.ts","data/global/middleware/handlers/information.ts","data/global/middleware/handlers/accountManagement.ts","data/global/middleware/handlers/admin/adminAccountManagementHandler.ts","data/global/middleware/handlers/admin/adminEntitlementsHandler.ts","data/global/middleware/handlers/admin/adminAlertsHandler.ts","data/global/middleware/handlers/admin/adminApplicationHandler.ts","data/global/middleware/handlers/linkedAccounts.ts","data/global/middleware/handlers/accountStatements.ts","data/global/middleware/handlers/history.ts","data/global/middleware/handlers/subAccountManagement.ts","data/global/middleware/handlers/marketSchedule.ts","data/global/middleware/handlers/index.ts","data/global/middleware/handlers/lifecycle.ts","data/global/middleware/handlers/cashiering.ts","data/global/middleware/handlers/admin/adminAccountHandler.ts","data/global/middleware/handlers/admin/adminCashieringHandler.ts","data/global/middleware/handlers/orderFeedMiddleware.ts","data/global/middleware/handlers/admin/adminClientHandler.ts","data/global/middleware/handlers/balances.ts","data/global/middleware/index.ts","data/global/reducers/expirationStrike.ts","data/global/reducers/optionchainReducer.ts","data/global/reducers/account.ts","data/global/reducers/block.ts","utilities/action.ts","data/global/reducers/quoteReducer.ts","data/global/reducers/admin/privateCashieringReducer.ts","data/global/reducers/admin/privateAccountReducer.ts","data/global/reducers/admin/privateClientReducer.ts","data/global/reducers/admin/privateAccountManagementReducer.ts","data/global/reducers/admin/privateEntitlementsReducer.ts","data/global/reducers/admin/privateAlertsReducer.ts","data/global/reducers/admin/privateApplicationsReducer.ts","data/global/reducers/admin/index.ts","data/global/reducers/environmentReducer.ts","data/global/sliceReducers/performance/performanceReducer.ts","data/global/accountDataReducer.ts","data/global/reducers/balances.ts","data/global/reducers/accountsBalances.ts","data/global/reducers/subAccountBalances.ts","data/global/reducers/spreadReducer.ts","data/global/reducer.ts","data/global/reducers/history.ts","data/global/reducers/linkedAccounts.ts","data/global/reducers/accountManagement.ts","data/global/reducers/settingsReducer.ts","data/global/reducers/positionsReducer.ts","data/global/reducers/layout.ts","data/global/reducers/cashieringReducer.ts","data/global/reducers/uiReducer.ts","data/global/reducers/symbolReducer.ts","data/global/reducers/informationReducer.ts","data/global/reducers/accountStatements.ts","data/global/reducers/subAccountManagement.ts","data/global/sliceReducers/index.ts","data/async/blocks.ts","data/global/sagas/dashboards.ts","data/global/sagas.ts","data/global/utilities/storageListener.ts","data/global/store.ts","AppStoreProvider.tsx","data/global/selectors/cashieringSelectors.ts","components/cashiering/CashieringUpdatesPoll.tsx","pages/modals/AcceptModal.tsx","pages/UpdateConfirmationPage.tsx","App.tsx","hooks/usePageTitle.ts","serviceWorker.ts","index.tsx","data/global/utilities/strategyClassification.ts","data/global/actions/LinkedAccountsActions.ts","data/global/actions/SettingsActions.ts","utilities/position.ts","blocks/Order/state/OrderSettings.ts","blocks/Positions/usePositionSettings.tsx","../../api/dist/commands/utilities.js","blocks/Order/data/StrategyValidationMiddleware.ts","blocks/Order/state/cleanStateBeforePersist.ts","components/blocks/state/PersistMiddleware.tsx","components/blocks/state/LogMiddleware.ts","components/blocks/BlockReducer.ts","components/blocks/BlockState.tsx","components/blocks/state/BlockState.ts","blocks/Info/state/InfoSettings.ts","blocks/PriceChart/state/PriceChartSettings.ts","data/global/actions/admin/AdminCashieringTransferActions.ts","data/global/actions/admin/AdminCashieringRelationshipActions.ts","data/global/actions/admin/AdminCashieringActions.ts","blocks/Favorites/useFavoriteSettings.tsx","data/global/actions/OrderActions.ts","blocks/OptionChain/state/OptionChainSettings.ts","data/global/actions/History.ts","data/global/hooks.tsx","data/global/actions/OrderFeedActions.ts","data/global/actions/EnvironmentActions.ts","../../storage/dist/storageProvider.js","utilities/admin.ts","utilities/account.tsx","data/global/actionUtilities.ts","../../api/dist/commands/cashiering.js","data/global/actions/CashieringActions.ts","components/blocks/useBlockState.tsx","blocks/Order/state/OrderStateToOrder.ts","blocks/Order/state/OrderState.ts","context/Api.tsx","data/global/actions/PageActions.ts","components/blocks/state/blockTable/BlockTableActions.ts","data/global/actions/AccountManagementActions.ts","../../storage/dist/providers/httpProvider.js","hooks/useSymbolSearch.ts","data/global/selectors/accountSelectors.ts","blocks/Order/state/OrderActions.ts","data/selectors.ts","data/global/actions/admin/AccountManagementActions.ts","../../storage/dist/providers/localStorageProvider.js","../../api/dist/constants.js","data/api/apiClientFactory.ts","components/blocks/state/blockTable/BlockTableReducer.ts","config.ts","../../components/dist/components/basic/AddIcon.js","../../components/dist/components/basic/Errors.js","../../components/dist/components/basic/Alert.js","../../components/dist/components/basic/Dropdown.js","../../components/dist/components/basic/FloatingLabel.js","../../components/dist/components/basic/FormGroup.js","../../components/dist/components/basic/Number.js","../../components/dist/components/basic/Pill.js","../../components/dist/components/basic/Svg.js","../../components/dist/components/basic/Wrapper.js","../../components/dist/components/basic/Tooltip.js","../../components/dist/components/block/AddBlock.js","../../components/dist/components/block/BlockComponents.js","../../components/dist/components/block/BlockDragHandle.js","../../components/dist/components/block/BlockHeader.js","../../components/dist/components/block/BlockTitle.js","../../components/dist/components/block/EmptyBlockContent.js","../../components/dist/components/common/Button.js","../../components/dist/components/common/Carousel.js","../../components/dist/utilities/SiteUtilities.js","../../components/dist/utilities/site.js","../../components/dist/utilities/document.js","../../components/dist/utilities/activityDector.js","../../components/dist/hooks/useActivityTimeout.js","../../components/dist/hooks/useAlerts.js","../../components/dist/utilities/block.js","../../components/dist/hooks/useAuthentication.js","../../components/dist/utilities/dom.js","../../components/dist/utilities/number.js","../../components/dist/utilities/style.js","../../components/dist/hooks/useDebug.js","../../components/dist/hooks/useElementPosition.js","../../components/dist/hooks/useInput.js","../../components/dist/hooks/useLocalize.js","../../components/dist/hooks/useSign.js","../../components/dist/hooks/useTableColumnWidths.js","../../components/dist/utilities/tableUtilities.js","../../components/dist/hooks/useToggle.js","../../components/dist/hooks/useWhyDidYouUpdate.js","../../components/dist/components/localize/Text.js","../../components/dist/components/common/ContactPhone.js","../../components/dist/components/common/ContactEmail.js","../../components/dist/components/common/Countdown.js","../../components/dist/hooks/useCountdown.js","../../components/dist/components/common/ExternalLink.js","../../components/dist/components/common/Loading.js","../../components/dist/components/common/Mask.js","../../components/dist/components/common/SiteLogo.js","../../components/dist/components/common/SiteName.js","../../components/dist/components/common/Toggle.js","../../components/dist/components/common/TradingBlockLink.js","../../components/dist/context/page/PageContext.js","../../components/dist/components/dashboard/DashboardNav.js","../../components/dist/components/dashboard/DashboardContent.js","../../components/dist/containers/Alerts.js","../../components/dist/containers/Autocomplete.js","../../components/dist/containers/BasicSelect.js","../../components/dist/containers/AsyncAutocomplete.js","../../components/dist/containers/HttpAutocomplete.js","../../components/dist/containers/Portal.js","../../components/dist/hooks/useScrollablePosition.js","../../components/dist/components/dropdown/Dropdown.js","../../components/dist/components/dropdown/BasicDropdown.js","../../components/dist/components/dropdown/Items.js","../../components/dist/components/dropdown/DropdownWrapper.js","../../components/dist/components/fields/Checkbox.js","../../components/dist/components/fields/CheckList.js","../../components/dist/context/page/WindowSizeContext.js","../../components/dist/components/fields/SelectDropdown.js","../../components/dist/components/fields/Slider.js","../../components/dist/components/fields/Stepper.js","../../components/dist/components/fields/Textbox.js","../../components/dist/components/hotkeys/Hotkey.js","../../components/dist/components/icons/Infinity.js","../../components/dist/components/layout/Grid.js","../../components/dist/components/localize/fields/Address.js","../../components/dist/components/localize/fields/CheckList.js","../../components/dist/components/localize/fields/Checkbox.js","../../components/dist/components/localize/fields/Currency.js","../../components/dist/components/localize/fields/SelectDropdown.js","../../components/dist/components/localize/fields/Stepper.js","../../components/dist/components/localize/fields/Textbox.js","../../components/dist/components/fields/Textarea.js","../../components/dist/components/localize/fields/Textarea.js","../../components/dist/components/localize/Button.js","../../components/dist/components/localize/fields/FieldRequirement.js","../../components/dist/components/localize/HelpText.js","../../components/dist/components/modals/Modal.js","../../components/dist/components/localize/Loading.js","../../components/dist/components/localize/LocalizeProviderWrapper.js","../../components/dist/components/tables/TableRow.js","../../components/dist/components/tables/BaseTable.js","../../components/dist/components/tables/Paging.js","../../components/dist/components/tables/FreeHeaderTable.js","../../components/dist/components/tables/FrozenHeaderTable.js","../../components/dist/components/tables/Table.js","../../components/dist/components/tables/Responsive.js","../../components/dist/components/tables/Utilities.js","../../components/dist/components/tabs/TabWell.js","../../components/dist/hooks/useValueOrDefault.js","../../components/dist/components/tabs/Tabs.js","../../components/dist/context/GridContext.js","../../components/dist/context/NavigationContext.js","../../components/dist/constants.js","../../components/dist/lib.js","blocks/Order/state/OrderSelector.ts","data/global/actions/InfoActions.ts","data/global/actions/AccountActions.ts","data/global/actions/admin/AdminApplicationActions.ts","data/global/dataSelectors.ts","components/form/GenericRadioButton.tsx","components/form/GenericChoiceField.tsx","components/form/renderGenericForm.tsx","utilities/block.ts","utilities/data.ts","blocks/Order/OrderUtilities.ts","blocks/useGroupState.ts","data/global/actions/admin/AdminAccountActions.ts","hooks/useFeedQuote.tsx","blocks/Analytics/useAnalyticsSettings.tsx","data/global/selectors/settingSelectors.ts","context/Storage.tsx","data/global/actions/admin/EntitlementsActions.ts","../../api/dist/commands/accountManagement.js","components/blocks/settings/BlockSettings.tsx","data/global/selectors/quoteSelector.ts","components/blocks/settings/BlockSettingsTabs.tsx","blocks/Order/state/OrderLegSelector.ts","data/global/dispatcher.ts","../../storage/dist/useStorageProvider.js","../../storage/dist/hooks/useHttpStore.js","../../storage/dist/factory.js","../../storage/dist/index.js","constants.ts","data/global/actions/SubAccountActions.ts","hooks/useDashboardSettings.ts","data/global/actions/admin/AdminAlertActions.ts"],"names":["ClearerType","LanguageType","DefaultLanguageKeys","DefaultAccountDetails","accountNames","accountNumber","undefined","accountStatus","accountType","repCode","repFirstName","repLastName","repPhoneNumber","mailingAddress","address1","address2","city","state","postalCode","country","physicalAddress","email","homePhone","mobilePhone","workPhone","lastChanged","commissions","commissionCodeId","AccountManagementEntityType","AccountManagementInvestmentObjectives","AnnualIncomeOptions","DefaultAccountManagementDetails","DefaultAccountUpdateDetails","accountId","accountName","confirmedDate","created","userId","name","date","reason","firmRejected","firmReviewed","id","item","note","original","accountHolder","address","phones","phoneNumber","type","maritalStatus","dependents","birthCountry","citizenshipCountry","employmentType","jobPosition","yearsEmployed","employer","employerAddress","disclosures","govOfficial","industryEmployed","irsWithholding","stakeholder","disclosuresGovOfficialImmediateFamily","disclosuresGovOfficialPoliticalOrg","disclosuresIndustryEmployedFirmName","disclosuresStakeholderTickerSymbol","beneficiaries","flexibilityType","tradeGoalType","investmentObjectiveType","disclosuresForeignBankUSAgent","experience","bonds","tradesPerYear","years","commodities","margins","options","stocks","annualIncome","totalNetWorth","liquidNetWorth","characteristics","risk","bracket","horizon","liquidity","trustedContact","firstName","middleInitial","middleName","lastName","suffix","tradingAuthorization","dateOfBirth","foreignTaxIdCountry","foreignTaxIdNumber","ssnSecret","accountDisclosures","foreignBank","foreignFinancialInstitution","foreignShellBank","proprietarySecuritiesAccount","serviceProfile","issuerDirectCommunication","updated","uploadedDocuments","documentId","documentName","responseCode","DefaultUserUpdateAccountDetails","entityIssuesBearerShares","entityNegativeNews","entityPublicOfficials","entityServicesForeignShellBanks","accountHolders","jointTenantsInCommonInterestPercent","agreements","corporateCash","corporateMargin","customerAndPrivacyPolicy","entityMargin","entityOption","iRARothAdoption","iRASepAdoption","iRASimpleAdoption","iRACoverDellAdoption","jointCommunity","jointSurvivor","jointTenantsInCommon","jointTenantsInEntirety","limitedMargin","llcAccount","margin","option","riskDisclosure","electronicConsent","onlineServices","exchangeDataAgreement","clientRelationshipSummary","apiAgreement","rqdCustomerAgreement","rqdOption","rqdMargin","rqdLimitedMargin","rqdExecutionDisclosures","rqdClearingDisclosures","rqdCustomerInformationBrochure","rqdPrivacyPolicy","rqdPrivacyNotice","rqdResponsibilitiesOfIbAndCarryingBroker","rqdSpecialStatementForUncoveredOptionWriters","rqdPowerOfAttorney","rqdLimitedTradingAuthorization","entityAccountType","jointAccountType","jointCommunityPropertyState","phone","retirementAccountType","tradeAuthorization","tradeAuthorizationAgentName","clearer","communicationPreferences","deliveryType","preferredElectronicFormat","duplicateStatements","subscribeToPromotionalEmails","LessThan25K","Between25KAnd50K","Between50KAnd100K","Between100KAnd200K","Between200KAnd300K","Between300KAnd500K","Between500KAnd1Point2M","Over1Point2M","TimeHorizonType","RiskToleranceType","RiskLevel","MonetaryRangeType","LiquidityNeedType","InvestmentObjectiveType","InvestmentObjectiveDescription","InvestmentObjectiveLevel","IncomeRangeType","ExperienceYearType","TradeExperienceYearType","TaxbracketType","TradeExperienceUpdateType","UpdateStates","concat","TradeGoalType","AllTradeExperienceTypes","Bonds","Options","Stocks","Commodities","Margins","AllIncomeRangeTypes","MoreThan1Point2M","AllInvestmentObjectiveTypes","CapitalPreservation","Income","Growth","GrowthAndIncome","Speculation","AllLiquidityNeedTypes","VeryImportant","SomewhatImportant","NotImportant","AllMonetaryRangeTypes","LessThan50K","Between200KAnd500K","Between500KAnd1M","Between1MAnd5M","MoreThan5M","AllTimeHorizonTypes","Short","Average","Long","AllTaxbracketTypes","Bottom","Middle","Top","AllExperienceYearTypes","Zero","One","TwoToThree","FourToNine","TenOrMore","AllTradeExperienceYearTypes","OneToFive","SixToTen","ElevenToTwenty","MoreThanTwenty","AllRiskToleranceTypes","Low","Medium","High","TradeGoalTypeLevel","BooleanToggleType","AllTradeGoalTypes","StocksBonds","AllAbovePlusCallsPuts","AllAbovePlusOptionSpreads","AllAbovePlusPutWriting","AllAbovePlusAllOptionStrategies","MFAOptions","AllBooleanToggleTypes","Yes","No","EmploymentType","IssuerDirectCommunicationType","NoPass","SMS","YearsEmployed","AllIssuerDirectCommunicationTypes","Accept","Object","EmploymentTypes","Employed","Retired","Student","Unemployed","YearsEmployedDescription","AllYearsEmployed","BetweenZeroAndOne","BetweenTwoAndFive","BetweenFiveAndTen","BetweenTenAndTwenty","PhoneType","ErrorType","FlexibilityType","AllPhoneTypes","Home","Mobile","Work","ProSubType","AllFlexibilityTypes","Margin","CashOnly","RE_EMAIL","AccountManagementDocuments","AccountManagementBeneficiaryAccountType","AccountManagementBeneficiaryType","DefaultPhoneValues","InvestigationDocumentName","InvestigationDocuments","AccountApplicationState","AccountInvestigationState","UploadedDocumentState","AllAccountManagementBeneficiaryTypes","Individual","Trust","AllAccountManagementBeneficiaryAccountTypes","Primary","Contingent","ErroredStatus","ApplicationStep","ApplicationType","RetirementAccountType","JointAccountType","EntityAccountType","MaritalStatusType","VisaType","BusinessNature","AccountActivityType","SourceOfFundsType","WithdrawalFrequencyType","BeneficiaryAccountType","BeneficiaryType","BeneficiariesRelationshipsType","DefaultSecurityChallenge","securityQuestionType","answer","DeliveryType","ElectronicFormat","BeneficiariesRelationships","Spouse","Parent","Child","Other","Electronic","Paper","ProSubscriptionType","DuplicateStatements","AllElectronicFormats","Html","PlainText","TradeAuthorizationType","AllDuplicateStatementOptions","PostalMail","Email","AssetType","OrderAction","OrderActionDirection","PositionEffect","OrderType","OrderClass","DebitOrCredit","OptionType","StrategyType","SizeRatio","BlockType","AllTradeAuthorizationTypes","Full","Limited","DefaultPersonDetails","day","month","year","ssn","DefaultAccountHolder","assign","emailConfirm","differentMailingAddress","visaType","visaExpirationDate","foreignTaxWithholding","taxIdentificationNumber","letterOfExplanation","jurisdictionDoesNotIssueTIN","notIssuedForeignTIN","treatyCountry","foreignTINNotRequiredExplanation","DefaultApplicationModel","languageType","English","ownerUsername","password","passwordConfirm","securityChallenges","primaryAccountHolder","ownerCountry","retirementAccount","simpleIraPlanName","beneficiaryIraDecedentName","agreeToElectronicConsent","disclosuresEntityNegativeNewsInfo","disclosuresEntityPublicOfficials","rqdDisclosure","rqdLimitedMarginAgreement","marketData","employmentFunctions","personalUse","secCftcRegistration","associationRegistration","jobFunctions","investmentProfessional","capitalTrading","corporationTrading","benefitsReceived","marketDataType","signedNames","hearAboutUsId","foreignDueDiligence","expectedWithdrawalFrequency","initialContact","initialDepositAmount","initialDepositType","primaryBanking","referredName","referredRelationship","referredToBroker","AlertType","AccountRole","AccountType","MarketStateTypes","Groups","FieldRequirementTypes","BlockTypeValues","values","ActivityTimeframes","CashieringRoute","CashieringView","CashieringManageAction","WireType","WireAccountType","TransferBankIdentifierType","AllBlockTypes","Order","Activity","Account","PriceChart","Quote","Info","OptionChain","Positions","Favorites","AccountTransfer","AccountManagement","AdminTools","Analytics","AccountStatements","SubAccountManagement","AllBlocksCategorized","front","middle","back","TransferRecipientBankState","TransferPendingStates","TransferStates","TransferStatesNotAffectingAchLimit","BankRiskScoreValues","CashieringSearchEntityType","CashieringDocumentType","CashieringPendingStates","Country","AllCashieringDocumentTypes","BankStatement","VoidedCheck","AccountStatuses","Durations","AllCountries","Afghanistan","AlandIslands","Albania","Algeria","AmericanSamoa","Andorra","Angola","Anguilla","Antarctica","AntiguaAndBarbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","BoliviaPlurinationalStateOf","BonaireSintEustatiusAndSaba","BosniaAndHerzegovina","Botswana","BouvetIsland","Brazil","BritishIndianOceanTerritory","BruneiDarussalam","Bulgaria","BurkinaFaso","Burundi","CaboVerde","Cambodia","Cameroon","Canada","CaymanIslands","CentralAfricanRepublic","Chad","Chile","China","ChristmasIsland","CocosKeelingIslands","Colombia","Comoros","CongoDemocraticRepublicOf","Congo","CookIslands","CostaRica","Croatia","Cuba","Curacao","Cyprus","Czechia","CoteDIvoire","Denmark","Djibouti","Dominica","DominicanRepublic","Ecuador","Egypt","ElSalvador","EquatorialGuinea","Eritrea","Estonia","Eswatini","Ethiopia","FalklandIslandsMalvinas","FaroeIslands","Fiji","Finland","France","FrenchGuiana","FrenchPolynesia","FrenchSouthernTerritories","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guadeloupe","Guam","Guatemala","Guernsey","Guinea","GuineaBissau","Guyana","Haiti","HeardIslandAndMcDonaldIslands","HolySee","Honduras","HongKong","Hungary","Iceland","India","Indonesia","IranIslamicRepublicOf","Iraq","Ireland","IsleOfMan","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","KoreaDemocraticPeoplesRepublicOf","KoreaRepublicOf","Kuwait","Kyrgyzstan","LaoPeoplesDemocraticRepublic","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Macao","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","MarshallIslands","Martinique","Mauritania","Mauritius","Mayotte","Mexico","MicronesiaFederatedStatesOf","MoldovaRepublicOf","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","NewCaledonia","NewZealand","Nicaragua","Niger","Nigeria","Niue","NorfolkIsland","NorthMacedonia","NorthernMarianaIslands","Norway","Oman","Pakistan","Palau","PalestineStateOf","Panama","PapuaNewGuinea","Paraguay","Peru","Philippines","Pitcairn","Poland","Portugal","PuertoRico","Qatar","Romania","RussianFederation","Rwanda","Reunion","SaintBarthelemy","SaintHelenaAscensionAndTristandaCunha","SaintKittsAndNevis","SaintLucia","SaintMartin","SaintPierreAndMiquelon","SaintVincentAndGrenadines","Samoa","SanMarino","SaoTomeAndPrincipe","SaudiArabia","Senegal","Serbia","Seychelles","SierraLeone","Singapore","SintMaarten","Slovakia","Slovenia","SolomonIslands","Somalia","SouthAfrica","SouthGeorgiaAndSouthSandwichIslands","SouthSudan","Spain","SriLanka","Sudan","Suriname","SvalbardAndJanMayen","Sweden","Switzerland","SyrianArabRepublic","TaiwanProvinceOfChina","Tajikistan","TanzaniaUnitedRepublicOf","Thailand","TimorLeste","Togo","Tokelau","Tonga","TrinidadAndTobago","Tunisia","Turkey","Turkmenistan","TurksAndCaicosIslands","Tuvalu","Uganda","Ukraine","UnitedArabEmirates","UnitedKingdomOfGreatBritainAndNorthernIreland","UnitedStatesMinorOutlyingIslands","UnitedStatesOfAmerica","Uruguay","Uzbekistan","Vanuatu","VenezuelaBolivarianRepublicOf","VietNam","VirginIslandsBritish","VirginIslandsUS","WallisAndFutuna","WesternSahara","Yemen","Zambia","Zimbabwe","getCountryNameByCode","code","keys","find","key","replace","trim","BaseApiUrl","LoginApiUrl","subroot","objects","block","blocks","dashboard","dashboards","settings","debugSettings","StorageBlocksPath","dashboardId","StorageBlockPath","blockId","StorageSettingsBlockPath","StorageDashboardsPath","StorageDashboardPath","CreateDashboardPath","DefaultDashboardPath","DeleteDashboardPath","DashboardSettingsPath","AcceptedCountries","MarketDataEntitlementTypes","DefaultEntitlementsItem","AccountNumber","ApprovedUserMarketDataEntitlementType","ApprovingUserName","FirstName","LastName","PrimaryAccountIdAssociatedWithUser","RequestDateTime","RequestedMarketDataEntitlementType","UserId","UserLevel","UserName","Id","Undefined","ProfessionalUser","NonProfessionalUser","DelayedQuotesOnlyUser","OptionExpirationType","ExpirationType","ReleaseNoteIssueTypes","UserLevelTypes","AssetSymbolUndefinedException","error","message","AccountIdException","AlertStatusTypes","AllReleaseNoteIssueTypes","NewFeature","Improvement","BugFix","MarketHoliday","TechnicalAlert","OperationsAlert","CorporateActionAlert","AllUserLevelTypes","Admin","Branch","Firm","Region","Rep","SizeType","Active","Inactive","OrderStrategyTypeId","OrderStrategyType","DefaultGridLayout","breakpoint","lg","columns","gridColumnsSmall","gridColumnsMedium","gridColumnsLarge","width","ExpiredTokenCode","State","OrderStatuses","New","PartiallyFilled","Filled","DoneForDay","Cancelled","Replaced","PendingCancel","Rejected","PendingNew","Expired","PendingReplace","Saved","Initiated","ReplaceInitiated","CancelInitiated","CancelRejected","ReplaceRejected","Acknowledged","PartiallyCancelled","SymbolTypes","index","stock","ResponseCodes","0","description","98","99","100","101","102","103","104","105","106","107","108","109","110","111","112","113","114","115","116","117","118","119","120","121","122","123","200","201","202","203","204","205","206","207","208","209","210","211","212","213","214","215","216","217","218","219","220","221","300","301","lodash_default","a","302","303","304","305","306","307","308","390","400","401","500","501","502","503","505","506","507","508","509","510","511","512","513","514","515","516","517","518","545","550","551","552","553","600","700","701","702","703","704","DashboardInfoSchemaFields","es","title","isDeleted","notRequired","dataLastFetchedOn","LayoutSchemaFields","i","x","y","w","h","minW","maxW","minH","maxH","moved","static","isDraggable","isResizable","DashboardConfigurationSchemaFields","presetBlocks","UiSettingsSchemaFields","afterHoursTrading","muteAllSounds","showBannerSymbols","bannerSymbols","balancePollingThrottleMs","cashieringPollingIntervalMs","cashieringPollingInterval","cashieringPendingReminderInterval","cashieringPendingReminderMaxAttempts","hotkeys","DashboardInfoSchema","BlockInfoSchemaFields","required","groupId","TabOptionsSchemaFields","active","BlockSchemaFields","oneOf","subscriptions","quotes","tabs","BlockLayoutsSchemaFields","md","sm","xs","xxs","BlockConfigurationSchemaFields","layouts","data","autoFocus","BlockGroupSchemaFields","symbol","BlockConfigurationSchema","BlockGroupSchema","AssetSymbolSchemaFields","of","groups","provider","StateSync","ExpirationRules","DirectionRules","StrikeRules","AllStates","Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","DistrictOfColumbia","Florida","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","NewHampshire","NewJersey","NewMexico","NewYork","NorthCarolina","NorthDakota","Ohio","Oklahoma","Oregon","Pennsylvania","RhodeIsland","SouthCarolina","SouthDakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","WestVirginia","Wisconsin","Wyoming","SpreadType","pagesTranslations","fieldsTranslations","TradingBlockLegacyUrlEnum","TradingBlockUrlEnum","UIClientTypes","application","mobile","protectedTranslationKeys","translations_formatTranslationsData","formatTranslationsData","expandedKey","reduce","acc","val","includes","isString","defineProperty","en","pages","fields","errors","Error","Label","Text","AllLanguageTypes","Spanish","Chinese","allTranslations","zh","translations_getLocalizeOptions","languageTypes","languageNamesByKey","mapValues","l","n","languages","map","renderInnerHtml","renderToStaticMarkup","server_browser","UserProfileLevel","UserRole","SecurityQuestionType","MarketDataEntitlementTypeId","TradingBlockLegacyUrlsLookup","AchRelationshipPdfApplicationUrl","TB_CRS","MB_CRS","ETFDisclosureUrl","LegacySiteHomeUrl","LegacySiteLoginUrl","LegacySitePwdResetUrl","RiskDisclosuresUrl","RisksOfOptionsUrl","RisksOfDayTradingUrl","ServicesAgreementUrl","TradingBlockUrlsLookup","HomeUrl","VideoTourUrl","CustomerServiceUrl","OpenNewAccountUrl","TBFeesUrl","MBFeesUrl","isCustomStrategy","value","info","Name","isKnownStrategyType","isStrategy","strategy","stratName","isNil","s","toLower","util_getGroupedCountryOptions","isSecureAccountStep","sortBy","filter","c","indexOf","isResponseCodeDescription","get","__webpack_require__","d","__webpack_exports__","AdminActions","objectSpread","AdminAccountActions","AdminAlertActions","AdminCashieringActions","AdminClientActions","AdminAccountManagementActions","AdminEntitlementsActions","AdminApplicationActions","buildApiActions","SymbolActions","requestWarning","receiveWarning","errorWarning","LifecycleActions","loadInitialData","createStandardAction","Actions","AccountActions","signout","receiveCurrentAccountDetails","requestToken","receiveToken","refreshToken","requestSettings","receiveSettings","setClientVersion","clientVersionMismatch","setSettings","toggleSettings","setOrigin","requestInitialAccountBalances","requestAccountBalances","fetchBalances","receiveAccountBalances","requestBalancesForWithdrawal","fetchBalancesForWithdrawal","receiveBalancesForWithdrawal","requestLinkedAccountBalances","fetchLinkedAccountBalances","receiveLinkedAccountBalances","requestSubAccountBalances","fetchSubAccountBalances","receiveSubAccountBalances","requestPendingTransfers","fetchPendingTransfers","receivePendingTransfers","requestAccountHistory","receiveAccountHistory","requestAccountPnL","receiveAccountPnL","requestAccountOrders","receiveAccountOrders","requestMoreAccountOrders","setOrdersRequestPageIndex","setOrdersRequestPageSize","QuoteActions","setQuotes","PERSIST_DASHBOARDS","PersistActions","dashboardsFinished","favorites","ADD_DASHBOARD","UPDATE_DASHBOARD","DashboardAddUpdateActions","addDashboard","addEmptyDashboard","updateDashboard","DashboardActions","requestDashboards","receiveDashboards","setDashboard","BlockActions","requestBlocks","receiveBlocks","noBlocks","addBlock","addOrUpdateBlock","updateBlock","removeBlock","setBlocks","highlightBlocks","highlightGroup","clearHighlightedBlocks","addQuoteSubscription","setQuoteSubscription","linkBlock","unlinkBlock","setColoredLink","SharedBlockGroupActions","SetSymbolAndReset","BlockGroupActions","addGroupLeg","setGroupSymbol","createOrderFromGroup","GridActions","toggleLocked","toggleLinking","FeedActions","addSpread","removeSpread","updateSpreads","addQuote","removeQuote","updateQuotes","feedClosed","feedErrored","connected","requestExpirationAction","requestStrikeAction","fetchStrikes","ExpirationStrikeActions","receiveExpirations","requestStrikes","receiveStrikes","QuoteDataActions","DataQuoteActions","DataActions","requestPositions","fetchingPositions","receivePositions","manualRefreshOfPositions","NotificationActions","add","hide","read","view","FavoriteActions","addFavorite","remove","request","receive","LayoutActions","setBreakpointAndColumns","setLayouts","setAllLayouts","OptionChainActions","setStrikeCount","requestOptionChainError","requestOptionExpirations","receiveOptionExpirations","requestOptionChain","receiveOptionChain","SessionActions","expired","resetError","UIActions","setDashboardDrawerOpen","toggleLockDashboard","setSubAccountFilterId","setMarketSchedule","requestMarketSchedule","defaultMarketSchedule","setShowPendingEntitlementModal","HistoryActions","EnvironmentActions","PageActions","SettingsActions","OrderActions","CashieringActions","CashieringEventActions","InfoDataActions","AccountManagementDataActions","LinkedAccountsActions","AccountStatementsActions","SubaccountActions","DashboardSymbolPicker","_ref","_ref$placeholder","placeholder","_ref$clearOptionsOnSe","clearOptionsOnSelect","focus","search","useSymbolSearch","symbolValue","settingsUpdater","useDashboardSettingsUpdater","useDashboardSettings","symbolQuote","useQuote","autoCompleteValue","useMemo","SymbolToOption","rest","buttonStyle","marginLeft","marginRight","marginTop","borderColor","borderWidth","borderRadius","borderStyle","padding","react_default","createElement","Fragment","length","style","lib","pillStyle","backgroundColor","onClear","minimumLength","limit","onBlur","onSelect","updateSettings","Array","from","Set","toConsumableArray","debounceTimeout","charLimit","rootPortalId","className","textDecoration","display","onClick","symbol_","newList","clearSymbolFromList","GenericField","label","usePortalForSelect","_useFormikContext","useFormikContext","setFieldValue","formikErrors","fieldprops","objectWithoutProperties","toggleOpposite","_","onChange","useCallback","e","defaultLabelId","fieldIdWithError","defaultQuantityForOptionsAndStrategies","defaultQuantityForShares","global","feedSyncIntervalMs","formik_esm","_ref2","form","props","startCase","onchange","every","o","isObject","menuPortalTargetId","checked","DashboardSymbolPicker_DashboardSymbolPicker","module","exports","p","buildGenericRequestReceiveActions","REQUEST","RECEIVE","ERROR","cashieringPendingSearchRequest","cashieringPendingSearchReceive","cashieringPendingSearchError","beginPollingForPending","stopPollingForPending","requestDividends","receiveDividends","errorDividends","requestEarnings","receiveEarnings","errorEarnings","fetchingQuotes","requestQuote","receiveQuote","requestQuoteExtended","receiveQuoteExtended","errorQuoteExtended","requestDailyAccountStatements","receiveDailyAccountStatements","errorDailyAccountStatements","requestMonthlyAccountStatements","receiveMonthlyAccountStatements","errorMonthlyAccountStatements","requestTaxAccountStatements","receiveTaxAccountStatements","errorTaxAccountStatements","clients","utilities_createAxiosClient","url","token","client","axios_default","create","baseURL","headers","Authorization","esm","retries","retryCondition","isNetworkOrIdempotentRequestError","response","status","shouldResetTimeout","retryDelay","retryCount","retry_after","console","log","onRetry","requestConfig","utilities_formatUrl","querystringParams","delim","params","lib_default","stringify","arrayFormat","getIdNumber","toNumber","DateFormats","ApiFormat","DateTimeApiFormat","utilities_dateStringOrUndefined","dateOrString","format","dateValue","dayjs_min_default","toDate","toISOString","isInfinity","isExpiredToken","isOrderUpdate","isQuote","utilities_isSpread","isSettlement","getOrderStatus","types_dist","k","v","isCashieringUpdate","msg","toApiResponse","legacyResponse","payload","Payload","ResponseCode","Errors","ApiClient_ApiClient","ApiClient","rootUrl","authKey","classCallCheck","this","http","config","createClass","onResponse","onResponseError","interceptors","use","path","tslib_es6","regenerator_default","mark","_callee","combinedConfig","wrap","_context","prev","next","abrupt","then","res","stop","_callee2","_context2","responseType","_callee3","_a","queryParams","_context3","post","_callee4","_context4","put","_callee5","_context5","delete","ApiClient_UiApiClient","UiApiClient","withCredentials","func","_callee6","_context6","_callee7","_context7","blockUtilities_getMinBlockSize","minWidth","lodash","Math","max","blockUtilities_getDefaultBlockSize","isInvalidLayout","min","size","pnlHistory","api","apiResponse","sanitizedPnLItems","constants","sent","Items","closeAmount","Number","CloseAmount","closeOrderId","CloseOrderId","costBasis","CostBasis","dateClosed","DateClosed","dateOpened","DateOpened","openOrderId","OpenOrderId","quantity","Quantity","RequestHeaders","accounts","_this","all","authenticated","acctId","t0","warn","subaccounts","details","searchRequest","result","update","holder","getUpdate","confirm","confirmUpdate","getUserUpdates","startDate","endDate","getUserUpdateDetails","_callee8","updateRequest","_context8","updateId","getUserAccountDetails","_callee9","_context9","firmApproveUpdate","_callee10","_context10","firmRejectUpdate","_callee11","_context11","entitlements","_callee12","_context12","getDocumentStatus","jsonEncode_encode","source","crypto_js_default","AES","encrypt","JSON","toString","JwtUtilities_verify","clientType","algorithms","ignoreExpiration","clientTypes","isArray","Promise","resolve","reject","jsonwebtoken_default","verify","err","_jwt","expected","join","httpOptions","auth_auth","logout","_wrapRegExp","re","BabelRegExp","_RegExp","wrapNativeSuper","RegExp","_super","prototype","_groups","WeakMap","call","set","buildGroups","g","inherits","exec","str","Symbol","substitution","args","push","apply","arguments","extend","customParseFormat_default","WebsocketFeedParser_WebsocketFeedParser","WebsocketFeedParser","ind","int","parseInt","float","parseFloat","success","getMessageType","typeVal","metadata","raw","parseExpiredTokenMessage","Code","DuplicateLogin","Unknown","Reason","isValid","parseQuote","QuoteTime","SymbolUtilities_isOCCSymbol","OrderUtilities_toRawOccSymbol","LastTradePrice","BidPrice","AskPrice","NetChange","Volume","ChangePercentage","BidSize","AskSize","parseOrderUpdate","AccountId","OrderId","OrderTime","OrderQuantity","FilledQuantity","OrderPrice","OrderStatus","Expiration","CallPut","Strike","parseSettlement","CloseDate","ClosePrice","ClosePriceTMinus2","IsSettlementSet","parseHeartbeat","parseSpread","SpreadTime","Last","Bid","Ask","Change","parseCashieringUpdate","updateTime","updateType","updateTypeId","parseMap","HeartBeat","OrderUpdate","ExpiredToken","Spread","Settlement","CashieringUpdate","parse","parser","split","vv","matchVal","match","fieldkey","fieldvalue","_matchVal$groups","fKey","isNaN","logger_logger","subname","browser","SymbolUtilities_AssetTypeToSymbolType","assType","Index","Equity","SymbolUtilities_isIndex","first","SymbolUtilities_isIndexSymbol","toAssetSymbol","assetType","symbolType","partSymb","rootSymbol","underlyingSymbol","SymbolUtilities_toAssetSymbolBySymbolType","occParseRegex","occSymbol","deriveRootSymbol","SymbolUtilities_deriveOptionExpirationType","toLocaleLowerCase","PM","AM","SymbolUtilities_isSymbolEqual","one","two","SymbolUtilities_parseOccSymbol","callput","price","expiration","Date","Put","Call","strike","Option","strikeValidator_minStrike","legs","strikeValidator_maxStrike","strikeValidator_tryValidateRules","rule","strikes","isNumber","getStrikeErrors","sch","keyword","strikeValidator_buildStrikeErrors","getErrors","strikesShouldBeDifferent","DifferentStrikes","DifferentStrikesDescending","optionLegs","uniq","EquidistantStrikes","distances","currVal","nextVal","vals","dist","_isValid","hasDuplicateLegs","OrderUtilities_findDuplicateLegs","IronCondor","IronButterfly","K1","K2","K3","K4","isButterfly","isCondor","SameStrikes","CallHigherThanPut","putLeg","callLeg","callPutErrors","putVal","callVal","isFinite","IncreasingOrder","DecreasingOrder","isInc","prevStrike","EquidistantStrikesByTwos","firstGroup","take","firstDiff","secondGroup","drop","secondDiff","LowestCallEqualsHighestPut","LowestCallGreaterThanHighestPut","strikeValidator_validateRules","directionValidator_tryValidateRules","actions","Action","DifferentDirections","SameDirections","Butterfly","actionCounts","countBy","_isValid2","Buy","Sell","legsBySpreadRatio","SpreadRatio","highestSpreadRatioLeg","last","otherLegs","isValidLegs","Condor","_actionCounts","_isValid3","legsByStrike","middleTwoStrikes","slice","middleTwoStrikesActions","isValidStrikes","Iron","callLegs","putLegs","callActions","putActions","directionValidator_validateRules","strategyValidator_SchemaValidator","initial","ajv","ajv_default","allErrors","addKeyword","compile","strikeValidation","rules","ruleErrors","strikeValidator_strikeValidation","directionValidation","directionValidator_directionValidation","validate","ratios","shareRatio","optionRatios","getError","HundredToOneToOne","HundredToOne","optRatio","OneToOne","OneToOneToOneToOne","OneTwoOne","spreadRatioValidation_validateSpreadRatio","validateExpiration","SameExpiry","expirations","DifferentExpiries","_optionLegs","_expirations","rootSymbols","BuyWithLaterSellWithSooner","buyLeg","sellLeg","buyExpiration","sellExpiration","isAfter","metaSchema","strategyValidator_tryValidate","schema","validationRes","valid","errorMessage","errorsText","validation_orderSchemaBuilder","optionType","baseOccPattern","orderClass","legSchema","spreadRatio","moreProperties","merge","Direction","properties","const","Duration","enum","GTC","Day","Manual","Legs","minItems","maxItems","items","sizeRatio","action","requiredFields","isSpread","NA","UnderlyingSymbol","anyOf","Open","Close","validation_legSchemaBuilder","ratio","_MarginRequirements","_profile","_MarginRequirements2","_profile2","_MarginRequirements3","_profile3","_MarginRequirements4","_profile4","_MarginRequirements5","_profile5","_MarginRequirements6","_profile6","_MarginRequirements7","_profile7","_MarginRequirements8","_profile8","_MarginRequirements9","_profile9","_MarginRequirements10","_profile10","_MarginRequirements11","_profile11","_MarginRequirements12","_profile12","_MarginRequirements13","_profile13","_MarginRequirements14","_profile14","_MarginRequirements15","_profile15","_MarginRequirements16","_profile16","_MarginRequirements17","_profile17","validation_buildValidationSchemas","legsDef","profile","legSchem","additionalRules","Rules","buySchema","sellSchema","Bidirectional","ll","validation_tryValidateOrderForStrategy","order","schemas","_ref3","validationResults","inverseValidationResults","slicedToArray","sell","results","buy","Shares","LegsAmount","Strikes","PermissionLevel","SvgPath","IconKind","Single","Strength","Bull","Bear","isLimitOrder","offerPrice","isIRA","ask","bid","CoveredCall","Multileg","MarriedPut","CallCalendar","BidirectionalDebitCredit","Icon","Any","legsArray","PutCalendar","CallVertical","strikeDiff","abs","_margin","PutVertical","_margin2","CallButterfly","PutButterfly","Straddle","Volatility","K","Strangle","CallCondor","PutCondor","CallFirstPutsSecond","Strategies","IndexStrategies","CustomStrategy","isDayjs","lookup_convert","data_2012_2022","localizedFormat_default","utc_default","DateUtilities_getLocalDateFromTimezone","tz","timeZone","dateVal","localDate","timezone_support_dist","DateUtilities_getExpirationType","monthlyExpiration","dayOfWeek","weekOfMonth","firstDayOfMonth","firstDayOfWeek","weeksToAdd","isBefore","DateUtilities_getWeekdayOfMonth","isSame","Monthly","Weekly","DateUtilities_formatExpiration","dto","isWeekly","ExpirationFreqCode","isQuarterly","Quarterly","optionExpirationType","Time","RootSymbol","DateUtilities_toExpiration","DateUtilities_toShort","DateUtilities_ToUtcMidnight","DateUtilities_isBetweenInclusive","DateUtilities_isDateBetweenExclusive","DateUtilities_isBefore","curr","compDate","DateUtilities_TodayDate","hour","DateUtilities_isToday","Intl","DateTimeFormat","resolvedOptions","OCCSymbolToOptionData","OrderUtilities_DeriveLegAssetType","leg","OrderUtilities_GetOCCSymbol","symbolData","prefixSymbolName","otype","strikeVal","OrderUtilities_orderLegOccSymbol","OrderUtilities_toPrefixedOccSymbol","AllStrategies","OrderUtilities_getStrategy","OrderUtilities_getKnownStrategy","OrderUtilities_transformForApi","orderDesc","transformedOrder","kind","SubaccountId","subaccountId","effect","ClientRefId","referenceId","orderType","Price","Stop","AllOrNone","Description","DebitCredit","Debit","OccSymbol","transformOrderForApi","OrderUtilities_getCallPutValue","legSymbol","symInfo","ordLegs","isPartialOrderWithLegs","_RatioForPrice","OrderUtilities_transformFromApi","OrderUtilities_getDurationFromCode","duration","OrderUtilities_BuildInitialOrder","partOrd","legAction","orderAction","positionEffect","OrderUtilities_buildOrderLeg","OrderUtilities_getNextLegId","existingLegs","uniqueId","orderToReplaceOrder","valOrUndef","OrderUtilities_FilterOrderByDate","orders","endDateVal","OrderUtilities_TodaysFilledOrders","OrderUtilities_OnlyFilledOrders","OrderUtilities_GetSymbolsFromOrders","orderSymbols","union","orderutility","toOrderLegsWithMetaData","flatMap","toOrderLegWithMetaData","OrderUtilities_isSymbolExpired","symbData","valueOf","getDefaultOrderQuantity","OrderUtilities_getCustomStrategyLegQuantity","partialLegs","currInd","eInd","isEqual","orderBuilder_LegBuilder","LegBuilder","expVal","dayjs_min","legState","act","_this$legState","OrderBuilderNoSymbolError","orderBuilder_OrderBuilder","OrderBuilder","ordDefaults","orderState","dirty","order_defaults","legBuilder","_this$orderState","legId","_strategy","strategyName","orderDefs","_symbol","defaultValues","RatioForPrice","toFixed","getLegMarketValueTotalForPrice","at","orderPrice_getAggregatedBidAsk","orderPrice_calculateOrderPrice","gcd","_option_legs","option_legs_keys","later_exp_option","earlier_exp_option","later_exp_option_quote","q","earlier_exp_option_quote","_bid","_ask","round","mid","totalMultiple","option_legs","maxRatio","legPrices","legQuote","legbid","legask","orderPrice_getLegBidAsk","shortLegs","longLegs","shorts","longs","bidValue","askValue","orderPrice_maxOrZero","orderPrice_getBestPrice","defaultValue","isSettlementSet","OrderStatusCategories","Cancellable","Replaceable","Executed","utility_isCalendar","pnl_pnlByPrice","priceBaseline","commission","LastOrClosePrice","PositionOnOpen","Multiplier","bestPrice","initialValue","currentValue","pnl","commissionValue","pnl_getAvgPrice","totalQuantity","LegFillQuantity","sum","avgPrice","AverageLegFillPrice","total","pnl_orderLegTradingPnL","roundPrecision","legGroups","isBuy","buys","sells","lastPrice","tradingPnLValue","profitloss_absVal","getProfitLoss","profit","allStrikes","Px","Qty","profitloss_getProfitValue","loss","profitloss_getLoss","base64url","encodedSource","enc","Base64","Encrypt","txtUserName","_key","Utf8","iv","getUTCFullYear","getUTCMonth","getUTCDate","GenerateIV","ciphertext","keySize","mode","CBC","pad","Pkcs7","String","getTokenRequest","username","apikey","bearer","header","typ","alg","_username","_password","_apikey","_bearer","user","EndUser","Entity","Timestamp","generatePayload","_header","_payload","toSign","HmacSHA256","generateSignature","GetToken","JWS","GetAvailableFunds","GetBalances","GetBalancesForAccounts","GetBalancesForWithdrawal","GetBars","opts","starttime","endtime","GetMarketSchedule","GetQuotes","symbs","cancelToken","CancelToken","symbols","GetQuotesExtended","GetQuoteDividends","range","GetEarnings","period","GetQuotesCharting","quote_quotes","extended","dividends","earnings","getChartingFeed","GetSymbols","query","querystringRequest","catch","Symbols","warnings","positions_get","position","isOption","PositionId","isMutualFund","MutualFund","MoneyMarket","meta","options_getExpirations","expDates","isExpanded","options_getStrikes","time","strikeMin","strikeMax","options_getChain","strikeCount","fetchGreeks","strikeParams","chainData","chainDataResults","strikesAroundMarket","pairs","opsymbol","expirationStrikes","exp","op","options_options","optionchain","history_history","sanitizedHistoryItems","recordDate","amount","fillPrice","fillQuantity","orderApi_httpOptions","_create","_change","_cancel","orderId","orderApi_getOrders","optionValues","omit","dateFrom","utc","dateTo","orderApi_order","_this2","change","req","cancel","Application","getUserRequirements","utilities","getHeardAbout","siteConfigId","getApplicationStatus","createUser","uploadDocument","file","tag","TakenOn","lastModified","FormData","append","ImageName","filename","uploadApplicationDocument","accountHolderId","documentType","uploadFormData","DocumentName","uploadInvestigationDocument","investigationId","createAccount","duplicateAccountCheck","UserCommands","GetNewsFeed","updatedSince","channels","information_create","releaseNote","information_info","page","pageSize","createAlert","alert","getActiveAlerts","getAlertTemplates","updateAlert","news","createReleaseNote","updateReleaseNote","releaseDate","summary","restrictedToUserLevel","entitlements_Entitlements","getPendingUserMarketDataEntitlements","getAccountDetails","submitMktDataUserProfileReview","getUserMarketDataEntitlements","downloads_RequestHeaders","Downloads","getDailyConfirms","startDateString","endDateString","getDailyConfirm","requestedDate","getBinary","getMonthlyStatements","getMonthlyStatement","getTaxDocuments","taxYear","getTaxDocument","GetBalanceHistory","HistoryGetBalances","nopass_RequestHeaders","nopass","loginStart","loginFinish","authId","authid","getDevices","deleteDevice","deviceId","getAuthHistory","subaccounts_RequestHeaders","subaccounts_subaccounts","getSubaccounts","createSubaccount","createSubaccountPayload","updateSubaccount","updateSubaccountPayload","transferPositions","transferPositionsPayload","updateDistributionRatio","distributionRatioPayload","deleteSubaccount","deleteSubaccountPayload","TradingBlockApi_TradingBlockAccountApi","TradingBlockAccountApi","availableFunds","balances","positions","history","availableWithdrawalFunds","tradingblockApis","ApiFactory","tb_api","withResponseHandler","auth","accountManagement","getForAccounts","getForWithdrawals","getToken","getBars","getMarketSchedule","getSymbols","cashiering","ach","securityQuestion","transfers","transferInstructions","documents","getBalanceHistory","getBalances","downloads","information","AccountApiFactory","UiApiFactory","ObjectUtilities_GetUrlParams","href","chain","nth","fromPairs","isMoneyBlockSite","NODE_ENV","PUBLIC_URL","REACT_APP_SCHEMA_VERSION","REACT_APP_UI_API_URL","REACT_APP_TRADING_API_URL","REACT_APP_TRADING_API_WS_URL","REACT_APP_AUTH_REDIRECT","REACT_APP_LOGIN_URL","REACT_APP_APPLICATION_URL","REACT_APP_LIVE_URL","REACT_APP_VIRTUAL_URL","REACT_APP_DEBUG","REACT_APP_ENVIRONMENT","REACT_APP_GA_4_TRACKING_CODE","REACT_APP_VT_GA_4_TRACKING_CODE","REACT_APP_IS_VIRTUAL","REACT_APP_TB_SUBDIRECTORY","REACT_APP_USPS_ID","REACT_APP_USPS_SECRET","REACT_APP_USPS_BASE_URL","REACT_APP_TB_SITE_GROUP","REACT_APP_TB_RAYGUN_API","TB_SITE_GROUP","SiteUtilities_isMoneyBlockAccount","getSiteLogo","logo","GetSiteName","toLowerCase","DocumentUtilities_getRequestedParticipantsDocuments","investigations","applications","participants","forEach","requestedDocumentDetailEntry","participantIndex","findIndex","participant","requestedCatagories","categories","appCategories","cipCategories","uploadedDocumentsNames","document","activeDocumentCategories","category","uploadedDocumentName","requestedDocuments","QuoteDataToPartialQuote","quoteData","BestPriceCalculated","positionToPerformance","feedQuote","changePercent","cost","OptionMultiplier","lastTradePrice","bestTradePrice","ValueBasis","OpenQuantity","AssetTypeToSymbolType","gain","close","prevClose","dailyPnl","DailyPnL","overallPnl","OverallPnl","useCalculatedPnL","UseCalculatedPnL","getBestPrice","changeCalculation","calculatedChange","calculatedChangePercent","aggregatedSymbolPosition","positionInfo","pos","quote","aggregated","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_1__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__","aggregatedSymbolQuote","sharesPositions","aggregatedDailyPnL","sumNumbers","pi","aggregatedOverallPnL","shares","sharesSum","isEmpty","clientRequest","clientReceive","clientError","setSearch","setPage","setPageSize","setSortBy","FeedReducer","quoteQueue","count","spreadQueue","_action$payload","existingQuote","combinedQuoteValue","mergeWith","b","lastMessage","_action$payload2","spread","existingSpread","spreads","combinedSpreadValue","_action$payload3","settlement","_action$payload4","existing","FeedInitialState","FeedActionContext","React","createContext","FeedStateContext","FeedSendContext","send","getFeedActions","dispatch","setStatus","onQuote","onSpread","onOrderUpdate","onSettlement","dropFromQueue","dropFromSpreadQueue","getQuoteSubscription","apiToken","subs","unsubscribe","headerValues","orderedSubscriptions","orderBy","ss","spreadDefinition","allSymbols","sym","isOCCSymbol","toPrefixedOccSymbol","QuoteFeedType","SpreadFeedType","OrderUpdateFeedType","getSubscriptionData","getOrderUpdateSubscription","getCashieringUpdateSubscriptionCmd","sub","subscription","useFeedActions","useLog","useContext","trySend","cmd","ex","subscribeQuote","unsubscribeQuote","subscribeOrderUpdates","unsubscribeOrderUpdates","subscribeToCashieringUpdates","unsubscribeFromCashieringUpdates","useSubscribedSymbolsContext","constate","_useState","useState","_useState2","getFeedSubscription","feedValues","quoteValues","DataFeedInitializer","_useSubscribedSymbols","_useSubscribedSymbols2","subscribedQuotes","setSubscribedQuotes","_useFeedActions","useStateSelector","blocksSelectors","allBlockQuotes","feedProviderStatus","feedProvider","selectedAccountId","account","selectedLinkedAccount","useWhyDidYouUpdate","quotesToAdd","incoming","difference","quotesToRemove","useEffect","shouldAdd","shouldRemove","updatedSubscribedQuotes","QuoteRequestInitializer","useDispatcher","DataInitializer","_useStateSelector","AuthenticationInfoSelector","isAuthenticated","useDispatch","dispatcher","accountRoles","userRoles","isUGMA","isPartnership","marketSchedule","ui","currentTimeout","useRef","currentTargetTime","prevMarketSchedule","loadUserData","CashieringApproval","runEvery30Minutes","setTimeout","market","indexMarket","current","checkDates","nextClose","nextOpen","targetTime","now","dayjs","target","newDelay","diff","clearTimeout","DataFeedInitializer_DataFeedInitializer","authToken","QuoteRequestHandler_QuoteRequestInitializer","trySaveDashboards","asyncToGenerator","storage","save","_x","_x2","tryCreateDashboard","createDashboard","_x3","_x4","ActivityActionTypes","setTimeframe","toggleActivityPopover","isLegacyOrderGroupAction","legacyOrderGroupActions","addOrderLeg","handleOrderGroupChange","getType","timezone","HOLIDAYS_DATA","earlyClose","isSameDate","date1","date2","isToday","returnMarketHoliday","MarketOpenTime","utcOffset","minute","second","millisecond","MarketCloseTime","isDST","holiday","IndexMarketCloseTime","isMarketOpen","marketOpen","marketClose","isBetween","isIndexMarketOpen","indexMarketClose","isBetweenMidnightInclusiveAndOpeningHoursExclusive","todayUtcMidnight","startOf","marketOpenTime","NextMarketOpenTime","isWeekend","isTodayOrAfter","expirationToDayjs","expirationUnixTimestamp","expirationValue","getSimpleDateString","DisplayTimeTilClose","parsed","hours","minutes","isStartingDateIn1970","startingDate","formatDate","formatDateWithoutTime","cleanDatePart","cleanDateModel","orderCanBeFilledDuringIndexMarketTimes","orderLegs","SYMBOLS_THAT_CAN_TRADED_AFTER_MARKET_CLOSE","orderLeg","getOrderActionForCalendar","currentOrderAction","some","latestExpirationLeg","latestExp","latestValue","orderstate","wrapped","withLegError","legError","OrderPreviewReducer","clear","setSymbol","removeLeg","ValidationActions","startValidation","finishValidation","setPositionInfo","setOptionType","setLegQuantity","setExpiration","setStrike","setOrderAction","setLegAction","setStrategy","reset","addOrderLegFromGroup","isOrderAction","isActionOf","classifyStrategy","orderLegsToClassifiedStrategy","isComplete","numLegs","isOrderComplete","validation","isCustom","recalculatePrice","debitCredit","Credit","preview","enabled","DefaultOrderState","orderSettings","validStrategies","Limit","isDirty","isValidating","tables","emptyValidation","field","emptyValidValidation","reduceLeg","assetSymbol","getLegPosition","reduceLegs","existingLeg","BaseOrderStateReducer","legReducer","ActActions","startDateValue","endDateValue","endOf","dataState","strat","orderActionValue","isCalendarStrategy","errMap","updatedError","firstError","legIds","SymbolForLeg","orderPlaced","legsWithoutCurrent","legsStillExist","blockSettings","isSymbolEqual","combinedBlockSettings","resetOrder","defaultToEmptyCustomIfSymbolChanges","isLoaded","defaultStrategy","defaultStrategyForSymbol","OrderStateFactory","Build","DeriveLegAssetType","existingSymbol","legValues","_legs","legKeys","getOwnPropertyNames","laterLegIndex","getCalendarLegAction","getStrategiesForSymbol","isGroupHandlingAction","vs","UniqueId","getNextLegId","reinitialize","currentLegs","newLeg","baseData","orderStrategy","orderQuant","_state$data","_payload2","reverseLegs","updatedLegs","validStrats","stopPrice","isInitializing","_state$data2","inverseAction","stateStrategy","getStrategy","setAllStrikes","toArray","updatedLeg","updateAllLegs","shouldUpdateLegStrike","isCalendar","updateAllOptionLegs","legMatchesId","legIsOptionAndAllShouldUpdate","shouldUpdateExpiration","legExpiration","hasOneLeg","_action$payload5","setQuantity","setPrice","_action$payload6","negativePrice","priceValue","currentDebitOrCredit","debitValue","debitCreditValue","allSells","allBuys","isCalendarMatch","latestExpiringLeg","maxBy","orderPrice","setStopPrice","setDebitCredit","setSubaccountId","setOrder","OrderToOrderState","updateQuote","quotesArray","OrderStateReducer","initialOrderState","baseBlockState","isBlockAction","blockReducer","intermediateState","BlockTablesReducer","Initial","DefaultOrderBlockSettings","strategyOrStrategyName","reverse","getKnownStrategy","defaultLegs","BuildInitialOrder","PriceChartStateFactory","Settings","DefaultPriceChartSettings","OptionChainStateFactory","QuoteStateFactory","InfoStateFactory","FactoryMap","DefaultInfoBlockSettings","isBlockTypeAllowed","blockType","isVirtualEnv","getPresetData","blocksWithIds","allowedBlocks","newId","getBlocksWithIds","presetLayouts","blockLayout","breakpointLayouts","getDashboardPreset","dashboardConfig","equalSize","floor","full","equal","left","right","presetBlockData","layout","initialData","initSymbol","minSize","getMinBlockSize","presetBlockLayoutAndData","getCreateDashboardRequest","board","dashboardTemplateId","defaultDashboardsSelector","createSelector","defaultDashboards","dashboardSettingsSelector","environment","isVirtual","defState","lgColumns","dc","getDashboardPresetsForRepCode","isFetching","useDefaultDashboards","useMount","requestDefaultDashboards","isLocalhost","window","location","host","LoginRedirectUrl","Config","isProduction","authRedirect","EditDashboardModal","show","onSave","onDelete","onClose","validateOnMount","confirmDelete","setConfirmDelete","dashboardTitlesExcludingCurrent","useSelector","dashboardsSelectors","dashboardTitlesExcludingId","onValidate","onSubmit","cleanValues","onDeleteClick","initialValues","headerText","validateOnChange","enableReinitialize","handleSubmit","setShow","Modal","Header","onHide","closeButton","Title","Body","FormGroup","alertType","warning","component","TextboxField","Footer","Button","variant","confirmDeleteValue","onDeleteConfirmClick","DashboardItem","isSelected","isLocked","openInNewWindow","onSelectBoard","onSaveBoard","onDeleteBoard","children","showEditBoard","setShowEditBoard","onKeyDown","keyCode","preventDefault","stopPropagation","body","addEventListener","removeEventListener","onKeyPressHandler","getClassNames","role","tabIndex","onKeyPress","EditDashboardModal_EditDashboardModal","DashboardPresetCarousel","_useDefaultDashboards","_useDefaultDashboards2","selectedBoard","setSelectedBoard","dashboardTitles","onBoardSelected","saveValue","infinite","speed","slidesToShow","slidesToScroll","initialSlide","responsive","CarouselResponsiveOptions","DashboardItem_DashboardItem","origin","originSel","TradingBlockLink","originVal","SiteName","originValue","defaultDashboard","DashboardDrawer","isOpen","toggleIsOpen","store","useStore","_useDispatcher","notifications","useAlerts","userDashboards","currentDashboardId","showAddBoard","setShowAddBoard","canDeleteUserDashboard","exchangeBoards","t","onAddBoard","dashboardInfo","setAsActive","onUpdateBoard","onSelectPresetDashboard","newBoard","createRequest","dashboardSaved","onSelectExchangeDashboard","SiteName_SiteName","TradingBlockLink_TradingBlockLink","to","DashboardPresetCarousel_DashboardPresetCarousel","IsVirtualEnvironment","useVirtualTrading","InitialState","isExpired","dataEntitled","nickname","isFetchingHistory","isFetchingOrders","shouldLoadMoreOrders","orderErrorEvents","ordersUIState","showAccountSwitcher","hasMultipleAccounts","isSelectedLinkedAccountLoaded","accountDetails","subAccountManagement","subAccounts","subAccountPositions","balanceHistory","accountData","accountsBalances","subAccountsBalances","linkedAccounts","isLoading","accountManagementDetails","pendingAccountManagementUpdates","isPollingForPending","security","devices","authHistory","authenticationTimeout","Session","inactivityTimeout","loaded","locked","linking","isFetchingInitial","blockTypeSettings","DefaultOptionChainBlockSettings","DefaultPositionsBlockSettings","DefaultFavoriteBlockSettings","spreadMetadata","quoteMetadata","quoteExtended","bySymbol","forms","isSaving","transfer","achRelationships","entities","isFetchingBalances","isFetchingEntities","private","balancesForWithdrawal","updates","byQuery","sortByOrder","currentItem","isAccountFetching","accountInfo","isUpdated","documentUpdate","alerts","All","iraType","investigation","relationships","relationshipDetails","transferDetails","recipientBanks","wireInstructions","wireInstructionsDetails","entityUpdatesExist","adminCashieringDetailPageRouteKey","uuidv4","adminCashieringTablePageRouteKey","latestCashieringUpdateDataFromWebsocket","entitlementItems","warningSymbols","drawerIsOpen","subAccountFilterId","showPendingEntitlementModal","performance","totals","positionValue","accountValue","tradedToday","trading","pnls","activeAlerts","releaseNotes","releaseNoteUpdate","marketNews","isPollingForMarketNews","accountStatements","dailyStatements","dataStartDate","dataEndDate","monthlyStatements","taxStatements","DashboardSettings","toggleModal","_useDashboardSettings","initialSettings","shouldResetSettings","setShouldResetSettings","_useState3","_useState4","shouldDisableSubmit","setShouldDisableSubmit","_useState5","_useState6","submitBtnDisabled","setSubmitBtnDisabled","_useState7","_useState8","submitBtnRef","setSubmitBtnRef","initialUiState","defaultDashboardSettings","approvedSettingsReset","tryReset","setSubmitting","onCancel","canViewCashieringAdmin","hasCashieringAdminPermission","genericNumberInputValidationSchema","Yup","transform","nullable","positive","integer","feedSyncIntervalMsInputErrorMsg","feedSyncIntervalMsInputValidationSchema","validationSchema","shape","_ref4","content","paddingLeft","ref","node","disabled","justifyContent","click","localStorageProvider","LocalStorageProvider","DebugSettings","_useDebugLevel","apiStore","debugLevel","setDebugLevel","level","debugLvl","setLogLevel","useDebugLevel","_useDebugLevel2","clientVersion","uiApiTokenAndVersion","version","initialvalues","debuglevel","_useReduxConfiguratio","setLoaded","enableRedux","setEnableRedux","LocalStorageKey","useReduxConfiguration","onDevToolsChange","previous","modifier","callback","AdminLinks","text","secondaryUrl","icon","roles","getAdminLinks","userLevel","al","hidden","canAccessAdminLink","UsernameAndEnvironment","userName","TradingEnvironment","getEnvironmentName","LogoutLink","timeout","Logout","GetLogoutUrl","fontWeight","color","ToggleVirtualTradingButton","liveTradingUrl","virtualTradingUrl","onToggleClick","toggleIsVirtual","DashboardMenu","toggleMenu","uiApiTokenExpiresAt","untilTime","firstAndLastName","accountNickname","siteGroup","adminLinks","showSettings","useShowSettings","useShowAccountSwitcher","toggleAccountSwitcher","getAccountStatus","formattedStatus","DebugSettings_DebugSettings","DashboardSettings_DashboardSettings","UserNameAndEnvironment_UsernameAndEnvironment","LogoutLink_LogoutLink","ToggleVirtualTradingButton_ToggleVirtualTradingButton","react_router_dom","seconds","formatted","until","intervalTime","schemaVersion","bottom","fontSize","NotificationWrapper","onClickAway","popoverRef","useClickAway","DashboardNotification","notificationClass","setClickedTarget","handleClickAway","handleClick","event","filterReadNotifications","filterHiddenNotifications","sortedNotifications","containerRef","targetRef","Overlay","container","placement","Popover","NotificationWrapper_NotificationWrapper","DashboardNotification_TradeOrderPopover","notification","TradeOrderPopover","hideNotification","ClientNotifications","getNotifications","isDisabled","DashboardNotification_DashboardNotification","optionToDetailString","_orderLegToDetails","orderLegToDetails","strikePrice","_OCCSymbolToOptionDat","deriveOptionExpirationType","isErrorActivity","formatOrderPrice","formatNumber","currency","stopValue","prefix","orderTypeString","Market","Stop_Limit","Stop_Market","Market_On_Close","orderTypeToString","isCancelledOrderStatus","orderStatus","isPartialOrderStatus","isFilledOrderStatus","isNewOrPartialOrderStatus","isNewOrderStatus","formatOrderLeg","showSymbol","detailFormattor","OrderStatusToString","orderToMessage","isOrderNotification","not","getOpenOrdersCount","getOrders","subAccountId","orderErrors","orderAct","orderApiStatus","activityDate","errorAct","createdOn","filtered_messages","filterOrderMessages","received","getOrdersByBlockId","getSpecificOrderMessages","areOrdersLoaded","OrderDetails","AverageFillPrice","createCachedSelector","accountIdValue","ordersExist","accountIsFetching","blocksFetchingInitial","getActivityOrderSymbolsWithoutExpired","symb","toRawOccSymbol","isSymbolExpired","getPositionAndOrderSymbols","PositionSymbolsSelector","positionSymbols","TradeOrderNotifications","orderCount","TradingStatusIconButton","cssClasses","TradingStatusIcon","onAddBlock","isMarketOpenSelector","feedInfo","_s$feedProvider","isReconnecting","isClosed","isConnected","isError","isWarning","isPending","onAddOrHighlightBlockType","GetTradingBlockSiteName","TradingStatus_TradingStatusIconButton","relativeTime","DashboardMarketClosedCountdown","objectDestructuringEmpty","latestReceivedDate","latestReceivedTime","entitlement","MarketOpenTimeSelector","marketCloseTime","MarketCloseTimeSelector","countdownTitle","marketClosed","marketOpens","quoteDataAsOf","fromNow","requestAccountEntitlement","requestAlertMessages","intervalId","setInterval","clearInterval","Logo","setBlockQuotes","symbolVal","quotesToFetch","allQuotes","fetchAndSubscribe","subscribe","useQuoteActions","useBlockState","setFeedQuotes","useQuoteSubscription","stringSymbols","useQuoteFeedSubscription","useQuoteSymbolSubscriptionFromGlobalState","selector","useQuoteSymbolSubscription","getSymbol","useBlockSelector","centeringStyle","alignItems","widgetSymbolsStyle","DashboardSymbolWidget","getQuoteMetadata","changePercentStyle","widgetContainerStyle","flexDirection","widgetCells","autoScrollToEnhanced","element","notChangedStepsCount","scrollInterval","scrollIntoView","behavior","inline","documentElement","scrollTop","innerHeight","scrollHeight","DashboardNavigation","menuRef","menuOpen","toggleDrawer","_useAuthenticationSel","useAuthenticationSelector","accountCanAccessCashiering","showAddBlock","setShowAddBlock","accountIsIRA","accountIsUGMA","accountIsPartnership","isDashboardLocked","selectedLinkedAccountId","subtitle","dev","beta","availableBlockTypes","requestAccountManagementDetails","currentBlockLength","newBlock","generateNewBlock","blockReference","querySelectorAll","classList","targetIsToggle","isChildNodeOfElement","isChildNodeOfModal","height","innerWidth","dimensions","setDimensions","viewPortResponse","handleResize","mobileBannerStyle","overflow","paddingRight","marginBottom","overflowX","elem","querySelector","calculateElementOffset","getBoundingClientRect","bannerValidation","bannerSymbols_","Logo_Logo","DashboardMarketClosedCountdown_DashboardMarketClosedCountdown","aria-hidden","TradingStatus_TradingStatusIcon","TradeOrderNotifications_TradeOrderNotifications","ClientNotifications_ClientNotifications","DashboardSymbolWidget_DashboardSymbolWidget","opacity","transition","toggleId","blockTypes","onAdd","DashboardContentWrapper","highlightBlockIds","highlightedAt","timeoutMs","highlightTimeoutMs","timeoutId","defaultDimensions","widthClassName","heightClassName","useBboxDimensions","_useBbox","bbox","setBbox","currBbox","updateTimeout","resizeObs","resizeObserver","observe","disconnect","useBbox","_useBbox2","windowSize","useWindowSizeContext","newDimensions","bboxWidth","bboxHeight","useBlockSize","widthOrHeight","defaultDataTableState","pageIndex","columnOrder","defaultAdminAccountManagementState","isAdminAccountManagementTable","blockTableStateSelector","tablesState","useBlockTable","BlockStateContext","initialState","useBaseBlockActionDispatch","setTable","table","BlockTableActions","setTableState","persist","BlockTableContent","onSizeChanged","onSort","tableKey","onPage","onPageSize","pageCount","getColumnOrder","expandRows","firstRowExpanded","useParentSizeContext","_useBboxDimensions","_useBboxDimensions2","tableWidth","getTableSize","useBlockTableSize","blockTableState","handleonSort","sorts","handleOnColumnOrderChanged","useBlockId","tableState","handleOnPage","handleOnPageSize","onColumnOrderChanged","BlockTable","Provider","BlockTableContent_BlockTableContent","useOrderBlockSettings","useOrderSettings","useOrderState","useOrderData","useOrderSymbol","_useGroupState","useGroupState","useOrderSymbolOrUndefined","_useGroupState3","useOrderAssetSymbolOrUndefined","_useGroupState5","getOrderLegPrices","OrderSelectors","actionForPrice","GCD","calculateOrderPrice","selectorCreator","createDeepSelector","getOrderQuotes","orderLegSymbolSelector","createDeepArraySelector","orderLegOccSymbol","sort","orderBlockSymbols","legSymbols","symbolValues","orderDataSelector","useOrderPriceRawValues","useOrderDataSelector","LegSelector","LegsByOCC","_useOrderData","isCallVerticalMatch","isPutVerticalMatch","isCoveredCallMatch","isCallButterflyMatch","isPutButterflyMatch","isIronButterflyMatch","isIronCondorMatch","isCallCondorMatch","isPutCondorMatch","lowerStrikeLeg","minBy","shareLeg","orderLegPrices","marginCost","tradingStrategy","MarginRequirements","marginCostFormula","actionValue","marketPrices","useOrderPrice","useOrderBlockData","OrderSymbolListValues","uniqueQuoteSymbols","includesAllSymbols","areArraysEqual","_useOrderPriceRawValu","useOrderActions","useOrderDebug","useGroupAssetSymbol","_useBlockActionDispat","useBlockActionDispatchAndGenericActions","_useBlockActionDispat2","_useBlockActionDispat3","updateData","setField","clearOrder","orderInfo","setIsDirty","updateStateData","updateCreditOrDebit","setMatchingStrategies","matchingStrategy","setAction","actionVal","changeSymbol","baseLegs","DefaultLegs","updatedData","SymbolName","updateField","IsWarningSymbol","audioSrc","require","useSounds","_useAudio","useAudio","src","_useAudio2","successAudio","successControls","_useAudio3","_useAudio4","errorAudio","errorControls","useOrderTotal","isCustomOrder","classifiedStrategy","isStrategyMatch","isClassifiedAsCalendar","isCustomWithoutClassifiedStrategy","_useOrderDataSelector","determineIsBuy","_useOrderPrice","totalResults","limitPrice","debitOrCredit","execDebitOrCredit","calculateStrategyTotal","useOrderPreview","isPreview","setIsPreview","_useSounds","disableSounds","togglePreview","previewClosed","play","audio","getOrderPreviewLegs","hasMultipleLegs","legToDto","adjustOrderQuantitiesAndRatios","hcf","adjustedOverallQuantity","adjustedRatios","adjustedRatio","useOrderPreviewOrder","initialPrice","setInitialPrice","replacePrice","setReplacePrice","initialStopPrice","setInitialStopPrice","_useState9","_useState10","replaceStopPrice","setReplaceStopPrice","_useState11","_useState12","setOrderId","_useOrderActions2","setOrderCallback","isAboveAccountLevel","currId","isSubaccountDeleted","sa","isWarningSymbol","isTradingblockOrder","finalOrder","allOptionLegs","_adjustOrderQuantitie","_adjustOrderQuantitie2","finalizeOrder","BypassWarnings","Vertical","Calendar","changeSubaccountId","changeLimitPrice","isNegativePrice","changeStopPrice","changeDebitCredit","changeReplacePrice","changeReplaceStopPrice","requestPlaceOrder","requestChange","ExpirationSelectors","_state","symbolExp","getStrikeState","expKey","StrikeSelectors","expirationsBySymbol","symbolStrikes","strikesBySymbol","anyFetching","strState","strikeValues","useOrderStatus","areFetchingExpirations","complete","loading","PriceComponent","valueFinalized","isCustomStrategyOrCalendar","displayValue","setDisplayValue","setPriceValue","priceInputNumberRef","formattedDisplayValue","endsWith","adjustPenny","adjustment","numericValue","cursor","unselectable","aria-label","aria-disabled","inputValue","regex","sanitizedInputValue","test","blur","PreviewLimitPrice","_useOrderPreviewOrder","_React$useState","_React$useState2","setIsNegativePrice","isDebit","PreviewStopPrice","PreviewOrderTotal","orderTotal","DebitCreditToggleButton","baseClass","handleOnClick","isActive","decisionPrice","on","off","onstyle","offstyle","DebitCreditToggle","canEditDebitOrCredit","DebitCreditToggle_DebitCreditToggleButton","PreviewDebitOrCredit","DefaultCommissionDetails","minCharge","ticketCharge","percentOfTrade","perShare","mutualFunds","calculateEstCommission","orderAssetQuantities","commissionDetails","isStockTicket","isOptionTicket","isMutualFundTicket","stockCommissionDetails","optionsCommissionDetails","mutualFundsCommissionDetails","sharesCommission","optionsCommission","mutualFundsCommission","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","iterator","done","return","sharesMinCost","optionsMinCost","mutualFundsMinCost","EstCommissionPreview","useApi","accountIdSelector","selectedAccount","_useSWR","useSWR","estCommission","EstCommissionPreviewRender","getColumns","accessor","quant","PreviewContent","isCancelOrder","orderValue","useQuoteMetadata","tableColumns","tmpCols","widths","accountSel","subAccountIdSelector","subAccount","subAccountSelector","formattedAccName","AcctSuffix","previewFields","ord","PreviewOrderTotal_PreviewOrderTotal","PreviewStopPrice_PreviewStopPrice","PreviewLimitPrice_PreviewLimitPrice","PreviewDebitOrCredit_PreviewDebitOrCredit","Cell","f","quoteLegs","BlockTable_BlockTable","fieldTitle","isFunction","envClass","Dashboard","globalErrorOrWarningNotifications","getGlobalErrorOrWarning","globalMessage","getGlobalMessage","dashboardErrorClass","overlay","dashboardClasses","DashboardWrapper","showErrorInfo","setShowErrorInfo","bypassWarnings","setBypassWarnings","modalError","getModalError","failedOrder","notificationError","onCloseModal","alertClass","handleCheck","handleSendOrder","placeOrderError","errored","pathname","DashboardWrapper_Dashboard","paddingTop","dangerouslySetInnerHTML","__html","reload","PreviewContent_PreviewContent","BlockHotkeys","createOrderBlock","DashboardHotkeys","GridHotkeys","grid","showTooltip","tryLoadBlock","BlockDataLoader","storeKey","initializeData","useBlockActions","mounted","loadBlock","useBlockDimensions","blockDimensions","groupSymbol","blockGroupId","group","groupLinkedColor","linkedColor","BlockContentWrapper","matchingGroup","_useBlockMetadata","useBlockMetadata","setGroup","rootStateGroup","useBlockGroupSync","_useBboxDimensions2$","blockElement","isBlockHighlighted","isHighlighted","isLinked","highlightGroupId","highlightGroupAt","isGroupHighlighted","wasBlockTypeHighlighted","groupHasData","getLastOrClosePrice","LINK_COLORS_ARRAY","getLinkColorMapping","linkColor","BlockLinkingDropdown","getColor","setLinkColor","onStartBlockLinking","saveLinkColors","onUnlinkBlock","onToggleHighlightGroup","createLinkColorOptions","optionValue","onSelectLinkColor","BlockActionContext","dashboardIdSelector","settingsSaveData","BlockAction","setBlockSetting","buttonOptions","toggleButtonClassName","direction","BlockSettingsDropdown","toggleBlockSettings","hasSettings","openSettings","unlockGrid","VirtualTradingModal","useOptionChainSettings","optionChain","definitions","BlockContentHeader","isLinkable","settingFields","isRefreshable","onRefresh","useBlockSymbol","isOptionChainBlock","linkingDisabled","setShowSettings","virtualTradingModal","setVirtualTradingModal","toggleVirtualTradingModal","handleSetStrikeCount","bidUsesBuyOrderAction","refreshBtnTimeout","refreshBtnDisabled","setRefreshBtnDisabled","BlockSettings","toggleVisibility","VirtualTradingModal_VirtualTradingModal","isSearchable","BlockLinkingDropdown_BlockLinkingDropdown","BlockSettingsDropdown_BlockSettingsDropdown","BlockLinkingMask","onCancelClick","sourceBlock","linkSourceBlock","targetBlock","linkTargetBlock","linkingCurrentGroup","isLinkableToGroup","isCancellable","linkStateIndex","BlockLink","onLinkBlock","onCancelLinking","BlockLinkingMask_BlockLinkingMask","BlockContentHeaderTitle","BlockLoading","isFetchingSelector","as","isRefreshing","Block","_useBlockActions","initialize","symbolForGroup","colorForGroup","useBlockData","allBlockData","initialDashboardId","setInitialDashboardId","blockData","contentId","setContentId","headerProps","BlockDataLoader_BlockDataLoader","BlockContentWrapper_BlockContentWrapper","BlockContentHeader_BlockContentHeader","BlockContentHeaderTitle_BlockContentHeaderTitle","BlockLoadingHeaderIndicator_BlockLoading","BlockLink_BlockLink","rootSelector","symbolSel","quoteSel","isFetchingSel","isLoadedSel","PriceChartSelectors","symbolName","GroupManager","observers","lastAction","observer","runLastAction","uniqBy","obs","useFavorite","symbolIsFavorite","isFavorite","addRemoveFavorite","FavoriteButton","_useFavorite","_useFavorite2","toggleFavorite","customParseFormat","quoteTime","useQuoteTime","showQuoteTimeInfo","setShowQuoteTimeInfo","timeValue","abbreviations","findTimeZone","zone","toLocaleTimeString","timeZoneName","timestampRef","useDirectionalClass","_useDirectionalClassV","upValue","downValue","useDirectionalClassValues","disableFlash","directionClass","setdirectionClass","resetTimeout","useDirectionalValue","setCurrentValue","setDirection","Directional","wrapperClass","DirectionalValue","threshold","setThreshold","Directional_Directional","SymbolPrice","useQuoteDirectionAndValue","Directional_DirectionalValue","SymbolPickerHeader","hidePrice","disableFavorite","hideTime","hidePercent","onSearch","getBlockTypeName","SymbolPrice_SymbolPrice","hideIcon","percent","FavoriteButton_FavoriteButton","QuoteTime_QuoteTime","PriceChartHeader","blockGroup","updateSymbol","SymbolPickerHeader_SymbolPickerHeader","ownKeys","object","enumerableOnly","getOwnPropertySymbols","getOwnPropertyDescriptor","enumerable","charting_library_esm_t","getOwnPropertyDescriptors","defineProperties","_objectSpread","_o","charting_library_esm_e","disabled_features","enabled_features","charting_library_esm_n","interval","library_path","locale","widgetbar","watchlist","watchlist_settings","default_symbols","overrides","mainSeriesProperties.showCountdown","studies_overrides","trading_customization","brokerConfig","configFlags","fullscreen","autosize","debug","time_frames","resolution","client_id","user_id","charts_storage_api_version","intervals","chartTypes","charting_library_esm_i","charting_library_esm_o","charting_library_esm_a","_id","random","substring","_ready","_readyHandlers","_onWindowResize","_autoResizeChart","bind","datafeed","_options","preset","_t","theme","loading_screen","_innerAPI","setDebugMode","_innerWindowLoaded","_innerWindow","headerReady","_doWhenInnerApiLoaded","onGrayedObjectClicked","_doWhenInnerWindowLoaded","createShortcutAction","chart","splice","_iFrame","parentNode","removeChild","closePopupsAndDialogs","selectLineTool","selectedLineTool","saveChart","loadChart","json","extendedData","getSavedCharts","loadChartFromServer","saveChartToServer","removeChartFromServer","onContextMenu","createButton","createDropdown","showNoticeDialog","showConfirmDialog","showLoadChartDialog","showSaveAsChartDialog","getSymbolInterval","mainSeriesPriceFormatter","getIntervals","getStudiesList","getStudyInputs","getStudyStyles","addCustomCSSFile","applyOverrides","applyStudiesOverrides","activeChart","chartsCount","setLayout","layoutName","changeTheme","getTheme","takeScreenshot","lockAllDrawingTools","hideAllDrawingTools","drawOnAllCharts","magnetEnabled","magnetMode","undoRedoState","setIntervalLinkingEnabled","setTimeFrame","symbolSync","intervalSync","crosshairSync","timeSync","getAllFeatures","clearUndoHistory","undo","redo","startFullscreen","exitFullscreen","takeClientScreenshot","getNavigationButtonsVisibility","getPaneButtonsVisibility","getDateFormat","supportedChartTypes","tradingViewApi","contentWindow","_this3","doWhenApiIsReady","_this4","_render","container_id","getElementById","innerHTML","widgetReady","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_t2","initializationFinished","customFormatters","custom_formatters","brokerFactory","broker_factory","studiesOverrides","tradingCustomization","disabledFeatures","enabledFeatures","broker_config","restConfig","numeric_formatting","rss_news_feed","newsProvider","news_provider","loadLastChart","load_last_chart","saveLoadAdapter","save_load_adapter","settingsAdapter","settings_adapter","getCustomIndicators","custom_indicators_getter","additionalSymbolInfoFields","additional_symbol_info_fields","headerWidgetButtonsMode","header_widget_buttons_mode","customTranslateFunction","custom_translate_function","symbolSearchComplete","symbol_search_complete","contextMenu","context_menu","settingsOverrides","settings_overrides","timeframe","saved_data","chartContent","saved_data_meta_info","chartContentExtendedData","URL","r","encodeURIComponent","language","iso","dir","_d","bundles","localeLanguage","htmlAttrs","libraryPath","charting_library_esm_s","Blob","createObjectURL","toolbar_bg","studies_access","drawings_access","charts_storage_url","custom_css_url","custom_font_family","auto_save_delay","snapshot_url","study_count_limit","symbol_search_request_delay","compare_symbols","time_scale","hash","TradingView","dayjs_dayjs_min_default","plugin_customParseFormat_default","channelToSubscription","Map","subscribeOnStream","symbolInfo","onRealtimeCallback","subscribeUID","onResetCacheNeededCallback","lastDailyBar","handler","channelString","exchange","subscriptionItem","handlers","streaming_handleUpdates","isHeikinAshi","ReceivedTime","bar","barTime","latestExistingBarTime","unix","isNextBar","haOpen","open","haClose","haHigh","haLow","high","low","volume","LastTradeVolume","plugin_utc_default","ChartType","AllSupportedResolutions","lastBarsCache","symbolInfoCache","listenerGUIDCache","DataFeed_TradingViewDataFeed","TradingViewDataFeed","onReady","supports_marks","supports_timescale_marks","supports_time","supported_resolutions","searchSymbols","userInput","onResult","newSymbols","isExchangeValid","PrimaryExchange","isFullSymbolContainsInput","toUpperCase","full_name","ticker","Type","resolveSymbol","onResolve","onError","_$split","lodash_lodash_default","_$split2","symbolRes","listed_exchange","session","minmov","minmove2","pricescale","has_intraday","has_daily","has_weekly_and_monthly","currency_code","data_status","getPeriodForResolution","periodParams","rangeStartDate","rangeEndDate","firstDataRequest","maxDate","minDate","bars","api_dist","noData","nextTime","bdate","dateString","D","L","H","O","C","V","_x5","_x6","_x7","_x8","_x9","subscribeBars","onTick","listenerGuid","subscribeBarsCallback","resetCacheCallback","listenToQuotes","_x10","_x11","_x12","_x13","_x14","unsubscribeBars","handlerIndex","unsubscribeFromStream","latestExistingDate","nextDate","resetCache","onQuoteChange","lastBarsCacheValue","_x15","_x16","_x17","emptyResponses","getAllBarsForPeriod","start","end","tryGetBars","barResult","CachedApi","tbapi","cache","cacheKey","symbolPeriodData","cachedResults","barResults","getQuotes","_ref5","chartType","HeikinAshi","PriceChartGraph","_useBlockData","savedData","showLeftToolbar","saveChartData","blockSymbol","PriceChartGraph_PriceChartGraphComponent","saveData","PriceChartGraphComponent","containerId","_props$symbol","chartRef","useTradingviewDatafeed","usePriceChartSettings","Candle","chartTypeValue","setChartTypeValue","_React$useState3","_React$useState4","chartInterval","setChartInterval","_React$useState5","_React$useState6","studies","setStudies","visibilityChartSync","visibilityState","resetData","timeFrames","graphSettings","clientId","create_volume_indicator_by_default","process","enable_publishing","allow_symbol_change","hide_top_toolbar","save_image","primaryColor","Colors","primary","paneProperties.background","paneProperties.backgroundType","paneProperties.axisProperties.alignLabels","useLayoutEffect","onChartReady","setValue","_React$useState7","_React$useState8","disableChart","setDisableChart","timer","onAutoSave","autoSaveDelay","chartsStorageUrl","chartsStorageApiVersion","widgetOptions","tvWidget","onIntervalChanged","onChartTypeChanged","createTradingViewChart","lastPrices","useLastTradePricesOrUndefined","intervalCheck","marketIsOpen","currentStudies","getAllStudies","PriceChartContent","tableElement","chartHeight","chartwidth","PriceChartGraph_PriceChartGraph","PriceChartBlock","selectors","loadedSymbol","setLoadedSymbol","_useBlockGroupInfo","useBlockGroupInfo","useBlockActionDispatch","attach","detach","onSymbolChange","incomingSymbol","useGroupStateHandler","fireOnGroupChange","usePriceChartGroupHandler","symbolTicker","getQuote","_api$quotes$get","_api$quotes$get2","quoteRequest","firstQuote","priceSettings","blockState","Block_Block","PriceChartSettingsFields","getBlockProps","PriceChartHeader_PriceChartHeader","PriceChartContent_PriceChartContent","useQuoteListener","useBlockSubscriptions","blockSymbols","getBlockQuoteSubscriptions","symbolVals","local","useGlobalStateQuoteListener","positionRootSelector","getPositionsFromSymbol","DEFAULTVALUE","isEquity","uniquePositionQuotesSelector","getPositionQuotes","quotesData","getAllPositionInfo","positionperformances","positionsWithPerformance","symPosition","Commission","posIds","sp","aggregatedPnl","pp","positionToInfo","initialPositionsAreLoading","positionCount","positionsExist","PerformanceSelectors","symbPos","todayTradingPnl","perfState","aggregatePositionPerformances","positionIds","perfs","pnlSelectors","pnlRange","pnlDataLoaded","OrderSymbols","ordersAndPositionsLoaded","ordSymbols","symbolsWithoutQuotes","filtered","FilterOrderByDate","timeframeOrdersSelector","parentOrder","currLeg","isSingleLegOrder","FillQuantity","closePrice","buyPrices","sellPrices","avgBoughtPrice","avgSoldPrice","positionOnOpen","quantityBought","quantitySold","currentPosition","netQuantityChange","currentPositionValue","others","times","tradingPnL","positionPnL","totalPnL","previousSettle","isSummaryDataLoaded","ordersFetching","positionsFetching","DirectionalCurrency","currencyLabel","NavPrice","_useBlockStateSelecto","useBlockStateSelector","subnames","useBlockLog","DirectionalCurrency_DirectionalCurrency","PositionHeader","totalGain","symbolAggregateList","totalGainValue","PositionHeader_NavPrice","handleExpandRowsClick","PositionSync","shouldReload","DirectionalPrice","precisionOverride","directionProps","useOrderBlockWithOrder","build","replaceFirstMatch","_useDispatcher2","globalOrderSettings","globalSettings","orderBlockDispatcher","addBlockAsNew","orderBlockData","addedAt","preserveGroupOrderData","asyncValidateOrder","getStrategyForLegs","firstLeg","sinfo","parseOccSymbol","useOrderCopyAction","blockSelectionOptions","setCustom","duplicateOrder","isSingleLeggedStrategyOrder","isSingleLeggedCustomOrder","blockSelectionOpts","handleTradeOrderBuilder","builder","baseBuilder","strategyProfile","strikeRule","firstLegHigher","adjustLegOrderForStrikeRules","calculatedQuantity","legQuantity","buildRes","PriceChartBuilder","priceChartState","useChartSymbolAction","fn","handleChartOrder","priceChartBlockData","priceChart","useChartBlockWithOrder","OrderActionButton","CancelOrderButton","OrderActionButtons_OrderActionButton","ReplaceOrderButton","TradeOrderButton","ChartButton","PositionActions","identity","maxVisibleActions","hasOverflowActions","primaryActions","secondaryActions","ParseOCCOption","occ","ParseOCCStrike","sortColumnsByOrder","PrettySymbolCondenscedView","expirationToString","PrettySymbolDefaultView","PrettySymbol","condensced","expirationType","expirationTime","expirationDateValue","usePositionSymbolName","PrettySymbol_PrettySymbolCondenscedView","PrettySymbol_PrettySymbolDefaultView","PositionLegActions","tradeData","baseAssetSymbol","DtoToOrderleg","canRoll","openQuantity","optionData","isShort","buildRollOrder","handleRollClick","tradeOrderBuilder","handleTradeClick","handleCloseOrder","isSingleLeggedOrder","orderQuantity","ceil","useCloseOrderAction","PositionActions_PositionActions","PositionLegDailyPL","bold","getAggregatedQuotes","onlyShares","_changeCalculation","legLast","legClose","getPositionLeg","longOrShort","StrategyName","sortedStrategyLegs","sortedPositionsLegs","longStrategyValid","strategyLeg","legIndex","validatePositionLegs","determineLongOrShort","lastValue","closeValue","maxOrZero","_changeCalculation2","GroupedPositionLegActions","_position$","spreadRatioQuantities","lowest_common_denominator","shortStrategyValid","pureOrderLegs","toExpiration","orderBuilder","shares_quantity","share_leg","sharesQuantityAbsoluteValue","handleTradeOrder","useAggregatedPositions","symbolPositions","combineSameSymbols","groupPositionsByStrategy","shouldGroupByStrategy","positionValues","subIdsFromPositions","isMaster","isAll","filteredPositionValues","currentPositions","groupedPositions","groupBy","alteredPositions","inAlteredPositions","alteredPosition","positionValueBasis","PositionIds","currentCombinedPositionIndex","combinedPosition","OpenPrice","sortedCustomOptionsFunction","position_1","position_2","option_1_details","option_2_details","avgPositionStrat","openCost","combined_by_net_quantities_positions","_loop","position_index","combined_by_net_quantities_position","option_positions","lowest_net_quantity_options","current_net","stock_positions","lowest_net_quantity_stock","PositionLeg","_usePositionSettingsV","usePositionSettingsValue","customPositions","gp","StrategyTypeId","sortedPositions","sortedCustomOptions","flat","PositionLeg_GroupedStrategyPosition","groupedPosition","Stock","gPos","PositionLeg_PositionLegRow","StrategySymbology","MarriedCall","CoveredPut","Conversion","Box","_groupedPosition$","legPosition","positionOptionType","positionDirection","GroupedStrategyPosition","expandStratPosition","setExpandStratPosition","feedQuotes","posInfo","sharesCount","usesOptions","usePositionInfo","_usePositionSettingsV2","PrevClose","Gain","Cost","Percent","Value","PNL","AvgPrice","isValidStrategy","highest_denominator","isValidPositionStrategy","strategyCount","countValidStrategyPositions","subRowColumns","DirectionalPrice_DirectionalPrice","PositionLegDailyPL_PositionLegDailyPL","col","indentMargin","PositionLegRow","useFeedQuoteWithMetadata","_usePositionSettingsV3","tdClass","getTableTdClass","isShare","combinedShares","PrettySymbol_PrettySymbol","PositionLegActions_PositionLegActions","column","PositionDropdown","expandRow","arrow","setArrow","toggle","data-toggle","SubAccountFilter","setSubAccountId","accountOptions","Nickname","currentAccount","firstAccount","subAccountFilterIdAccount","onSubAccountChange","ol","SymbolPnLReducer","quoteState","allPositions","quo","symbolsWithPositions","symbolsWithOrders","quoteInfo","positionPnl","pnlByPrice","orderLegTradingPnL","PositionTable","setDailyPnl","setTotalGain","tableSize","setTableSize","wideTable","apiRootUrl","tradingApi","hasSubAccounts","subId","selectedSubAccountId","setSelectedSubAccountId","selectedSubAccountPositions","setSelectedSubAccountPositions","selectedSubAccountData","setSelectedSubAccountData","positionsRequested","setPositionsRequested","subAccountBalances","IsMaster","tableData","accountApi","positionSettingsValueObject","columnSettingsChange","entries","hiddenColumns","tempSubId","setSubAccountData","getSubAccountPositions","_positions","getSubAccountPositionsFromSymbol","subPositions","getSubAccountPositionQuotes","_ref6","uniquePositions","partialQuote","getSubAccountPositionsAndQuotes","_ref7","positionResponse","subQuotes","subData","todaysOrders","getSubAccountPositionsWithPerformance","TodaysFilledOrders","t1","getAggregatedTotals","_ref8","pnlMap","_ref9","tableStateColumnOrder","setTableStateColumnOrder","canSort","sortType","_ref10","row","getToggleRowExpandedProps","PositionDropdown_PositionDropdown","_Cell","_ref11","_Cell2","_ref12","_Cell3","_ref13","changePerc","_Cell4","_ref14","_Cell5","_ref15","_Cell6","_ref16","_Cell7","_ref17","_Cell8","_ref18","_Cell9","_ref19","_Cell10","_x18","_ref20","isUndefined","optionsCount","_Cell11","_x19","_ref21","_Cell12","_x20","_ref22","_Cell13","_x21","_ref23","_Cell14","_x22","_ref24","_Cell15","_x23","_ref25","_Cell16","_x24","_ref26","_row$original","rawQuantity","orderAndLegAction","isOCC","priceChartBuilder","handleCloseClick","handleChartClick","positionActions","renderSubRow","tableOptions","PositionLeg_PositionLeg","getRowKey","columnWidths","useTableColumnWidths","SubAccountFilter_SubAccountFilter","sortable","frozenHeaders","numColumns","PositionBlockContent","blockisEmptyOrLoading","PositionSync_PositionSync","PositionTable_PositionTable","PositionBlock","GetPositionAndOrderSymbols","_usePositionSettings","usePositionSettings","setSelectedSubAccountTotalGain","setSelectedSubAccountDailyPnl","PositionHeader_PositionHeader","manualRefresh","PositionBlockContent_PositionBlockContent","Column","titleClass","StackedColumn","valueAs","ValueElement","Column_Column","BlockColumn","signed","hidePrefix","getBalanceTotals","pendingTransfers","Balances","Securities","BuyingPower","balanceValue","getBalanceValue","getPositionValue","todaysChange","getTodaysChangeValue","todaysChangePercent","getChangePercent","ytdChangePercent","cashAndCashAlts","getCashAndCashAlts","ytdChange","pendingTransactions","getPendingTransactions","availableForTrading","getAvailableForTrading","availableForWithdrawal","getAvailableForWithdrawal","nonmarginableFunds","getNonmarginableFunds","cashBalance","CashBalance","marginBalance","MarginBalance","ShortBalance","securities","LongStockValue","ShortStockValue","LongOptionValue","ShortOptionValue","MutualFundsValue","BondsAndCDValue","CashBalanceTodaysChange","MarginBalanceTodaysChange","ShortBalanceTodaysChange","LongStockValueTodaysChange","ShortStockValueTodaysChange","LongOptionValueTodaysChange","ShortOptionValueTodaysChange","MutualFundsValueTodaysChange","BondsAndCDValueTodaysChange","MoneyMarketFundValueTodaysChange","balVal","MoneyMarketFundValue","buyingPower","PendingTransactions","AvailableFunds","WithdrawalAmount","marginRequirements","MarginableEquityPercent","AccountBalanceView","masterSubAccount","accountBalances","isFetchingPositions","selectedSubAccountBalances","setSelectedSubAccountBalances","selectedSubAccountCashValue","setSelectedSubAccountCashValue","selectedSubAccountPositionValue","setSelectedSubAccountPositionValue","selectedSubAccountTotalValue","setSelectedSubAccountTotalValue","_useState13","_useState14","_useState15","_useState16","selectedSubAccountDailyPNL","setSelectedSubAccountDailyPNL","_useState17","_useState18","setSelectedSubAccountTradingPNL","getSubAccountBalances","getSubAccountPositionValue","getSubAccountCashValue","cashValue","balancesResponse","_positionValue","totalValue","_total","tradedSymbolsToday","t2","GetSymbolsFromOrders","BlockColumn_BlockColumn","AccountContent","AccountBalanceView_AccountBalanceView","AccountHeader","AccountBlock","pendingRefresh","Account_AccountHeader","AccountContent_AccountContent","AccountManagementConstants","clientAcc","clientFin","clientDiscl","clientPref","clientBeneficiaries","AccountManagementBlockActions","setTab","getRequiredError","Required","getInvalidError","Invalid","getAmountError","Amount","getMismatchError","Mismatch","getStaleError","Stale","getUploadError","Upload","RE_PO_BOX","promisesParser","string","xml2js","parseString","uspsVerification","uspsId","xml","simplifyAddress","isFlipped","xmlText","xmlResult","AddressValidateResponse","Address","_Address$","City","Zip5","Zip4","Address1","Address2","_Error","_Error$","_Number","Source","address1Value","address2Value","uspsBaseUrl","Headers","Content-Type","Access-Control-Allow-Origin","Access-Control-Allow-Credentials","Access-Control-Allow-Methods","method","fetch","number","zip5","zip4","uspsAddress1","uspsAddress2","useClearer","RQD","Apex","AddressUpdate","addressType","accountHolderIndex","_accountDetails$physi","initialAddressUpdateValues","resetForm","updateValues","requestMakeAccountUpdate","headerValue","localStorage","setItem","uspsResponse","isValidAddress","isMailing","stateOrPostalCodeRequired","uspsResponseFromStorage","getItem","_uspsResponse","formattedCityCapitalized","capitalize","startCaseCity","isCityEqual","isZipEqual","isStateEqual","getUSPS","_uspsResponse2","_errors","SelectDropdownField","getGroupedCountryOptions","optionsDefaultLabelId","EmailUpdate","initialEmailUpdateValues","emailValue","PhoneUpdate","phoneValue","phoneType","phoneConfirm","TrustedContactUpdate","initialTrustedContactValues","_errors3","_errors2","DetailFields","fieldList","chunk","rowIdx","fieldIdx","Column_StackedColumn","formatIncome","incomeDescription","displayString","formatTaxBracket","getRiskLevelForTradeGoalType","None","VeryLow","Moderate","getRiskLevelForInvestmentObjectiveType","formatYearsEmployed","formatYearsTrading","formatTradesPerYear","formatBoolean","booleanItem","formatBooleanForDisplay","formatPhoneNumber","formatAgentName","getAgentPhoneNumbersByType","EmployInfoUpdate","isCountryUs","setIsCountryUs","isEmployed","setIsEmployed","initialEmployInfoUpdateValues","formFieldValidationSchema","validateOnBlur","translate","RemoveTrustedContactOrTradeAuth","modalTitle","modalBody","ResetPassword","siteParam","authError","setAuthError","sentEmail","setSentEmail","setIsFetching","initialResetPasswordProps","PasswordChangeInitiateUrl","touched","submitCount","applicationUrl","AccountDetails","pendingAccountUpdates","pendingEmailUpdate","u","pendingMailAddressUpdate","pendingPhoneUpdate","showAddressConfirm","setShowAddressConfirm","showEmailConfirm","setShowEmailConfirm","showPhoneConfirm","setShowPhoneConfirm","showTrustedContact","setShowTrustedContact","showEmploymentUpdate","setShowEmploymentUpdate","setAddressType","setAccountHolderIndex","showRemoveTrustedContact","setShowRemoveTrustedContact","showResetPassword","setShowResetPassword","requestAccountDetails","getAccountHolderName","getPhoneNumberByType","personalInfoFields","createDate","trustedContactInfoFields","employmentInfoFields","DetailFields_DetailFields","AddressUpdate_AddressUpdate","EmailUpdate_EmailUpdate","PhoneUpdate_PhoneUpdate","TrustedContactUpdate_TrustedContactUpdate","EmployInfoUpdate_EmployInfoUpdate","RemoveTrustedContactOrTradeAuth_RemoveTrustedContactOrTradeAuth","ResetPassword_ResetPassword","FinancialUpdate","_useStateSelector$cha","initialFinancialUpdateValues","TradeExperienceUpdate","instrumentType","initialTradeExperienceUpdateValues","RiskLevelIcon","withLocalize","getTranslationId","useLocalize","SuitabilityUpdate","_accountManagementDet","initialSuitabilityUpdateValues","CheckListField","renderOption","opt","getDescriptionForInvestmentObjective","MiscUploadFileField","handleDocumentUpload","isCashieringDocument","recipientBankId","uploadingDocument","setUploadingDocument","fileName","setFileName","uploadSuccess","setUploadSuccess","setErrors","frontImage","setFrontImage","backImage","setBackImage","frontImgPreview","setFrontImgPreview","backImgPreview","setBackImgPreview","isIdCard","DriversLicense","StateIdCard","renderImageToCanvas","imageSrc","img","canvas","ctx","Image","onload","getContext","drawImage","generatePDF","pdf","frontCanvas","frontImgData","frontImgWidth","frontImgHeight","frontNewHeight","backCanvas","backImgData","backImgWidth","backImgHeight","backNewHeight","jsPDF","toDataURL","addImage","addPage","output","File","handleCombinedUpload","fileToUpload","upload","processUploadResponse","uploadMiscellaneousDocument","handleImageDrop","side","acceptedFiles","_useDropzone","useDropzone","onDrop","onDropAccepted","onDropRejected","fileRejections","maxSize","maxFiles","accept","getRootProps","getInputProps","_useDropzone2","getFrontRootProps","getFrontInputProps","_useDropzone3","getBackRootProps","getBackInputProps","formatDocumentName","specialCases","Passport","MilitaryId","SsnCard","SsaLetter","IrsItinLetter","OtherGovernmentId","CddDocument","AllPassingCipResults","IrsW9Form","SignatureImage","IdDocument","AffiliateApproval","Document","GovernmentId","txt","charAt","errorIndex","formatTradeGoalType","TradeGoalUpdate","clickedAgreements","setClickedAgreements","uploadIds","setUploadId","documentIds","numberOfUploads","setNumberOfUploads","onClickedAgreementLink","agreement","getAgreementDisabledOptions","formatBooleanToggleType","toggleType","isForeign","initialTradeGoalFlexUpdate","doc","StepperField","disabledOptions","textKey","FlexibilityTypeUpdate","duplicateAccountError","setDuplicateAccountError","handleDuplicateAccountCheckResponse","requestValues","accountIdToIgnore","primaryTaxIdSecret","secondaryTaxIdSecret","FinancialDetails","areDetailsLoaded","pendingSuitabilityUpdates","pendingTradeLevelUpdates","pendingFlexabilityUpdates","showAssetUpdate","setShowAssetUpdate","showExperienceUpdate","setShowExperienceUpdate","showSuitabilityUpdate","setShowSuitabilityUpdate","showTradeGoalUpdate","setShowTradeGoalUpdate","showFlexibilityTypeUpdate","setShowFlexibilityTypeUpdate","setAssets","setUpdateType","suitabilityFields","FinancialUpdate_FinancialUpdate","TradeExperience_TradeExperienceUpdate","SuitabilityUpdate_SuitabilityUpdate","TradeGoalUpdate_TradeGoalUpdate","FlexibilityTypeUpdate_FlexibilityTypeUpdate","IndividualRepresentationsUpdate","isDateFilled","isFieldValueFilled","getDatePartOptions","part","forPastDates","DateField","controlledLabel","onLabelStateChange","pickBy","startsWith","isFilled","floatingLabelState","setFloatingLabelState","updateFloatingLabelState","hasFocus","handleLabelStateChange","getFieldProps","useRawOptions","TradeAuthUpdate","showToolTip","setShowToolTip","apexTradeAuthLinks","limited","links","intitialTradeAuthUpdateValues","signedName","tradeAuthAgreement","limitedTradingAuthorization","fullTradingAuthorization","nameMatch","omitBy","tradeAuthorizationType","handleToolTipClick","inputMode","itin","allowUnmask","IndustryEmployedUpdate","uploadId","initialIndustryEmployedUpdateValues","AccountDisclosuresUpdate","initialAccountDisclosuresUpdateValues","ServiceProfileUpdate","initailServiceProfileValues","AccountDisclosures","hasGrantedTradeAuth","grantedTradeAuthPriorToUpdates","agentName","pendingIndustryEmployedUpdate","pendingServiceProfileUpdates","showIndividualRepUpdate","setShowIndividualRepUpdate","showTradeAuthUpdate","setShowTradeAuthUpdate","showIndustryEmployedUpdate","setShowIndustryEmployedUpdate","showAccountDisclosuresUpdate","setShowAccountDisclosuresUpdate","showServiceProfileUpdate","setShowServiceProfileUpdate","showRemoveTradeAuth","setShowRemoveTradeAuth","tradeAuthFields","industryEmployedFields","firmName","disclosureFields","accountDisclosureFields","serviceProfileFields","IndividualRepresentations_IndividualRepresentationsUpdate","TradeAuthUpdate_TradeAuthUpdate","IndustryEmployedUpdate_IndustryEmployedUpdate","AccountDisclosuresUpdate_AccountDisclosuresUpdate","ServiceProfileUpdate_ServiceProfileUpdate","RemoveAllBeneficiaries","maskSSN","masked","unmaskedIdx","Beneficiaries","beneArr","isUpdateLoading","addOrEditBeneficiary","setAddOrEditBeneficiary","showRemoveAll","setShowRemoveAll","initialBeneficiariesValues","beneficiaryType","beneficiaryFields","beneficiaryAccountType","relationship","trustName","einSecret","primaryBeneficiaries","contingentBeneficiaries","totalPrimaryPercent","sumBy","totalContingentPercent","isInteger","setValues","totalPercentageError","render","arrayHelpers","beneficiary","onChanged","j","isIndividual","AddressField","labelPrefix","countryProps","stateProps","step","currentTarget","inverse","RemoveAllBeneficiaries_RemoveAllBeneficiaries","AuthHistoryTable","requestAuthHistory","AuthHistoryColumns","TimeStamp","hasPagination","responsiveDisabled","manualPagination","manualSortBy","AccountSecurity","isTwoFactorEnabled","AuthHistoryTable_AuthHistoryTable","CommunicationPreferencesUpdate","initialCommunicationPreferencesUpdateValues","requestDuplicateStatements","duplicateStatementsAddress","duplicateStatementsEmail","MarketDataProfileReview","initialMarketDataProfileReviewValues","isSubmitting","CheckListInput","Delayed","RealTime","Preferences","receivePaperStatements","receiveDuplicateStatements","showMarketDataProfileReview","setShowMarketDataProfileReview","showCommunicationPreferencesUpdate","setShowCommunicationPreferencesUpdate","toggleCommunicationPreferencesUpdate","tradingBlockDomain","GetTradingBlockDomain","legacyLink","GetTradingBlockFullUrl","rel","MarketDataProfileReview_MarketDataProfileReview","CommunicationPreferencesUpdate_CommunicationPreferencesUpdate","AccountManagementContent","isRetirementAccount","tab","defaultVal","useAccountManagementData","blockDispatch","ev","tabVal","requestPendingAccountManagementUpdates","Tabs_default","defaultActiveKey","Tab_default","eventKey","AccountDetails_AccountDetails","FinancialDetails_FinancialDetails","AccountDisclosures_AccountDisclosures","Preferences_Preferences","Security_AccountSecurity","Beneficiaries_Beneficiaries","AccountManagementHeader","accountTitle","AccountTitle","accountFlexibilityType","AccountManagementContentBlock","AccountManagementContent_AccountManagementContent","AccountManagementBlock","AccountManagmentHeader_AccountManagementHeader","AccountManagementBlock_AccountManagementContentBlock","OptionSymbolName","symbolDate","SymbolName_OptionSymbolName","DefaultQuoteData","CalculatedNetChange","CalculatedChangePercent","FavoritesContent","sortDirection","setSortDirection","getFavorites","getFavoriteSymbols","setPageIndex","quoteMetaData","getQuotesBySymbols","AssetSymbol","getCurrentSortBy","newDesc","desc","tableColumnOrder","setTableColumnOrder","sortVal","asc","blocksLoading","SymbolName_SymbolName","roundDecimal","isIndexSymbol","isIndex","useTradeSymbolAction","OrderActionButtons_TradeOrderButton","handleChart","OrderActionButtons_ChartButton","_useFavoriteSettings","useFavoriteSettings","filterHiddenColumns","filterColumns","currentSortBy","chunkedData","FavoritesHeader","setSymbolFound","symbolFound","found","FavoritesBlock","dataAndBlockLoaded","FavoritesHeader_FavoritesHeader","FavoritesContent_FavoritesContent","OrderHeaderMemo","memo","useOptionDefaults","legExpirations","existingLegExpirationWithoutStrikes","strikeExp","loadExpirationStrikes","expirationValues","toSortedValues","useOrderPositionSync","OrderSymbolList","localPositions","OrderPositions","positionInfos","os","info2","areEqual","SentimentIcons","_SentimentIcons","_StrategyType$Bull","OrderStrength","icons","css","VeryHigh","_StrategyType$Bear","_StrategyType$Volatil","useStrategySentiment","orderSentiment","directionInfo","stratType","strengthVal","strength","overallSentimentClass","sentimentDef","sentimentClass","sentimentText","sentiment","OrderSentiment","_useStrategySentiment","assSymbol","invertSentiment","assetSymbolInfo","orderData","isCoveredCallOrMarriedPut","isButterflyCallOrPut","isSingleLeggedStrategy","isSingleLegStrategy","copy","shareLegRatio","createOrder","verboseSentiment","optionLegsHaveExpirationAndStrike","onscroll","scroll","ic","OrderStrategyMatch","assetSymbolValue","OrderValidationIcon","validationErrorMessage","OrderQuantitySelector","defaultOrderQuantity","defaultQuantity","useOrderQuantity","setOrderQuantity","_useOrderQuantity","precision","StrategyPicker","strategies","StrategyOptions","isCustomOrUndefinedStrategy","isCustomStrategyOrUndefined","useOrderStrategy","isStrategyInvalid","isOrderInvalid","hasLegs","matchedStrategy","_useOrderActions","switchStrategy","matchStrat","selectedStrategy","hideStrategyBuyAndQuantity","strategyIsCustom","strategyHasSentiment","bidirectional","setActionValue","validationClass","selectedScrollPickItem","OrderQuantity_OrderQuantity","buttonclassName","OrderValidationIcon_OrderValidationIcon","OrderSentiment_OrderSentiment","OrderStrategyMatch_OrderStrategyMatch","OrderStrategyPicker","isSymbolIndex","OrderStrategyPicker_StrategyPicker","useLegsActions","getCustomStrategyLegQuantity","settingsQuantity","originalLegKeys","updatedLegKeys","isOriginalLeg","remainingLegKey","remainingLeg","newQuantity","AddOrderLeg","maxLegs","canAddShares","maxReached","hasSharesLeg","dropdownContent","onItemClick","toggleDropdown","AddOrderLegContent","onAddEquityLeg","onAddOptionLeg","ClearOrder","showClearAll","border","PriceAndQuoteSync","recalculate","legInfo","useQuoteBidAskMetadata","useQuoteSync","orderTypePlaceholderDisplay","_orderTypePlaceholder","orderTypePickerOptions","OrderTypePicker","allowedOrderTypePickerOptions","setAllowedOrderTypePickerOptions","areOptionLegsSet","setAreOptionLegsSet","checkOptionLegs","PriceSlider","isMarketOrder","num_legs","priceSliderValue","midDiff","sizeDiff","rc_slider_es","adjustedValue","updatedPrice","priceParts","marks","OrderContent_MarkerLabel","styles","top","toLocaleString","isReversed","DurationPicker","StopOrderPrice","OrderContentSettings","StopOrderPrice_StopOrderPrice","OrderTypePicker_OrderTypePicker","DurationPicker_DurationPicker","OrderPrice_OrderPrice","DebitCreditToggle_DebitCreditToggle","PriceSlider_PriceSlider","StrategyButton","StrategyTemplateButtons","StrategyButton_StrategyButton","BlockPropTitle","short","strikesWithValidity","LoadingDropdownButton","OptionComponent","class","OrderLegExpiration","setNoExpirations","legsWithExpiration","orderedLegsWithExpiration","firstLegWithExpiration","currentLegAction","legActionById","firstExp","LegId","isDate","expirationRule","currLegIsBuy","_$reduce","keyVal","sellExpirations","buyExpirations","maxSell","minBuy","useFilteredExpirations","expirationsAreInvalid","fieldIsInvalid","weeklyExpirations","monthlyExpirations","quarterlyExpirations","yearlyExpirations","expirationOptionTypes","expDisplayInfo","expirationDisplayInfo","stringValue","searchValue","ExpirationToOption","filteredExpirationOptionTypes","eo","expirationFreqCode","currValue","onSelectExpiration","searchExpirations","Loading_LoadingDropdownButton","dropdownIcon","isClearable","StrikeToOption","deimcalSuffix","useDefaultStrikeValue","currentPrice","useLastTradepriceOrUndefined","useLastPrice","OrderLegStrikes","strikesAreInvalid","currentLegStrike","legStrikeById","legsWithStrike","orderedLegsWithStrike","firstLegWithStrike","firstStrike","strategyLegCount","strikeRules","shoudlValidate","otherLeg","otherStrike","otherLegHasLowerIndex","useFilteredStrikes","isStrikesFetching","strikeOptions","strikeOpt","LegAction","setOrderType","ot","Action_LegActionPicker","LegActionPicker","LegQuantity","legQuantityIsInvalid","invalidLegPosition","quantityValue","PositionMemo","positionClass","LegPosition","SymbolOccBasicSelector","accountPositionInfo","setAccountPositionInfo","positionsWithId","symbolKey","positionQuantity","subPosition","positionIsLong","useBidAsk","useQuoteBidAsk","feed","bids","asks","directionalClass","classes","getQuoteHigh","quoteSelectors","byId","getQuoteLow","LegPrice","CSS","DirectionalLegPrice","Price_Directional","LegPrices","BidAsk_DirectionalLegPrice","BidAsk_LegPrice","assetTypes","OrderLeg","invalid","_useOrderLegData","SymbolAsOCC","useOrderLegData","legAssetType","legOptionType","lastLeg","setLegStrike","strikeStored","setLegExpiration","enableLegQuantity","modernBidAskLabelOrientation","Action_LegAction","Quantity_LegQuantity","Position_LegPosition","Leg_LegOptionType","Expiration_OrderLegExpiration","Strikes_OrderLegStrikes","BlockProp_BlockPropTitle","LegOptionType","OrderLegData","OrderLegs","invalidLegIds","midPrice","OrderLegs_OrderLegData","lid","Leg_OrderLeg","OrderContent","BlockDataContext","expirationsLoading","expirationsAreLoaded","loadExpirations","useExpirationLoader","useBlockGlobalData","currentLegSymbols","setOrderSymbols","legsymbolList","symbolsToRemove","symbolsToAdd","symbolChanges","useOrderSymbolData","setPositions","emptyCustomOrder","autoClose","OrderStrategyPicker_OrderStrategyPicker","OrderLegs_OrderLegs","AddOrderLegContent_AddOrderLegContent","StrategyTemplateButtons_StrategyTemplateButtons","PriceAndQuoteSync_PriceAndQuoteSync","AddOrderLeg_AddOrderLeg","ClearOrder_ClearOrder","OrderContentSettings_OrderContentSettings","MarkerLabel","maxWidth","OrderPreviewActions","setOrderStatusProcessed","btnClassName","isProcessing","setIsProcessing","setIsComplete","isProcessingRef","handleOrderAction","requestCancel","PreviewPopupContent","warningNotAccepted","onWarningAccepted","passedAction","orderStatusProcessed","globalSubAccountId","orderSubAccountId","setOrderSubAccountId","isAdmin","indexMarketOpen","isIndexMarketOpenSelector","actionName","subAccountOptions","legSubAccountId","orderSubaccount","subaccount","masterAccount","dependencies","currentDependenciesRef","useDeepCompareEffect","updateSubAccountId","onSelectSubAccount","AdminCommissionOrderActions","setCommissionFilled","placeAs","setPlaceAs","executeAs","setExecuteAs","setCommission","commissionOverrideCode","setCommissionOverrideCode","currentUserProfileCommissionCodes","commissionCodes","handleSetCommissionFilled","PlacedAs","ExecutedAs","CommissionType","CommissionScheduleId","selectedOption","AdminBypassMargin","bypassMargin","setBypassMargin","handleBypassMargin","BypassMargin","OrderPreviewPopupContent","accountOrders","ableToBypassMargin","BypassMarginCheck","ableToChangeCommission","setIsSaving","orderFillResponse","setOrderFillResponse","originalOrders","setWarningNotAccepted","latestOrderId","commissionFilled","onSaveOrder","objectStatus","hasOrdersChanged","isReplaceAction","saveDisabled","orderQuote","orderAssetClass","AssetClass","isBond","PreviewPopupContent_PreviewPopupContent","orderFillResponseStyle","OrderPreviewActions_OrderPreviewActions","OrderPreviewPopup","PreviewPopup_OrderPreviewPopupContent","textAlign","legAndQuantitySelector","useProfitLoss","useOrderDataForProfitLoss","PriceOrInfinity","ProfitLoss","profitLossValues","ProfitLoss_PriceOrInfinity","OrderFooterPrice","_useOrderTotal","totalInfo","priceVal","OrderFooter","noExpirations","_useOrderPreview","_useOrderPreview$audi","previewEnabled","tbOrder","tbOrderLegs","isPriceValid","setIsPriceValid","validatePrice","OrderFooter_OrderFooterPrice","ProfitLoss_ProfitLoss","PreviewPopup_OrderPreviewPopup","Content","useBlockGroupField","useOrderBlockGroupHandler","useOrderQuoteSymbolSubscription","hasOptionLegs","OrderContent_OrderContent","OrderFooter_OrderFooter","OrderBlock","initialLogin","setInitialLogin","blockprops","OrderBlockSettingsFields","OrderBlock_Content","useActiveBlockTab","ActivityOrderStatusWrapper","OrderLegsStatus","maxInd","filledQuantity","filledStatus","getLegFilledTotal","OrderActivityStatus","activity","partialStatus","partiallyCancelledStatus","statusClass","statusMore","Response","Message","ActivityStatusMessage","statusValue","showLegMore","ActivityOrderStatusWrapper_ActivityOrderStatusWrapper","OrderActivityStatus_OrderLegsStatus","TimeframePresetValues","startOfToday","endOfToday","today","timeframeKey","Today","Week","subtract","Month","Year","ActivityTimeFrameSelector","defaultTimeframe","_TimeframePresetValue","presetValue","tp","ActivitySettingsFields","tf","useActivitySettings","useActivitySettingsValue","workingOrdersOnly","useActivityBlockData","useActivityTimeframeValues","_useActivityDataSelec","select","useActivityDataSelector","ActivityOrderEventsSubRow","messages","includeOrderEvents","mutate","sortedOrderEvents","OrderEvents","orderEvent","FillPrice","ActivityOrdersBidAsk","spreadName","legsLength","ActivityOrdersTable","tabType","onReplace","onCancelOrder","subscribedSpreads","_useActivityTimeframe","orderHistory","shouldBeHighlighted","resetWorkingOrders","timeFilteredMessages","trClass","_useActivityBlockData","isFetchingBlockOrders","numPages","getSpreadType","stragety","enumObj","spreadTypeKeys","sNum","getSpreadInfo","spreadType","legArray","newSpreads","existingSpreads","filteredData","spreadTypeKey","_getSpreadInfo","spreadDef","findExistingSpread","ds","arr1","arr2","set2","has","arrayDifference","subUnsub","OrderStrategyIdToOrderStrategyName","isAfterHours","isNewOrInitiatedOrder","react","flexWrap","ActivityOrdersBidAsk_ActivityOrdersBidAsk","_row$original2","OrderActivityStatus_OrderActivityStatus","getLocalDateFromTimezone","sortDescFirst","sortInverted","orderDate","dateExtract","_row$original3","underSymb","isFilledOrCancelled","encodingExtract","encodingExpirationFormatted","toDateString","OrderActionButtons_CancelOrderButton","OrderActionButtons_ReplaceOrderButton","rowClass","TimeframePresets","handleDatesChange","presets","_useMemo","useActivityTimeframes","PresetDateRangePicker_panel","PresetDateRangePicker_button","background","font","lineHeight","boxSizing",":active","outline","PresetDateRangePicker_button__selected","isDefaultSelected","sameEndDateOrUndefined","Timeframe","initialStartDate","initialEndDate","placeholderClassName","caret","_ref$buttonId","buttonId","focusedInput","setFocusedInput","moment","presetDismiss","setPresetDismiss","onPresetChange","onDatesChange","onFocusChange","calendarInfo","TimeframePresets_TimeframePresets","Timeframe_TimeframeButton","endingDate","OverlayTrigger","trigger","rootClose","popperConfig","modifiers","preventOverflow","boundariesElement","minHeight","react_dates","enableOutsideDays","numberOfMonths","renderCalendarInfo","hideKeyboardShortcutsPanel","TimeframeButton","_ref3$id","daterangeToTimeframe","TimeframeContainer","useActivityActions","blockStyle","paddingBottom","Timeframe_Timeframe","ActivityOrderStats","accountHistory","getStatusCount","ordDate","isBetweenInclusive","countFilteredOrders","filledCount","cancelledCount","openCount","ActivityOrderTimeframe","TimeframeContainer_TimeframeContainer","handleChecked","ActivityOrderStats_ActivityOrderStats","ActivityOrders","setIsCancelOrder","setOrderValue","onReplaceOrder","ActivityOrderTimeframe_ActivityOrderTimeframe","ActivityOrdersTable_ActivityOrdersTable","ActivityOrderContent","ActivityOrderContent_ActivityOrders","ActivityMessagesTable","m","getOrderMessages","ActivityMessages","ActivityMessagesTable_ActivityMessagesTable","ActivitySummaryTable","ActivitySummaryTotals","todayPnL","notTradedPnL","ActivitySummaryView","ActivitySummaryTotals_ActivitySummaryTotals","ActivitySummaryTable_ActivitySummaryTable","ActivitySummary","ActivitySummary_ActivitySummaryView","ActivityContent","activeTab","isTradesTab","isMessagesTab","unsubAll","setUnsubAll","setSubscribedSpreads","spreadNames","subscribeSpread","unsubscribeSpread","tempSpreads","unsubscribeAllSpreads","debounce","ActivityMessages_ActivityMessages","ActivityOrderContent_ActivityOrderContent","ActivitySummary_ActivitySummary","BlockTabWell","hasTabs","onTabClick","activeClass","ActivityTabs","ActivityBlock","_useActivitySettings","BlockTabWell_BlockTabWell","ActivityContent_ActivityContent","AnalyticsChart","MarkerTypes","dateRange","filteredBalances","chartContainerRef","getMarkerType","markerType","Deposit","Withdrawal","Dividend","CapitalGainsDistribution","Reinvestment","JournalEntry","Interest","createChart","clientWidth","clientHeight","textColor","vertLines","visible","horzLines","crosshair","CrosshairMode","Magnet","baseLineSeries","addBaselineSeries","baseValue","lineWidth","balanceHistoryMarkers","seenDates","filteredBalanceSeries","historyItem","cashieringTransfers","cashieringTransfer","seenDividendDates","dividend","isFirstDividend","setData","setMarkers","removeSeries","ResizeObserver","_entries$0$contentRec","contentRect","applyOptions","localization","priceFormatter","timeScale","fitContent","downloadFile","fileType","blob","anchor","download","clickEvent","MouseEvent","bubbles","cancelable","dispatchEvent","formatMoney","NumberFormat","exportToCsv","extractHeaders","extractRows","maxLength","headerName","columnData","groupChunks","chunkSize","dataArray","datum","_datum$","cashAvailable","moneyMarketValue","securitiesValue","cashTransfers","toLocaleDateString","AnalyticsBalanceHistory","handlePageChange","handleTimeFrame","handlePageSizeChange","onDateSort","accessData","AnalyticsCashFlow","cashFlows","balanceHistoryItem","getTime","identifier","identifierType","AnalyticsHeader","handleDownloadCSV","CircularProgressBar","progress","circumference","normalizedRadius","PI","strokeDashoffset","angle","indicatorX","radius","cos","indicatorY","sin","x1","y1","x2","y2","offset","stopColor","stopOpacity","in","stdDeviation","stroke","strokeWidth","cx","cy","fill","strokeDasharray","strokeLinecap","textAnchor","dy","fontFamily","AnalyticsBlock","setDateRange","subTab","setSubTab","currentPage","setCurrentPage","setCurrentChartPage","isChartDataLoaded","setIsChartDataLoaded","allBalances","setAllBalances","setProgress","timeoutRef","chartError","setChartError","balanceRequestParams","delay","timerRef","ms","clearDelay","useDelay","fetchDataForChart","perPage","totalItems","totalPages","currentProgress","sortedBalances","AnalyticsHeader_AnalyticsHeader","basic_CircularProgressBar","AnalyticsCashFlow_AnalyticsCashFlow","AnalyticsChart_AnalyticsChart","AnalyticsBalanceHistory_AnalyticsBalanceHistory","getCurrentTransferView","OAuthPlaidRedirect","getNextTransferView","route","Authorize","Accounts","Manage","Review","getViewPrimaryButtonContents","mechanism","objectType","defaultButton","AddOptions","Add","approvalMethod","plaidPublicToken","Rename","Delete","Verify","authorizeFailed","Withdraw","getTransferActionStyle","getTransferActionIconClass","getApprovalMethodLabel","isNotYetCreatedStatus","isPendingStatus","isRejectedStatus","isCancelledStatus","isNotYetCreatedOrPendingStatus","isRejectedOrCancelledStatus","getTransferStatusText","getTransferStatusName","estimatedFundsAvailableDate","getTransferBankIdentifierType","BIC","ABA","getTransferMethod","relatedData","recipientBank","transferMechanism","getTransferTypeLabel","achRelationshipId","achRelationship","bankAccount","memos","International","Domestic","getTransferWireType","getDeliveryMethodLabel","deliveryMethod","getFormattedAchRelationship","acct","nickName","bankName","getFormattedTransferInstruction","stateProvince","intermediary","StatusClassMap","CreateRejected","Canceled","Approved","PendingRepCreateApproval","PendingCreateApproval","PendingFirmCreateApproval","PendingFirmApproval","Pending","SentToBank","Complete","PendingPrinting","Void","Returned","StopPayment","CashieringEntityStatus","showWarning","fontStyle","AccountTransferContent","cashieringSelectors","newTransferId","isLoadingTransfers","dataIsLoading","isLoadingAchRelationships","isLoadingTransferInstructions","originalAccountId","originalAccount","targetedAccountStatuses","rejectMsg","currentAccountId","setCurrentAccountId","fetchData","setFetchData","transferIdToDelete","setTransferIdToDelete","comment","transferId","disbursementType","requestedAmount","CashieringEntityStatus_CashieringEntityStatus","backdrop","AccountTransferNotSupportedContent","isRQD","AccountTransferNotSupportedRQDContent","AccountTransferNotSupportedAPEXContent","AccountTransferBlock","blockContent","AccountTransferContent_AccountTransferContent","useOptionChainData","resetExpirations","setExpandedExpirations","expirationsSelector","expandedExpirations","expValues","useOptionChainActions","OptionChainHeader","useOptionChain","symbolExpirationStateSelector","optionChainSelectors","optionChainSymbol","isLoadingExpirations","getBidPriceOrLastPriceOrUndefined","_s$quotes$quoteMetada","OptionChainGlobalSelectors","strikeMoreThanBid","bidOrLastPrice","OptionChainTableRow","rowKey","onRowClick","tableInstance","closestToPriceRowRef","useBlockSymbolValue","tableTdClass","isClosestToPrice","trClassName","bidGreaterThanStrike","rowProps","getRowProps","renderRow","renderedRow","resolvedClass","cells","cell","isCallOption","priceClass","headerVal","tdClassName","cellProps","getCellProps","favoritesStyling","cellClass","columnWidth","isTableOptionPairData","ExpirationRowMemo","unitAmount","expanded","units","expirationTypeClass","expirationTypeLabel","colSpan","RootExpirationRow","dateForDiff","exDays","expandedStrs","ee","toggleExpandedExpiration","updatedExpanded","takeRight","MaxExpandedExpirations","expirationDisplay","toShort","RenderExpirationRow","RootExpirationRow_RootExpirationRow","AddRemoveFavorite","onFavoriteAdd","OptionChainOrderDropdown","orderActionForBid","orderBlocksExist","orderActionName","onAddLegToOrder","orderBlock","optionSymbol","AddRemoveFavorite_AddRemoveFavorite","favoritesBlock","SymbolBidAsk","linkableOrderBlockExists","bidAskValue","getQuoteBidAsk","optionChainDropdownProps","OptionChainOrderDropdown_OptionChainOrderDropdown","BidAskMemo","BidAsk_SymbolBidAsk","SymbolOptionPairVolume","GetOCCSymbol","quoteVolume","vol","getQuoteVolume","OptionPairVolumeMemo","OptionPairVolume_SymbolOptionPairVolume","ExpirationsFilter","selectorFunction","handleChange","expirationFrequency","isOrderBlock","dataOptionsWithoutStrikePriceCompare","changeClass","getCellOptionData","getCellOccSymbol","getColumnHeader","optionColumns","OptionChainTable","filteredOptionChain","columnsDisplayed","cols","substr","lastIndexOf","_ref2$cell","fieldName","isStrikeField","greeks","pairData","isMiddleColumn","cellSym","isOptionChainVolumeField","cellAssetSymbol","shift","simpleExpires","dataDisplayed","rows","rowValues","RootExpirationRow_RenderExpirationRow","matchingExpanded","matchingPairs","expandedRows","closestStrike","closestStrikeIndex","totalWidth","proportion","ExpirationsFilter_ExpirationsFilter","RowComponent","OptionChainContent","expandFirstExpiration","optionChainSettings","useOptionChainLoader","symbolExpirationSelector","expirationDates","firstExpiration","OptionChainTable_OptionChainTable","SymbolContent","useDebug","subscribedSymbols","setSubscribedSymbols","_useQuoteActions","loadedoptionChains","filteredChainData","symbolsForData","expPairs","pairSymbols","pair","useOptionChainSymbols","OptionChainContent_OptionChainContent","OptionChainBlock_SymbolContent","settingsFields","yesOptionLabel","noOptionLabel","fieldLabel","fieldNote","Delta","Theta","Gamma","IV","OptionChainBlock","_useOptionChainGroupH","currentSymbol","setCurrentSymbol","useOptionChainGroupHandler","OptionChainHeader_OptionChainHeader","OptionChainBlock_Content","OptionChainBlockReducer","QuoteHeader","TradeButton","linkableBlockExists","buttonTitle","delayShow","SymbolInfoTrade","createOrUpdateOrderBlock","addBlockToGroupId","isUnderlyingSymbol","initialBlockData","underlying","useOrderBlock","TradeButton_TradeButton","DirectionalSymbolPrice","SymbolInfo","hideNetChange","netChange","_useSign","useSign","_useSign2","changeUi","changePercVal","SymbolInfo_DirectionalSymbolPrice","SymbolInfo_SymbolInfoTrade","OrderField","cssClass","SymbolOrders","defaultQuote","SymbolOrders_OrderField","CompanyInfo","extendedQuote","quoteExtendedSelectors","companyName","zip","website","sector","industry","ceo","employees","QuoteBlockConstants","isQuoteTab","useQuoteData","SummaryInfo","earningsPeriod","symbolEarnings","isDateInPast","setHours","week52Low","week52High","avg10Volume","ttmEps","day200MovingAvg","day50MovingAvg","nextEarningsDate","numeral","marketCap","sharesOutstanding","peRatio","dividendYield","ttmDividendRate","nextDividendDate","QuoteBlockActions","setEarningsPeriod","setDividendsPeriod","dividendOptions","DividendsInfo","dividendsPeriod","setPeriod","currentTimeframeOption","currentTimeframe","onTimeframeChange","symbolDividends","dividendInfo","declaredDate","dividendPeriod","exDate","paymentDate","earningOptions","EarningsInfo","periodVal","reportDates","actualEps","consensusEps","epsSurpriseDollar","epsSurprisePercent","prevYearActualEps","prevYearActualEpsPercentChange","QuoteContent","SymbolInfo_SymbolInfo","SymbolOrders_SymbolOrders","Summary_SummaryInfo","Company_CompanyInfo","Earnings_EarningsInfo","Dividends_DividendsInfo","quoteMetaDataSel","QuoteContentBlock","QuoteContent_QuoteContent","QuoteExtendedBlock","setSymb","quoteSymbol","useQuoteBlockGroupHandler","QuoteHeader_QuoteHeader","QuoteExtendedBlock_QuoteContentBlock","QuoteBlockReducer","InfoBlockActions","setNoticePeriod","InfoBlockReducer","infoPeriod","noticesPeriod","InfoHeader","useInfoSettings","useInfoBlockSettings","DJISymbols","NASDAQSymbols","SP500Symbols","MarketNewsTab","positionsLoaded","isFetchingFavorites","favoriteSymbols","favorite","symbolArr","channelArray","channelMappings","dailyNewsfeed","corporateActionsDividends","earningsReports","rumorsAndIdeas","companyNews","sectorNews","ipos","economicsAndGovernment","theMarkets","etfCoverage","groupAsset","channelObj","_useStateSelector2","_useStateSelector2$da","allItems","setAllItems","socketResult","articleRefs","scrollRef","executeScroll","executeTopScroll","article","setArticle","isDJIA","isSPX","isNasdaq","isVIX","stopPollingForMarketNews","beginPollingForMarketNews","timeoutMS","pageSizes","array","getPageCount","pageSizeOptions","pageSizeLabel","onPageSizeChanged","pageSizeOption","pageNumber","paginate","el","articleEl","author","ActiveAlertsTab","isAlertsFetching","hasData","listStyleType","InfoBlockConstants","newFeatures","pressRelease","addReleaseNotes","useInfoData","releaseNotesRequestKey","qs","indices","alphabeticalSort","releaseNotesRequestToQueryString","getReleaseNotesRequestKey","uiState","getReleaseNotesFilterData","requestKey","AccountManagementSearchRequestSelector","useReleaseNotesData","ReleaseNotesColumns","ReleaseNotesTable","_useReleaseNotesData","newReleaseNote","requestReleaseNotes","setReleaseNotesPage","setReleaseNotesPageSize","InfoContent","MarketNews_MarketNewsTab","ReleaseNotesTable_ReleaseNotesTable","ActiveAlerts_ActiveAlertsTab","InfoContentBlock","InfoContent_InfoContent","InfoBlock","useInfoBlockGroupHandler","InfoHeader_InfoHeader","InfoBlockSettingsFields","InfoBlock_InfoContentBlock","AccountManagementReducer","AdminToolsConstants","applicationErrors","useAdminToolsData","AdminToolsBlockActions","accountManagementRequestToQueryString","accountManagementRequestKey","objectTypes","PhoneNumber","MailingAddress","Financial","TradeGoal","Employment","TrustedContact","Disclosures","Experience","IndustryEmployed","Suitability","Flexability","getEntityKey","getRequestKey","getAccountUpdateSearchEntities","queryState","allValues","ids","getAccountManagementSearchFilterdata","getAccountManagementSearchTotal","isFetchingAccountManagementSearchUpdates","qState","filterData","PendingConfirm","PendingFirmReview","AccountUpdateItemStatus","ItemCell","AccountManagementUpdateStatus_AccountUpdateItemStatus","AccountManagementActionCell","updateItem","AdminAccountManagementSearchActions","setCurrentItem","AccountUpdateDetails","updateDetails","AccountManagementUserDetails","secondaryOrUgmaBen","phoneNumberString","AccountUpdateEntityAuditItems","updateActions","accountActions","AccountUpdateEntityAuditItems_AccountUpdateEntityItem","statusAction","AccountUpdateEntityItem","AccountManagementUpdateItemStatus","AccountUpdateEntityAuditItems_AccountUpdateEntityAuditItems","AccountManagementUpdateRequest","isCompleteOrApproved","boolean","origEmail","isPrimary","phonesValue","updatedTypeValue","originalPhone","AccountUpdateEntityNotes","onEditToggle","toggleNote","setToggleNote","noteValue","setNoteValue","newVal","clearCurrentItem","requestFirmRejectUpdate","handleReject","requestFirmApproveUpdate","handleApproval","AccountManagementFinancialDetails","financialFields","AccountManagementDocReview","imageDocumentsRef","PendingReview","Submitted","getMiscellaneousDocument","clearDocUpdate","requestFirmRejectDoc","handleRejection","requestFirmApproveDoc","AdminAccountManagementDetail","currentItemRequest","requestUserAccountUpdateDetails","requestUserAccountDetails","AccountManagementUserDetails_AccountManagementUserDetails","AccountManagementFinancialDetails_AccountManagementFinancialDetails","AccountUpdateDetails_AccountUpdateDetails","AccountManagementUpdateRequest_AccountManagementUpdateRequest","AccountManagementDocReview_AccountManagementDocReview","AccountManagementUpdateItemStatus_AccountManagementUpdateItemStatus","AccountUpdateEntityNotes_AccountUpdateEntityNotes","typeOptions","PersonalInformation","Phone","RemoveTradeAuthorization","ServiceProfile","TradeAuthorization","statusOptions","AccountManagementFilters","_useAccountManagement","states","_useAccountManagement2","setType","useAccountManagementActions","setSearchSubmitted","onSearchSubmit","_useInput","useInput","onEnter","_useInput2","setSearchValue","inputProps","onClearSearch","currentSearch","currentType","firstType","defaultType","currentStatus","firstStatus","defaultStatus","onTypeChange","types","onStatusChange","AdminAccountManagementColumns","AccountManagementItemCell_ItemCell","disableSortBy","AccountManagementActionCell_AccountManagementActionCell","AccountManagementTable","requestUserAccountUpdates","refresh","sortData","entityKey","AccountManagementFilters_AccountManagementFilters","AdminAccountManagementDetail_AdminAccountManagementDetail","AdminAccountManagementIndex","AccountManagementTable_AccountManagementTable","alertRequestToQueryString","alertRequestKey","getAlertsSearchFilterData","getAlertsSearchTotal","AlertSearchRequestSelector","isFetchingAlerts","useAlertsData","esm_extends","AlertsActionCell","template","_useAlertsData","requestUpdateAlert","AddAlertMessage","initialAlertMessageValues","alertValues","requestCreateAlert","TextareaField","listStyle","EditAlertMessage","alertMessage","AdminAlertsColumns","showEditAlertMessage","setShowEditAlertMessage","EditAlertMessage_EditAlertMessage","AlertsActionCell_AlertsActionCell","AlertsTable","showAddAlertMessage","setShowAddAlertMessage","requestAlertTemplates","setAlertsPage","setAlertsPageSize","AddAlertMessage_AddAlertMessage","entitlementRequestToQueryString","entitlementRequestKey","entitlementUpdateKey","getEntitlementUpdateSearchEntities","getEntitlementsSearchFilterData","getEntitlementsSearchTotal","EntitlementsSearchRequestSelector","isFetchingEntitlements","EntitlementsActionCell","AdminEntitlementsSearchActions","EntitlementsItemCell","isRejected","AdminEntitlementsFooter","EntitlementRequestDetails","EntitlementRequestAccountDetails","EntitlementRequestFinancialDetails","AdminEntitlementsDetail","isCurrentItemFetching","requestEntitlementAccountDetails","EntitlementRequestDetails_EntitlementRequestDetails","EntitlementRequestAccountDetails_EntitlementRequestAccountDetails","EntitlementRequestFinancialDetails_EntitlementRequestFinancialDetails","EntitlementsFooter_AdminEntitlementsFooter","AdminEntitlementsColumns","MiddleInitial","Suffix","EntitlementsItemCell_EntitlementsItemCell","EntitlementsActionCell_EntitlementsActionCell","EntitlementsTable","_useEntitlementsData","useEntitlementsData","currentItemDetails","requestSent","setRequestSent","requestEntitlementUpdates","refreshEntitlements","setEntitlementsPage","setEntitlementsPageSize","AdminEntitlementsDetail_AdminEntitlementsDetail","AdminEntitlementsIndex","EntitlementsTable_EntitlementsTable","applicationRequestToQueryString","applicationRequestKey","applicationUpdateKey","visibleRepIds","repId","getApplicationSearchEntities","getApplicationSearchFilterData","getApplicationSearchTotal","isFetchingApplications","ApplicationsSearchRequestSelector","useApplicationsData","ApplicationsActionCell","setAppCurrentItem","ApplicationSecureAccount","errorOnCreate","Beneficiary","Simple","formatFlexibilityType","formatClearerType","timeStamp","ApplicationInvestingProfile","ApplicationAccountInformation","secondaryAccountHolder","birthDate","formatBirthDate","ApplicationBeneficiaryInformation","ein","ApplicationDocumentsRequested","requestedParticipantsDocuments","getRequestedParticipantsDocuments","areDocumentsRequested","areDocumentsUploaded","requestInvestigations","SSNCard","SSALetter","IRSITINLetter","ForeignerGovermentId","IRSW9Form","ForeignerSignature","requestedDoc","uploadedDocument","miscDocumentId","originalFileName","takenOn","ApplicationAgreements","agreementKeys","needsApiAgreement","isIra","isEntity","isMargin","isOptionsInTradeGoals","allAgreementKeys","Roth","CoverDell","LlcCCorporation","LlcSCorporation","CCorporation","SCorporation","Joint","getAllAgreementKeysForApplication","answeredMarketDataKeys","marketDataKeys","answeredMarketDataQs","getMarketDataResponses","agreementKey","getAgreementResponse","formatAgreementKey","marketDataFields","marketDataKey","getMarketDataResponse","formatMarketDataKey","AdminApplicationDetail","clearAppCurrentItem","SecureAccount_ApplicationSecureAccount","InvestingProfile_ApplicationInvestingProfile","AccountInformation_ApplicationAccountInformation","BeneficiaryInformation_ApplicationBeneficiaryInformation","DocumentsRequested_ApplicationDocumentsRequested","Agreements_ApplicationAgreements","stepOptions","SecureAccount","InvestingProfile","AccountInformation","Agreements","Sign","UGMA","errorOptions","Errored","NotErrored","iraAccountTypes","Traditional","SEP","Rollover","ApplicationsFilters","_useApplicationsData","steps","_useApplicationsActio","AdminPendingApplicationActions","setAppSearch","setStep","setAppSearchStep","setAppSearchType","setErrorStatus","setAppIsErrored","setIraType","iraAccountType","setIraAccountType","useApplicationsActions","currentStep","firstStep","defaultStep","currentErrorStatus","currentIraType","onStepChange","onErrorStatusChange","onIraTypeChange","iraTypes","AdminApplicationsColumns","_row$original$primary","lastSavedOn","latestStepSaved","lastStep","isSubmitted","applicationSentOn","docsRequired","setDocsRequired","setIsLoading","getInvestigations","ApplicationsActionCell_ApplicationsActionCell","ApplicationsTable","requestApplications","refreshApplications","setAppSortBy","setAppPage","setAppPageSize","ApplicationsFilters_ApplicationsFilters","AdminApplicationsDetail_AdminApplicationDetail","AdminApplicationsIndex","ApplicationsTable_ApplicationsTable","AddReleaseNotes","initialReleaseNotesValues","jiraIssueNumber","requestCreateRelease","EditReleaseNote","initialReleaseNoteValues","releaseNoteValues","requestUpdateRelease","showEditReleaseNotes","setShowEditReleaseNotes","EditReleaseNotes_EditReleaseNote","ReleaseNotesAdminTable","AdminReleaseNotesIndex","showAddReleaseNotes","setShowAddReleaseNotes","ReleaseNotesAdminTable_ReleaseNotesAdminTable","AddReleaseNotes_AddReleaseNotes","ApplicationErrorsSubRow","subRows","subRow","ApplicationErrorsDownloadCSV","prepareCSVData","csvData","mostRecent","errorInfo","subRowOwnerUsername","subRowRepId","csv","Papa","unparse","link","setAttribute","appendChild","downloadCSV","ApplicationErrorsFilters","ApplicationErrorsDownloadCSV_ApplicationErrorsDownloadCSV","buildApplicationErrorsRequestURL","startDateUTC","endDateUTC","AdminApplicationErrorsColumns","ApplicationErrorsTable","setSortByOrder","setTotal","setHasData","timeFrame","applicationErrorFetcher","arg","requestUrl","applicationErrorsIsLoading","applicationErrorsError","ApplicationErrorsFilters_ApplicationErrorsFilters","AdminApplicationErrorsIndex","ApplicationErrorsTable_ApplicationErrorsTable","AdminToolsContent","currentApplicationItem","currentAccManagementItem","currentEntitlementsItem","AdminAccountManagementIndex_AdminAccountManagementIndex","AlertsTable_AlertsTable","AdminApplicationsIndex_AdminApplicationsIndex","AdminApplicationErrorsIndex_AdminApplicationErrorsIndex","AdminEntitlementsIndex_AdminEntitlementsIndex","ReleaseNotesAdminIndex_AdminReleaseNotesIndex","AdminToolsHeader","AdminToolsContentBlock","AdminToolsContent_AdminToolsContent","AdminToolsBlock","AdminToolsHeader_AdminToolsHeader","AdminToolsBlock_AdminToolsContentBlock","AdminToolsReducer","AccountStatementsHeader","accountStatementsSelectors","taxDocumentStatements","DownloadComponent","GenericErrorResponseCode","downloadStatus","setDownloadStatus","setErrorMessage","_row$original$documen","_row$original$documen2","formType","received_on","fileURL","revokeObjectURL","AccountStatementsDailyConfirms","formattedDailyStatements","requestedStartDate","requestedEndDate","DownloadComponent_DownloadComponent","YearPicker","isRQDTaxStatementView","AccountStatementsMonthlyStatements","getFullYear","formattedMonthlyStatements","requestMonthlyAccountStatementsThrottleCallback","throttle","AccountStatementsTaxDocuments","taxDocument","setTaxDocument","taxDocuments","formattedTaxDocuments","requestTaxAccountStatementsThrottleCallback","selectedTaxDocument","AccountStatementsRender","SubAccountManagementHeader","updateSubAccountSchema","balance","matches","EditSubAccountModel","initialSubAccountState","errorState","setErrorState","fundingAccountBalance","editSubAccountFetcher","_useSWRMutation","useSWRMutation","updateSubAccountResult","triggerUpdateSubAccount","isMutating","updateSubAccountRequestError","payloadValues","requestSubAccounts","Balance","errorImmediately","CurrencyField","DeleteSubAccountModel","DistributionRatio","hasDistribution","hasPositions","hasOpenOrders","deleteSubAccountFetcher","deleteSubAccountResult","triggerDeleteSubAccount","deleteSubAccountRequestError","setSubAccount","more","transferPositionsSubAccountSchema","destinationSubaccountId","JournalAccountModel","destSubAccnts","setDestSubAccnts","destSubAccntLabels","setDestSubAccntLabels","posArr","setPosArr","posLabelArr","setPosLabelArr","tranfserPositionsFetcher","transferPositionsResult","triggerTransferPositionsForSubAccounts","transferPositionsForSubAccountRequestError","filteredSA","filteredIds","nicknames","sortedArr","localeCompare","displayLabelArr","isStock","optionDescArr","optionArr","rawOptionLabels","isMulti","SubAccountManagementSubRow","masterSubAccountBalance","setMasterSubAccountBalance","distributionSum","setDistributionSum","editModalData","setEditModalData","deleteModalData","setDeleteModalData","journalModalData","setJournalModalData","setShowEditAccountModalCallback","setShowDeleteAccountModalCallback","setShowJournalAccountModalCallback","masterSubBalance","mainIndex","subRowHeaderStyle","subIndex","balanceNumber","obj","subRowDataStyle","wordBreak","subRowActionButtonStyle","borderTop","borderTopColor","defaultButtonStyle","marginButtonStyle","deleteButtonStyle","flexFlow","borderBottom","createSubAccountSchema","acctSuffix","CreateSubAccountModel","initialAccountState","autoAccountPrefix","setAutoAccountPrefix","createSubAccountFetcher","createSubAccountSuffix","_ret","suffixArray","foundPrefix","padStart","createSubAccountResult","triggerCreateSubAccount","createSubAccountRequestError","greaterThanAccountBalance","accountBalanceGreaterThanZero","argPayload","autoComplete","CheckboxField","UpdateDistributionRatioModel","subAccountRows","setSubAccountRows","updateDistributionRatioFetcher","updateDistributionRatioResult","triggerUpdateDistributionRatio","updateDistributionRatioRequestError","ratioArr","subaccountRatioMap","ratioParsed","newRows","masterId","UpdateDistributionRatioPayload","validationObject","typeError","newEntries","saId","SubAccountManagementTable","masterSubaccountBalance","setMasterSubaccountBalance","accntBalances","setAccountBalances","storedAutoAccountPrefix","accountBalance","setBalance","createSubAccountModel","setCreateSubAccountModel","setShowCreateAccountModalCallback","setAutoAccountPrefixCreateAccountModalCallback","updateDistributionRatioModel","setUpdateDistributionRatioModel","setShowUpdateDistributionRatioModalCallback","mainRowActionButtonStyle","fundingBalance","SubAccountManagementSubRow_SubAccountManagementSubRow","SubAccountManagementBlock","SubAccountManagementHeader_SubAccountManagementHeader","SubAccountManagementTable_SubAccountManagementTable","BlockFactory","wrapperId","isActivityBlock","isInfoBlock","isAccountManagementBlock","isAdminToolsBlock","initData","tablesValue","typeFactory","blockStateFactory","defaultOrderBlockSettings","defaultOrderBlockSettingsSelector","defaultInfoBlockSettings","defaultInfoBlockSettingsSelector","BlockState","reducer","OrderBlock_OrderBlock","ActivityBlock_ActivityBlock","OptionChainBlock_OptionChainBlock","QuoteExtendedBlock_QuoteExtendedBlock","InfoBlock_InfoBlock","AccountManagementBlock_AccountManagementBlock","AdminToolsBlock_AdminToolsBlock","AccountStatements_AccountStatements","AccountBlock_AccountBlock","AccountTransferBlock_AccountTransferBlock","FavoritesBlock_FavoritesBlock","PositionBlock_PositionBlock","PriceChartBlock_PriceChartBlock","AnalyticsBlock_AnalyticsBlock","SubAccountManagementBlock_SubAccountManagementBlock","GridResizeSync","windowWidth","documentWidth","useDocumentWidth","hasVerticalScrollbar","Event","accountInfoSelector","useAccountSettings","getSettings","DashboardGrid","blockInfos","blockIdsAndTypesSelector","DashboardGrid_GridNotifications","DashboardGrid_GridWrapper","blockWrapperId","data-wrapper-id","BlockFactory_BlockFactory","GridNotifications","linkError","linkErroredAt","lockGrid","dismiss","borderLeft","borderRight","unClosable","GridWrapper","accountLoaded","sessionExpired","layoutSelectors","blockLayouts","getLayoutWithMinSize","onBreakpointChange","newBreakpoint","newCols","onLayoutChange","_newLayouts","allLayouts","allLayoutsWithType","newLayouts","correctInvalidLayoutItem","containerPadding","rowHeight","storageProvider","AudioHotkeys","onSuccess","EnvironmentHotkeys","toggleVirtualTrading","AlertMessage","DashboardView","_useToggle","useToggle","_useToggle2","_usePageNav","usePageNav","nav","_useDashboardDrawer","setDrawerIsOpen","toggleDrawerIsOpen","useDashboardDrawer","_useDashboardDrawer2","dashboardIdFromUrl","dashboardid","uiApiToken","addingDefaultDashboard","setAddingDefaultDashboard","redirectToDashboardId","firstDefaultDashboard","useLocalStorage","logoutOnClose","SyncTabStorageKey","sync","SIGNOUT","ExpireTokenInStorage","showAlerts","setShowAlerts","alertViewed","cookie","activeAlertsIds","cookieAlertIdsAsArray","dashboardClass","collapsed","react_router","DashboardWrapper_DashboardWrapper","DashboardNavigation_DashboardNavigation","DashboardContentWrapper_DashboardContentWrapper","editClass","linkingClass","DashboardView_Hotkeys","DashboardGrid_DashboardGrid","DashboardDrawer_DashboardDrawer","Menu_DashboardMenu","AlertMessage_AlertMessage","Hotkeys","AudioHotkeys_AudioHotkeys","BlockHotkeys_BlockHotkeys","DashboardHotkeys_DashboardHotkeys","GridHotkeys_GridHotkeys","EnvironmentHotkeys_EnvironmentHotkeys","useCashieringDataContext","formStatus","setFormStatus","closeScreen","setCloseScreen","submitted","gotoNextView","nextView","AuthorizeView","securityQuestionIsLoading","dataIsFetching","securityQuestionMessage","dataMessage","securityQuestionStatus","dataStatus","securityQuestionIsVerifying","dataIsSaving","balanceTotals","previousVerificationFailed","allVerificationsFailed","danger","securityResponses","showNextSecurityQuestion","resetStatus","validateAmount","amountNumber","parseNumber","validateTransferAmount","amountErrors","subAccountsValues","transfer.subAccountId","validatePositions","uniquePositionSymbols","closeAccount","transfer.closeAccount","validateTransferMechanism","instructionId","nameOnAccount","transfer.nameOnAccount","transfer.deliveryMethod","validateABARouting","validateBICSWIFT","validateAccountNumber","DisbursementTypeOptions","WithdrawalAmountViewContent","getAccountBalances","withdrawFullBalance","transferSubAccountId","setTransferSubAccountId","allAccounts","subAccs","onChangeDisbursementType","flex","distributionReason","WithdrawalAmountView","selectedSubAccount","selectedSubAccountDetails","WithdrawalAmountView_WithdrawalAmountViewContent","useWithdrawalAmountView","SelectCheckTransfer","SelectDropdownInput","createGenericAccountList","selectable","addBtn","renderName","renderIcon","renderStatus","renderFootnote","setDocumentType","intermediaryDocumentType","setIntermediaryDocumentType","isTransferInstructionField","bankIdsWithUploads","setBankIdsWithUploads","bankIdsWithMultipleUploads","setBankIdsWithMultipleUploads","bankIdsWithIntermediary","setBankIdsWithIntermediary","isFetchingDocuments","setIsFetchingDocuments","getDocType","isIntermediary","getDocumentIds","getId","getIntermediaryIds","htmlFor","onChangedAndSetValue","help","AccountRenameForm","AchRelationshipForm","plaidLinkToken","protocol","hostname","port","AchRelationshipForm_AchRelationshipPlaidForm","AchRelationshipForm_AchRelationshipMicroDepositForm","AchRelationshipPlaidForm","plaidMetadata","setPlaidMetadata","plaidFailed","setPlaidFailed","plaidSucceeded","plaidConfig","linkCustomizationName","onExit","_usePlaidLink","usePlaidLink","openPlaidLink","plaidReady","ready","onOpenPlaid","institution","subtype","onChangePlaidAccountId","plaidAccountId","mask","AchRelationshipMicroDepositForm","AchRelationshipVerifyForm","BaseAchRelationshipList","AchRelationshipList","onVerify","onRename","_useCashieringDataCon","isManageView","selectableAchRelationships","maxItemsWarning","setMaxItemsWarning","onCloseClick","onAddClick","Cashiering","MaxAchRelationships","gotoManageView","isEditing","getAccountName","getAccountIcon","verifyBtn","cancellation","getFootnote","pendingAchRelationships","AchRelationshipForm_AchRelationshipForm","AccountRenameForm_AccountRenameForm","AchRelationshipVerifyForm_AchRelationshipVerifyForm","SelectAchRelationshipTransfer","setManageAction","isRQDAccount","approvalMethods","showAddOptions","nextAction","onSelectApprovalMethod","bankAccountType","AchRelationshipList_AchRelationshipList","getApprovalMethodDescription","RecipientBankForm","showIntermediary","setShowIntermediary","bankIdentifierType","BaseTransferInstructionsList","RecipientBankList","selectableTransferInstructions","ti","RecipientBankForm_RecipientBankForm","SelectWireTransfer","APEXWireDetails","RQDWireDetails","RecipientBankList_RecipientBankList","AccountsList","_body","isSavingAchRelationships","currentDayACHTransfers","currentDay","getDate","getMonth","transferDate","transferDay","useCurrentDayACHTransfersLimit","isACHTransferLimitExceeded","transferMechanismOptions","exceedsDailyLimitText","fees","SelectAchRelationshipTransfer_SelectAchRelationshipTransfer","SelectWireTransfer_SelectWireTransfer","SelectCheckTransfer_SelectCheckTransfer","useCashieringAccountsList","_useCashieringDataCon2","account.approvalMethod","validateTransferAchRelationshipOptions","account.plaidAccountId","account.nickName","account.bankAccountType","bankRoutingNumber","account.bankRoutingNumber","account.bankName","account.bankAccount","bankAccountOwnerName","account.bankAccountOwnerName","validateTransferAchRelationship","account.name","account.identifier","account.accountNumber","account.city","account.stateProvince","account.postalCode","account.country","validateTransferRecipientBank","amount1Errors","amount1","amount2Errors","amount2","pick","secretData","bankAccountSecret","bankAccountOwnerNameSecret","approve","accountSecret","nameSecret","streetAddress1","streetAddress2","WithdrawalTypeView","_useWithdrawalAmountV","_useCashieringAccount","TransferAccountsList","cashieringRequestToQueryString","cashieringRequestKey","AchRelationship","Transfer","TransferRecipientBank","TransferWireInstruction","cashieringEntityKey","entityId","transferRecipientBank","transferRecipientBankId","relationshipId","transferWireInstruction","transferWireInstructionId","getEntityDetailKey","getCashieringSearchEntities","getCashieringSearchTotal","getCashieringSearchFilterData","isFetchingCashieringSearchEntities","searchEntitySelector","idNum","baseEntitySelector","transferById","relationshipById","recipientBankById","beneficiaryById","wireInstructionsById","transferData","relationshipData","recipientBankData","wireInstructionsData","transferSelectors","relationshipSelectors","recipientBankSelectors","detailType","entity","searchEntity","entityNote","adminNote","entityAdminNote","wireInstructionSelectors","entitySelector","searchEntityData","detailEntityData","isErrored","typeData","CashieringSearchRequestSelector","CashieringEntityOwnerNames","CashieringEntityDetails","transferInstruction","AccountWithdrawalDisplay","isPendingFullWithdrawal","adminReview","subAccountTransferValues","subAccountIds","subAccountDataAndValues","transferAmount","CashieringEntityOwnerNames_CashieringEntityOwnerNames","CashieringEntityDetails_CashieringEntityDetails","WithdrawalReviewViewContent","AccountWithdrawalDisplay_AccountWithdrawalDisplay","WithdrawalReviewView","WithdrawalReviewView_WithdrawalReviewViewContent","DepositAmountViewContent","DepositAmountView","DepositAmountView_DepositAmountViewContent","useDepositAmountView","DepositTypeView","_useDepositAmountView","AccountDepositDisplay","DepositReviewViewContent","AccountDepositDisplay_AccountDepositDisplay","DepositReviewView","DepositReviewView_DepositReviewViewContent","ManageView","OAuthAchRelationshipPlaidForm","receivedRedirectUri","OAuthPlaidRedirectView","OAuthPlaidRedirectView_OAuthAchRelationshipPlaidForm","useCashieringView","securityResponse","useAuthorizeView","_useCashieringAccount3","_useCashieringAccount4","onSubmitActions","onValidateActions","useWithdrawalTypeView","baseWithdrawal","achWithdrawal","achWithdrawals","wireWithdrawal","wireWithdrawals","checkWithdrawal","memo1","memo2","memo3","checkWithdrawals","useWithdrawalReviewView","useDepositTypeView","achDeposit","useDepositReviewView","useManageView","useOAuthPlaidRedirectView","ScreenContentWrapper","ScreenWrapper","ScreenWrapper_ScreenContentWrapper","ScreenWrapper_CloseScreenModal","CloseScreenModal","showConfirmClose","screenType","BaseCashieringView","BaseCashieringView_BaseCashieringViewContent","BaseCashieringViewContent","useHistory","_useCashieringData","isSavingAccountForm","isSavingTransferForm","isSavingAchRelationship","isSavingWireInstructions","isFetchingAchRelationships","isFetchingWireInstructions","statusAccountForm","statusTransferForm","statusAchRelationships","statusWireInstructions","messageAccountForm","messageTransferForm","messageAchRelationships","messageWireInstructions","savingInProgress","setSavingInProgress","useCashieringData","_useCashieringView","_useCashieringView2","TransferViewComponent","onViewSubmit","onViewValidate","isPrimaryButtonDisabled","routeTitle","getTransferRouteTitle","viewSubtitle","getTransferViewSubtitle","showCancel","onHandleSubmit","ScreenWrapper_ScreenWrapper","getAlertProps","primaryButton","isNull","showPrimaryButton","contents","getViewPrimaryButton","onHandleSubmitClick","SessionExpiredModal","expirationReason","reasonText","reasonIsLogout","ErrorModal","isAuthExpired","urlPaths","isTransferRequest","actionUrl","_actionUrl$split","showModal","closeModal","SessionWrapper","authTimeout","useActivityTimeout","Inactivity","SessionExpiredModal_SessionExpiredModal","ErrorModal_ErrorModal","usePageSettings","access","allowed","isAdminUserLevel","isRepUserLevel","SelectSubAccountButton","selected","isSelectedSubAccount","formatAccountNumber","SubAccountTable","subAccountsIsFetching","linkedAccountsBalances","balanceIsFetching","SubAccountListColumns","SelectSubAccountButton_SelectSubAccountButton","AvailableForTrade","getRowClass","AccountSelectionButton","selectedText","_ref$selected","onSelectedCallback","_ref$type","AccountsTable","multipleAccounts","totalAccounts","totalLinkedAccounts","linkedAccountBalances","persistSearchOptions","setPersistSearchOptions","searchOptions","statusFilter","setStatusFilter","optionsUpdateTimerId","requestLinkedAccounts","AccountsTableRender","accountSelectedCallback","resetSearch","retrieveSetAccountData","searchOptionsPage","searchOptionsSearchTerm","statuses","isSelectedEqualToOriginal","foundStatus","accountsTableColumns","JTWROS","Traditional_IRA","IRA_RollOver","Roth_IRA","SEP_IRA","JTIC","Corporate","LLC","Partnership","Qualified_Plan","Sole_Proprietorship","InvestmentClub","TBE","CommunityProperty","Coverdell_IRA","formatAccountType","selectedFilter","visibility","searchTerm","AccountSwitcher","hasLinkedAccounts","setMultipleAccounts","keyboard","SubAccountTable_SubAccountTable","PendingEntitlementModal","RootContentPage","userAccount","isPendingMarketDataEntitlementPolicyUpdatePresent","RepCode","SessionWrapper_SessionWrapper","Api","exact","AccountSwitcher_AccountSwitcher","PendingEntitlementModal_PendingEntitlementModal","getFeedStatus","getFeedQuoteQueue","getFeedSpreadQueue","FeedSync","useFeedQuoteQueue","useFeedSpreadQueue","quotesRef","spreadsRef","intervalRef","combinedQuotes","combinedSpreads","canConnectToWebsocket","useWebsocket","websocket","shouldReconnect","setShouldReconnect","closeReason","setCloseReason","retryTimeoutMs","retryTimeout","dispatchers","globalDispatch","_getFeedActions","feedStatus","useFeedStatus","canConnect","closeSocket","trySetupWebsocket","WebSocket","tradingApiWebsockets","onopen","onclose","onmessage","getHours","setExtras","extra","OrderFeedActions","receivedUpdate","setLatestCashieringUpdateDataFromWebsocket","onerror","createWebsocketError","socket","readyState","CLOSED","newTimeout","Websockets","ReconnectInterval","newTimeoutDisplay","closeMessage","closed","retryingInSeconds","OPEN","FeedSocketWrapper","socketRef","_useWebsocket","Feed","_useReducer","useReducer","_useReducer2","Feed_FeedSocketWrapper","FeedSync_FeedSync","tryVerify","publicKey","decoded","jwtValues","verifyToken","id_token","pubKey","uiApi","tryGetToken","tokenFromUrl","tokensFromState","tokenFromLS","tokenVal","tokenResult","tokenPayload","TokenFromStorage","SaveTokenInStorage","tryGetOrigin","originFromUrl","originFromState","originFromLS","parseOriginLS","AuthenticationPage","urlParams","refreshTokenSelector","nextPage","GetUrlParams","currentToken","setCurrentToken","tokenRes","pending","grp","originRes","redirectReps","loginUrl","LogoutPage","tokenFromState","AdminRoot","useCashieringActions","AdminCashieringSearchActions","setRepCode","setAccountStatus","CashieringTableContent","CashieringTable","handleSetSelectedRow","selectedRowIndex","CashieringAdminReviewColumns","cashieringSearch","sessionStorage","apiTokenSelector","latestCashieringUpdateFeedDataFromWebsocket","prevLatestCashieringUpdateFeedDataFromWebsocket","removeItem","rowClassName","cashieringSearchRequest","simplifiedData","cashieringItem","prevSimplifiedData","cashieringEvent","updateAdminCashieringTablePageRouteKey","CashieringTable_CashieringTableContent","csvMainActionButtonContainerStyle","csvMainActionButtonStyle","centerStyle","downloadCSVButtonStyle","checkboxListStyle","checkboxStyle","DISPLAY_NAMES","CashieringDownloadCSVModal","downloadAction","setIncludeList","includeList","toggleShow","shouldShow","showVal","handleHide","_val","allOption","unshift","accountStatusOptions","CashieringFilters","_useCashieringActions","onRepCodeSearch","repCodeSearchSubmitted","setRepCodeSearchSubmitted","onRepCodeSearchSubmit","repCodeValue","setRepCodeValue","repCodeSearchInputProps","onClearRepCodeSearch","currentRepCode","searchSubmitted","_useInput3","_useInput4","showSearchDate","setShowSearchDate","setStartDate","setEndDate","searchByDateRange","setSearchByDateRange","dateRef","handleDateInput","resetDateButtonStyle","columnNames","excludedColumnsById","recordedModalColumns","toSpliced","updateIncludeList","onAccountStatusChange","place","_e","inputId","CashieringFilters_CashieringDownloadCSVModal","_csvData","selectionList","num","lowerKey","useLatestPendingCashieringDate","onLatestDateChange","onlyRunOnChange","prevDateValue","latestCashieringUpdate","latestPendingCashieringEventDate","TransactionCell","CashieringMethodCell","getApprovalMethod","CashieringEntityNotes","wrapperClassName","bodyClassName","footerClassName","formattedName","editNoteType","setEditNoteType","adminNoteValue","setAdminNoteValue","recipientBankValue","setTransferWireInstructionValue","adminNotes","setAdminNotes","notes","setNotes","alertEmail","setAlertEmail","wireInstruction","toggleNoteField","noteType","editType","setNotesHelper","getNotes","getWireInstruction","saveHandler","noteField","updateAction","updateRelationshipRequest","alertRep","cashieringWireInstructionsUpdateRequest","updateTransferRequest","createBy","NoteRow","borderBottomWidth","borderBottomStyle","CashieringNoteCell","edit","setEdit","CashieringEntityNotes_CashieringEntityNotes","CashieringActionCell","CashieringTransactionCell_TransactionCell","CashieringMethodCell_CashieringMethodCell","CashieringNoteCell_CashieringNoteCell","_row$original4","CashieringActionCell_CashieringActionCell","handleSetFilter","CashieringHeader","newPendingRequestsExist","setNewPendingRequestsExist","handleNewCashieringRequests","refreshCashieringData","AdminCashieringIndex","setSelectedRowIndex","handleSetSelectedRowIndex","AdminCashieringIndex_CashieringHeader","CashieringTable_CashieringTable","CashieringFilters_CashieringFilters","accountById","balanceById","accountDetailsById","accountSelectors","balanceSelectors","accountDetailsSelectors","ValueArray","renderer","delimiter","CustomerAccountDetails","getBankRiskScore","score","formattedRiskScore","LowRisk","MediumRisk","HighRisk","formatLastUpdated","lastUpdated","bankAccountBalance","lastModifiedDate","bankAccountLastTransactionDate","approval","approvalTime","bankRiskScore","hasAllOwners","upperName","upperSecret","nameWords","word","secretWords","reviewAddresses","street","stateOrRegion","ValueArray_ValueArray","reviewEmails","reviewPhoneNumbers","CashieringTransferDetails","isFetchingDetails","_useCashieringTransfe","cashieringRelationshipRequest","cashieringWireInstructionsRequest","adminAvailableForWithdrawal","adminPendingFullBalanceWithdrawalsExist","useCashieringTransferData","detailsProps","CustomerAccountDetails_CustomerAccountDetails","RepStates","PendingApprovalStates","CancelledStates","TransferNotCancelableStates","CashieringReviewFormActions","entityType","onApprove","onReject","setAreDocumentsUploaded","entityStatus","SuccessResponseCode","isApprovalState","isCancelAllowed","hasPendingChildren","isWireInstructionsWithNoDocuments","permissions","entityTypeLabel","trimEnd","confirmCancel","setConfirmCancel","CashieringReviewForm","adminUserName","reviewLegacyRelationships","approveCreateRelationshipRequest","mapToRelationshipId","approveRepRequest","approveFirmRequest","approveRecipientBankRequest","cashieringWireInstructionsApproveRequest","rejectRelationshipRequest","rejectTransferRequest","rejectRecipientBankRequest","cashieringWireInstructionsRejectRequest","cancelRelationshipRequest","cancelTransferRequest","cashieringWireInstructionsCancelRequest","CashieringReviewFormActions_CashieringReviewFormActions","CashieringRelationshipDetails","CashieringDetailError","CashieringEntityAuditItems","transferInstructionDetails","CashieringEntityAuditItems_CashieringEntityAuditItem","repReviewed","rejected","returned","deleted","CashieringEntityAuditItem","CashieringRelationshipStatus","relationshipState","cancellationReason","cancellationComment","pendingMicroDeposit","CashieringEntityAuditItems_CashieringEntityAuditItems","CashieringTransferStatus","transferState","rejectReason","CashieringDocReview","intermediaryImageDocumentsRef","docsUploaded","setDocsUploaded","pdfsUploaded","setPdfsUploaded","resp","docId","getDocMetadata","imageName","getDoc","resArray","base64","fileUrl","intermediaryDocId","openPDF","refId","pdfWindow","write","isDocPDF","CashieringTransferInstructionDetails","CashieringDocReview_CashieringDocReview","CashieringTransferInstructionStatus","FilterForAccount","accountNumberValue","AdminCashieringDetail","_match$params","toInteger","isRelationship","isTransferWireInstruction","idValue","cashieringRelationshipDetailRequest","cashieringTransferDetailRequest","cashieringWireInstructionsDetailsRequest","entityInfo","editNote","setEditNote","saveState","setSaveState","updateAdminCashieringDetailPageRouteKey","FilterForAccount_FilterForAccount","CashieringRelationshipDetails_CashieringRelationshipDetails","CashieringTransferDetails_CashieringTransferDetails","CashieringTransferInstructionDetails_CashieringTransferInstructionDetails","CashieringRelationshipStatus_CashieringRelationshipStatus","CashieringTransferStatus_CashieringTransferStatus","CashieringTransferInstructionStatus_CashieringTransferInstructionStatus","CashieringDetailError_CashieringDetailError","CashieringReviewForm_CashieringReviewForm","AdminPageBase","sections","AdminRouter","AdminRouter_AdminPageBase","NoAccountPage","originLS","onSignUp","onSignOut","VersioningMiddleware","getState","viewed","cleanBlock","blockSettingsOrDefault","addBlockToBlocks","blockValue","SetBlockIds","getBlockAndGroupIdForUpdate","blockToReplace","bb","blockid","ChartInitializerActions","GroupMiddleware","prevState","OrderGroupActions","defaultOrderSettings","blockToUpdate","OrderInitializerActions","oldState","newState","oldBlockIds","getNewOrderBlock","isChartBlock","pricechart","getNewPriceChartBlock","handleBlockDeletion","handleDashboardBlocksRequest","apiRes","shouldFetch","stale","DataMiddleware","middleware","nextState","orderStatusId","ApiProvider","totalNumOfAvailableItems","loadAccountOrders","shouldLoad","shouldLoadMorePositions","accountApiFromState","loadPositions","receiveCancel","Dispatcher","handleOrderCancel","handleFeedReconnect","debounced","debounceMiddleware","isDebouncedAction","throttleState","defaultActionThrottleState","throttled","actionType","setState","updateFunc","updatedState","timeFromNow","millisecondOffset","unit","timeoutFinished","runActionAfterTimeout","actionToRun","lastRun","throttleMiddleware","isThrottledAction","nextRunTimeMS","nextRunTime","diffms","notificationMiddleware","orderErrored","handleOrderError","handleOrderUpdates","APIAgreementResponseCode","APIAgreementResponseUpdateCode","legacySiteLoginLink","logoutLink","addNew","responseDefinition","isGenericError","responseMessage","notificationTitle","addOrderNotification","modal","_action$payload$order","orderSelector","statusIdMap","invert","isPartial","isPartiallyCancelled","newStatus","crashReporter","localforage","saveErr","isMetaAction","isWhitelisted","eventLogWhitelist","rg","tryLog","StorageProviderFactory","encode","eventLogMiddleware","isVerbose","verbose","updateLayouts","getUpdatedLayouts","layoutMiddleware","_DefaultGridLayout$la","currLayouts","newLayout","generateBlockClosestFitLayout","firstMatchLayout","firstMatch","nextLayouts","handleAddBlock","bl","handleRemoveBlock","syncSessionExpired","wrappedAction","EXPIRATION","stateSyncMiddleware","syncTab","handleDashboardDeletion","handleCreateDashboard","tryLoadDashboards","persistBlocks","blockGroups","Sentry","tryPersistBlocks","actionMeta","getExistingOptionChainData","existingBlockData","existingBlockSymbolData","loadOptionChains","existingOptionChainData","_args2","existingChainData","tryLoadExpirations","symbolExpirations","tryLoadDefaultDashboards","defaultDashboardReceive","trySaveGlobalBlockSetting","blockSettingsSaveRequest","blockSettingsSaveReceive","blockSettingsSaveError","loadFavorites","favoriteValue","filteredFavoriteValue","StorageFavoritesPath","_symbol$symbol$split","_symbol$symbol$split2","contractInfo","expiry","handlePersistFavorites","tryLoadProfile","receiveUserProfile","errorUserProfile","tryLoadAccount","defaultAccounts","responseData","buildApiClient","defaultAccountId","APINotAuthorizedResponseCode","ApiTokenExpired","Roles","receiveAccounts","tryLoadSubAccounts","receiveSubAccounts","requestSubAccountsError","tryLoadAccountEntitlements","receiveAccountEntitlement","errorAccountEntitlement","setAccount","setLinkedAccountLoaded","requestAccounts","clientListRequestToQueryString","clientListRequestKey","clientList","filters","monitor","loadQuotes","currentSymbols","symbolsToLoad","diffSymbols","chunks","apiRequest","quotesWithSymbols","isLoadedFromApi","finish","loadQuotesExtended","quoteResponse","quoteWithSymbol","loadQuoteDividends","loadQuoteEarnings","strikeThrottle","queue","lastRan","requestStrike","strikeResponse","strikeResponsePayloadToFixed","getRequestsWithinWindow","lastRequests","requestWindowMs","lr","getStrikeLastLoadedFromNowMs","symState","expState","lastLoaded","strikesLastLoaded","getStrikes","_RequestThrottle$getS","maxRequests","duplicateRequestIntervalMs","currentState","lastLoadedMs","lastRanWithinWindow","RequestThrottle","getStrike","tokenRefreshTimeout","existingTimer","handleTokenReceived","expiresAt","refreshAt","refreshFromNow_seconds","MINIMUM_REFRESHTOKEN_INTERVAL_MS","tryRefreshToken","_refreshTokenSelector","env","tokenResponse","accessToken","currentTokenIsValid","RefreshTokenPath","TokenStorageKey","handleTokenExpiration","cashieringUpdateTimeout","startPolling","previousState","stopPolling","marketNewsUpdateTimeout","loadInformation","receiveReleaseNotes","errorReleaseNotes","receiveCreateRelease","errorCreateRelease","receiveUpdateRelease","loadMarketNews","stateMarketNews","priorChannelRequest","priorSymbolRequest","channelsChanged","symbolsChanged","latestArticleUpdate","unixLatestArticleUpdate","isoStringLatestArticleUpdate","updatedSinceArticles","duplicatedArticles","newArticles","startIndex","deleteCount","receiveMarketNews","errorMarketNews","startPollingMarketNews","requestMarketNews","stopPollingMarketNews","loadAlertMessages","receiveAlertMessages","loadAccountDetails","receiveAccountDetails","errorAccountDetails","updateAccount","receiveMakeAccountUpdate","errorMakeAccountUpdate","getAccountUpdate","receiveAccountUpdate","errorAccountUpdate","confirmAccountUpdate","getAccountManagementDetails","receiveAccountManagementDetails","errorAccountManagementDetails","getPendingAccountManagementUpdates","getPendingUpdates","receivePendingAccountManagementUpdates","pendingItems","errorPendingAccountManagementUpdates","checkIsNoPassEnabled","checkNoPassEnabled","receiveCheckNoPassEnabled","errorCheckNoPassEnabled","getNoPassDevices","receiveNoPassDevices","requestNoPassDevices","errorNoPassDevices","deleteNoPassDevice","deviceid","receiveDeleteNoPassDevice","errorDeleteNoPassDevice","_x25","_x26","_x27","receiveAuthHistory","errorAuthHistory","_x28","_x29","_x30","receiveUserAccountUpdates","errorUserAccountUpdates","getUpdateDetails","receiveUserAccountUpdateDetails","errorUserAccountUpdateDetails","receiveUserAccountDetails","errorUserAccountDetails","receiveFirmApproveUpdate","errorFirmApproveUpdate","receiveFirmRejectUpdate","errorFirmRejectUpdate","getMiscDocument","errorMiscDoc","firmApproveDocument","receiveFirmApproveDoc","errorFirmApproveDoc","firmRejectDocument","receiveFirmRejectDoc","errorFirmRejectDoc","getMiscDocumentMetadata","getMiscellaneousDocumentMetadata","errorMiscDocMetadata","getEntitlementRequests","receiveEntitlementUpdates","errorEntitlementUpdates","receiveEntitlementAccountDetails","errorEntitlementAccountDetails","loadAlertMessageTemplates","receiveAlertTemplates","createAlertMessage","updateAlertMessage","buildApplicationRequestURL","getPendingApplications","requestURL","receiveApplications","errorApplications","getApplicationInvestigations","receiveInvestigations","errorInvestigations","loadAccountDailyStatements","loadMonthlyAccountStatements","loadTaxAccountStatements","tryGetBalanceHistory","receiveHistoryGetBalances","createSubAccount","subaccountManagement","receiveCreateSubaccount","errorCreateSubaccount","receieveSubaccounts","errorSubaccounts","receiveUpdateSubaccount","errorUpdateSubaccount","receiveDeleteSubaccount","errorDeleteSubaccount","getPositions","errorReceivePositions","parseISO8601","dateTimeArr","dateArr","timeArr","newPayload","defaultPayload","dateUtil","HandlerMiddleware","requestGetBalanceHistory","requestHistoryGetBalances","orderRequest","receivePlaceOrder","receiveChange","errorChange","orderHandler","apiError","loadSymbolsWarning","requestUserProfile","dashboardData","securityQuestions","NoAvailableSecurityChallengesResponseCode","SecurityChallengeFailedResponseCode","getSecurityQuestions","load","withdrawalData","getTransfers","fetchPlaidLinkToken","redirectUri","getAchRelationships","getTransferInstructions","requestSecurityQuestion","requestVerifySecurityQuestion","receiveVerifySecurityQuestion","requestBalances","requestTransfers","requestAchWithdrawal","requestWireWithdrawal","requestCheckWithdrawal","requestAchDeposit","deleteTransferRequest","allAchRelationshipRequest","plaidLinkTokenRequest","createAchRelationshipRequest","approveAchRelationshipRequest","updateAchRelationshipRequest","deleteAchRelationshipRequest","createTransferInstructionsRequest","allTransferInstructionsRequest","updateTransferInstructionsRequest","deleteTransferInstructionsRequest","exception","expirationsThatShouldReload","countOfPairsForSymbolExpiration","defaultDashboardRequest","entityHandler","_get","getAccount","accountReceive","accountError","accountDetailsReceive","accountDetailsError","_balances","accountBalancesReceive","accountBalancesError","_balancesForWithdrawal","accountBalancesForWithdrawalReceive","accountBalancesForWithdrawalError","accountEntities","accountRequest","accountBalancesRequest","accountBalancesForWithdrawalRequest","cashieringSearchReceive","cashieringSearchError","entityAccountId","cashieringTransferReceive","cashieringTransferError","buildErrorObject","_details","cashieringTransferDetailReceive","cashieringTransferDetailError","cashieringTransferRequest","approveRep","_approveRep","rep","approveRepReceive","approveRepError","approveFirm","_approveFirm","firm","approveFirmReceive","approveFirmError","_update","updateTransferReceive","updateTransferError","_reject","rejectTransferReceive","rejectTransferError","cancelTransferReceive","cancelTransferError","_get2","linkedAccountId","cashieringRelationshipReceive","cashieringRelationshipError","_details2","cashieringRelationshipDetailReceive","cashieringRelationshipDetailError","_approve","approveCreate","approveCreateRelationshipReceive","approveCreateRelationshipError","_update2","updateRelationshipReceive","updateRelationshipError","_reject2","rejectCreate","rejectRelationshipReceive","rejectRelationshipError","_cancel2","_callee13","_context13","cancelRelationshipReceive","cancelRelationshipError","_get3","_callee14","_context14","cashieringWireInstructionsReceive","cashieringWireInstructionsError","_details3","_callee15","_context15","cashieringWireInstructionsDetailsReceive","cashieringWireInstructionsDetailsError","_update3","_callee16","_context16","cashieringWireInstructionsUpdateReceive","cashieringWireInstructionsUpdateError","_approve2","_callee17","_context17","cashieringWireInstructionsApproveReceive","cashieringWireInstructionsApproveError","_reject3","_callee18","_action$payload7","_context18","cashieringWireInstructionsRejectReceive","cashieringWireInstructionsRejectError","_cancel3","_callee19","_action$payload8","_context19","cashieringWireInstructionsCancelReceive","cashieringWireInstructionsCancelError","cashieringEntities","prevRequestKey","_CashieringSearchRequ","handleOrderFeedUpdates","clientSearch","_clientList$requestKe","debounceLoadQuotes","receiveAchWithdrawal","receiveCheckWithdrawal","receiveAchDeposit","receiveWireWithdrawal","loadAccountBalances","loadBalancesForWithdrawal","directions","loadPendingTransfers","accountIds","buildApiFromState","accountIdsBalances","loadLinkedAccountBalances","loadSubAccountBalances","searchHandler","_request","searchResults","latestDate","latest","eventsLaterThanLatest","_AccountManagementSea","requestAccountUpdate","requestConfirmUpdate","requestCheckNoPassEnabled","requestDeleteNoPassDevice","requestMiscDoc","requestMiscDocMetadata","_EntitlementsSearchRe","_AlertSearchRequestSe","_ApplicationsSearchRe","receiveLinkedAccounts","fetchLinkedAccounts","requestSubaccounts","requestUpdateSubaccount","requestCreateSubaccount","requestDeleteSubaccount","requestGetPositions","sagaMiddleware","createSagaMiddleware","updateStrikeState","symbolExpState","expirationKey","getSortedOrders","getSortedErrorEvents","updateGroup","updateOrAddGroupWithBlockInfo","allGroups","partialBlockData","blockOrder","cleanGroups","getResponseCodeDescription","defaultDescription","responseCodeObject","numOrZero","_len","firstNonNil","SETTLEMENT_RESET_TIME","entityTypeForAction","defaultQueryState","queryString","SearchError","accountDetailsRequest","privateReducer","combineReducers","updatedAccounts","accts","existingQueryState","querykey","errorAlertTemplates","incomingData","updatedUpdates","formattedApps","requestkey","updatedEntities","existingState","_action$payload$paylo","entityState","transferInstructionId","_action$payload$paylo2","updatedItems","ent","environmentReducer","positionPnLReducer","currkey","TodayDate","positionQuoteInfo","currPnL","performanceReducer","positionState","accountState","reducers","partialQuotes","AccountDataReducer","createTransferBeneficiaryReceive","DataReducer","marketDataEntitlementTypeId","isBoolean","allOrders","updatedOrders","orderExists","ordersWithoutExisting","updatedOrder","ordersLastRequestedAt","orderStatistics","isFill","orderIsKnown","isMatch","newOrder","hearAboutUs","officeCode","last4Ssn","receiveGetBalanceHistory","dateModel","previousVersion","afterHourTrading","uiSettings","globalBlockSettings","targetBlockId","targetGroupId","sourceBlockInfo","sourceBlockId","sourceGroupId","sourceGroup","targetGroup","targetHasGroupMembers","sourceHasGroupMembers","addSourceToTarget","canBlockBeAddedToGroup","updatedBlocks","groupIndex","resetHighlight","previousGroup","highlightAt","isAdd","existingValues","allQuoteValues","matchingBlockInfo","blockToReplaceGroupId","blocksToReplace","groupsToReplace","blockWithSettings","updatedGroups","allMatches","blocksMatchingType","unlinkedBlocksMatchingType","blocksToHighlight","blockToRemove","blocksWithoutDeleted","allTypeKeys","updatedBlockTypeSettings","oldVal","DataLastFetchedOn","existingDashboards","filteredExistingDashboards","existingSymbolVal","existingRangeState","updatedQuoteData","existingSym","symbolDataAsObject","previousMeta","previousClosePrice","prevLastUpdate","closePriceLastUpdatedUnix","updateClosePrice","ToUtcMidnight","closePriceLastUpdate","CalculatedChangePercentage","existingValue","changeDirection","dateStr","errKey","feedNotification","existingNotificationsExceptFeed","Notifications","DataFeedKey","siteName","notificationKeys","uniqueSymbols","getExistingSubstate","expirationsWithMonthlyAndWeekly","subState","blockIds","updatedBlocksState","includesSymbol","existingBlockSymbolStateOptionChain","replaceExistingBlockOptionChain","optionchainState","stateVal","existingBlockSymbolState","updatedOptionChain","existingCount","skip","updatedSymbolSubstate","Expiry","alteredExpirationPairs","currentPair","callChange","putChange","CalculatedChange","updatedSymbolState","expirationState","existingSymbolState","allEntities","latestEventDate","receiveBalances","receiveTransfers","receiveSecurityQuestion","securityQuestionError","resetSecurityQuestionStatus","allAchRelationshipReceive","plaidLinkTokenReceive","createAchRelationshipReceive","errorObject","approveAchRelationshipReceive","approved","remainingTryCount","verification","verificationCount","approveAchRelationshipError","depositAchError","withdrawalAchError","withdrawalWireError","withdrawalCheckError","updateAchRelationshipError","deleteAchRelationshipError","transferType","updateAchRelationshipReceive","deleteAchRelationshipReceive","deleteTransferReceive","deleteTransferError","allTransferInstructionsReceive","createTransferInstructionsReceive","updateTransferInstructionsReceive","deleteTransferInstructionsReceive","successInstructionAction","dataInstruction","tr","messageInstruction","createTransferInstructionsError","updateTransferInstructionsError","deleteTransferInstructionsError","allTransferInstructionsError","queryKey","newsItem","htmlContent","DOMParser","parseFromString","removeStyleTags","deletedAccountSubId","subacc","updatedAccountIndex","currentAccounts","stateWithoutUpdatedAccount","RootReducer","RootCrossSliceReducer","trySaveBlocks","persistDashboards","tryPersistDashboards","watchShouldPersistDashboardsCheck","watchDashboardChanges","isAddAction","getHttpStore","_marked","_marked2","takeLatest","_marked3","_marked4","rootSaga","sagas_marked","dataStore","composeEnhancers","enableDevTools","composeWithDevTools","predicate","compose","_setupMiddleware","applyMiddleware","storeVal","createStore","run","DataStore","AppStoreContent","react_redux_es","AppStoreProvider","AppStoreProvider_AppStoreContent","latestCashieringEvents","pendingEntitiesExist","CashieringUpdatesPollContent","audioRef","playUpdateSound","currAudioRef","_useReminder","fireReminder","pendingExists","reminderInterval","check","remaining","_useState2$","setReminderState","useReminder","onUpdateOccurs","CashieringUpdatesPoll","isCashieringAdmin","cashieringPendingReminderIntervalMs","cashieringCheckInterval","CashieringUpdatesPoll_CashieringUpdatesPollContent","AcceptModal","redirect","setRedirect","UpdateConfirmationPage","confirmString","encodeConfirm","urlString","searchParams","showAcceptModal","setShowAcceptModal","AcceptModal_AcceptModal","dsn","integrations","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","TRACKING_ID","ga4VTTrackingCode","ga4TrackingCode","ReactGA","AppRouter","useLocation","setPageTitle","usePageTitle","basename","subdirectory","CashieringUpdatesPoll_CashieringUpdatesPoll","AppContentWithLocalize","addTranslationForLanguage","getLocalizeOptions","Feed_Feed","Initializer_DataInitializer","AppGATracking","App","pageview","App_AppGATracking","AppStoreProvider_AppStoreProvider","App_AppRouter","Boolean","ReactDOM","src_App_0","navigator","serviceWorker","registration","unregister","bubbleErrors","classifyOrderLeg","_orderLegs$sort","typePriority","CALL","PUT","actionPriority","BUY","SELL","expirationDiff","_orderLegs$sort2","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_0__","leg1","leg2","leg1_spread_ratio","leg2_spread_ratio","longTermLeg","shortTermLeg","higherStrikeLeg","classifyTwoLegStrategy","sortedLegs","_sortedLegs","lowLeg","midLeg","highLeg","isButterflyStructured","isCallButterfly","isPutButterfly","classifyThreeLegStrategy","_sortedLegs2","secondLeg","thirdLeg","fourthLeg","allCalls","allPuts","mixedTypes","isSequentialStrikes","isStrikesEqualDistance","uniqueStrikes","uniqueDates","uniqueSpreadRatios","strategyAction","throwEqualDistanceError","classifyFourLegStrategy","firstSetDistance","secondSetDistance","thirdSetDistance","legErrorMessage","buildActions","errorLinkedAccounts","defaultDashboardError","DefaultDashboardActions","GlobalBlockSettingsActions","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_0__","_tradingblock_api__WEBPACK_IMPORTED_MODULE_0__","changeValue","gainValue","dayGain","defaultOrderBlockState","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_0__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_1__","_data_global_selectors_settingSelectors__WEBPACK_IMPORTED_MODULE_2__","PositionSettingsFields","validateStrategy","SchemaValidator","classification","detectedStrategy","legType","legStrike","triggerValidation","StrategyValidationMiddleware","cleanOrderState","orderDataToPersist","shouldPersistAction","lastSavedState","debouncedPersist","storeApi","PersistMiddleware","prePersist","shouldPersist","stateToSave","statesAreEqual","_storage","LogMiddleware","debuglog","actType","before","after","BLOCK_IS_LOADING","isCurrentlyDirty","fromJS","toJS","BLOCK_INITIALIZE_DATA","dataValue","BlockReducerWithTables","baseReducer","baseState","defaultBlockState","GenericBlockActionContext","prePersistMap","_prePersistMap","Strategy","getMiddleware","defaultMiddleware","GenericBlockStateProvider","_createReducer","createReducer","_createReducer2","BlockStateProvider","_createReducer3","_createReducer4","setTitle","setSubstate","restOfState","blockSelector","typesafe_actions__WEBPACK_IMPORTED_MODULE_0__","blockIsLoading","defaultInfoBlockState","actionBuilder","AdminCashieringTransferActions","AdminCashieringRelationshipActions","AdminCashieringEntityActions","ChangePercent","Trade","Chart","Remove","FavoriteSettingsFields","genericActionBuilder","errorPlaceOrder","errorGetBalanceHistory","errorHistoryGetBalances","react__WEBPACK_IMPORTED_MODULE_0__","react_redux__WEBPACK_IMPORTED_MODULE_1__","_dispatcher__WEBPACK_IMPORTED_MODULE_2__","createAction","HttpStorageEngineFactory","StorageProvider","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__","tslib__WEBPACK_IMPORTED_MODULE_3__","_providers_httpProvider__WEBPACK_IMPORTED_MODULE_4__","_providers_localStorageProvider__WEBPACK_IMPORTED_MODULE_5__","StorageEngineFactory","logEndpoint","axios","storeConfig","engineFactory","engine","lodash__WEBPACK_IMPORTED_MODULE_0__","lodash__WEBPACK_IMPORTED_MODULE_0___default","_tradingblock_types__WEBPACK_IMPORTED_MODULE_1__","adminLink","react__WEBPACK_IMPORTED_MODULE_0___default","lodash__WEBPACK_IMPORTED_MODULE_1__","lodash__WEBPACK_IMPORTED_MODULE_1___default","subAccountSuffix","trimmedAccountNumber","formattedAccountNumber","createPersistableAction","_tradingblock_api__WEBPACK_IMPORTED_MODULE_2__","buildRequestReceiveActions","requestAction","receiveAction","errorAction","Buffer","SecurityQuestion","Transfers","ACH","TransferInstructions","cashieringDetails","cashieringDocuments","tslib__WEBPACK_IMPORTED_MODULE_1__","lodash__WEBPACK_IMPORTED_MODULE_2__","lodash__WEBPACK_IMPORTED_MODULE_2___default","_tradingblock_types__WEBPACK_IMPORTED_MODULE_3__","___WEBPACK_IMPORTED_MODULE_4__","dayjs__WEBPACK_IMPORTED_MODULE_5__","dayjs__WEBPACK_IMPORTED_MODULE_5___default","transformTransfer","transferLike","achId","reIssue","imageBase64","TransferActions","allAchRelationshipError","plaidLinkTokenError","createAchRelationshipError","AchRelationshipActions","getTransferBankRequest","getTransferBankReceive","getTransferBankError","allTransferBankRequest","allTransferBankReceive","allTransferBankError","createTransferBankRequest","createTransferBankReceive","createTransferBankError","updateTransferBankRequest","updateTransferBankReceive","updateTransferBankError","TransferRecipientBankActions","deleteTransferBankRequest","deleteTransferBankReceive","deleteTransferBankError","getTransferBeneficiaryRequest","getTransferBeneficiaryReceive","getTransferBeneficiaryError","allTransferBeneficiaryRequest","allTransferBeneficiaryReceive","allTransferBeneficiaryError","createTransferBeneficiaryRequest","createTransferBeneficiaryError","updateTransferBeneficiaryRequest","updateTransferBeneficiaryReceive","updateTransferBeneficiaryError","TransferBeneficiaryActions","deleteTransferBeneficiaryRequest","deleteTransferBeneficiaryReceive","deleteTransferBeneficiaryError","getTransferInstructionsRequest","getTransferInstructionsReceive","getTransferInstructionsError","TransferInstructionsActions","_BlockState__WEBPACK_IMPORTED_MODULE_1__","stratId","OrderStrategyNameToOrderStrategyType","OrderStateToOrder","filteredLegs","legRes","existingPosition","existingPositionDirection","getPositionEffect","ordType","leg_res","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__","OrderStrategyTypeToOrderStrategyName","temp_legs","reselect__WEBPACK_IMPORTED_MODULE_0__","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_3__","errAction","apiUrl","configUrl","buildAccountApi","useApiToken","useAccountApi","UseAccountApiProvider","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__","setup","react__WEBPACK_IMPORTED_MODULE_2___default","_tradingblock_components__WEBPACK_IMPORTED_MODULE_7__","globalException","receiveConfirmUpdate","errorConfirmUpdate","getAxiosClient","HttpProvider","axios__WEBPACK_IMPORTED_MODULE_2__","axios__WEBPACK_IMPORTED_MODULE_2___default","patch","cv","getHttpProvider","sortSymbols","Fuse","shouldSort","distance","maxPatternLength","minMatchCharLength","weight","sortedSymbols","toAssetSymbolBySymbolType","OrderActionTypes","_utilities_data__WEBPACK_IMPORTED_MODULE_2__","createSelectorCreator","defaultMemoize","isArrayEqual","receiveMiscDoc","receiveMiscDocMetadata","localforage__WEBPACK_IMPORTED_MODULE_0__","localforage__WEBPACK_IMPORTED_MODULE_0___default","CreateAccountUrl","DocumentsUploadUrl","UserRequirementsUrl","GetHeardAboutUrl","GetApplicationInvestigationStatusUrl","UploadInvestigationDocumentUrl","UploadApplicationDocumentUrl","UploadMiscellaneousDocumentsUrl","GetMiscellaneousDocumentsUrl","GetMiscellaneousDocumentsMetadataUrl","DuplicateAccountCheckUrl","UploadCashieringDocumentUrl","GetTransferInstructionsDocumentsIdUrl","GetTransferInstructionsDocumentUrl","GetTransferInstructionsDocumentMetadataUrl","CreateUserUrl","GetSymbolsUrl","PlaceOrderUrl","ChangeOrderUrl","CancelOrderUrl","GetOrdersUrl","PositionsUrl","HistoryGetHistoryUrl","HistoryGetHistoryBalances","HistoryGetBalancesEndpoint","TokenRequestUrl","LogoutTokenUrl","SubmitMktDataUserProfileReviewUrl","GetBalancesUrl","GetBalancesForAccountsURL","GetBalancesForWithdrawalURL","GetExpirationsUrl","GetAccountsUrl","GetSubaccountsUrl","GetAccountDetailsUrl","AccountsSearchUrl","GetAccountUpdateUrl","SearchAccountUpdatesUrl","GetAccountUpdateDetailsUrl","GetAccountManagementDetailsUrl","GetPendingUserMarketDataEntitlementsUrl","GetPendingAccountManagementUpdatesUrl","GetDocumentStatusUrl","GetUserMarketDataEntitlementsUrl","GetChainUrl","GetStrikesUrl","GetBarsUrl","GetQuoteUrl","GetQuoteExtendedUrl","GetQuoteDividendUrl","GetQuoteEarningsUrl","GetPnLUrl","SymbolsWithAMPMExpirations","GetReleaseNotesUrl","CreateReleaseNotesUrl","UpdateReleaseNotesUrl","GetNewsFeedUrl","AlertMessagesURL","GetAlertMessageTemplatesURL","UpdateAlertsURL","MarketScheduleURL","DownloadsDailyConfirms","DownloadsDailyConfirm","DownloadsMonthlyStatements","DownloadsMonthlyStatement","DownloadsTaxDocuments","DownloadsTaxDocument","NoPassEnabledURL","NoPassLoginStartUrl","NoPassLoginFinishUrl","NoPassDeleteDeviceURL","NoPassListDevicesURL","GetLoginHistory","ApiIntercepts","_tradingblock_api__WEBPACK_IMPORTED_MODULE_1__","_tradingblock_types__WEBPACK_IMPORTED_MODULE_2__","_global_actions__WEBPACK_IMPORTED_MODULE_3__","_config__WEBPACK_IMPORTED_MODULE_4__","apis","dataTableState","defaultTableState","isTruthyValue","getValue","envConfig","gaUaTrackingCode","REACT_APP_GA_UA_TRACKING_CODE","uspsSecret","notOverridableConfig","production","REACT_APP_IS_BETA","strVal","envVal","AddIcon_AddIcon","getFormikErrors","getFlattenedErrors","Errors_getFlattenedErrors","Alert_getAlertProps","formErrors","messageHeader","Alert_isAlertEmpty","Alert_Alert","Alert_AlertSection","Component","FloatingLabel_FloatingLabelWrapper","data-prefix","FloatingLabel_FloatingLabel","wrapperProps","FormGroup_FormGroup","_ref$toggleableHelp","toggleableHelp","showHelpText","setShowHelpText","LocalizeButton","HelpText_HelpIcon","iconSize","Number_NumberView","number_formatNumber","Number_BoldNumberView","Number_Number","BoldNumber","SignedNumber","Pill_Pill","Svg_Svg","rootPath","root","Wrapper_Wrapper","Tooltip_Tooltip","tooltipId","data-tip","data-for","dist_default","AddBlock_blockTypesAndIconsObjectBuilder","block_getBlockTypeName","block_getBlockTypeIcon","AddBlock_AddBlockModal","allBlocksCategorizedTypeMapping","blockTypesAndIconsFront","blockTypesAndIconsMiddle","blockTypesAndIconsBack","blockTypesAndIconsModalBodyBuilder","es_Modal","lowerCase","Modal_Modal","es_Button","BlockComponents_BlockBody","BlockDragHandle_BlockDragHandle","showDrag","setShowDrag","enableHover","disableHover","dragClassName","es2015","onMouseOver","onMouseOut","userSelect","BlockHeader_BlockHeader","BlockTitle_BlockTitle","EmptyBlockContent_EmptyBlockContent","Button_Button","Carousel_Carousel","dots","isMoneyBlockUrl","isMoneyBlockOrigin","site_GetTradingBlockSiteName","site_GetTradingBlockFullUrl","urlKey","domain","defaultRedirect","isDev","isBeta","fulldomain","isLegacyURL","site_GetLogoutUrl","GetSiteGrp","getDocumentOptions","visibilityChangeEvent","prefixes","ACTIVE","DEFAULT_ACTIVITY_EVENTS","DEFAULT_INACTIVITY_EVENTS","DEFAULT_IGNORED_EVENTS_WHEN_IDLE","utilities_activityDector","_listeners","_ref$activityEvents","activityEvents","_ref$inactivityEvents","inactivityEvents","_ref$ignoredEventsWhe","ignoredEventsWhenIdle","_ref$timeToIdle","timeToIdle","_ref$initialState","_ref$autoInit","autoInit","_getDocumentOptions","listeners","handleUserActivityEvent","handleUserInactivityEvent","handleVisibilityChangeEvent","init","firstState","eventName","listener","lastActiveTime","activityDector","useAlerts_useAlerts","getToastOptions","defaults","toastOptions","toastId","draggable","react_toastify","constate_es","setAuthToken","isAuthenticating","setIsAuthenticating","parent","contains","isChildNodeOfHtmlElement","isChildNodeOfModalRecursive","isModalNode","parentElement","getAttribute","valueAsNumber","minimumFractionDigits","maximumFractionDigits","dec","userLocale","localeOptions","getCurrencyType","roundedValue","number_formatPercent","isGreek","decimalSeparator","formatRegex","normalized","style_getClassNames","classNames","useDebug_useDebug","useDebug_extendLog","useDebug_setLogLevel","enable","useElementPosition","rect","scrollX","scrollY","evHandle","eventHandlers","targetValue","useLocalize_isFieldValueFilled","getCleanTranslationKey","useLocalize_getTranslationId","translateId","useLocalize_getFieldTranslationId","getFieldTranslationId","iconStyle","classNameSuffix","titleSuffix","iconClassName","useTableColumnWidths_useTableColumnWidths","fullWidth","widthPercent","tableUtilities_columnWidths","setOpen","previousProps","allKeys","changesObj","Text_Text","defaultPage","defaultData","ndash","onMissingTranslation","ContactPhone_ContactPhone","contactPhoneTextId","ContactEmail_ContactEmail","contactEmail","Countdown_useParsedCountdown","timeLeft","_options$intervalTime","_options$now","setTimeLeft","timerStart","timerClear","useCountdown_useCountdown","parse_ms_default","Countdown_CountdownTimer","_useParsedCountdown","titleVal","ExternalLink","ariaLabel","Loading_Loading","LoadingImage","Mask","Toggle_ToggleButton","activeState","setIsActive","activeValue","onToggle","newValue","react_bootstrap_toggle_dist_default","pageReducer","usePageContext","navActions","navCollapsed","PageContext_usePageNav","_usePageContext","_usePageContext2","DashboardNav_PageNav","pageNav","DashboardNav_PageNavPanel","DashboardNav_PageNavPrimary","DashboardNav_PageNavTertiary","DashboardNav_DashboardToggle","_usePageNav3","_usePageNav4","DashboardNav_PageNavToggleButton","DashboardContent_DashboardContent","cssName","Alerts_AlertsContainer","closeOnClick","Autocomplete_AutocompleteControlComponent","components","Control","Autocomplete_SelectDropdownIndicator","DropdownIndicator","topStyle","BasicSelect_SelectMenuPortal","MenuPortal","defaultStyles","menuPortal","provided","zIndex","singleValue","topDropdownStyles","BasicSelect_BasicSelect","selectRef","selectProps","classNamePrefix","menuPortalTarget","BasicSelect_useSelectProps","menuStyles","setMenuStyles","react_select_esm","control","max-width","onMenuOpen","portalRef","ReactSelectComponents","AsyncAutocomplete_DefaultOptionComponent","AsyncAutocomplete_LoadingResults","noResultsFound","AsyncAutocomplete_AsyncAutocomplete","setNoResultsFound","queryValue","setQueryValue","setInputValue","setIsOpen","minLength","initialSelectOpts","selectOptions","setOptions","setSelectOptions","debouncedQueryValue","onInputChange","getOptionValue","formatOptionLabel","labelMeta","context","inputFormat","menuPlacement","menuShouldBlockScroll","noOptionsMessage","NoOptionsMessage","HttpAutocomplete_HttpAutocomplete","Portal_Portal","scrollableParent","originalPosition","setPosition","scrollableParents","scrollable","nextParent","onScroll","useScrollablePosition_useScrollablePosition","react_dom_default","createPortal","isDefaultPrevented","Dropdown_Dropdown","dropDirectionClass","setParent","toggleClassName","wrapperClasses","menuClasses","Dropdown_SplitDropdown","parentClass","_useToggle3","_useToggle4","aria-haspopup","aria-expanded","rv","Dropdown_DropdownWrapper","_useToggle5","_useToggle6","BasicDropdown_BasicDropdown","innerValue","setInnerValue","dropdownValue","setDropdownValue","DropdownItem","hrefVal","Checkbox_CheckboxInput","onblur","inputType","inputClassName","checkboxValue","setCheckboxValue","Checkbox_BasicCheckboxInput","CheckList_CheckListInput","checklistValue","setChecklistValue","newValues","Infinity","SelectDropdown_SelectDropdownInput","selectValue","setSelectValue","isFilledValue","raw_value","selectValues","selectStyles","narrowPage","onFocus","Range","Stepper_StepperInput","createSliderWithTooltip","stepperValue","setStepperValue","Textbox_TextboxInput","onfocus","preventPaste","inputRef","maskPassword","setMaskPassword","rawValue","onPaste","onDragDrop","fieldType","onDrag","Hotkey_Hotkey","chord","chordFactory","hotkeyCallback","dist_web","Infinity_InfinityIcon","ReactGridLayout","react_grid_layout","Grid_Grid","draggableHandle","Address_AddressField","addr1Help","getTextboxFieldProps","fieldProps","Textbox_TextboxField","CheckList_CheckListField","Checkbox_CheckboxField","onSetValue","fieldId","Currency_CurrencyField","handleBlur","setHasFocus","formattedValue","currencyValue","overrideProps","_a$isSearchable","_useLocalize","getValueTranslationId","getOptionLabel","formattedId","Stepper_StepperField","translationId","isPhoneNumber","formatValue","Textarea_TextareaInput","Textarea_TextareaField","formatNumberAsTranslatedDigit","translatedDigit","typeLabel","fieldTypeId","translatedLabel","textData","btnProps","localizeInitialized","setLocalizeInitialized","each","translations","lang","handleClose","dialogClassName","TableRow_TableRow","prepareRow","Utilities_getTableTdClass","ResponsiveTdMemo","BaseTable_BaseTable","_a$headersDraggable","headersDraggable","bodyProps","getTableProps","headerGroups","setColumnOrder","tableProps","tableClassName","Utilities_getTableClass","BaseTable_BaseTableHead","getCustomHeaderStyles","BaseTable_BaseTableBody","headerClassName","isSorted","isSortedDesc","isTableExpanded","expandedDepth","getItemStyle","draggableStyle","isDragging","isDropAnimating","transitionDuration","formatHeader","currentColOrder","currentHeader","headerGroup","trIdx","react_beautiful_dnd_esm","onDragStart","dragUpdateObj","draggableId","onDragEnd","destination","colOrder","sIndex","dIndex","droppableId","renderClone","snapshot","rubric","draggableProps","dragHandleProps","innerRef","verticalAlign","getHeaderGroupProps","thIdx","getHeaderProps","getSortByToggleProps","customHeaderStyles","customProps","isDragDisabled","baseRowProps","Paging_Paging","searchOptionPage","pageOptions","canPreviousPage","canNextPage","gotoPage","previousPage","_tableInstance$state","disabledProps","FreeHeaderTable_FreeHeaderTable","plugins","react_table","autoResetExpanded","autoResetSortBy","autoResetPage","useUpdateEffect_default","positionBlockHeadersMapObject","Daily P/L","(%)","Avg Price","FrozenHeaderTable_FrozenHeaderTable","getTableBodyProps","toggleRowExpanded","resyncPositionHeaders","table_","positionBlockHeaders","calculateColumnWidth","toggleAllRowsExpanded","Table_Table","Responsive_ResponsiveTd","Utilities_getTableSize","memoize","rowA","rowB","_columnId","numColumn","TabWell_TabWell","itemClass","linkClass","_useStringOrDefault","def","useStringOrDefault","_useStringOrDefault2","wrapperCss","itemCss","linkCss","activeCss","TabWell_BlockTabs","Tabs_Tabs","Tabs","Tabs_Tab","Tab","GridContext_newId","uuid","GridContext_SetBlockIds","rc_input_number_es","rootSel","sels","commissionOverrides","isSpreadOrder","legAmount","computed","orderIsComplete","orderActionSelector","allSell","allBuy","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__","legWithStrike","legWithExp","legExpirationById","legById","legsWithSymbols","symbolOcc","legField","legStrikes","legAcc","partialState","cachedOrder","strats","strategyIsValid","matchingStrategies","prices","unitPrice","positionIsInvalid","SymbolOccSelector","errorAlertMessages","errorUpdateRelease","requestAccountsError","clearSetAccountSearchOptions","rootBlocksSelector","blocksState","lockedSel","bs","isLinkedSel","rootBlocksBlockSelector","linkableBlockSelector","groupedBlocks","currentBlock","currentGroup","isCurrentLinked","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__","canBlockBeLinked","linkableBlocks","linkable","rootLayoutSelector","rootCashieringSelector","accountFormData","transferFormData","dataType","linkToken","rootDashboardsSelector","dashboardTitlesSelector","sel","useAuthenticationToken","authState","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_2__","matchingInfo","allSymbolInfo","loadedChainsBySymbol","symbolState","allChains","expOpt","expirationOptionChain","currPairs","GenericRadioButton","_useField","useField","_useField2","GenericChoiceField","renderGenericFormWithFilter","mapField","GenericChoiceField_GenericChoiceField","GenericRadioButton_GenericRadioButton","renderGenericForm","LinkableBlockTypes","RefreshableBlockTypes","isBlockLinkable","kebabCase","isBlockRefreshable","groupBlocks","gridColumns","minBlockWidth","unitWidth","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectSpread__WEBPACK_IMPORTED_MODULE_2__","layoutsArray","generate2DArrayOfBlockLayouts","getDefaultBlockSize","blockSizeArray","generate2DArray","defaultPosition","_loop2","bx","by","maxY","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__","_getDefaultBlockSize","objectDiff","equalRes","differenceWith","obj1","obj2","diffKeys","getGCD","input","len","isPMExpiration","symbolIsIndex","isMonthly","amPmExpirationLabel","blockDefaultStrategy","globalBlockTypeSettings","singleLegStrategies","HasEquityLeg","BuildDefaultLeg","legSpreadRatio","HasOptionLeg","optType","defaultLeg","useBlockGroup","handleIfGroupChange","fireOnUndefined","fieldValue","currentFieldValue","setCurrentFieldValue","re_reselect__WEBPACK_IMPORTED_MODULE_1__","re_reselect__WEBPACK_IMPORTED_MODULE_1___default","_tradingblock_api__WEBPACK_IMPORTED_MODULE_3__","_tradingblock_components__WEBPACK_IMPORTED_MODULE_4__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_5__","_data_global_selectors_quoteSelector__WEBPACK_IMPORTED_MODULE_6__","_components_blocks_BlockState__WEBPACK_IMPORTED_MODULE_7__","_blocks_Order_state_OrderLegSelector__WEBPACK_IMPORTED_MODULE_8__","_blocks_Order_state_OrderState__WEBPACK_IMPORTED_MODULE_9__","dayjs__WEBPACK_IMPORTED_MODULE_10__","dayjs__WEBPACK_IMPORTED_MODULE_10___default","dayjs_plugin_customParseFormat__WEBPACK_IMPORTED_MODULE_11__","dayjs_plugin_customParseFormat__WEBPACK_IMPORTED_MODULE_11___default","getIdOrUndefined","tryGetLastPrice","tryGetLastPrices","timeMoment","minuteMod","formatReceivedTime","getQuoteDirectionAndValue","getQuoteData","getQuotesBidAskBySymbols","DefaultAnalyticBlockSettings","BlockSettingSelector","blockByBlockId","globalTypeSelector","blockTypeStr","blockIdKey","analytics","globals","defaultSettings","_i","_Object$keys","globalDefaultSettings","_tradingblock_storage__WEBPACK_IMPORTED_MODULE_2__","_tradingblock_storage_dist_storageProvider__WEBPACK_IMPORTED_MODULE_4__","_config__WEBPACK_IMPORTED_MODULE_5__","_data_global_dataSelectors__WEBPACK_IMPORTED_MODULE_6__","_data_global_actions__WEBPACK_IMPORTED_MODULE_7__","_data_api_apiClientFactory__WEBPACK_IMPORTED_MODULE_8__","HttpStorageFactory","responseIntercept","ClientVersionHeader","_uiApiTokenAndVersion","responseInterceptError","storeRef","AccManagement","_constants__WEBPACK_IMPORTED_MODULE_2__","_utilities__WEBPACK_IMPORTED_MODULE_6__","GetAccountDetails","GetAccountUpdate","BlockSettingsModalViewContent","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_3__","onSelectTab","mapFields","react__WEBPACK_IMPORTED_MODULE_4___default","_tradingblock_components__WEBPACK_IMPORTED_MODULE_10__","react_bootstrap__WEBPACK_IMPORTED_MODULE_6__","_BlockSettingsTabs__WEBPACK_IMPORTED_MODULE_14__","thisBlockTab","allBlockTab","react_bootstrap__WEBPACK_IMPORTED_MODULE_7__","BlockSettingsModalView","_var_lib_jenkins_jobs_workspace_tradingblock_prod_node_modules_babel_preset_react_app_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__","blockSettingsChanged","globalChanged","localAndGlobalSettingFields","_objectSpread2","globalField","blockField","orderBlockSettingsQuantityFieldValidationSchema","orderBlockSettingsValidationSchema","formik__WEBPACK_IMPORTED_MODULE_5__","formikProps","BlockSettingsModal","getLoadingAndLoadedSymbols","symbolsToCheck","getFilteredQuotes","quoteVal","BidAskMidPrice","getQuotesBidAsk","getQuotesVolumes","quoteSelector","extendedQuoteData","BlockSettingsTabs","_tradingblock_components__WEBPACK_IMPORTED_MODULE_1__","orderLegSelector","assetSymbolSelector","legSelectorCacheFactory","legPropSelector","DefaultStrike","DefaultStrikeIfValid","orderLegsWithSymbols","__","legSymbolMap","LegsWithOCC","updateSubAccount","deleteSubAccount","receieveErrorCreate","receieveErrorUpdate","receieveErrorDelete","responseOrError","transferBeneficiary","requestExpirations","setConfig","buildStore","useStorageProvider_SaveTokenInStorage","useStorageProvider_ExpireTokenInStorage","useStorageContext","useHttpStore_getHttpStore","factory_HttpStorageFactory","factoryOptions","httpConfig","conf","httpProvider","_Object$entries","newSettings","receiveUpdateAlert","errorUpdateAlert","AdminAlertSearchActions","receiveCreateAlert","errorCreateAlert"],"mappings":"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AC/P,GACC,IAAMg6F,EAAah6F,EAAQA,EAAMlI,UAAOz7B,EACpC29H,IACF5wC,EAAU4wC,GACNjjG,GACFmQ,EAAenQ,EAASijG,IAGvBA,IACH5wC,EAAU,MACNryD,GACFmQ,EAAenQ,EAAS,QAI9B,CAACqyD,EAAWryD,IAGRgX,EAAUgC,sBAAY,gBACV1zC,IAAZ06B,IACFqyD,OAAU/sF,GACV6qC,EAAenQ,OAAS16B,KAEzB,CAAC6qC,EAAgBnQ,IAEpB,OACEwW,EAAApb,EAAAqb,cAACwwF,GAAD,CACEd,WAAW,EACX/pC,UAAWA,EACXl7D,OAAQA,QAAU57B,EAClBkxF,UAAU,EACVp/C,SAAUA,EACVrC,YAAY,YACZE,sBAAsB,EACtB+B,QAASA,EACTqvF,UAAU,EACVC,aAAa,KCtDN8uF,GAAkB,WAE7B,OALkC,SAAC9iM,GACnC,OAAO03D,YAAiB,SAAAvgD,GAAC,OAAI0sD,KAAcjtD,KAAKO,EAAGnX,KAI5C+iM,CADSpvG,iBCTLqvG,GAAa,CACxB,MACA,MACA,OACA,OACA,KACA,MACA,MACA,OACA,KACA,MACA,KACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,OACA,MACA,KACA,MACA,MACA,MACA,KACA,IACA,MACA,MACA,MACA,OAGWC,GAAgB,CAC3B,OACA,OACA,OACA,KACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,KACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,KACA,OACA,OACA,MACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,MACA,OACA,OACA,OACA,KACA,OACA,OACA,MACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,MACA,MACA,OACA,MACA,OACA,QAGWC,GAAe,CAC1B,MACA,MACA,OACA,OACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,OACA,OACA,OACA,MACA,MACA,QACA,OACA,KACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,OACA,OACA,OACA,MACA,OACA,MACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,MACA,QACA,MACA,OACA,MACA,KACA,OACA,MACA,MACA,MACA,MACA,OACA,KACA,OACA,OACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,MACA,OACA,OACA,MACA,KACA,MACA,MACA,OACA,KACA,OACA,OACA,MACA,MACA,KACA,MACA,KACA,MACA,OACA,OACA,OACA,IACA,MACA,OACA,MACA,MACA,MACA,KACA,OACA,KACA,QACA,MACA,MACA,MACA,MACA,KACA,MACA,MACA,OACA,MACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,OACA,MACA,MACA,QACA,QACA,OACA,KACA,OACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,MACA,OACA,MACA,MACA,KACA,KACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,KACA,OACA,KACA,KACA,MACA,OACA,OACA,MACA,MACA,OACA,KACA,OACA,MACA,MACA,MACA,OACA,KACA,MACA,OACA,MACA,OACA,MACA,MACA,IACA,OACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,OACA,KACA,KACA,KACA,MACA,KACA,MACA,OACA,KACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,OACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,OACA,OACA,KACA,OACA,MACA,MACA,KACA,MACA,MACA,OACA,OACA,MACA,OACA,MACA,MACA,OACA,IACA,OACA,MACA,MACA,MACA,MACA,OACA,MACA,IACA,MACA,OACA,MACA,MACA,MACA,OACA,MACA,IACA,KACA,KACA,MACA,KACA,OACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,MACA,MACA,KACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,KACA,OACA,MACA,MACA,MACA,OACA,OACA,MACA,KACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,OACA,MACA,MACA,OACA,MACA,MACA,OACA,MACA,KACA,MACA,OACA,MACA,OACA,OACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,OACA,MACA,KACA,OACA,OACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,KACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,KACA,MACA,MACA,IACA,MACA,OACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,KACA,MACA,MACA,OACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,OACA,MACA,MACA,OACA,MACA,MACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,OACA,KACA,OACA,MACA,OACA,IACA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AAc,CACzB0nM,uBAAwB,GAGbqpC,EAAa,CACxBC,oBAAqB,GAGVy5C,EAAgB,CAC3BC,YAAa,kBAQF9d,EAAkB,CAC7BC,UAAW,CAAEN,YAAa,EAAGT,gBAAiB,IAAMU,2BAA4B,MAGrEx6K,EAAuE,CAClF0N,IAAK,MACLC,KAAM,OACNgtM,WAAY,aACZrpK,MAAO,SAGIxyC,EAAkB,CAC7BF,YAAa,eAGFpI,EAAU,CACrBC,kBAAmB,MAKR/W,EAA6C,CACxD,QACA,QACA,QACA,OACA,OACA,SACA,QACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,QACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,OACA,QACA,OACA,OACA,QACA,OACA,SACA,OACA,SACA,OACA,SACA,OACA,OACA,OACA,QACA,OACA,SACA,OACA,SACA,QACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,QACA,QACA,OACA,OACA,OACA,SACA,QACA,OACA,OACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,QACA,QACA,OACA,QACA,OACA,OACA,OACA,OACA,WACA,OACA,OACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,OACA,SACA,OACA,QACA,OACA,OACA,OACA,OACA,OACA,SACA,OACA,SACA,SACA,SACA,OACA,SACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,OACA,QACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,OACA,MACA,MACA,OACA,OACA,OACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,6FCzMkEh3C,YAAkC,CACpGC,QArB0B,4B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","file":"static/js/main.90296cc7.chunk.js","sourcesContent":["export var DefaultAccountDetails = {\n accountNames: [],\n accountNumber: undefined,\n accountStatus: undefined,\n accountType: undefined,\n repCode: undefined,\n repFirstName: undefined,\n repLastName: undefined,\n repPhoneNumber: undefined,\n mailingAddress: {\n address1: undefined,\n address2: undefined,\n city: undefined,\n state: undefined,\n postalCode: undefined,\n country: undefined\n },\n physicalAddress: {\n address1: undefined,\n address2: undefined,\n city: undefined,\n state: undefined,\n postalCode: undefined,\n country: undefined\n },\n email: undefined,\n homePhone: undefined,\n mobilePhone: undefined,\n workPhone: undefined,\n lastChanged: undefined,\n commissions: {\n commissionCodeId: -1\n }\n};\nexport var ClearerType;\n\n(function (ClearerType) {\n ClearerType[\"RQD\"] = \"RQD\";\n ClearerType[\"Apex\"] = \"Apex\";\n})(ClearerType || (ClearerType = {}));","export var LanguageType;\n\n(function (LanguageType) {\n LanguageType[\"Chinese\"] = \"zh\";\n LanguageType[\"English\"] = \"en\";\n LanguageType[\"Spanish\"] = \"es\";\n})(LanguageType || (LanguageType = {}));\n\nexport var DefaultLanguageKeys;\n\n(function (DefaultLanguageKeys) {\n DefaultLanguageKeys[\"Error\"] = \"error\";\n DefaultLanguageKeys[\"Label\"] = \"label\";\n DefaultLanguageKeys[\"Text\"] = \"text\";\n})(DefaultLanguageKeys || (DefaultLanguageKeys = {}));","export var DefaultAccountManagementDetails = {\n email: undefined,\n physicalAddress: undefined,\n mailingAddress: undefined,\n homePhone: undefined,\n mobilePhone: undefined,\n workPhone: undefined\n};\nexport var DefaultAccountUpdateDetails = {\n accountId: 0,\n accountName: '',\n accountNumber: '',\n state: '',\n confirmedDate: undefined,\n created: {\n userId: 0,\n name: '',\n date: undefined,\n reason: ''\n },\n firmRejected: {\n date: undefined,\n name: '',\n reason: '',\n userId: 0\n },\n firmReviewed: {\n date: undefined,\n name: '',\n reason: '',\n userId: 0\n },\n id: 0,\n item: '',\n note: '',\n original: {\n accountHolder: {\n email: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n maritalStatus: '',\n dependents: 0,\n birthCountry: '',\n citizenshipCountry: '',\n employmentType: '',\n jobPosition: '',\n yearsEmployed: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: ''\n },\n beneficiaries: [],\n flexibilityType: '',\n tradeGoalType: '',\n investmentObjectiveType: '',\n disclosuresForeignBankUSAgent: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n lastName: '',\n suffix: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n accountDisclosures: {\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n state: ''\n },\n updated: {\n accountHolder: {\n email: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n maritalStatus: '',\n dependents: 0,\n birthCountry: '',\n citizenshipCountry: '',\n employmentType: '',\n jobPosition: '',\n yearsEmployed: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: ''\n },\n beneficiaries: [],\n flexibilityType: '',\n tradeGoalType: '',\n investmentObjectiveType: '',\n disclosuresForeignBankUSAgent: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n accountDisclosures: {\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n uploadedDocuments: [{\n accountHolder: 0,\n documentId: 0,\n documentName: '',\n state: undefined\n }]\n },\n responseCode: 0\n};\nexport var DefaultUserUpdateAccountDetails = {\n accountDisclosures: {\n entityIssuesBearerShares: false,\n entityNegativeNews: false,\n entityPublicOfficials: false,\n entityServicesForeignShellBanks: false,\n foreignBank: false,\n foreignFinancialInstitution: false,\n foreignShellBank: false,\n proprietarySecuritiesAccount: false\n },\n accountHolders: [{\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n birthCountry: '',\n citizenshipCountry: '',\n dependents: 0,\n disclosures: {\n govOfficial: false,\n industryEmployed: false,\n irsWithholding: false,\n stakeholder: false\n },\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n employmentType: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n jobPosition: '',\n jointTenantsInCommonInterestPercent: 0,\n lastName: '',\n suffix: '',\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n maritalStatus: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n yearsEmployed: ''\n }],\n accountId: 0,\n accountNumber: '',\n agreements: {\n corporateCash: null,\n corporateMargin: null,\n customerAndPrivacyPolicy: null,\n entityMargin: null,\n entityOption: null,\n iRARothAdoption: null,\n iRASepAdoption: null,\n iRASimpleAdoption: null,\n iRACoverDellAdoption: null,\n jointCommunity: null,\n jointSurvivor: null,\n jointTenantsInCommon: null,\n jointTenantsInEntirety: null,\n limitedMargin: null,\n llcAccount: null,\n margin: null,\n option: null,\n riskDisclosure: null,\n electronicConsent: null,\n onlineServices: null,\n exchangeDataAgreement: null,\n clientRelationshipSummary: null,\n apiAgreement: null,\n rqdCustomerAgreement: null,\n rqdOption: null,\n rqdMargin: null,\n rqdLimitedMargin: null,\n rqdExecutionDisclosures: null,\n rqdClearingDisclosures: null,\n rqdCustomerInformationBrochure: null,\n rqdPrivacyPolicy: null,\n rqdPrivacyNotice: null,\n rqdResponsibilitiesOfIbAndCarryingBroker: null,\n rqdSpecialStatementForUncoveredOptionWriters: null,\n rqdPowerOfAttorney: null,\n rqdLimitedTradingAuthorization: null\n },\n annualIncome: '',\n beneficiaries: [],\n characteristics: {\n bracket: '',\n horizon: '',\n liquidity: '',\n risk: ''\n },\n disclosuresForeignBankUSAgent: '',\n entityAccountType: '',\n experience: {\n bonds: {\n tradesPerYear: '',\n years: ''\n },\n commodities: {\n tradesPerYear: '',\n years: ''\n },\n margins: {\n tradesPerYear: '',\n years: ''\n },\n options: {\n tradesPerYear: '',\n years: ''\n },\n stocks: {\n tradesPerYear: '',\n years: ''\n }\n },\n flexibilityType: '',\n investmentObjectiveType: '',\n jointAccountType: '',\n jointCommunityPropertyState: '',\n lastChanged: {\n address: '',\n email: '',\n phone: ''\n },\n liquidNetWorth: '',\n retirementAccountType: '',\n totalNetWorth: '',\n tradeAuthorization: false,\n tradeAuthorizationAgentName: '',\n tradingAuthorization: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: false,\n stakeholder: false\n },\n disclosuresIndustryEmployedFirmName: '',\n disclosuresStakeholderTickerSymbol: '',\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }],\n ssnSecret: '',\n type: ''\n },\n tradeGoalType: '',\n trustedContact: {\n address: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n postalCode: '',\n state: ''\n },\n email: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n lastName: '',\n phones: [{\n phoneNumber: '',\n type: ''\n }]\n },\n serviceProfile: {\n issuerDirectCommunication: ''\n },\n type: '',\n clearer: '',\n communicationPreferences: {\n deliveryType: '',\n preferredElectronicFormat: '',\n duplicateStatements: '',\n subscribeToPromotionalEmails: false\n }\n};\nexport var AccountManagementEntityType;\n\n(function (AccountManagementEntityType) {\n AccountManagementEntityType[\"Email\"] = \"Email\";\n AccountManagementEntityType[\"Phone\"] = \"PhoneNumber\";\n AccountManagementEntityType[\"Address\"] = \"Address\";\n AccountManagementEntityType[\"MailingAddress\"] = \"MailingAddress\";\n AccountManagementEntityType[\"TradeGoal\"] = \"TradeGoal\";\n AccountManagementEntityType[\"Financial\"] = \"Financial\";\n AccountManagementEntityType[\"Employment\"] = \"Employment\";\n AccountManagementEntityType[\"TrustedContact\"] = \"TrustedContact\";\n AccountManagementEntityType[\"Disclosures\"] = \"Disclosures\";\n AccountManagementEntityType[\"AccountDisclosures\"] = \"AccountDisclosures\";\n AccountManagementEntityType[\"Experience\"] = \"Experience\";\n AccountManagementEntityType[\"Test\"] = \"test\";\n AccountManagementEntityType[\"Flexability\"] = \"Flexibility\";\n AccountManagementEntityType[\"TradeAuthorization\"] = \"TradeAuthorization\";\n AccountManagementEntityType[\"ServiceProfile\"] = \"ServiceProfile\";\n AccountManagementEntityType[\"IndustryEmployed\"] = \"IndustryEmployed\";\n AccountManagementEntityType[\"Suitability\"] = \"Suitability\";\n AccountManagementEntityType[\"Beneficiaries\"] = \"Beneficiaries\";\n AccountManagementEntityType[\"RemoveTradeAuthorization\"] = \"RemoveTradeAuthorization\";\n AccountManagementEntityType[\"PersonalInformation\"] = \"PersonalInformation\";\n})(AccountManagementEntityType || (AccountManagementEntityType = {}));\n\nexport var AccountManagementInvestmentObjectives;\n\n(function (AccountManagementInvestmentObjectives) {\n AccountManagementInvestmentObjectives[\"CapitalPreservation\"] = \"CapitalPreservation\";\n AccountManagementInvestmentObjectives[\"Income\"] = \"Income\";\n AccountManagementInvestmentObjectives[\"Growth\"] = \"Growth\";\n AccountManagementInvestmentObjectives[\"GrowthandIncome\"] = \"GrowthandIncome\";\n AccountManagementInvestmentObjectives[\"Speculation\"] = \"Speculation\";\n})(AccountManagementInvestmentObjectives || (AccountManagementInvestmentObjectives = {}));\n\nexport var AnnualIncomeOptions;\n\n(function (AnnualIncomeOptions) {\n AnnualIncomeOptions[\"LessThan25K\"] = \"Under $25,000\";\n AnnualIncomeOptions[\"Between25KAnd50K\"] = \"$25,000 - $50,000\";\n AnnualIncomeOptions[\"Between50KAnd100K\"] = \"$50,000 - $100,000\";\n AnnualIncomeOptions[\"Between100KAnd200K\"] = \"$100,000 - $200,000\";\n AnnualIncomeOptions[\"Between200KAnd300K\"] = \"$200,000 - $300,000\";\n AnnualIncomeOptions[\"Between300KAnd500K\"] = \"$300,000 - $500,000\";\n AnnualIncomeOptions[\"Between500KAnd1Point2M\"] = \"$500,000 - $1,200,000\";\n AnnualIncomeOptions[\"Over1Point2M\"] = \"Over $1,200,000\";\n})(AnnualIncomeOptions || (AnnualIncomeOptions = {}));\n\nexport var AllAnnualIncomeOptions = [AnnualIncomeOptions.LessThan25K, AnnualIncomeOptions.Between25KAnd50K, AnnualIncomeOptions.Between50KAnd100K, AnnualIncomeOptions.Between100KAnd200K, AnnualIncomeOptions.Between200KAnd300K, AnnualIncomeOptions.Between300KAnd500K, AnnualIncomeOptions.Between500KAnd1Point2M, AnnualIncomeOptions.Over1Point2M];\nexport var UpdatePendingStates = ['PendingConfirm', 'PendingFirmReview', 'PendingReview'];\nexport var UpdateStates = [].concat(UpdatePendingStates, ['Approved', 'Complete', 'Rejected', 'Canceled', 'Cancelled', 'Submitted']);\nexport var TimeHorizonType;\n\n(function (TimeHorizonType) {\n TimeHorizonType[\"Average\"] = \"Average\";\n TimeHorizonType[\"Long\"] = \"Long\";\n TimeHorizonType[\"Short\"] = \"Short\";\n})(TimeHorizonType || (TimeHorizonType = {}));\n\nexport var RiskToleranceType;\n\n(function (RiskToleranceType) {\n RiskToleranceType[\"High\"] = \"High\";\n RiskToleranceType[\"Low\"] = \"Low\";\n RiskToleranceType[\"Medium\"] = \"Medium\";\n})(RiskToleranceType || (RiskToleranceType = {}));\n\nexport var RiskLevel;\n\n(function (RiskLevel) {\n RiskLevel[RiskLevel[\"None\"] = 0] = \"None\";\n RiskLevel[RiskLevel[\"VeryLow\"] = 1] = \"VeryLow\";\n RiskLevel[RiskLevel[\"Low\"] = 2] = \"Low\";\n RiskLevel[RiskLevel[\"Moderate\"] = 3] = \"Moderate\";\n RiskLevel[RiskLevel[\"High\"] = 4] = \"High\";\n})(RiskLevel || (RiskLevel = {}));\n\nexport var MonetaryRangeType;\n\n(function (MonetaryRangeType) {\n MonetaryRangeType[\"Between100KAnd200K\"] = \"Between100KAnd200K\";\n MonetaryRangeType[\"Between1MAnd5M\"] = \"Between1MAnd5M\";\n MonetaryRangeType[\"Between200KAnd500K\"] = \"Between200KAnd500K\";\n MonetaryRangeType[\"Between500KAnd1M\"] = \"Between500KAnd1M\";\n MonetaryRangeType[\"Between50KAnd100K\"] = \"Between50KAnd100K\";\n MonetaryRangeType[\"LessThan50K\"] = \"LessThan50K\";\n MonetaryRangeType[\"MoreThan5M\"] = \"MoreThan5M\";\n})(MonetaryRangeType || (MonetaryRangeType = {}));\n\nexport var LiquidityNeedType;\n\n(function (LiquidityNeedType) {\n LiquidityNeedType[\"NotImportant\"] = \"NotImportant\";\n LiquidityNeedType[\"SomewhatImportant\"] = \"SomewhatImportant\";\n LiquidityNeedType[\"VeryImportant\"] = \"VeryImportant\";\n})(LiquidityNeedType || (LiquidityNeedType = {}));\n\nexport var InvestmentObjectiveType;\n\n(function (InvestmentObjectiveType) {\n InvestmentObjectiveType[\"CapitalPreservation\"] = \"CapitalPreservation\";\n InvestmentObjectiveType[\"Growth\"] = \"Growth\";\n InvestmentObjectiveType[\"GrowthAndIncome\"] = \"GrowthAndIncome\";\n InvestmentObjectiveType[\"Income\"] = \"Income\";\n InvestmentObjectiveType[\"Speculation\"] = \"Speculation\";\n})(InvestmentObjectiveType || (InvestmentObjectiveType = {}));\n\nexport var InvestmentObjectiveDescription;\n\n(function (InvestmentObjectiveDescription) {\n InvestmentObjectiveDescription[\"CapitalPreservation\"] = \"Protect initial investment through securities that minimize potential loss of principal. Returns may not be adequate to offest inflation.\";\n InvestmentObjectiveDescription[\"Growth\"] = \"Increase value over time through securities with historically moderate to above-average risk of principal loss and higher volatility.\";\n InvestmentObjectiveDescription[\"GrowthAndIncome\"] = \"Dual investment strategy that seeks both capital appreciation and current income generated through dividends or interest.\";\n InvestmentObjectiveDescription[\"Income\"] = \"Generate current income through securities with a historically low risk of principal loss.\";\n InvestmentObjectiveDescription[\"Speculation\"] = \"Assume a higher risk of loss and potentially higher-than-average gain by taking advantage of expected price changes and higher volatility.\";\n})(InvestmentObjectiveDescription || (InvestmentObjectiveDescription = {}));\n\nexport var InvestmentObjectiveLevel;\n\n(function (InvestmentObjectiveLevel) {\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"CapitalPreservation\"] = 3] = \"CapitalPreservation\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Growth\"] = 3] = \"Growth\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"GrowthAndIncome\"] = 3] = \"GrowthAndIncome\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Income\"] = 3] = \"Income\";\n InvestmentObjectiveLevel[InvestmentObjectiveLevel[\"Speculation\"] = 5] = \"Speculation\";\n})(InvestmentObjectiveLevel || (InvestmentObjectiveLevel = {}));\n\nexport var IncomeRangeType;\n\n(function (IncomeRangeType) {\n IncomeRangeType[\"Between100KAnd200K\"] = \"Between100KAnd200K\";\n IncomeRangeType[\"Between200KAnd300K\"] = \"Between200KAnd300K\";\n IncomeRangeType[\"Between25KAnd50K\"] = \"Between25KAnd50K\";\n IncomeRangeType[\"Between300KAnd500K\"] = \"Between300KAnd500K\";\n IncomeRangeType[\"Between500KAnd1Point2M\"] = \"Between500KAnd1Point2M\";\n IncomeRangeType[\"Between50KAnd100K\"] = \"Between50KAnd100K\";\n IncomeRangeType[\"LessThan25K\"] = \"LessThan25K\";\n IncomeRangeType[\"MoreThan1Point2M\"] = \"MoreThan1Point2M\";\n})(IncomeRangeType || (IncomeRangeType = {}));\n\nexport var ExperienceYearType;\n\n(function (ExperienceYearType) {\n ExperienceYearType[\"FourToNine\"] = \"FourToNine\";\n ExperienceYearType[\"One\"] = \"One\";\n ExperienceYearType[\"TenOrMore\"] = \"TenOrMore\";\n ExperienceYearType[\"TwoToThree\"] = \"TwoToThree\";\n ExperienceYearType[\"Zero\"] = \"Zero\";\n})(ExperienceYearType || (ExperienceYearType = {}));\n\nexport var TradeExperienceYearType;\n\n(function (TradeExperienceYearType) {\n TradeExperienceYearType[\"ElevenToTwenty\"] = \"ElevenToTwenty\";\n TradeExperienceYearType[\"OneToFive\"] = \"OneToFive\";\n TradeExperienceYearType[\"SixToTen\"] = \"SixToTen\";\n TradeExperienceYearType[\"MoreThanTwenty\"] = \"MoreThanTwenty\";\n})(TradeExperienceYearType || (TradeExperienceYearType = {}));\n\nexport var TaxbracketType;\n\n(function (TaxbracketType) {\n TaxbracketType[\"Bottom\"] = \"Bottom\";\n TaxbracketType[\"Middle\"] = \"Middle\";\n TaxbracketType[\"Top\"] = \"Top\";\n})(TaxbracketType || (TaxbracketType = {}));\n\nexport var TradeExperienceUpdateType;\n\n(function (TradeExperienceUpdateType) {\n TradeExperienceUpdateType[\"Bonds\"] = \"Bonds\";\n TradeExperienceUpdateType[\"Options\"] = \"Options\";\n TradeExperienceUpdateType[\"Stocks\"] = \"Stocks\";\n TradeExperienceUpdateType[\"Commodities\"] = \"Commodities\";\n TradeExperienceUpdateType[\"Margins\"] = \"Margins\";\n})(TradeExperienceUpdateType || (TradeExperienceUpdateType = {}));\n\nexport var AllTradeExperienceTypes = [TradeExperienceUpdateType.Bonds, TradeExperienceUpdateType.Options, TradeExperienceUpdateType.Stocks, TradeExperienceUpdateType.Commodities, TradeExperienceUpdateType.Margins];\nexport var AllIncomeRangeTypes = [IncomeRangeType.LessThan25K, IncomeRangeType.Between25KAnd50K, IncomeRangeType.Between50KAnd100K, IncomeRangeType.Between100KAnd200K, IncomeRangeType.Between200KAnd300K, IncomeRangeType.Between300KAnd500K, IncomeRangeType.Between500KAnd1Point2M, IncomeRangeType.MoreThan1Point2M];\nexport var AllInvestmentObjectiveTypes = [InvestmentObjectiveType.CapitalPreservation, InvestmentObjectiveType.Income, InvestmentObjectiveType.Growth, InvestmentObjectiveType.GrowthAndIncome, InvestmentObjectiveType.Speculation];\nexport var AllLiquidityNeedTypes = [LiquidityNeedType.VeryImportant, LiquidityNeedType.SomewhatImportant, LiquidityNeedType.NotImportant];\nexport var AllMonetaryRangeTypes = [MonetaryRangeType.LessThan50K, MonetaryRangeType.Between50KAnd100K, MonetaryRangeType.Between100KAnd200K, MonetaryRangeType.Between200KAnd500K, MonetaryRangeType.Between500KAnd1M, MonetaryRangeType.Between1MAnd5M, MonetaryRangeType.MoreThan5M];\nexport var AllTimeHorizonTypes = [TimeHorizonType.Short, TimeHorizonType.Average, TimeHorizonType.Long];\nexport var AllTaxbracketTypes = [TaxbracketType.Bottom, TaxbracketType.Middle, TaxbracketType.Top];\nexport var AllExperienceYearTypes = [ExperienceYearType.Zero, ExperienceYearType.One, ExperienceYearType.TwoToThree, ExperienceYearType.FourToNine, ExperienceYearType.TenOrMore];\nexport var AllTradeExperienceYearTypes = [TradeExperienceYearType.OneToFive, TradeExperienceYearType.SixToTen, TradeExperienceYearType.ElevenToTwenty, TradeExperienceYearType.MoreThanTwenty];\nexport var AllRiskToleranceTypes = [RiskToleranceType.Low, RiskToleranceType.Medium, RiskToleranceType.High];\nexport var TradeGoalType;\n\n(function (TradeGoalType) {\n TradeGoalType[\"StocksBonds\"] = \"StocksBonds\";\n TradeGoalType[\"AllAbovePlusCallsPuts\"] = \"AllAbovePlusCallsPuts\";\n TradeGoalType[\"AllAbovePlusOptionSpreads\"] = \"AllAbovePlusOptionSpreads\";\n TradeGoalType[\"AllAbovePlusPutWriting\"] = \"AllAbovePlusPutWriting\";\n TradeGoalType[\"AllAbovePlusAllOptionStrategies\"] = \"AllAbovePlusAllOptionStrategies\";\n})(TradeGoalType || (TradeGoalType = {}));\n\nexport var AllTradeGoalTypes = [TradeGoalType.StocksBonds, TradeGoalType.AllAbovePlusCallsPuts, TradeGoalType.AllAbovePlusOptionSpreads, TradeGoalType.AllAbovePlusPutWriting, TradeGoalType.AllAbovePlusAllOptionStrategies];\nexport var TradeGoalTypeLevel;\n\n(function (TradeGoalTypeLevel) {\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"StocksBonds\"] = 0] = \"StocksBonds\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusCallsPuts\"] = 1] = \"AllAbovePlusCallsPuts\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusOptionSpreads\"] = 2] = \"AllAbovePlusOptionSpreads\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusPutWriting\"] = 3] = \"AllAbovePlusPutWriting\";\n TradeGoalTypeLevel[TradeGoalTypeLevel[\"AllAbovePlusAllOptionStrategies\"] = 4] = \"AllAbovePlusAllOptionStrategies\";\n})(TradeGoalTypeLevel || (TradeGoalTypeLevel = {}));\n\nexport var BooleanToggleType;\n\n(function (BooleanToggleType) {\n BooleanToggleType[\"No\"] = \"no\";\n BooleanToggleType[\"Yes\"] = \"yes\";\n})(BooleanToggleType || (BooleanToggleType = {}));\n\nexport var AllBooleanToggleTypes = [BooleanToggleType.Yes, BooleanToggleType.No];\nexport var MFAOptions;\n\n(function (MFAOptions) {\n MFAOptions[\"NoPass\"] = \"nopass\";\n MFAOptions[\"SMS\"] = \"sms\";\n})(MFAOptions || (MFAOptions = {}));\n\nexport var AllMFAOptions = [MFAOptions.NoPass, MFAOptions.SMS];\nexport var EmploymentType;\n\n(function (EmploymentType) {\n EmploymentType[\"Employed\"] = \"Employed\";\n EmploymentType[\"Retired\"] = \"Retired\";\n EmploymentType[\"Student\"] = \"Student\";\n EmploymentType[\"Unemployed\"] = \"Unemployed\";\n})(EmploymentType || (EmploymentType = {}));\n\nexport var IssuerDirectCommunicationType;\n\n(function (IssuerDirectCommunicationType) {\n IssuerDirectCommunicationType[\"Accept\"] = \"Accept\";\n IssuerDirectCommunicationType[\"Object\"] = \"Object\";\n})(IssuerDirectCommunicationType || (IssuerDirectCommunicationType = {}));\n\nexport var AllIssuerDirectCommunicationTypes = [IssuerDirectCommunicationType.Accept, IssuerDirectCommunicationType.Object];\nexport var EmploymentTypes = [EmploymentType.Employed, EmploymentType.Retired, EmploymentType.Student, EmploymentType.Unemployed];\nexport var YearsEmployed;\n\n(function (YearsEmployed) {\n YearsEmployed[\"BetweenZeroAndOne\"] = \"BetweenZeroAndOne\";\n YearsEmployed[\"BetweenTwoAndFive\"] = \"BetweenTwoAndFive\";\n YearsEmployed[\"BetweenFiveAndTen\"] = \"BetweenFiveAndTen\";\n YearsEmployed[\"BetweenTenAndTwenty\"] = \"BetweenTenAndTwenty\";\n YearsEmployed[\"MoreThanTwenty\"] = \"MoreThanTwenty\";\n})(YearsEmployed || (YearsEmployed = {}));\n\nexport var AllYearsEmployed = [YearsEmployed.BetweenZeroAndOne, YearsEmployed.BetweenTwoAndFive, YearsEmployed.BetweenFiveAndTen, YearsEmployed.BetweenTenAndTwenty, YearsEmployed.MoreThanTwenty];\nexport var YearsEmployedDescription;\n\n(function (YearsEmployedDescription) {\n YearsEmployedDescription[\"BetweenZeroAndOne\"] = \"1 year or less\";\n YearsEmployedDescription[\"BetweenTwoAndFive\"] = \"2 - 5 years\";\n YearsEmployedDescription[\"BetweenFiveAndTen\"] = \"5 - 10 years\";\n YearsEmployedDescription[\"BetweenTenAndTwenty\"] = \"10 - 20 years\";\n YearsEmployedDescription[\"MoreThanTwenty\"] = \"20+ years\";\n})(YearsEmployedDescription || (YearsEmployedDescription = {}));\n\nexport var MaxNumberOfPhones = 5;\nexport var PhoneType;\n\n(function (PhoneType) {\n PhoneType[\"Home\"] = \"Home\";\n PhoneType[\"Mobile\"] = \"Mobile\";\n PhoneType[\"Work\"] = \"Work\";\n})(PhoneType || (PhoneType = {}));\n\nexport var AllPhoneTypes = [PhoneType.Home, PhoneType.Mobile, PhoneType.Work];\nexport var ErrorType;\n\n(function (ErrorType) {\n ErrorType[\"Amount\"] = \"amount\";\n ErrorType[\"Invalid\"] = \"invalid\";\n ErrorType[\"Mismatch\"] = \"mismatch\";\n ErrorType[\"Required\"] = \"error\";\n ErrorType[\"Stale\"] = \"stale\";\n ErrorType[\"Upload\"] = \"upload\";\n ErrorType[\"Contingent\"] = \"contingent\";\n})(ErrorType || (ErrorType = {}));\n\nexport var FlexibilityType;\n\n(function (FlexibilityType) {\n FlexibilityType[\"CashOnly\"] = \"CashOnly\";\n FlexibilityType[\"Margin\"] = \"Margin\";\n})(FlexibilityType || (FlexibilityType = {}));\n\nexport var AllFlexibilityTypes = [FlexibilityType.Margin, FlexibilityType.CashOnly];\nexport var RE_EMAIL = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\nexport var ProSubType;\n\n(function (ProSubType) {\n ProSubType[\"Delayed\"] = \"Delayed\";\n ProSubType[\"RealTime\"] = \"Realtime\";\n})(ProSubType || (ProSubType = {}));\n\nexport var DefaultPhoneValues = {\n phoneNumber: '',\n type: ''\n};\nexport var AccountManagementDocuments;\n\n(function (AccountManagementDocuments) {\n AccountManagementDocuments[\"DriversLicense\"] = \"DriversLicense\";\n AccountManagementDocuments[\"StateIdCard\"] = \"StateIdCard\";\n AccountManagementDocuments[\"Passport\"] = \"Passport\";\n AccountManagementDocuments[\"MilitaryId\"] = \"MilitaryId\";\n AccountManagementDocuments[\"SsnCard\"] = \"SsnCard\";\n AccountManagementDocuments[\"SsaLetter\"] = \"SsaLetter\";\n AccountManagementDocuments[\"IrsItinLetter\"] = \"IrsItinLetter\";\n AccountManagementDocuments[\"OtherGovernmentId\"] = \"OtherGovernmentId\";\n AccountManagementDocuments[\"CddDocument\"] = \"CddDocument\";\n AccountManagementDocuments[\"AllPassingCipResults\"] = \"AllPassingCipResults\";\n AccountManagementDocuments[\"IrsW9Form\"] = \"IrsW9Form\";\n AccountManagementDocuments[\"SignatureImage\"] = \"SignatureImage\";\n AccountManagementDocuments[\"IdDocument\"] = \"IdDocument\";\n AccountManagementDocuments[\"AffiliateApproval\"] = \"AffiliateApproval\";\n AccountManagementDocuments[\"Document\"] = \"Document\";\n AccountManagementDocuments[\"Other\"] = \"Other\";\n AccountManagementDocuments[\"GovernmentId\"] = \"GovernmentId\";\n})(AccountManagementDocuments || (AccountManagementDocuments = {}));\n\nexport var AccountManagementBeneficiaryAccountType;\n\n(function (AccountManagementBeneficiaryAccountType) {\n AccountManagementBeneficiaryAccountType[\"Contingent\"] = \"Contingent\";\n AccountManagementBeneficiaryAccountType[\"Primary\"] = \"Primary\";\n})(AccountManagementBeneficiaryAccountType || (AccountManagementBeneficiaryAccountType = {}));\n\nexport var AccountManagementBeneficiaryType;\n\n(function (AccountManagementBeneficiaryType) {\n AccountManagementBeneficiaryType[\"Individual\"] = \"Individual\";\n AccountManagementBeneficiaryType[\"Trust\"] = \"Trust\";\n})(AccountManagementBeneficiaryType || (AccountManagementBeneficiaryType = {}));\n\nexport var AllAccountManagementBeneficiaryTypes = [AccountManagementBeneficiaryType.Individual, AccountManagementBeneficiaryType.Trust];\nexport var AllAccountManagementBeneficiaryAccountTypes = [AccountManagementBeneficiaryAccountType.Primary, AccountManagementBeneficiaryAccountType.Contingent];","import { LanguageType } from './Language';\nimport { BooleanToggleType, FlexibilityType } from './AccountManagement';\nexport var InvestigationDocumentName;\n\n(function (InvestigationDocumentName) {\n InvestigationDocumentName[\"Name\"] = \"Name\";\n InvestigationDocumentName[\"DateOfBirth\"] = \"DateOfBirth\";\n InvestigationDocumentName[\"TaxId\"] = \"TaxId\";\n InvestigationDocumentName[\"Address\"] = \"Address\";\n InvestigationDocumentName[\"ForeignerSignature\"] = \"Signature\";\n InvestigationDocumentName[\"ForeignerGovermentId\"] = \"GovernmentId\";\n InvestigationDocumentName[\"AffiliateApproval\"] = \"AffiliateApproval\";\n})(InvestigationDocumentName || (InvestigationDocumentName = {}));\n\nexport var InvestigationDocuments;\n\n(function (InvestigationDocuments) {\n InvestigationDocuments[\"DriversLicense\"] = \"DriversLicense\";\n InvestigationDocuments[\"StateIdCard\"] = \"StateIdCard\";\n InvestigationDocuments[\"Passport\"] = \"Passport\";\n InvestigationDocuments[\"MilitaryId\"] = \"MilitaryId\";\n InvestigationDocuments[\"SSNCard\"] = \"SsnCard\";\n InvestigationDocuments[\"IRSW9Form\"] = \"IrsW9Form\";\n InvestigationDocuments[\"SSALetter\"] = \"SsaLetter\";\n InvestigationDocuments[\"IRSITINLetter\"] = \"IrsItinLetter\";\n InvestigationDocuments[\"ForeignerSignature\"] = \"Signature\";\n InvestigationDocuments[\"ForeignerGovermentId\"] = \"GovernmentId\";\n InvestigationDocuments[\"AffiliateApproval\"] = \"AffiliateApproval\";\n})(InvestigationDocuments || (InvestigationDocuments = {}));\n\nexport var AccountApplicationState;\n\n(function (AccountApplicationState) {\n AccountApplicationState[\"Accepted\"] = \"Accepted\";\n AccountApplicationState[\"New\"] = \"New\";\n AccountApplicationState[\"Pending\"] = \"Pending\";\n AccountApplicationState[\"InvestigationSubmitted\"] = \"InvestigationSubmitted\";\n AccountApplicationState[\"ReadyForBackOffice\"] = \"ReadyForBackOffice\";\n AccountApplicationState[\"BackOffice\"] = \"BackOffice\";\n AccountApplicationState[\"AccountSetup\"] = \"AccountSetup\";\n AccountApplicationState[\"Complete\"] = \"Complete\";\n AccountApplicationState[\"ActionRequired\"] = \"ActionRequired\";\n AccountApplicationState[\"Rejected\"] = \"Rejected\";\n AccountApplicationState[\"Suspended\"] = \"Suspended\";\n AccountApplicationState[\"Error\"] = \"Error\";\n AccountApplicationState[\"Cancelled\"] = \"Cancelled\";\n AccountApplicationState[\"PendingSubmit\"] = \"PendingSubmit\";\n})(AccountApplicationState || (AccountApplicationState = {}));\n\nexport var AccountInvestigationState;\n\n(function (AccountInvestigationState) {\n AccountInvestigationState[\"New\"] = \"New\";\n AccountInvestigationState[\"Pending\"] = \"Pending\";\n AccountInvestigationState[\"Indeterminate\"] = \"Indeterminate\";\n AccountInvestigationState[\"Accepted\"] = \"Accepted\";\n AccountInvestigationState[\"Rejected\"] = \"Rejected\";\n AccountInvestigationState[\"Appealed\"] = \"Appealed\";\n AccountInvestigationState[\"Error\"] = \"Error\";\n AccountInvestigationState[\"Cancelled\"] = \"Cancelled\";\n})(AccountInvestigationState || (AccountInvestigationState = {}));\n\nexport var UploadedDocumentState;\n\n(function (UploadedDocumentState) {\n UploadedDocumentState[\"PendingReview\"] = \"PendingReview\";\n UploadedDocumentState[\"Submitted\"] = \"Submitted\";\n UploadedDocumentState[\"Rejected\"] = \"Rejected\";\n UploadedDocumentState[\"Accepted\"] = \"Accepted\";\n})(UploadedDocumentState || (UploadedDocumentState = {}));\n\nexport var DefaultSecurityChallenge = {\n securityQuestionType: '',\n answer: ''\n};\nexport var ErroredStatus;\n\n(function (ErroredStatus) {\n ErroredStatus[\"All\"] = \"Errors: All\";\n ErroredStatus[\"Errored\"] = \"Errored\";\n ErroredStatus[\"NotErrored\"] = \"NotErrored\";\n})(ErroredStatus || (ErroredStatus = {}));\n\nexport var ApplicationStep;\n\n(function (ApplicationStep) {\n ApplicationStep[\"AccountType\"] = \"account\";\n ApplicationStep[\"Agreements\"] = \"agreements\";\n ApplicationStep[\"Beneficiaries\"] = \"beneficiaries\";\n ApplicationStep[\"ClearerType\"] = \"clearerType\";\n ApplicationStep[\"AccountInformation\"] = \"information\";\n ApplicationStep[\"InvestingProfile\"] = \"investing\";\n ApplicationStep[\"SecureAccount\"] = \"secure\";\n ApplicationStep[\"Sign\"] = \"sign\";\n})(ApplicationStep || (ApplicationStep = {}));\n\nexport var ApplicationType;\n\n(function (ApplicationType) {\n ApplicationType[\"Entity\"] = \"Entity\";\n ApplicationType[\"Individual\"] = \"Individual\";\n ApplicationType[\"Joint\"] = \"Joint\";\n ApplicationType[\"UGMA\"] = \"Ugma\";\n})(ApplicationType || (ApplicationType = {}));\n\nexport var RetirementAccountType;\n\n(function (RetirementAccountType) {\n RetirementAccountType[\"Beneficiary\"] = \"Beneficiary\";\n RetirementAccountType[\"CoverDell\"] = \"CoverDell\";\n RetirementAccountType[\"Rollover\"] = \"Rollover\";\n RetirementAccountType[\"Roth\"] = \"Roth\";\n RetirementAccountType[\"SEP\"] = \"SEP\";\n RetirementAccountType[\"Simple\"] = \"Simple\";\n RetirementAccountType[\"Traditional\"] = \"Traditional\";\n})(RetirementAccountType || (RetirementAccountType = {}));\n\nexport var JointAccountType;\n\n(function (JointAccountType) {\n JointAccountType[\"Community\"] = \"Community\";\n JointAccountType[\"Survivor\"] = \"Survivor\";\n JointAccountType[\"TenantsInCommon\"] = \"TenantsInCommon\";\n JointAccountType[\"TenantsInEntirety\"] = \"TenantsInEntirety\";\n})(JointAccountType || (JointAccountType = {}));\n\nexport var EntityAccountType;\n\n(function (EntityAccountType) {\n EntityAccountType[\"BusinessTrust\"] = \"BusinessTrust\";\n EntityAccountType[\"CCorporation\"] = \"CCorporation\";\n EntityAccountType[\"LlcCCorporation\"] = \"LlcCCorporation\";\n EntityAccountType[\"LlcSCorporation\"] = \"LlcSCorporation\";\n EntityAccountType[\"Partnership\"] = \"Partnership\";\n EntityAccountType[\"PersonalTrust\"] = \"PersonalTrust\";\n EntityAccountType[\"SCorporation\"] = \"SCorporation\";\n})(EntityAccountType || (EntityAccountType = {}));\n\nexport var MaritalStatusType;\n\n(function (MaritalStatusType) {\n MaritalStatusType[\"Divorced\"] = \"Divorced\";\n MaritalStatusType[\"Married\"] = \"Married\";\n MaritalStatusType[\"Single\"] = \"Single\";\n MaritalStatusType[\"Widowed\"] = \"Widowed\";\n})(MaritalStatusType || (MaritalStatusType = {}));\n\nexport var VisaType;\n\n(function (VisaType) {\n VisaType[\"E1\"] = \"E1\";\n VisaType[\"E2\"] = \"E2\";\n VisaType[\"E3\"] = \"E3\";\n VisaType[\"F1\"] = \"F1\";\n VisaType[\"K1\"] = \"K1\";\n VisaType[\"G4\"] = \"G4\";\n VisaType[\"H1B\"] = \"H1B\";\n VisaType[\"L1\"] = \"L1\";\n VisaType[\"O1\"] = \"O1\";\n VisaType[\"TN1\"] = \"TN1\";\n})(VisaType || (VisaType = {}));\n\nexport var BusinessNature;\n\n(function (BusinessNature) {\n BusinessNature[\"Agriculture\"] = \"Agriculture\";\n BusinessNature[\"Communications\"] = \"Communications\";\n BusinessNature[\"Construction\"] = \"Construction\";\n BusinessNature[\"ElectricGas\"] = \"ElectricGas\";\n BusinessNature[\"Finance\"] = \"Finance\";\n BusinessNature[\"Fishing\"] = \"Fishing\";\n BusinessNature[\"Forestry\"] = \"Forestry\";\n BusinessNature[\"Insurance\"] = \"Insurance\";\n BusinessNature[\"Manufacturing\"] = \"Manufacturing\";\n BusinessNature[\"Mining\"] = \"Mining\";\n BusinessNature[\"PublicAdministration\"] = \"PublicAdministration\";\n BusinessNature[\"RealEstate\"] = \"RealEstate\";\n BusinessNature[\"RetailTrade\"] = \"RetailTrade\";\n BusinessNature[\"SanitaryServices\"] = \"SanitaryServices\";\n BusinessNature[\"Services\"] = \"Services\";\n BusinessNature[\"Transportation\"] = \"Transportation\";\n BusinessNature[\"WholesaleTrade\"] = \"WholesaleTrade\";\n})(BusinessNature || (BusinessNature = {}));\n\nexport var AccountActivityType;\n\n(function (AccountActivityType) {\n AccountActivityType[\"ActiveTrading\"] = \"ActiveTrading\";\n AccountActivityType[\"LongTermInvesting\"] = \"LongTermInvesting\";\n AccountActivityType[\"ShortTermInvesting\"] = \"ShortTermInvesting\";\n})(AccountActivityType || (AccountActivityType = {}));\n\nexport var SourceOfFundsType;\n\n(function (SourceOfFundsType) {\n SourceOfFundsType[\"CorporateIncome\"] = \"CorporateIncome\";\n SourceOfFundsType[\"InvestmentCapital\"] = \"InvestmentCapital\";\n SourceOfFundsType[\"Other\"] = \"Other\";\n})(SourceOfFundsType || (SourceOfFundsType = {}));\n\nexport var WithdrawalFrequencyType;\n\n(function (WithdrawalFrequencyType) {\n WithdrawalFrequencyType[\"Frequent\"] = \"Frequent\";\n WithdrawalFrequencyType[\"Occasional\"] = \"Occasional\";\n WithdrawalFrequencyType[\"Rare\"] = \"Rare\";\n})(WithdrawalFrequencyType || (WithdrawalFrequencyType = {}));\n\nexport var BeneficiaryAccountType;\n\n(function (BeneficiaryAccountType) {\n BeneficiaryAccountType[\"Contingent\"] = \"Contingent\";\n BeneficiaryAccountType[\"Primary\"] = \"Primary\";\n})(BeneficiaryAccountType || (BeneficiaryAccountType = {}));\n\nexport var BeneficiaryType;\n\n(function (BeneficiaryType) {\n BeneficiaryType[\"Individual\"] = \"Individual\";\n BeneficiaryType[\"Trust\"] = \"Trust\";\n})(BeneficiaryType || (BeneficiaryType = {}));\n\nexport var BeneficiariesRelationshipsType;\n\n(function (BeneficiariesRelationshipsType) {\n BeneficiariesRelationshipsType[\"Spouse\"] = \"Spouse\";\n BeneficiariesRelationshipsType[\"Child\"] = \"Child\";\n BeneficiariesRelationshipsType[\"Parent\"] = \"Parent\";\n BeneficiariesRelationshipsType[\"Other\"] = \"Other\";\n})(BeneficiariesRelationshipsType || (BeneficiariesRelationshipsType = {}));\n\nexport var BeneficiariesRelationships = [BeneficiariesRelationshipsType.Spouse, BeneficiariesRelationshipsType.Parent, BeneficiariesRelationshipsType.Child, BeneficiariesRelationshipsType.Other];\nexport var DeliveryType;\n\n(function (DeliveryType) {\n DeliveryType[\"Electronic\"] = \"Electronic\";\n DeliveryType[\"Paper\"] = \"Paper\";\n})(DeliveryType || (DeliveryType = {}));\n\nexport var ElectronicFormat;\n\n(function (ElectronicFormat) {\n ElectronicFormat[\"Html\"] = \"Html\";\n ElectronicFormat[\"PlainText\"] = \"PlainText\";\n})(ElectronicFormat || (ElectronicFormat = {}));\n\nexport var AllDeliveryTypes = [DeliveryType.Electronic, DeliveryType.Paper];\nexport var AllElectronicFormats = [ElectronicFormat.Html, ElectronicFormat.PlainText];\nexport var ProSubscriptionType;\n\n(function (ProSubscriptionType) {\n ProSubscriptionType[\"Delayed\"] = \"Delayed\";\n ProSubscriptionType[\"RealTime\"] = \"Realtime\";\n})(ProSubscriptionType || (ProSubscriptionType = {}));\n\nexport var DuplicateStatements;\n\n(function (DuplicateStatements) {\n DuplicateStatements[\"None\"] = \"None\";\n DuplicateStatements[\"PostalMail\"] = \"PostalMail\";\n DuplicateStatements[\"Email\"] = \"Email\";\n})(DuplicateStatements || (DuplicateStatements = {}));\n\nexport var AllDuplicateStatementOptions = [DuplicateStatements.PostalMail, DuplicateStatements.Email];\nexport var TradeAuthorizationType;\n\n(function (TradeAuthorizationType) {\n TradeAuthorizationType[\"Full\"] = \"Full\";\n TradeAuthorizationType[\"Limited\"] = \"Limited\";\n})(TradeAuthorizationType || (TradeAuthorizationType = {}));\n\nexport var AllTradeAuthorizationTypes = [TradeAuthorizationType.Full, TradeAuthorizationType.Limited];\nexport var DefaultAddress = {\n country: '',\n address1: '',\n address2: '',\n postalCode: null,\n city: '',\n state: null\n};\nexport var DefaultPhone = {\n type: '',\n phoneNumber: ''\n};\nexport var DefaultPersonDetails = {\n firstName: '',\n lastName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n email: '',\n dateOfBirth: {\n day: undefined,\n month: undefined,\n year: undefined\n },\n ssn: '',\n address: DefaultAddress,\n phones: [DefaultPhone]\n};\nexport var DefaultAccountHolder = Object.assign({}, DefaultPersonDetails, {\n emailConfirm: '',\n maritalStatus: '',\n dependents: '',\n birthCountry: null,\n citizenshipCountry: null,\n employmentType: '',\n disclosuresStakeholderTickerSymbol: '',\n disclosuresIndustryEmployedFirmName: '',\n disclosuresGovOfficialImmediateFamily: '',\n disclosuresGovOfficialPoliticalOrg: '',\n jointTenantsInCommonInterestPercent: 0,\n disclosures: {\n govOfficial: null,\n industryEmployed: null,\n irsWithholding: null,\n stakeholder: null\n },\n differentMailingAddress: false,\n mailingAddress: null,\n employer: '',\n employerAddress: {\n address1: '',\n address2: '',\n city: '',\n country: '',\n state: null,\n postalCode: null\n },\n visaType: null,\n visaExpirationDate: null,\n jobPosition: '',\n yearsEmployed: null,\n foreignTaxWithholding: {\n taxIdentificationNumber: null,\n letterOfExplanation: null,\n jurisdictionDoesNotIssueTIN: null,\n notIssuedForeignTIN: null,\n treatyCountry: null,\n foreignTINNotRequiredExplanation: null\n }\n});\nexport var DefaultApplicationModel = {\n // Secure Account\n languageType: LanguageType.English,\n ownerUsername: '',\n password: '',\n passwordConfirm: '',\n securityChallenges: [DefaultSecurityChallenge, DefaultSecurityChallenge, DefaultSecurityChallenge],\n // Account Type\n type: ApplicationType.Individual,\n flexibilityType: FlexibilityType.Margin,\n // Investor Profile\n tradeGoalType: '',\n investmentObjectiveType: '',\n annualIncome: '',\n totalNetWorth: '',\n liquidNetWorth: '',\n characteristics: {\n risk: '',\n bracket: '',\n horizon: '',\n liquidity: ''\n },\n // Account Information\n primaryAccountHolder: DefaultAccountHolder,\n ownerCountry: '',\n retirementAccount: undefined,\n simpleIraPlanName: undefined,\n beneficiaryIraDecedentName: undefined,\n jointAccountType: undefined,\n // Agreements & Disclosures\n agreeToElectronicConsent: null,\n deliveryType: DeliveryType.Electronic,\n disclosuresForeignBankUSAgent: '',\n disclosuresEntityNegativeNewsInfo: '',\n disclosuresEntityPublicOfficials: [],\n accountDisclosures: {\n foreignBank: null,\n foreignFinancialInstitution: null,\n proprietarySecuritiesAccount: null,\n foreignShellBank: null,\n entityIssuesBearerShares: null,\n entityNegativeNews: null,\n entityPublicOfficials: null,\n entityServicesForeignShellBanks: null\n },\n agreements: {\n corporateCash: null,\n corporateMargin: null,\n customerAndPrivacyPolicy: null,\n entityMargin: null,\n entityOption: null,\n iRARothAdoption: null,\n iRASepAdoption: null,\n iRASimpleAdoption: null,\n iRACoverDellAdoption: null,\n jointCommunity: null,\n jointSurvivor: null,\n jointTenantsInCommon: null,\n jointTenantsInEntirety: null,\n limitedMargin: null,\n llcAccount: null,\n margin: null,\n option: null,\n riskDisclosure: null,\n electronicConsent: null,\n onlineServices: null,\n exchangeDataAgreement: null,\n clientRelationshipSummary: null,\n apiAgreement: null,\n rqdDisclosure: null,\n rqdClearingDisclosures: null,\n rqdCustomerAgreement: null,\n rqdCustomerInformationBrochure: null,\n rqdExecutionDisclosures: null,\n rqdLimitedMarginAgreement: null,\n rqdLimitedTradingAuthorization: null,\n rqdMargin: null,\n rqdOption: null,\n rqdPowerOfAttorney: null,\n rqdPrivacyNotice: null,\n rqdPrivacyPolicy: null,\n rqdResponsibilitiesOfIbAndCarryingBroker: null,\n rqdSpecialStatementForUncoveredOptionWriters: null\n },\n // Trade Experience\n experience: {\n commodities: {\n years: undefined,\n tradesPerYear: undefined\n },\n bonds: {\n years: undefined,\n tradesPerYear: undefined\n },\n stocks: {\n years: undefined,\n tradesPerYear: undefined\n },\n options: {\n years: undefined,\n tradesPerYear: undefined\n },\n margins: {\n years: undefined,\n tradesPerYear: undefined\n }\n },\n // Market Data Questionnaire\n marketData: {\n employmentFunctions: null,\n personalUse: null,\n secCftcRegistration: null,\n associationRegistration: null,\n jobFunctions: null,\n investmentProfessional: null,\n capitalTrading: null,\n corporationTrading: BooleanToggleType.No,\n benefitsReceived: null\n },\n marketDataType: null,\n // Sign & Submit\n signedNames: [],\n hearAboutUsId: undefined,\n beneficiaries: [],\n foreignDueDiligence: {\n expectedWithdrawalFrequency: '',\n initialContact: '',\n initialDepositAmount: 0,\n initialDepositType: '',\n primaryBanking: [''],\n referredName: '',\n referredRelationship: '',\n referredToBroker: true\n }\n};","export var AssetType;\n\n(function (AssetType) {\n AssetType[AssetType[\"Equity\"] = 1] = \"Equity\";\n AssetType[AssetType[\"Option\"] = 2] = \"Option\";\n AssetType[AssetType[\"MutualFund\"] = 3] = \"MutualFund\";\n AssetType[AssetType[\"MoneyMarket\"] = 4] = \"MoneyMarket\";\n AssetType[AssetType[\"Bond\"] = 5] = \"Bond\";\n AssetType[AssetType[\"Index\"] = 6] = \"Index\";\n})(AssetType || (AssetType = {}));\n\nexport var OrderAction;\n\n(function (OrderAction) {\n OrderAction[OrderAction[\"Buy\"] = 1] = \"Buy\";\n OrderAction[OrderAction[\"Sell\"] = 2] = \"Sell\";\n})(OrderAction || (OrderAction = {}));\n\nexport var OrderActionDirection;\n\n(function (OrderActionDirection) {\n OrderActionDirection[OrderActionDirection[\"Long\"] = 1] = \"Long\";\n OrderActionDirection[OrderActionDirection[\"Short\"] = 2] = \"Short\";\n})(OrderActionDirection || (OrderActionDirection = {}));\n\nexport var PositionEffect;\n\n(function (PositionEffect) {\n PositionEffect[PositionEffect[\"Open\"] = 1] = \"Open\";\n PositionEffect[PositionEffect[\"Close\"] = 2] = \"Close\";\n})(PositionEffect || (PositionEffect = {}));\n\nexport var OrderType;\n\n(function (OrderType) {\n /// \n /// Buy or sell at the current price, whatever that price may be\n /// \n OrderType[OrderType[\"Market\"] = 1] = \"Market\"; /// \n /// Buy or sell at a specific price or better\n /// \n\n OrderType[OrderType[\"Limit\"] = 2] = \"Limit\"; /// \n /// Converts the order to a market order if the price of the security reaches a certain threshold\n /// \n\n OrderType[OrderType[\"Stop_Market\"] = 3] = \"Stop_Market\"; /// \n /// Converts the order to a limit order if the price of the security reaches a certain threshold\n /// \n\n OrderType[OrderType[\"Stop_Limit\"] = 4] = \"Stop_Limit\"; /// \n /// Marks the order to be executed immediately before the market close as a market order\n /// \n\n OrderType[OrderType[\"Market_On_Close\"] = 5] = \"Market_On_Close\";\n})(OrderType || (OrderType = {}));\n\nexport var OrderClass;\n\n(function (OrderClass) {\n OrderClass[OrderClass[\"Single\"] = 1] = \"Single\";\n OrderClass[OrderClass[\"Multileg\"] = 2] = \"Multileg\";\n})(OrderClass || (OrderClass = {})); // export type OrderClass = keyof typeof OrderClasses;\n\n\nexport var DebitOrCredit;\n\n(function (DebitOrCredit) {\n DebitOrCredit[DebitOrCredit[\"Debit\"] = 1] = \"Debit\";\n DebitOrCredit[DebitOrCredit[\"Credit\"] = 2] = \"Credit\";\n})(DebitOrCredit || (DebitOrCredit = {}));\n\nexport var OptionType;\n\n(function (OptionType) {\n OptionType[OptionType[\"Call\"] = 1] = \"Call\";\n OptionType[OptionType[\"Put\"] = 2] = \"Put\";\n})(OptionType || (OptionType = {}));\n\nexport var StrategyType;\n\n(function (StrategyType) {\n StrategyType[StrategyType[\"Bull\"] = 1] = \"Bull\";\n StrategyType[StrategyType[\"Bear\"] = 2] = \"Bear\";\n StrategyType[StrategyType[\"Volatility\"] = 3] = \"Volatility\";\n})(StrategyType || (StrategyType = {}));\n\nexport var SizeRatio;\n\n(function (SizeRatio) {\n SizeRatio[\"NA\"] = \"NA\";\n SizeRatio[\"HundredToOne\"] = \"100:1\";\n SizeRatio[\"HundredToOneToOne\"] = \"100:1:1\";\n SizeRatio[\"OneToOne\"] = \"1:1\";\n SizeRatio[\"OneTwoOne\"] = \"1:2:1\";\n SizeRatio[\"OneToOneToOneToOne\"] = \"1:1:1:1\";\n})(SizeRatio || (SizeRatio = {}));\n\nexport var BlockType;\n\n(function (BlockType) {\n BlockType[\"Account\"] = \"Account\";\n BlockType[\"AccountManagement\"] = \"AccountManagement\";\n BlockType[\"AccountTransfer\"] = \"AccountTransfer\";\n BlockType[\"Activity\"] = \"Activity\";\n BlockType[\"Favorites\"] = \"Favorites\";\n BlockType[\"OptionChain\"] = \"OptionChain\";\n BlockType[\"Order\"] = \"Order\";\n BlockType[\"Positions\"] = \"Positions\";\n BlockType[\"PriceChart\"] = \"PriceChart\";\n BlockType[\"Quote\"] = \"Quote\";\n BlockType[\"Info\"] = \"Info\";\n BlockType[\"Strategy\"] = \"Strategy\";\n BlockType[\"AdminTools\"] = \"AdminTools\";\n BlockType[\"Analytics\"] = \"Analytics\";\n BlockType[\"AccountStatements\"] = \"AccountStatements\";\n BlockType[\"SubAccountManagement\"] = \"Sub Account Management\";\n})(BlockType || (BlockType = {}));\n\nexport var BlockTypeValues = Object.values(BlockType);\nexport var AlertType;\n\n(function (AlertType) {\n AlertType[\"danger\"] = \"danger\";\n AlertType[\"info\"] = \"info\";\n AlertType[\"success\"] = \"success\";\n AlertType[\"warning\"] = \"warning\";\n})(AlertType || (AlertType = {}));\n\nexport var AccountRole;\n\n(function (AccountRole) {\n AccountRole[\"Cashiering\"] = \"Cashiering\";\n})(AccountRole || (AccountRole = {}));\n\nexport var AccountType;\n\n(function (AccountType) {\n /// \n /// An individual account is an account that is owned by one person.\n /// \n AccountType[AccountType[\"Individual\"] = 1] = \"Individual\"; /// \n /// Joint Tenants with Rights of Survivorship accounts are accounts where all the assets\n /// are transferred into the name of the surviving party in the event of one tenant's\n /// death. The surviving party becomes the sole owner of the assets in the account. Both\n /// parties on the account have an equal and undivided interest in the assets in the\n /// account.\n /// \n\n AccountType[AccountType[\"JTWROS\"] = 2] = \"JTWROS\"; /// \n /// Traditional individual retirement accounts allow individuals to direct pretax income\n /// towards investments that can grow tax-deferred; no capital gains or dividend income\n /// is taxed until it is withdrawn.\n /// \n\n AccountType[AccountType[\"Traditional_IRA\"] = 3] = \"Traditional_IRA\"; /// \n /// An account that is opened by an individual and managed by a designated trustee for\n /// the benefit of a third-party in accordance with agreed-upon terms.\n /// \n\n AccountType[AccountType[\"Trust\"] = 4] = \"Trust\"; /// \n /// Individual retirement arrangement rollover accounts are a transfer of funds from a\n /// retirement account into a traditional IRA or a Roth IRA.\n /// \n\n AccountType[AccountType[\"IRA_RollOver\"] = 5] = \"IRA_RollOver\"; /// \n /// Roth individual retirement accounts are a type of qualified retirement plan that\n /// is very similar to a traditional IRA, but is taxed differently. Roth IRAs are funded\n /// with after-tax dollars so contributions are not tax deductible, but when you start\n /// withdrawing funds, qualified distributions are tax free.\n /// \n\n AccountType[AccountType[\"Roth_IRA\"] = 6] = \"Roth_IRA\"; /// \n /// Simplified employee pension plan IRAs are retirement savings plans established by\n /// employers, including self-employed individuals, for the benefit of their employees.\n /// Employers may make tax-deductible contributions on behalf of eligible employees,\n /// and are made on a discrtionary basis. If the employer does contribute, it must\n /// contribute the same percentage of compensation to all employees eligible for the\n /// plan.\n /// \n\n AccountType[AccountType[\"SEP_IRA\"] = 7] = \"SEP_IRA\"; /// \n /// Joint Tenants in Common accounts are owned by at least two people with no rights of\n /// survivorship afforded to any of the account holders. In these accounts, a surviving\n /// tenant of the account does not necessarily acquire the rights and assets of the\n /// deceased person. Instead, each tenant can stipulate in a written will how his/her\n /// assets will be distributed upon his/her death.\n /// \n\n AccountType[AccountType[\"JTIC\"] = 8] = \"JTIC\"; /// \n /// The corporate resolution will specify which officers may trade in the corporation's\n /// account. In addition, a certified copy of the corporate charter and the company's\n /// bylaws are required to open a margin account. There are two sub-categories:\n /// S-Corp and C-Corp.\n /// \n\n AccountType[AccountType[\"Corporate\"] = 9] = \"Corporate\"; /// \n /// Limited Liability Company is a corporate structure whereby the members of the\n /// company cannot be held personally liable for the company's debts or liabilities.\n /// LLCs are essentially hybrid entities that combine the characteristics of a\n /// corporation and a partnership or sole proprietorship.\n /// \n\n AccountType[AccountType[\"LLC\"] = 10] = \"LLC\"; /// \n /// Partnerships are an arrangement by which two or more persons agree to share in all\n /// assets, profits and financial and legal liabilities of a business. Such partnerships\n /// have unlimited liability, which means their personal assets are liable to the\n /// partnership's obligations.\n /// \n\n AccountType[AccountType[\"Partnership\"] = 11] = \"Partnership\"; /// \n /// Qualified Plans meet Internal Revenue Code Section 401(1) and are therefore eligible\n /// to receive certain tax benefits. They are established by an employer for the benefit\n /// of the company's employees, and give employers a tax break for the contributions\n /// they make for their employees. They may also allow employees to defer a portion of\n /// their salaries into the plan to reduce employees' present income-tax liability by\n /// reducing taxable income.\n /// \n\n AccountType[AccountType[\"Qualified_Plan\"] = 12] = \"Qualified_Plan\"; /// \n /// If the taxpayer is a sole business owner or professional in their own practice, they\n /// are usually practicing as a sole proprietor. In this type of entity, you report\n /// business profit or loss on your personal tax return.\n /// \n\n AccountType[AccountType[\"Sole_Proprietorship\"] = 13] = \"Sole_Proprietorship\"; /// \n /// An Investment Club is a group of people who pool their money to make investments.\n /// Usually, investment clubs are organized as partnerships and after the members study\n /// different investments, the group decides to buy or sell based on a majority vote of\n /// the members.\n /// \n\n AccountType[AccountType[\"InvestmentClub\"] = 14] = \"InvestmentClub\"; /// \n /// Tenants by Entirety accounts are joint accounts in which married couples can hold\n /// the title to a property. In order for one spouse to modify his or her interest in\n /// the property in any way, the consent of both spouses is required by tenants by\n /// entirety. It also provides that when one spouse passes away, the surviving spouse\n /// gains full ownership of the property.\n /// \n\n AccountType[AccountType[\"TBE\"] = 15] = \"TBE\"; /// \n /// Joint Community Property (also known as marital property) accounts refer to a U.S.\n /// state-level legal distinction of a married individual's assets. Property acquired\n /// by either spouse during a marriage is considered community property, belonging to\n /// both partners of marriage.\n /// \n\n AccountType[AccountType[\"CommunityProperty\"] = 16] = \"CommunityProperty\"; /// \n /// Coverdell / Educational IRAs allow individuals to contribute up to $2,000 in\n /// after-tax dollars to an educational IRA for each student under the age of 18\n /// years of age. The money is allowed to grow tax deferred and the growth may be\n /// withdrawn tax free, as long as the money is used for educational purposes.\n /// \n\n AccountType[AccountType[\"Coverdell_IRA\"] = 17] = \"Coverdell_IRA\"; /// \n /// Uniform Gifts to Minors Act (UGMA) and Uniform Trasfers to Minors Act (UTMA)\n /// allow minors to own assets including securities. Individuals can establish UGMA\n /// accounts on behalf of minors or beneficiaries, eliminating the need for an\n /// attorney to establish a special trust fund.\n /// \n\n AccountType[AccountType[\"UGMA\"] = 18] = \"UGMA\";\n})(AccountType || (AccountType = {}));\n\nexport var MarketStateTypes;\n\n(function (MarketStateTypes) {\n MarketStateTypes[\"Open\"] = \"Open\";\n MarketStateTypes[\"Close\"] = \"Close\";\n})(MarketStateTypes || (MarketStateTypes = {}));\n\nexport var Groups;\n\n(function (Groups) {\n Groups[\"mb\"] = \"mb\";\n Groups[\"tb\"] = \"tb\";\n})(Groups || (Groups = {}));\n\nexport var FieldRequirementTypes;\n\n(function (FieldRequirementTypes) {\n FieldRequirementTypes[\"LengthRange\"] = \"length-range\";\n FieldRequirementTypes[\"LengthMin\"] = \"length-min\";\n FieldRequirementTypes[\"LowerMin\"] = \"lower-min\";\n FieldRequirementTypes[\"UpperMin\"] = \"upper-min\";\n FieldRequirementTypes[\"DigitMin\"] = \"digit-min\";\n FieldRequirementTypes[\"SpecialMin\"] = \"special-min\";\n FieldRequirementTypes[\"SpecialAcceptable\"] = \"special-acceptable\";\n FieldRequirementTypes[\"ContainsUsername\"] = \"contains-username\";\n FieldRequirementTypes[\"EqualsEmail\"] = \"equals-email\";\n FieldRequirementTypes[\"ContainsForbiddenKeywords\"] = \"contains-forbidden-keywords\";\n FieldRequirementTypes[\"ContainsLastName\"] = \"contains-last-name\";\n FieldRequirementTypes[\"ContainsFirstName\"] = \"contains-first-name\";\n FieldRequirementTypes[\"RepeatedPassword\"] = \"repeated-password\";\n})(FieldRequirementTypes || (FieldRequirementTypes = {}));","import { BlockType } from './enums'; // all available block types, in custom order\n\nexport var AllBlockTypes = [BlockType.Order, BlockType.Activity, BlockType.Account, BlockType.PriceChart, BlockType.Quote, BlockType.Info, BlockType.OptionChain, BlockType.Positions, BlockType.Favorites, BlockType.AccountTransfer, BlockType.AccountManagement, BlockType.AdminTools, BlockType.Analytics, BlockType.AccountStatements, BlockType.SubAccountManagement];\nexport var AllBlocksCategorized = {\n front: [BlockType.Order, BlockType.Quote, BlockType.OptionChain, BlockType.PriceChart, BlockType.Favorites, BlockType.Info],\n middle: [BlockType.Positions, BlockType.Activity, BlockType.AccountTransfer],\n back: [BlockType.Account, BlockType.AccountStatements, BlockType.AccountManagement, BlockType.Analytics, BlockType.AdminTools, BlockType.SubAccountManagement]\n};","export var ActivityTimeframes;\n\n(function (ActivityTimeframes) {\n ActivityTimeframes[ActivityTimeframes[\"Today\"] = 0] = \"Today\";\n ActivityTimeframes[ActivityTimeframes[\"Week\"] = 1] = \"Week\";\n ActivityTimeframes[ActivityTimeframes[\"Month\"] = 2] = \"Month\";\n ActivityTimeframes[ActivityTimeframes[\"Year\"] = 3] = \"Year\";\n ActivityTimeframes[ActivityTimeframes[\"Three Years\"] = 4] = \"Three Years\";\n})(ActivityTimeframes || (ActivityTimeframes = {}));","export var CashieringRoute;\n\n(function (CashieringRoute) {\n CashieringRoute[\"Withdraw\"] = \"withdraw\";\n CashieringRoute[\"Deposit\"] = \"deposit\";\n CashieringRoute[\"Accounts\"] = \"accounts\";\n CashieringRoute[\"OAuthPlaidRedirect\"] = \"oauth\";\n})(CashieringRoute || (CashieringRoute = {}));\n\nexport var CashieringView;\n\n(function (CashieringView) {\n CashieringView[\"Authorize\"] = \"authorize\";\n CashieringView[\"Amount\"] = \"amount\";\n CashieringView[\"Type\"] = \"type\";\n CashieringView[\"Review\"] = \"review\";\n CashieringView[\"Manage\"] = \"manage\";\n CashieringView[\"OAuthPlaidRedirect\"] = \"oauth\";\n})(CashieringView || (CashieringView = {}));\n\nexport var CashieringManageAction;\n\n(function (CashieringManageAction) {\n CashieringManageAction[\"Add\"] = \"add\";\n CashieringManageAction[\"AddOptions\"] = \"add-options\";\n CashieringManageAction[\"Verify\"] = \"verify\";\n CashieringManageAction[\"Rename\"] = \"rename\";\n CashieringManageAction[\"Delete\"] = \"delete\";\n CashieringManageAction[\"Close\"] = \"close\";\n CashieringManageAction[\"Upload\"] = \"upload\";\n})(CashieringManageAction || (CashieringManageAction = {}));\n\nexport var WireType;\n\n(function (WireType) {\n WireType[\"Domestic\"] = \"domestic\";\n WireType[\"International\"] = \"international\";\n})(WireType || (WireType = {}));\n\nexport var WireAccountType;\n\n(function (WireAccountType) {\n WireAccountType[\"SelfOwned\"] = \"self-owned\";\n WireAccountType[\"ThirdParty\"] = \"third-party\";\n})(WireAccountType || (WireAccountType = {}));\n\nexport var TransferBankIdentifierType;\n\n(function (TransferBankIdentifierType) {\n TransferBankIdentifierType[\"ABA\"] = \"ABA\";\n TransferBankIdentifierType[\"BIC\"] = \"BIC\";\n})(TransferBankIdentifierType || (TransferBankIdentifierType = {}));\n\nexport var TransferPendingStates = ['PendingRepCreateApproval', 'PendingFirmCreateApproval'];\nexport var TransferStates = [].concat(TransferPendingStates, ['Rejected', 'Canceled', 'Approved', 'FundsHeld', 'FundsPosted', 'SentToBank', 'Complete', 'Void', 'Returned', 'StopPayment', 'Pending', 'PendingPrinting']); // All transfer states that do not impact the current day ACH limit\n\nexport var TransferStatesNotAffectingAchLimit = ['Rejected', 'CreateRejected', 'Canceled', 'Void', 'Returned', 'StopPayment', 'FailedAtBank'];\nexport var TransferRecipientBankState;\n\n(function (TransferRecipientBankState) {\n TransferRecipientBankState[\"Pending\"] = \"Pending\";\n TransferRecipientBankState[\"PendingFirmApproval\"] = \"PendingFirmApproval\";\n TransferRecipientBankState[\"Approved\"] = \"Approved\";\n TransferRecipientBankState[\"Rejected\"] = \"Rejected\";\n})(TransferRecipientBankState || (TransferRecipientBankState = {}));\n\nexport var AchRelationshipPendingStates = ['PendingCreateApproval', 'PendingCancelApproval'];\nexport var CashieringPendingStates = [].concat(AchRelationshipPendingStates, TransferPendingStates);\nexport var BankRiskScoreValues;\n\n(function (BankRiskScoreValues) {\n BankRiskScoreValues[\"LowRisk\"] = \"LowRisk\";\n BankRiskScoreValues[\"MediumRisk\"] = \"MediumRisk\";\n BankRiskScoreValues[\"HighRisk\"] = \"HighRisk\";\n})(BankRiskScoreValues || (BankRiskScoreValues = {}));\n\nexport var CashieringSearchEntityType;\n\n(function (CashieringSearchEntityType) {\n CashieringSearchEntityType[\"Transfer\"] = \"Transfer\";\n CashieringSearchEntityType[\"AchRelationship\"] = \"AchRelationship\";\n CashieringSearchEntityType[\"TransferRecipientBank\"] = \"TransferRecipientBank\";\n CashieringSearchEntityType[\"TransferWireInstruction\"] = \"TransferWireInstruction\";\n})(CashieringSearchEntityType || (CashieringSearchEntityType = {}));\n\nexport var CashieringDocumentType;\n\n(function (CashieringDocumentType) {\n CashieringDocumentType[\"BankStatement\"] = \"BankStatement\";\n CashieringDocumentType[\"VoidedCheck\"] = \"VoidedCheck\";\n})(CashieringDocumentType || (CashieringDocumentType = {}));\n\nexport var AllCashieringDocumentTypes = [CashieringDocumentType.BankStatement, CashieringDocumentType.VoidedCheck];\nexport var AccountStatuses = ['Prospect', 'ProspectApplicationStarted', 'ProspectApplicationCompleted', 'ProspectApplicationExpired', 'Processing', 'ProcessingItemsMissing', 'ActiveNotFunded', 'Active', 'Closed', 'ClosedNeverFunded', 'Rejected', 'Deceased', 'ActiveClosingTradesOnly'];","// https://www.iso.org\nexport var Country;\n\n(function (Country) {\n Country[\"Afghanistan\"] = \"AFG\";\n Country[\"AlandIslands\"] = \"ALA\";\n Country[\"Albania\"] = \"ALB\";\n Country[\"Algeria\"] = \"DZA\";\n Country[\"AmericanSamoa\"] = \"ASM\";\n Country[\"Andorra\"] = \"AND\";\n Country[\"Angola\"] = \"AGO\";\n Country[\"Anguilla\"] = \"AIA\";\n Country[\"Antarctica\"] = \"ATA\";\n Country[\"AntiguaAndBarbuda\"] = \"ATG\";\n Country[\"Argentina\"] = \"ARG\";\n Country[\"Armenia\"] = \"ARM\";\n Country[\"Aruba\"] = \"ABW\";\n Country[\"Australia\"] = \"AUS\";\n Country[\"Austria\"] = \"AUT\";\n Country[\"Azerbaijan\"] = \"AZE\";\n Country[\"Bahamas\"] = \"BHS\";\n Country[\"Bahrain\"] = \"BHR\";\n Country[\"Bangladesh\"] = \"BGD\";\n Country[\"Barbados\"] = \"BRB\";\n Country[\"Belarus\"] = \"BLR\";\n Country[\"Belgium\"] = \"BEL\";\n Country[\"Belize\"] = \"BLZ\";\n Country[\"Benin\"] = \"BEN\";\n Country[\"Bermuda\"] = \"BMU\";\n Country[\"Bhutan\"] = \"BTN\";\n Country[\"BoliviaPlurinationalStateOf\"] = \"BOL\";\n Country[\"BonaireSintEustatiusAndSaba\"] = \"BES\";\n Country[\"BosniaAndHerzegovina\"] = \"BIH\";\n Country[\"Botswana\"] = \"BWA\";\n Country[\"BouvetIsland\"] = \"BVT\";\n Country[\"Brazil\"] = \"BRA\";\n Country[\"BritishIndianOceanTerritory\"] = \"IOT\";\n Country[\"BruneiDarussalam\"] = \"BRN\";\n Country[\"Bulgaria\"] = \"BGR\";\n Country[\"BurkinaFaso\"] = \"BFA\";\n Country[\"Burundi\"] = \"BDI\";\n Country[\"CaboVerde\"] = \"CPV\";\n Country[\"Cambodia\"] = \"KHM\";\n Country[\"Cameroon\"] = \"CMR\";\n Country[\"Canada\"] = \"CAN\";\n Country[\"CaymanIslands\"] = \"CYM\";\n Country[\"CentralAfricanRepublic\"] = \"CAF\";\n Country[\"Chad\"] = \"TCD\";\n Country[\"Chile\"] = \"CHL\";\n Country[\"China\"] = \"CHN\";\n Country[\"ChristmasIsland\"] = \"CXR\";\n Country[\"CocosKeelingIslands\"] = \"CCK\";\n Country[\"Colombia\"] = \"COL\";\n Country[\"Comoros\"] = \"COM\";\n Country[\"CongoDemocraticRepublicOf\"] = \"COD\";\n Country[\"Congo\"] = \"COG\";\n Country[\"CookIslands\"] = \"COK\";\n Country[\"CostaRica\"] = \"CRI\";\n Country[\"Croatia\"] = \"HRV\";\n Country[\"Cuba\"] = \"CUB\";\n Country[\"Curacao\"] = \"CUW\";\n Country[\"Cyprus\"] = \"CYP\";\n Country[\"Czechia\"] = \"CZE\";\n Country[\"CoteDIvoire\"] = \"CIV\";\n Country[\"Denmark\"] = \"DNK\";\n Country[\"Djibouti\"] = \"DJI\";\n Country[\"Dominica\"] = \"DMA\";\n Country[\"DominicanRepublic\"] = \"DOM\";\n Country[\"Ecuador\"] = \"ECU\";\n Country[\"Egypt\"] = \"EGY\";\n Country[\"ElSalvador\"] = \"SLV\";\n Country[\"EquatorialGuinea\"] = \"GNQ\";\n Country[\"Eritrea\"] = \"ERI\";\n Country[\"Estonia\"] = \"EST\";\n Country[\"Eswatini\"] = \"SWZ\";\n Country[\"Ethiopia\"] = \"ETH\";\n Country[\"FalklandIslandsMalvinas\"] = \"FLK\";\n Country[\"FaroeIslands\"] = \"FRO\";\n Country[\"Fiji\"] = \"FJI\";\n Country[\"Finland\"] = \"FIN\";\n Country[\"France\"] = \"FRA\";\n Country[\"FrenchGuiana\"] = \"GUF\";\n Country[\"FrenchPolynesia\"] = \"PYF\";\n Country[\"FrenchSouthernTerritories\"] = \"ATF\";\n Country[\"Gabon\"] = \"GAB\";\n Country[\"Gambia\"] = \"GMB\";\n Country[\"Georgia\"] = \"GEO\";\n Country[\"Germany\"] = \"DEU\";\n Country[\"Ghana\"] = \"GHA\";\n Country[\"Gibraltar\"] = \"GIB\";\n Country[\"Greece\"] = \"GRC\";\n Country[\"Greenland\"] = \"GRL\";\n Country[\"Grenada\"] = \"GRD\";\n Country[\"Guadeloupe\"] = \"GLP\";\n Country[\"Guam\"] = \"GUM\";\n Country[\"Guatemala\"] = \"GTM\";\n Country[\"Guernsey\"] = \"GGY\";\n Country[\"Guinea\"] = \"GIN\";\n Country[\"GuineaBissau\"] = \"GNB\";\n Country[\"Guyana\"] = \"GUY\";\n Country[\"Haiti\"] = \"HTI\";\n Country[\"HeardIslandAndMcDonaldIslands\"] = \"HMD\";\n Country[\"HolySee\"] = \"VAT\";\n Country[\"Honduras\"] = \"HND\";\n Country[\"HongKong\"] = \"HKG\";\n Country[\"Hungary\"] = \"HUN\";\n Country[\"Iceland\"] = \"ISL\";\n Country[\"India\"] = \"IND\";\n Country[\"Indonesia\"] = \"IDN\";\n Country[\"IranIslamicRepublicOf\"] = \"IRN\";\n Country[\"Iraq\"] = \"IRQ\";\n Country[\"Ireland\"] = \"IRL\";\n Country[\"IsleOfMan\"] = \"IMN\";\n Country[\"Israel\"] = \"ISR\";\n Country[\"Italy\"] = \"ITA\";\n Country[\"Jamaica\"] = \"JAM\";\n Country[\"Japan\"] = \"JPN\";\n Country[\"Jersey\"] = \"JEY\";\n Country[\"Jordan\"] = \"JOR\";\n Country[\"Kazakhstan\"] = \"KAZ\";\n Country[\"Kenya\"] = \"KEN\";\n Country[\"Kiribati\"] = \"KIR\";\n Country[\"KoreaDemocraticPeoplesRepublicOf\"] = \"PRK\";\n Country[\"KoreaRepublicOf\"] = \"KOR\";\n Country[\"Kuwait\"] = \"KWT\";\n Country[\"Kyrgyzstan\"] = \"KGZ\";\n Country[\"LaoPeoplesDemocraticRepublic\"] = \"LAO\";\n Country[\"Latvia\"] = \"LVA\";\n Country[\"Lebanon\"] = \"LBN\";\n Country[\"Lesotho\"] = \"LSO\";\n Country[\"Liberia\"] = \"LBR\";\n Country[\"Libya\"] = \"LBY\";\n Country[\"Liechtenstein\"] = \"LIE\";\n Country[\"Lithuania\"] = \"LTU\";\n Country[\"Luxembourg\"] = \"LUX\";\n Country[\"Macao\"] = \"MAC\";\n Country[\"Madagascar\"] = \"MDG\";\n Country[\"Malawi\"] = \"MWI\";\n Country[\"Malaysia\"] = \"MYS\";\n Country[\"Maldives\"] = \"MDV\";\n Country[\"Mali\"] = \"MLI\";\n Country[\"Malta\"] = \"MLT\";\n Country[\"MarshallIslands\"] = \"MHL\";\n Country[\"Martinique\"] = \"MTQ\";\n Country[\"Mauritania\"] = \"MRT\";\n Country[\"Mauritius\"] = \"MUS\";\n Country[\"Mayotte\"] = \"MYT\";\n Country[\"Mexico\"] = \"MEX\";\n Country[\"MicronesiaFederatedStatesOf\"] = \"FSM\";\n Country[\"MoldovaRepublicOf\"] = \"MDA\";\n Country[\"Monaco\"] = \"MCO\";\n Country[\"Mongolia\"] = \"MNG\";\n Country[\"Montenegro\"] = \"MNE\";\n Country[\"Montserrat\"] = \"MSR\";\n Country[\"Morocco\"] = \"MAR\";\n Country[\"Mozambique\"] = \"MOZ\";\n Country[\"Myanmar\"] = \"MMR\";\n Country[\"Namibia\"] = \"NAM\";\n Country[\"Nauru\"] = \"NRU\";\n Country[\"Nepal\"] = \"NPL\";\n Country[\"Netherlands\"] = \"NLD\";\n Country[\"NewCaledonia\"] = \"NCL\";\n Country[\"NewZealand\"] = \"NZL\";\n Country[\"Nicaragua\"] = \"NIC\";\n Country[\"Niger\"] = \"NER\";\n Country[\"Nigeria\"] = \"NGA\";\n Country[\"Niue\"] = \"NIU\";\n Country[\"NorfolkIsland\"] = \"NFK\";\n Country[\"NorthMacedonia\"] = \"MKD\";\n Country[\"NorthernMarianaIslands\"] = \"MNP\";\n Country[\"Norway\"] = \"NOR\";\n Country[\"Oman\"] = \"OMN\";\n Country[\"Pakistan\"] = \"PAK\";\n Country[\"Palau\"] = \"PLW\";\n Country[\"PalestineStateOf\"] = \"PSE\";\n Country[\"Panama\"] = \"PAN\";\n Country[\"PapuaNewGuinea\"] = \"PNG\";\n Country[\"Paraguay\"] = \"PRY\";\n Country[\"Peru\"] = \"PER\";\n Country[\"Philippines\"] = \"PHL\";\n Country[\"Pitcairn\"] = \"PCN\";\n Country[\"Poland\"] = \"POL\";\n Country[\"Portugal\"] = \"PRT\";\n Country[\"PuertoRico\"] = \"PRI\";\n Country[\"Qatar\"] = \"QAT\";\n Country[\"Romania\"] = \"ROU\";\n Country[\"RussianFederation\"] = \"RUS\";\n Country[\"Rwanda\"] = \"RWA\";\n Country[\"Reunion\"] = \"REU\";\n Country[\"SaintBarthelemy\"] = \"BLM\";\n Country[\"SaintHelenaAscensionAndTristandaCunha\"] = \"SHN\";\n Country[\"SaintKittsAndNevis\"] = \"KNA\";\n Country[\"SaintLucia\"] = \"LCA\";\n Country[\"SaintMartin\"] = \"MAF\";\n Country[\"SaintPierreAndMiquelon\"] = \"SPM\";\n Country[\"SaintVincentAndGrenadines\"] = \"VCT\";\n Country[\"Samoa\"] = \"WSM\";\n Country[\"SanMarino\"] = \"SMR\";\n Country[\"SaoTomeAndPrincipe\"] = \"STP\";\n Country[\"SaudiArabia\"] = \"SAU\";\n Country[\"Senegal\"] = \"SEN\";\n Country[\"Serbia\"] = \"SRB\";\n Country[\"Seychelles\"] = \"SYC\";\n Country[\"SierraLeone\"] = \"SLE\";\n Country[\"Singapore\"] = \"SGP\";\n Country[\"SintMaarten\"] = \"SXM\";\n Country[\"Slovakia\"] = \"SVK\";\n Country[\"Slovenia\"] = \"SVN\";\n Country[\"SolomonIslands\"] = \"SLB\";\n Country[\"Somalia\"] = \"SOM\";\n Country[\"SouthAfrica\"] = \"ZAF\";\n Country[\"SouthGeorgiaAndSouthSandwichIslands\"] = \"SGS\";\n Country[\"SouthSudan\"] = \"SSD\";\n Country[\"Spain\"] = \"ESP\";\n Country[\"SriLanka\"] = \"LKA\";\n Country[\"Sudan\"] = \"SDN\";\n Country[\"Suriname\"] = \"SUR\";\n Country[\"SvalbardAndJanMayen\"] = \"SJM\";\n Country[\"Sweden\"] = \"SWE\";\n Country[\"Switzerland\"] = \"CHE\";\n Country[\"SyrianArabRepublic\"] = \"SYR\";\n Country[\"TaiwanProvinceOfChina\"] = \"TWN\";\n Country[\"Tajikistan\"] = \"TJK\";\n Country[\"TanzaniaUnitedRepublicOf\"] = \"TZA\";\n Country[\"Thailand\"] = \"THA\";\n Country[\"TimorLeste\"] = \"TLS\";\n Country[\"Togo\"] = \"TGO\";\n Country[\"Tokelau\"] = \"TKL\";\n Country[\"Tonga\"] = \"TON\";\n Country[\"TrinidadAndTobago\"] = \"TTO\";\n Country[\"Tunisia\"] = \"TUN\";\n Country[\"Turkey\"] = \"TUR\";\n Country[\"Turkmenistan\"] = \"TKM\";\n Country[\"TurksAndCaicosIslands\"] = \"TCA\";\n Country[\"Tuvalu\"] = \"TUV\";\n Country[\"Uganda\"] = \"UGA\";\n Country[\"Ukraine\"] = \"UKR\";\n Country[\"UnitedArabEmirates\"] = \"ARE\";\n Country[\"UnitedKingdomOfGreatBritainAndNorthernIreland\"] = \"GBR\";\n Country[\"UnitedStatesMinorOutlyingIslands\"] = \"UMI\";\n Country[\"UnitedStatesOfAmerica\"] = \"USA\";\n Country[\"Uruguay\"] = \"URY\";\n Country[\"Uzbekistan\"] = \"UZB\";\n Country[\"Vanuatu\"] = \"VUT\";\n Country[\"VenezuelaBolivarianRepublicOf\"] = \"VEN\";\n Country[\"VietNam\"] = \"VNM\";\n Country[\"VirginIslandsBritish\"] = \"VGB\";\n Country[\"VirginIslandsUS\"] = \"VIR\";\n Country[\"WallisAndFutuna\"] = \"WLF\";\n Country[\"WesternSahara\"] = \"ESH\";\n Country[\"Yemen\"] = \"YEM\";\n Country[\"Zambia\"] = \"ZMB\";\n Country[\"Zimbabwe\"] = \"ZWE\";\n})(Country || (Country = {}));\n\nexport var AllCountries = [Country.Afghanistan, Country.AlandIslands, Country.Albania, Country.Algeria, Country.AmericanSamoa, Country.Andorra, Country.Angola, Country.Anguilla, Country.Antarctica, Country.AntiguaAndBarbuda, Country.Argentina, Country.Armenia, Country.Aruba, Country.Australia, Country.Austria, Country.Azerbaijan, Country.Bahamas, Country.Bahrain, Country.Bangladesh, Country.Barbados, Country.Belarus, Country.Belgium, Country.Belize, Country.Benin, Country.Bermuda, Country.Bhutan, Country.BoliviaPlurinationalStateOf, Country.BonaireSintEustatiusAndSaba, Country.BosniaAndHerzegovina, Country.Botswana, Country.BouvetIsland, Country.Brazil, Country.BritishIndianOceanTerritory, Country.BruneiDarussalam, Country.Bulgaria, Country.BurkinaFaso, Country.Burundi, Country.CaboVerde, Country.Cambodia, Country.Cameroon, Country.Canada, Country.CaymanIslands, Country.CentralAfricanRepublic, Country.Chad, Country.Chile, Country.China, Country.ChristmasIsland, Country.CocosKeelingIslands, Country.Colombia, Country.Comoros, Country.CongoDemocraticRepublicOf, Country.Congo, Country.CookIslands, Country.CostaRica, Country.Croatia, Country.Cuba, Country.Curacao, Country.Cyprus, Country.Czechia, Country.CoteDIvoire, Country.Denmark, Country.Djibouti, Country.Dominica, Country.DominicanRepublic, Country.Ecuador, Country.Egypt, Country.ElSalvador, Country.EquatorialGuinea, Country.Eritrea, Country.Estonia, Country.Eswatini, Country.Ethiopia, Country.FalklandIslandsMalvinas, Country.FaroeIslands, Country.Fiji, Country.Finland, Country.France, Country.FrenchGuiana, Country.FrenchPolynesia, Country.FrenchSouthernTerritories, Country.Gabon, Country.Gambia, Country.Georgia, Country.Germany, Country.Ghana, Country.Gibraltar, Country.Greece, Country.Greenland, Country.Grenada, Country.Guadeloupe, Country.Guam, Country.Guatemala, Country.Guernsey, Country.Guinea, Country.GuineaBissau, Country.Guyana, Country.Haiti, Country.HeardIslandAndMcDonaldIslands, Country.HolySee, Country.Honduras, Country.HongKong, Country.Hungary, Country.Iceland, Country.India, Country.Indonesia, Country.IranIslamicRepublicOf, Country.Iraq, Country.Ireland, Country.IsleOfMan, Country.Israel, Country.Italy, Country.Jamaica, Country.Japan, Country.Jersey, Country.Jordan, Country.Kazakhstan, Country.Kenya, Country.Kiribati, Country.KoreaDemocraticPeoplesRepublicOf, Country.KoreaRepublicOf, Country.Kuwait, Country.Kyrgyzstan, Country.LaoPeoplesDemocraticRepublic, Country.Latvia, Country.Lebanon, Country.Lesotho, Country.Liberia, Country.Libya, Country.Liechtenstein, Country.Lithuania, Country.Luxembourg, Country.Macao, Country.Madagascar, Country.Malawi, Country.Malaysia, Country.Maldives, Country.Mali, Country.Malta, Country.MarshallIslands, Country.Martinique, Country.Mauritania, Country.Mauritius, Country.Mayotte, Country.Mexico, Country.MicronesiaFederatedStatesOf, Country.MoldovaRepublicOf, Country.Monaco, Country.Mongolia, Country.Montenegro, Country.Montserrat, Country.Morocco, Country.Mozambique, Country.Myanmar, Country.Namibia, Country.Nauru, Country.Nepal, Country.Netherlands, Country.NewCaledonia, Country.NewZealand, Country.Nicaragua, Country.Niger, Country.Nigeria, Country.Niue, Country.NorfolkIsland, Country.NorthMacedonia, Country.NorthernMarianaIslands, Country.Norway, Country.Oman, Country.Pakistan, Country.Palau, Country.PalestineStateOf, Country.Panama, Country.PapuaNewGuinea, Country.Paraguay, Country.Peru, Country.Philippines, Country.Pitcairn, Country.Poland, Country.Portugal, Country.PuertoRico, Country.Qatar, Country.Romania, Country.RussianFederation, Country.Rwanda, Country.Reunion, Country.SaintBarthelemy, Country.SaintHelenaAscensionAndTristandaCunha, Country.SaintKittsAndNevis, Country.SaintLucia, Country.SaintMartin, Country.SaintPierreAndMiquelon, Country.SaintVincentAndGrenadines, Country.Samoa, Country.SanMarino, Country.SaoTomeAndPrincipe, Country.SaudiArabia, Country.Senegal, Country.Serbia, Country.Seychelles, Country.SierraLeone, Country.Singapore, Country.SintMaarten, Country.Slovakia, Country.Slovenia, Country.SolomonIslands, Country.Somalia, Country.SouthAfrica, Country.SouthGeorgiaAndSouthSandwichIslands, Country.SouthSudan, Country.Spain, Country.SriLanka, Country.Sudan, Country.Suriname, Country.SvalbardAndJanMayen, Country.Sweden, Country.Switzerland, Country.SyrianArabRepublic, Country.TaiwanProvinceOfChina, Country.Tajikistan, Country.TanzaniaUnitedRepublicOf, Country.Thailand, Country.TimorLeste, Country.Togo, Country.Tokelau, Country.Tonga, Country.TrinidadAndTobago, Country.Tunisia, Country.Turkey, Country.Turkmenistan, Country.TurksAndCaicosIslands, Country.Tuvalu, Country.Uganda, Country.Ukraine, Country.UnitedArabEmirates, Country.UnitedKingdomOfGreatBritainAndNorthernIreland, Country.UnitedStatesMinorOutlyingIslands, Country.UnitedStatesOfAmerica, Country.Uruguay, Country.Uzbekistan, Country.Vanuatu, Country.VenezuelaBolivarianRepublicOf, Country.VietNam, Country.VirginIslandsBritish, Country.VirginIslandsUS, Country.WallisAndFutuna, Country.WesternSahara, Country.Yemen, Country.Zambia, Country.Zimbabwe];\nexport var getCountryNameByCode = function getCountryNameByCode(code) {\n var countryName = Object.keys(Country).find(function (key) {\n return Country[key] === code;\n }) || ''; // Insert space before each capital letter and trim the leading space if any\n\n return countryName.replace(/([A-Z])/g, ' $1').trim();\n};","export var DurationValues = {\n GTC: 'GTC',\n Day: 'Day',\n Manual: 'Manual'\n};\nexport var Durations;\n\n(function (Durations) {\n Durations[\"GTC\"] = \"GTC\";\n Durations[\"Day\"] = \"Day\";\n Durations[\"Manual\"] = \"Manual\";\n})(Durations || (Durations = {}));","import { Country } from './Country';\nexport var BaseApiVersion = 'v1';\nexport var BaseApiUrl = \"/api/\".concat(BaseApiVersion);\nexport var LoginApiUrl = function LoginApiUrl(subroot) {\n return \"\".concat(BaseApiUrl, \"/\").concat(subroot ? \"\".concat(subroot, \"/login\") : 'login');\n};\nexport var StorageGridPath = \"grid\";\nexport var objects = {\n block: 'block',\n blocks: 'blocks',\n dashboard: 'dashboard',\n dashboards: 'dashboards',\n settings: 'settings',\n debugSettings: 'debugsettings'\n};\nexport var StorageBlocksPath = function StorageBlocksPath(dashboardId) {\n return \"\".concat(objects.blocks, \"/\").concat(dashboardId);\n};\nexport var StorageBlockPath = function StorageBlockPath(blockId) {\n return \"\".concat(objects.block, \"/\").concat(blockId);\n};\nexport var StorageBlockSettingsPath = function StorageBlockSettingsPath(blockId) {\n return \"\".concat(objects.block, \"/\").concat(blockId, \"/\").concat(objects.settings);\n};\nexport var StorageSettingsBlockPath = \"\".concat(objects.settings, \"/block\");\nexport var StorageSettingsFieldPath = function StorageSettingsFieldPath(field) {\n return \"\".concat(objects.settings, \"/\").concat(field);\n};\nexport var StorageSettingsBlockTypeFieldPath = function StorageSettingsBlockTypeFieldPath(type) {\n return StorageSettingsFieldPath(\"\".concat(objects.block, \"-\").concat(type));\n};\nexport var StorageDashboardsPath = \"\".concat(objects.dashboards);\nexport var StorageDashboardPath = \"\".concat(objects.dashboard);\nexport var CreateDashboardPath = \"\".concat(objects.dashboard, \"/new\");\nexport var DefaultDashboardPath = \"\".concat(objects.dashboard, \"/defaults\");\nexport var DeleteDashboardPath = function DeleteDashboardPath(dashboardId) {\n return \"\".concat(objects.dashboard, \"/\").concat(dashboardId);\n};\nexport var StorageFavoritesPath = \"favorites\";\nexport var RefreshTokenPath = \"/refresh_token\";\nexport var DashboardSettingsPath = \"\".concat(objects.settings, \"/dashboard\");\nexport var PendingApplicationsPath = '/db/applications';\nexport var StorageStrategyPath = \"resource/strategy\";\nexport var MAX_TRANSFER_AMOUNT = 50000; // accepted countries of residence for accts\n\nexport var AcceptedCountries = [Country.Australia, Country.NewZealand, Country.UnitedKingdomOfGreatBritainAndNorthernIreland, Country.UnitedStatesOfAmerica];\nexport var ApexAcceptedCountries = [Country.Australia, Country.UnitedKingdomOfGreatBritainAndNorthernIreland, Country.UnitedStatesOfAmerica, Country.NewZealand];\nexport var RQDAcceptedCountries = [Country.Argentina, Country.Chile, Country.Peru, Country.UnitedStatesOfAmerica, Country.Uruguay];\nexport var ClientVersionHeader = 'x-client-version';\nexport var PERSIST_BLOCKS_DEBOUNCE_MS = 1000;","export var DefaultEntitlementsItem = {\n AccountNumber: '',\n ApprovedUserMarketDataEntitlementType: '',\n ApprovingUserName: '',\n FirstName: '',\n LastName: '',\n PrimaryAccountIdAssociatedWithUser: 0,\n RequestDateTime: '',\n RequestedMarketDataEntitlementType: '',\n UserId: 0,\n UserLevel: 0,\n UserName: '',\n Id: 0\n};\nexport var MarketDataEntitlementTypes;\n\n(function (MarketDataEntitlementTypes) {\n MarketDataEntitlementTypes[\"Undefined\"] = \"Undefined\";\n MarketDataEntitlementTypes[\"ProfessionalUser\"] = \"ProfessionalUser\";\n MarketDataEntitlementTypes[\"NonProfessionalUser\"] = \"NonProfessionalUser\";\n MarketDataEntitlementTypes[\"DelayedQuotesOnlyUser\"] = \"DelayedQuotesOnlyUser\";\n})(MarketDataEntitlementTypes || (MarketDataEntitlementTypes = {}));\n\nexport var AllMarketDataEntitlementTypes = [MarketDataEntitlementTypes.Undefined, MarketDataEntitlementTypes.ProfessionalUser, MarketDataEntitlementTypes.NonProfessionalUser, MarketDataEntitlementTypes.DelayedQuotesOnlyUser];","export var OptionExpirationType;\n\n(function (OptionExpirationType) {\n OptionExpirationType[OptionExpirationType[\"AM\"] = 1] = \"AM\";\n OptionExpirationType[OptionExpirationType[\"PM\"] = 2] = \"PM\";\n})(OptionExpirationType || (OptionExpirationType = {}));\n\nexport var ExpirationType;\n\n(function (ExpirationType) {\n ExpirationType[\"Monthly\"] = \"M\";\n ExpirationType[\"Weekly\"] = \"W\";\n ExpirationType[\"Quarterly\"] = \"Q\";\n})(ExpirationType || (ExpirationType = {}));","export var ReleaseNoteIssueTypes;\n\n(function (ReleaseNoteIssueTypes) {\n ReleaseNoteIssueTypes[\"NewFeature\"] = \"NewFeature\";\n ReleaseNoteIssueTypes[\"Improvement\"] = \"Improvement\";\n ReleaseNoteIssueTypes[\"BugFix\"] = \"BugFix\";\n ReleaseNoteIssueTypes[\"MarketHoliday\"] = \"MarketHoliday\";\n ReleaseNoteIssueTypes[\"TechnicalAlert\"] = \"TechnicalAlert\";\n ReleaseNoteIssueTypes[\"OperationsAlert\"] = \"OperationsAlert\";\n ReleaseNoteIssueTypes[\"CorporateActionAlert\"] = \"CorporateActionAlert\";\n})(ReleaseNoteIssueTypes || (ReleaseNoteIssueTypes = {}));\n\nexport var UserLevelTypes;\n\n(function (UserLevelTypes) {\n UserLevelTypes[\"Undefined\"] = \"Undefined\";\n UserLevelTypes[\"Admin\"] = \"Admin\";\n UserLevelTypes[\"Firm\"] = \"Firm\";\n UserLevelTypes[\"Region\"] = \"Region\";\n UserLevelTypes[\"Branch\"] = \"Branch\";\n UserLevelTypes[\"Rep\"] = \"Rep\";\n UserLevelTypes[\"Account\"] = \"Account\";\n})(UserLevelTypes || (UserLevelTypes = {}));\n\nexport var AllReleaseNoteIssueTypes = [ReleaseNoteIssueTypes.NewFeature, ReleaseNoteIssueTypes.Improvement, ReleaseNoteIssueTypes.BugFix, ReleaseNoteIssueTypes.MarketHoliday, ReleaseNoteIssueTypes.TechnicalAlert, ReleaseNoteIssueTypes.OperationsAlert, ReleaseNoteIssueTypes.CorporateActionAlert];\nexport var AllUserLevelTypes = [UserLevelTypes.Account, UserLevelTypes.Admin, UserLevelTypes.Branch, UserLevelTypes.Firm, UserLevelTypes.Region, UserLevelTypes.Rep, UserLevelTypes.Undefined];\nexport var AlertStatusTypes;\n\n(function (AlertStatusTypes) {\n AlertStatusTypes[\"Active\"] = \"Active\";\n AlertStatusTypes[\"Inactive\"] = \"Inactive\";\n})(AlertStatusTypes || (AlertStatusTypes = {}));\n\nexport var AllAlertStatusTypes = [AlertStatusTypes.Active, AlertStatusTypes.Inactive];","export var AssetSymbolUndefinedException = {\n error: \"AssetSymbol was undefined\",\n message: \"AssetSymbol must have a value\"\n};\nexport var AccountIdException = {\n error: \"Account is undefined\",\n message: \"Account is undefined\"\n};\nexport var ExpirationUndefinedException = {\n error: \"Expiration was undefined\",\n message: \"Expiration must have a value\"\n};\nexport var toException = function toException(error, data) {\n return Object.assign({}, error, {\n data: data\n });\n};","export var SizeType;\n\n(function (SizeType) {\n SizeType[\"lg\"] = \"lg\";\n SizeType[\"md\"] = \"md\";\n SizeType[\"sm\"] = \"sm\";\n SizeType[\"xs\"] = \"xs\";\n SizeType[\"xxs\"] = \"xxs\";\n})(SizeType || (SizeType = {}));\n\nexport var DefaultGridLayout = {\n breakpoint: SizeType.lg,\n columns: 6,\n gridColumnsSmall: 2,\n gridColumnsMedium: 4,\n gridColumnsLarge: 6,\n width: 1200\n};","export var OrderStrategyTypeId;\n\n(function (OrderStrategyTypeId) {\n OrderStrategyTypeId[OrderStrategyTypeId[\"Undefined\"] = 0] = \"Undefined\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Single\"] = 1] = \"Single\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Vertical\"] = 2] = \"Vertical\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Calendar\"] = 3] = \"Calendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Straddle\"] = 5] = \"Straddle\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Strangle\"] = 6] = \"Strangle\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Butterfly\"] = 7] = \"Butterfly\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Condor\"] = 8] = \"Condor\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"IronButterfly\"] = 9] = \"IronButterfly\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"IronCondor\"] = 10] = \"IronCondor\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Box\"] = 11] = \"Box\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CoveredCall\"] = 13] = \"CoveredCall\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MarriedPut\"] = 14] = \"MarriedPut\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Conversion\"] = 15] = \"Conversion\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Collar\"] = 16] = \"Collar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"SyntheticCombo\"] = 17] = \"SyntheticCombo\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CreateMyOwn\"] = 18] = \"CreateMyOwn\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"HedgeCollar\"] = 19] = \"HedgeCollar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Contingent\"] = 20] = \"Contingent\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Trailing\"] = 21] = \"Trailing\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"OneCancelsOther\"] = 22] = \"OneCancelsOther\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Stock\"] = 23] = \"Stock\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Bond\"] = 24] = \"Bond\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MutualFund\"] = 25] = \"MutualFund\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CoveredPut\"] = 26] = \"CoveredPut\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"MarriedCall\"] = 27] = \"MarriedCall\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"CallCalendar\"] = 28] = \"CallCalendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"PutCalendar\"] = 29] = \"PutCalendar\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Call\"] = 30] = \"Call\";\n OrderStrategyTypeId[OrderStrategyTypeId[\"Put\"] = 31] = \"Put\";\n})(OrderStrategyTypeId || (OrderStrategyTypeId = {}));\n\nexport var OrderStrategyType;\n\n(function (OrderStrategyType) {\n OrderStrategyType[\"undefined\"] = \"Undefined\";\n OrderStrategyType[\"Undefined\"] = \"Undefined\";\n OrderStrategyType[\"Single\"] = \"Single\";\n OrderStrategyType[\"Vertical\"] = \"Vertical\";\n OrderStrategyType[\"CallVertical\"] = \"Call Vertical\";\n OrderStrategyType[\"PutVertical\"] = \"Put Vertical\";\n OrderStrategyType[\"Calendar\"] = \"Calendar\";\n OrderStrategyType[\"CallCalendar\"] = \"Call Calendar\";\n OrderStrategyType[\"PutCalendar\"] = \"Put Calendar\";\n OrderStrategyType[\"Straddle\"] = \"Straddle\";\n OrderStrategyType[\"Strangle\"] = \"Strangle\";\n OrderStrategyType[\"Butterfly\"] = \"Butterfly\";\n OrderStrategyType[\"Condor\"] = \"Condor\";\n OrderStrategyType[\"IronButterfly\"] = \"IronButterfly\";\n OrderStrategyType[\"IronCondor\"] = \"IronCondor\";\n OrderStrategyType[\"Box\"] = \"Box\";\n OrderStrategyType[\"CoveredCall\"] = \"CoveredCall\";\n OrderStrategyType[\"MarriedPut\"] = \"MarriedPut\";\n OrderStrategyType[\"Conversion\"] = \"Conversion\";\n OrderStrategyType[\"Collar\"] = \"Collar\";\n OrderStrategyType[\"SyntheticCombo\"] = \"SyntheticCombo\";\n OrderStrategyType[\"CreateMyOwn\"] = \"CreateMyOwn\";\n OrderStrategyType[\"HedgeCollar\"] = \"HedgeCollar\";\n OrderStrategyType[\"Contingent\"] = \"Contingent\";\n OrderStrategyType[\"Trailing\"] = \"Trailing\";\n OrderStrategyType[\"OneCancelsOther\"] = \"OneCancelsOther\";\n OrderStrategyType[\"Stock\"] = \"Stock\";\n OrderStrategyType[\"Bond\"] = \"Bond\";\n OrderStrategyType[\"MutualFund\"] = \"MutualFund\";\n OrderStrategyType[\"CoveredPut\"] = \"CoveredPut\";\n OrderStrategyType[\"MarriedCall\"] = \"MarriedCall\";\n OrderStrategyType[\"Call\"] = \"Call\";\n OrderStrategyType[\"Put\"] = \"Put\";\n OrderStrategyType[\"CallButterfly\"] = \"CallButterfly\";\n OrderStrategyType[\"PutButterfly\"] = \"PutButterfly\";\n OrderStrategyType[\"CallCondor\"] = \"CallCondor\";\n OrderStrategyType[\"PutCondor\"] = \"PutCondor\";\n})(OrderStrategyType || (OrderStrategyType = {}));","export var OrderStatuses = {\n /// \n /// Order is live. Cannot be set by user.\n /// \n New: 1,\n /// \n /// Order is still live and is partially filled. Cannot be set by user.\n /// \n PartiallyFilled: 2,\n /// \n /// Order is done and completely filled. Cannot be set by user.\n /// \n Filled: 3,\n DoneForDay: 4,\n /// \n /// Order is done and cancelled. Cannot be set by user.\n /// \n Cancelled: 5,\n /// \n /// Order is live and has been replaced. Cannot be set by user.\n /// \n Replaced: 6,\n /// \n /// Cancel request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingCancel: 7,\n /// \n /// Last request received for the given order by the exchange was rejected. Cannot be set by user.\n /// \n Rejected: 9,\n /// \n /// New order request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingNew: 11,\n /// \n /// Not used\n /// \n Expired: 13,\n /// \n /// Replace order request has been received by the exchange and is pending to receive a response status. Cannot be set by user.\n /// \n PendingReplace: 14,\n /// \n /// Order details are saved internally to be used at a future time. Not sent to the exchange.\n /// \n Saved: 15,\n /// \n /// New order request that has not yet been sent to the exchange.\n /// \n Initiated: 20,\n /// \n /// Replace order request that has not yet been sent to the exchange.\n /// \n ReplaceInitiated: 21,\n /// \n /// Cancel order request that has not yet been sent to the exchange.\n /// \n CancelInitiated: 22,\n /// \n /// Cancel order request has been rejected by the exchange. Cannot be set by user.\n /// \n CancelRejected: 23,\n /// \n /// Replace order request has been rejected by the exchange. Cannot be set by user.\n /// \n ReplaceRejected: 24,\n /// \n /// Order has been acknowledged by the exchange and is pending to be sent to the market. Cannot be set by user.\n /// \n Acknowledged: 27,\n /// \n /// Order has been partially filled by the exchange and then subsequently cancelled by the user.\n /// \n PartiallyCancelled: 28\n};","export var ExpiredTokenCode;\n\n(function (ExpiredTokenCode) {\n ExpiredTokenCode[ExpiredTokenCode[\"Unknown\"] = 0] = \"Unknown\";\n ExpiredTokenCode[ExpiredTokenCode[\"Inactivity\"] = 1] = \"Inactivity\";\n ExpiredTokenCode[ExpiredTokenCode[\"Expired\"] = 2] = \"Expired\";\n ExpiredTokenCode[ExpiredTokenCode[\"ApiTokenExpired\"] = 3] = \"ApiTokenExpired\";\n ExpiredTokenCode[ExpiredTokenCode[\"DuplicateLogin\"] = 10] = \"DuplicateLogin\";\n ExpiredTokenCode[ExpiredTokenCode[\"Logout\"] = 11] = \"Logout\";\n})(ExpiredTokenCode || (ExpiredTokenCode = {}));","export var State;\n\n(function (State) {\n State[\"Alabama\"] = \"AL\";\n State[\"Alaska\"] = \"AK\";\n State[\"Arizona\"] = \"AZ\";\n State[\"Arkansas\"] = \"AR\";\n State[\"California\"] = \"CA\";\n State[\"Colorado\"] = \"CO\";\n State[\"Connecticut\"] = \"CT\";\n State[\"Delaware\"] = \"DE\";\n State[\"DistrictOfColumbia\"] = \"DC\";\n State[\"Florida\"] = \"FL\";\n State[\"Georgia\"] = \"GA\";\n State[\"Hawaii\"] = \"HI\";\n State[\"Idaho\"] = \"ID\";\n State[\"Illinois\"] = \"IL\";\n State[\"Indiana\"] = \"IN\";\n State[\"Iowa\"] = \"IA\";\n State[\"Kansas\"] = \"KS\";\n State[\"Kentucky\"] = \"KY\";\n State[\"Louisiana\"] = \"LA\";\n State[\"Maine\"] = \"ME\";\n State[\"Maryland\"] = \"MD\";\n State[\"Massachusetts\"] = \"MA\";\n State[\"Michigan\"] = \"MI\";\n State[\"Minnesota\"] = \"MN\";\n State[\"Mississippi\"] = \"MS\";\n State[\"Missouri\"] = \"MO\";\n State[\"Montana\"] = \"MT\";\n State[\"Nebraska\"] = \"NE\";\n State[\"Nevada\"] = \"NV\";\n State[\"NewHampshire\"] = \"NH\";\n State[\"NewJersey\"] = \"NJ\";\n State[\"NewMexico\"] = \"NM\";\n State[\"NewYork\"] = \"NY\";\n State[\"NorthCarolina\"] = \"NC\";\n State[\"NorthDakota\"] = \"ND\";\n State[\"Ohio\"] = \"OH\";\n State[\"Oklahoma\"] = \"OK\";\n State[\"Oregon\"] = \"OR\";\n State[\"Pennsylvania\"] = \"PA\";\n State[\"RhodeIsland\"] = \"RI\";\n State[\"SouthCarolina\"] = \"SC\";\n State[\"SouthDakota\"] = \"SD\";\n State[\"Tennessee\"] = \"TN\";\n State[\"Texas\"] = \"TX\";\n State[\"Utah\"] = \"UT\";\n State[\"Vermont\"] = \"VT\";\n State[\"Virginia\"] = \"VA\";\n State[\"Washington\"] = \"WA\";\n State[\"WestVirginia\"] = \"WV\";\n State[\"Wisconsin\"] = \"WI\";\n State[\"Wyoming\"] = \"WY\";\n})(State || (State = {}));\n\nexport var AllStates = [State.Alabama, State.Alaska, State.Arizona, State.Arkansas, State.California, State.Colorado, State.Connecticut, State.Delaware, State.DistrictOfColumbia, State.Florida, State.Georgia, State.Hawaii, State.Idaho, State.Illinois, State.Indiana, State.Iowa, State.Kansas, State.Kentucky, State.Louisiana, State.Maine, State.Maryland, State.Massachusetts, State.Michigan, State.Minnesota, State.Mississippi, State.Missouri, State.Montana, State.Nebraska, State.Nevada, State.NewHampshire, State.NewJersey, State.NewMexico, State.NewYork, State.NorthCarolina, State.NorthDakota, State.Ohio, State.Oklahoma, State.Oregon, State.Pennsylvania, State.RhodeIsland, State.SouthCarolina, State.SouthDakota, State.Tennessee, State.Texas, State.Utah, State.Vermont, State.Virginia, State.Washington, State.WestVirginia, State.Wisconsin, State.Wyoming];","export var SymbolTypes = {\n index: 'index',\n stock: 'stock'\n};","/* eslint-disable @typescript-eslint/camelcase */\nimport _ from 'lodash';\nexport var SuccessResponseCode = 0;\nexport var APINotAuthorizedResponseCode = 200;\nexport var APIAgreementResponseCode = 202;\nexport var APIAgreementResponseUpdateCode = 207;\nexport var NoAvailableSecurityChallengesResponseCode = 208;\nexport var SecurityChallengeFailedResponseCode = 209;\nexport var GenericErrorResponseCode = 99;\nexport var ApplicationDuplicateUsernameResponseCode = 600;\nexport var ApplicationDuplicateAccountTypeSSNResponseCode = 211;\nexport var ResponseCodes = {\n 0: {\n name: 'Success',\n description: 'Request was successful'\n },\n 98: {\n name: 'InvalidRequestParameters',\n description: 'One or more request parameters are invalid for this type of request'\n },\n 99: {\n name: 'GenericError',\n description: 'Generic failure response for request'\n },\n 100: {\n name: 'IncorrectUserOrPass',\n description: 'Username or password supplied when logging in was incorrect'\n },\n 101: {\n name: 'FailedToDecryptUserPass',\n description: 'Password supplied could not be decrypted'\n },\n 102: {\n name: 'FailedToDecryptMessage',\n description: 'Message supplied could not be decrypted'\n },\n 103: {\n name: 'IncorrectEntity',\n description: 'Entity name supplied is incorrect'\n },\n 104: {\n name: 'ExpiredRequest',\n description: 'Timestamp in login request is expired'\n },\n 105: {\n name: 'FailedToParsePayload',\n description: 'Could not parse payload into correct parts'\n },\n 106: {\n name: 'MessageIsNull',\n description: 'Message supplied was null'\n },\n 107: {\n name: 'FailedToSplitMessage',\n description: 'Could not split message into required JWS parts'\n },\n 108: {\n name: 'FailedToDecodeHeader',\n description: 'Could not decode header in JWS'\n },\n 109: {\n name: 'FailedToDecodePayload',\n description: 'Could not decode payload in JWS'\n },\n 110: {\n name: 'TooManyFailedLoginAttempts',\n description: 'There were too many unsuccessful login attempts for the given user'\n },\n 111: {\n name: 'EndUserPasswordDoesNotMeetSecurityRequirements',\n description: \"End user's password does not meet our current security requirements; password needs to be changed\"\n },\n 112: {\n name: 'EndUserPasswordIsTemporaryAndNeedsToBeChanged',\n description: \"End user's password is a temporary password; password needs to be changed\"\n },\n 113: {\n name: 'EndUserPasswordIsExpired',\n description: 'Your password has expired as part of our annual security measures to keep your account safe. Please click the \"Reset password\" button below and follow the on-screen instructions to set a new password.'\n },\n 114: {\n name: 'EndUserHasNoSecurityQuestions',\n description: 'Please contact Account Services at 1-800-494-0451 to reset your login credentials.'\n },\n 115: {\n name: 'FailedToChangePassword',\n description: 'There was an issue resetting your password. Please make sure you have met all the password requirements.'\n },\n 116: {\n name: 'FailedToRegisterForNoPass',\n description: \"Failed to register for NoPass. Please contact Account Services at 1-800-494-0451 for more assistance.\"\n },\n 117: {\n name: 'FailedToLoginViaNoPass',\n description: \"Failed to login via NoPass. Please contact Account Services at 1-800-494-0451 for more assistance.\"\n },\n 118: {\n name: 'UserAlreadyRegisteredForNoPass',\n description: \"User is already registered for NoPass. Please register with another user.\"\n },\n 119: {\n name: 'AuthTokenDestructureFailed',\n description: 'Auth token destructure failed.'\n },\n 120: {\n name: 'PasswordChangeInvalidToken',\n description: 'The token is invalid. Please try restarting the password reset process.'\n },\n 121: {\n name: 'PasswordChangeNotAuthorized',\n description: 'You are not authorized to perform this password change.'\n },\n 122: {\n name: 'PasswordChangeTokenHasBeenUsed',\n description: 'The token has already been used. Please try restarting the password reset process.'\n },\n 123: {\n name: 'PasswordChangeTokenExpired',\n description: 'The token has expired. Please try restarting the password reset process.'\n },\n 200: {\n name: 'APINotAuthorizedForGivenRequest',\n description: 'API not authorized for given request'\n },\n 201: {\n name: 'UserHasAccessToZeroAccounts',\n description: 'User does not have visibility to see any accounts'\n },\n 202: {\n name: 'APIAgreementMissing',\n description: 'API Agreement is missing'\n },\n 203: {\n name: 'AccountDoesNotHaveApiAgreement',\n description: 'Please login to accept the API Agreement(s)'\n },\n 204: {\n name: 'MustSpecifySpecificAccountId',\n description: 'User has visibility to multiple accounts, but no specific account was specified in the request.'\n },\n 205: {\n name: 'MustSpecifySpecificSubaccountId',\n description: 'Account has multiple subaccounts but no specific subaccount was specified in the request'\n },\n 206: {\n name: 'SubaccountIsNotOwnedBySpecifiedAccount',\n description: 'Subaccount specified in the request does not belong to the given account supplied in the request'\n },\n 207: {\n name: 'AgreementMissing',\n description: 'Agreement is missing'\n },\n 208: {\n name: 'NoAvailableSecurityChallenges',\n description: 'All security challenges have been marked as failed.'\n },\n 209: {\n name: 'SecurityChallengeFailedVerification',\n description: 'Security challenge verification failed.'\n },\n 210: {\n name: 'FailedCognitoIdTokenValidation',\n description: 'Cognito generated IdToken failed validation or missing required claims.'\n },\n 211: {\n name: 'ApplicationDuplicateAccountTypeSSN',\n description: 'An account with this account type and SSN already exists. Please change the account type or reach out to Account Services at 1-800-494-0451.'\n },\n 212: {\n name: 'MasterSubaccountCannotBeCreatedOrDeleted',\n description: 'Trying to delete a reserved main subaccount or the account is a master account.'\n },\n 213: {\n name: 'AcctSuffixMaxLengthIs3Chars',\n description: 'Account suffix for creating subaccounts must be 3 length or less.'\n },\n 214: {\n name: 'SubaccountDeleted',\n description: 'Subaccount is deleted.'\n },\n 215: {\n name: 'SubaccountDeleteNotAllowed',\n description: 'This subaccount cannot be deleted.'\n },\n 216: {\n name: 'SubaccountDoesNotExist',\n description: 'Subaccount does not exist.'\n },\n 217: {\n name: 'NicknameMaxLengthIs15Chars',\n description: 'Nickname length must be length 15 or less.'\n },\n 218: {\n name: 'SuffixAlreadyExists',\n description: 'Suffix already exists.'\n },\n 219: {\n name: 'NicknameAlreadyExists',\n description: 'Nickname already exists.'\n },\n 220: {\n name: 'DescriptionLengthIsMoreThan150Chars',\n description: 'Description is too long. 150 or less characters maximum.'\n },\n 221: {\n name: 'SuffixUpdateByUserNotAllowed',\n description: 'Suffix update not allowed by this user.'\n },\n 300: {\n name: 'Order error',\n description: function description(message) {\n return message;\n }\n },\n 301: {\n name: 'Margin check error',\n description: function description(message) {\n return _.replace(message, 'Margin check error.', '');\n }\n },\n 302: {\n name: 'Restricted symbol',\n description: 'This symbol is currently not allowed for trading.'\n },\n 303: {\n name: 'InvalidOrderId',\n description: 'OrderId supplied is invalid.'\n },\n 304: {\n name: 'OrderNotFound',\n description: 'Order could not be found by the given OrderId.'\n },\n 305: {\n name: 'Order placement error',\n description: 'Order Validation Error'\n },\n 306: {\n name: 'SubaccountTradeWillResultInNegativeCashBalance',\n description: 'The subaccount trade will result in a negative CashBalance'\n },\n 307: {\n name: 'Leveraged, Inverse, or Commodity ETF Warning',\n description: \"Warning: Leveraged, Inverse, and Commodity ETFs carry unique risks and may not be suitable for all investors. CLICK HERE to learn more. To proceed, click \\\"Bypass Warnings\\\".\"\n },\n 308: {\n name: 'OrderIsInPendingState',\n description: 'The order is in a pending state'\n },\n 390: {\n name: 'Insufficient Funds',\n description: 'Insufficient funds to complete the requested operation.'\n },\n 400: {\n name: 'UserMustCompleteMarketDataQuestionnaire',\n description: 'User is not allowed to receive any quotes because they have not completed the Market Data Questionnaire, or their questionnaire is expired'\n },\n 401: {\n name: 'UserMustCompleteMarketDataEntitlementUpdate',\n description: 'User must complete mkt data entitlement update (usually annual update)'\n },\n 500: {\n name: 'AchRelationshipNotFound',\n description: 'The requested ACH relationship was not found.'\n },\n 501: {\n name: 'AchRelationshipIsInInvalidStateForOperation',\n description: 'The requested ACH relationship is in a State that is invalid for the requested operation.'\n },\n 502: {\n name: 'AchRelationshipApprovalMethodMismatch',\n description: 'The Approval Method specified in the operation does not match the Approval Method of the ACH relationship. Only MicroDeposit is currently supported.'\n },\n 503: {\n name: 'TransferBeneficiaryNotFound',\n description: 'The requested transfer beneficiary was not found.'\n },\n 505: {\n name: 'TransferRecipientBankNotFound',\n description: 'The requested transfer recipient bank was not found.'\n },\n 506: {\n name: 'TransferNotFound',\n description: 'The requested transfer was not found.'\n },\n 507: {\n name: 'TransferIsInInvalidStateForOperation',\n description: 'The requested transfer is in a State that is invalid for the requested operation.'\n },\n 508: {\n name: 'CashieringRequestFailedValidation',\n description: 'The Cashiering request failed validation.'\n },\n 509: {\n name: 'TransferBeneficiaryMechanismMismatch',\n description: 'The transfer beneficiary Mechanism specified in the operation does not match the Mechanism of the transfer.'\n },\n 510: {\n name: 'TransferApprovalWithUnapprovedAchRelationshipFailed',\n description: 'Cannot approve this transfer as it has an unapproved ACH relationship. First approve the relationship before attempting to approve the transfer.'\n },\n 511: {\n name: 'AchRelationshipDuplicate',\n description: 'This ACH relationship is a duplicate of an existing relationship.'\n },\n 512: {\n name: 'AchRelationshipDeleteWithPendingTransfersFailed',\n description: 'Cannot delete this ACH relationship as it has pending transfers. Remove those first, before attempting to delete the relationship.'\n },\n 513: {\n name: 'TransferRecipientBankIsInInvalidStateForOperation',\n description: 'The transfer recipient bank referenced by the transfer is in a State that is invalid for the requested operation.'\n },\n 514: {\n name: 'TransferWireInstructionNotFound',\n description: 'The requested transfer wire instruction was not found.'\n },\n 515: {\n name: 'TransferWireInstructionIsInInvalidStateForOperation',\n description: 'The transfer wire instruction referenced by the transfer is in a State that is invalid for the requested operation.'\n },\n 516: {\n name: 'AchRelationshipAccountIsInInvalidStateForOperation',\n description: 'The account referenced by the ACH relationship is in a State that is invalid for the requested operation.'\n },\n 517: {\n name: 'AlertMessageNotFound',\n description: 'The requested alert message was not found.'\n },\n 518: {\n name: 'DuplicateAlertMessage',\n description: 'An alert message already exists.'\n },\n 545: {\n name: 'TransferIntermediaryNotFound',\n description: 'The requested transfer intermediary was not found.'\n },\n 550: {\n name: 'ApexSentinelServiceFailed',\n description: 'The Apex Sentinel service failed while processing the operation.'\n },\n 551: {\n name: 'PlaidServiceFailedTheOperation',\n description: 'The Plaid service failed the requested operation.'\n },\n 552: {\n name: 'RqdCashieringServiceFailedTheOperation',\n description: 'The RQD Cashiering service failed the requested operation.'\n },\n 553: {\n name: 'RqdBalancesServiceFailedTheOperation',\n description: 'The RQD Balances service failed the requested operation.'\n },\n 600: {\n name: 'ApplicationDuplicateUsername',\n description: 'The Username you entered is already being used.'\n },\n 700: {\n name: 'DocumentMetaDataNotFound',\n description: 'The requested document meta-data was not found.'\n },\n 701: {\n name: 'UnsupportedDocumentFileFormat',\n description: 'Unsupported document file format. Only JPEG, GIF, PNG and PDF are supported.'\n },\n 702: {\n name: 'MiscellaneousFileUploadError',\n description: 'The file upload failed.'\n },\n 703: {\n name: 'TooManyUploadsForDocument',\n description: 'Too many uploads of the same document.'\n },\n 704: {\n name: 'DocumentNotFound',\n description: 'The requested document dat not found.'\n }\n};","import * as yup from 'yup';\nvar DashboardInfoSchemaFields = {\n dashboardId: yup.string(),\n title: yup.string(),\n isDeleted: yup.boolean().notRequired(),\n dataLastFetchedOn: yup.date().notRequired()\n};\nexport var LayoutSchemaFields = {\n i: yup.string().notRequired(),\n x: yup.number(),\n y: yup.number(),\n w: yup.number(),\n h: yup.number(),\n minW: yup.number().notRequired(),\n maxW: yup.number().notRequired(),\n minH: yup.number().notRequired(),\n maxH: yup.number().notRequired(),\n\n /**\n * set by DragEvents (onDragStart, onDrag, onDragStop) and ResizeEvents (onResizeStart, onResize, onResizeStop)\n */\n moved: yup.boolean().notRequired(),\n\n /**\n * If true, equal to `isDraggable: false` and `isResizable: false`.\n */\n static: yup.boolean().notRequired(),\n\n /**\n * If false, will not be draggable. Overrides `static`.\n */\n isDraggable: yup.boolean().notRequired(),\n\n /**\n * If false, will not be resizable. Overrides `static`.\n */\n isResizable: yup.boolean().notRequired()\n};\nvar DashboardConfigurationSchemaFields = Object.assign({}, DashboardInfoSchemaFields, {\n presetBlocks: yup.array().notRequired()\n});\nvar UiSettingsSchemaFields = {\n afterHoursTrading: yup.boolean(),\n muteAllSounds: yup.boolean(),\n showBannerSymbols: yup.boolean(),\n bannerSymbols: yup.array(),\n balancePollingThrottleMs: yup.number(),\n cashieringPollingIntervalMs: yup.number(),\n cashieringPollingInterval: yup.number(),\n cashieringPendingReminderInterval: yup.number(),\n cashieringPendingReminderMaxAttempts: yup.number(),\n gridColumnsLarge: yup.number(),\n gridColumnsMedium: yup.number(),\n gridColumnsSmall: yup.number(),\n hotkeys: yup.boolean(),\n width: yup.number()\n};\nexport var DashboardInfoSchema = yup.object(DashboardInfoSchemaFields);\nexport var DashboardConfigurationSchema = yup.object(DashboardConfigurationSchemaFields);\nexport var LayoutSchema = yup.object(LayoutSchemaFields);\nexport var UiSettingsSchema = yup.object(UiSettingsSchemaFields); // export type DashboardInfo = yup.InferType;\n// export type DashboardConfiguration = yup.InferType;\n// export type Layout = yup.InferType;\n// export type UiSettings = yup.InferType;","import * as yup from 'yup';\nimport { BlockTypeValues } from '../enums';\nimport { LayoutSchemaFields } from './dashboard';\nvar BlockInfoSchemaFields = {\n blockId: yup.string().required(),\n groupId: yup.string().required()\n};\nvar TabOptionsSchemaFields = {\n title: yup.string(),\n active: yup.boolean().notRequired()\n};\nvar BlockSchemaFields = Object.assign({}, BlockInfoSchemaFields, {\n type: yup.mixed().oneOf(BlockTypeValues).required(),\n title: yup.string().notRequired(),\n subscriptions: yup.object({\n quotes: yup.array()\n }).notRequired(),\n tabs: yup.array().notRequired()\n});\nvar BlockLayoutsSchemaFields = {\n lg: yup.object(LayoutSchemaFields).notRequired(),\n md: yup.object(LayoutSchemaFields).notRequired(),\n sm: yup.object(LayoutSchemaFields).notRequired(),\n xs: yup.object(LayoutSchemaFields).notRequired(),\n xxs: yup.object(LayoutSchemaFields).notRequired()\n};\nvar BlockConfigurationSchemaFields = Object.assign({}, BlockSchemaFields, {\n layouts: yup.object(BlockLayoutsSchemaFields).notRequired(),\n data: yup.mixed().notRequired(),\n options: yup.object({\n autoFocus: yup.boolean().notRequired()\n }).notRequired()\n});\nvar BlockGroupSchemaFields = {\n groupId: yup.string(),\n symbol: yup.mixed().notRequired()\n};\nexport var BlockInfoSchema = yup.object(BlockInfoSchemaFields);\nexport var TabOptionsSchema = yup.object(TabOptionsSchemaFields);\nexport var BlockSchema = yup.object(BlockSchemaFields);\nexport var BlockLayoutsSchema = yup.object(BlockLayoutsSchemaFields);\nexport var BlockConfigurationSchema = yup.object(BlockConfigurationSchemaFields);\nexport var BlockGroupSchema = yup.object(BlockGroupSchemaFields); // export type BlockInfo = yup.InferType;\n// export type TabOptions = yup.InferType;\n// export type Block = yup.InferType;\n// export type BlockLayouts = yup.InferType;\n// export type BlockConfiguration = yup.InferType;\n// export type BlockGroup = yup.InferType;","import * as yup from 'yup';\nvar AssetSymbolSchemaFields = {\n name: yup.string(),\n symbol: yup.string(),\n provider: yup.string()\n}; // const Schemas = {\n// OrderAction: yup.number().oneOf([OrderAction.Buy, OrderAction.Sell]),\n// PositionEffect: yup.number().oneOf([PositionEffect.Open, PositionEffect.Close]),\n// };\n\nexport var AssetSymbolSchema = yup.object(AssetSymbolSchemaFields); // export type AssetSymbol = yup.InferType;","import * as yup from 'yup';\nimport { BlockConfigurationSchema } from '.';\nimport { BlockGroupSchema } from './block';\nimport { DashboardInfoSchema, UiSettingsSchema } from './dashboard';\nexport var DashboardDbValueSchema = yup.array().of(DashboardInfoSchema);\nexport var BlockGridDbValueSchema = yup.object({\n blocks: yup.array().of(BlockConfigurationSchema),\n groups: yup.array().of(BlockGroupSchema)\n});\nexport var UiSettingsDbValueSchema = UiSettingsSchema;","export var StateSync;\n\n(function (StateSync) {\n StateSync[\"SIGNOUT\"] = \"syncSignout\";\n StateSync[\"EXPIRATION\"] = \"syncExpiration\";\n})(StateSync || (StateSync = {}));","import { OrderActionDirection } from '.'; // export enum TradingStrategyRisk {\n// Price,\n// ValueOfStrike,\n// DifferencesBetweenStrikes,\n// ValueOfBiggestStrike,\n// ValueOfSmallestStrike,\n// Infinite,\n// }\n\nexport var ExpirationRules;\n\n(function (ExpirationRules) {\n ExpirationRules[ExpirationRules[\"SameExpiry\"] = 1] = \"SameExpiry\";\n ExpirationRules[ExpirationRules[\"DifferentExpiries\"] = 2] = \"DifferentExpiries\";\n ExpirationRules[ExpirationRules[\"BuyWithLaterSellWithSooner\"] = 3] = \"BuyWithLaterSellWithSooner\";\n})(ExpirationRules || (ExpirationRules = {}));\n\nexport var DirectionRules;\n\n(function (DirectionRules) {\n DirectionRules[DirectionRules[\"DifferentDirections\"] = 0] = \"DifferentDirections\";\n DirectionRules[DirectionRules[\"SameDirections\"] = 1] = \"SameDirections\";\n DirectionRules[DirectionRules[\"Butterfly\"] = 2] = \"Butterfly\";\n DirectionRules[DirectionRules[\"Condor\"] = 3] = \"Condor\";\n DirectionRules[DirectionRules[\"Iron\"] = 4] = \"Iron\";\n})(DirectionRules || (DirectionRules = {}));\n\nexport var StrikeRules;\n\n(function (StrikeRules) {\n StrikeRules[StrikeRules[\"DifferentStrikes\"] = 1] = \"DifferentStrikes\";\n StrikeRules[StrikeRules[\"DifferentStrikesDescending\"] = 2] = \"DifferentStrikesDescending\";\n StrikeRules[StrikeRules[\"EquidistantStrikes\"] = 3] = \"EquidistantStrikes\";\n StrikeRules[StrikeRules[\"SameStrikes\"] = 4] = \"SameStrikes\";\n StrikeRules[StrikeRules[\"CallHigherThanPut\"] = 5] = \"CallHigherThanPut\";\n StrikeRules[StrikeRules[\"IncreasingOrder\"] = 6] = \"IncreasingOrder\";\n StrikeRules[StrikeRules[\"DecreasingOrder\"] = 7] = \"DecreasingOrder\";\n StrikeRules[StrikeRules[\"CallFirstPutsSecond\"] = 8] = \"CallFirstPutsSecond\";\n StrikeRules[StrikeRules[\"LowestCallEqualsHighestPut\"] = 9] = \"LowestCallEqualsHighestPut\";\n StrikeRules[StrikeRules[\"LowestCallGreaterThanHighestPut\"] = 10] = \"LowestCallGreaterThanHighestPut\";\n StrikeRules[StrikeRules[\"EquidistantStrikesByTwos\"] = 11] = \"EquidistantStrikesByTwos\";\n StrikeRules[StrikeRules[\"IronCondor\"] = 12] = \"IronCondor\";\n StrikeRules[StrikeRules[\"IronButterfly\"] = 13] = \"IronButterfly\";\n StrikeRules[StrikeRules[\"Any\"] = 14] = \"Any\";\n})(StrikeRules || (StrikeRules = {}));","export var QuoteFeedType = 10;\nexport var SpreadFeedType = 11;\nexport var OrderUpdateFeedType = 13;\nexport var BarUpdateFeedType = 14;\nexport var SpreadType;\n\n(function (SpreadType) {\n SpreadType[SpreadType[\"Custom\"] = 0] = \"Custom\";\n SpreadType[SpreadType[\"Vertical\"] = 2] = \"Vertical\";\n SpreadType[SpreadType[\"Calendar\"] = 3] = \"Calendar\";\n SpreadType[SpreadType[\"Butterfly\"] = 4] = \"Butterfly\";\n SpreadType[SpreadType[\"Condor\"] = 5] = \"Condor\";\n SpreadType[SpreadType[\"CoveredCall\"] = 6] = \"CoveredCall\";\n SpreadType[SpreadType[\"IronCondor\"] = 7] = \"IronCondor\";\n SpreadType[SpreadType[\"IronButterfly\"] = 8] = \"IronButterfly\";\n SpreadType[SpreadType[\"Straddle\"] = 9] = \"Straddle\";\n SpreadType[SpreadType[\"Strangle\"] = 10] = \"Strangle\";\n SpreadType[SpreadType[\"MarriedPut\"] = 11] = \"MarriedPut\";\n SpreadType[SpreadType[\"CoveredPut\"] = 12] = \"CoveredPut\";\n SpreadType[SpreadType[\"MarriedCall\"] = 13] = \"MarriedCall\"; // Collar = 14,\n\n SpreadType[SpreadType[\"Conversion\"] = 15] = \"Conversion\";\n})(SpreadType || (SpreadType = {})); // export interface Spread\n// {\n// Leg[] Legs { get; set; }\n// public double Bid { get; set; }\n// public double Ask { get; set; }\n// public double Last { get; set; }\n// public double Change { get; set; }\n// public SpreadType Type { get; set; }\n// public DateTime SpreadTime { get; set; }\n// }","export var UIClientTypes = {\n application: 'application',\n dashboard: 'dashboard',\n mobile: 'mobile'\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport { renderToStaticMarkup } from 'react-dom/server';\nimport _ from 'lodash';\nimport { LanguageType, DefaultLanguageKeys } from '../Language';\nimport englishErrors from './en/errors.json';\nimport englishFields from './en/fields.json';\nimport englishPages from './en/pages.json';\nvar protectedTranslationKeys = ['description'];\n\nvar getTranslationsData = function getTranslationsData(pagesTranslations, fieldsTranslations, errorsTranslations) {\n return {\n errors: formatTranslationsData(errorsTranslations, DefaultLanguageKeys.Error),\n fields: formatTranslationsData(fieldsTranslations, DefaultLanguageKeys.Label),\n pages: formatTranslationsData(pagesTranslations, DefaultLanguageKeys.Text)\n };\n};\n\nvar formatTranslationsData = function formatTranslationsData(data, expandedKey) {\n return _.reduce(data, function (acc, val, key) {\n if (key === expandedKey || _.includes(protectedTranslationKeys, key)) {\n acc[key] = val;\n } else if (_.isString(val)) {\n acc[key] = _defineProperty({}, expandedKey, val);\n } else {\n // recurse\n acc[key] = formatTranslationsData(val, expandedKey);\n }\n\n return acc;\n }, {});\n};\n\nvar en = getTranslationsData(englishPages, englishFields, englishErrors);\nexport var AllLanguageTypes = [LanguageType.English, LanguageType.Spanish, LanguageType.Chinese];\nexport var allTranslations = {\n en: en,\n es: en,\n zh: en\n};\nexport var getLocalizeOptions = function getLocalizeOptions(languageTypes) {\n var languageNamesByKey = _.reduce(_.mapValues(LanguageType, function (l) {\n return l;\n }), function (acc, l, n) {\n acc[l] = n;\n return acc;\n }, {});\n\n return {\n languages: _.map(languageTypes, function (code) {\n return {\n code: code,\n name: languageNamesByKey[code]\n };\n }),\n options: {\n renderInnerHtml: true,\n renderToStaticMarkup: renderToStaticMarkup\n }\n };\n};","var TradingBlockLegacyUrlEnum;\n\n(function (TradingBlockLegacyUrlEnum) {\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"AchRelationshipPdfApplicationUrl\"] = 0] = \"AchRelationshipPdfApplicationUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"TB_CRS\"] = 1] = \"TB_CRS\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"MB_CRS\"] = 2] = \"MB_CRS\"; // CustomerServiceUrl,\n\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"ETFDisclosureUrl\"] = 3] = \"ETFDisclosureUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySiteHomeUrl\"] = 4] = \"LegacySiteHomeUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySiteLoginUrl\"] = 5] = \"LegacySiteLoginUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"LegacySitePwdResetUrl\"] = 6] = \"LegacySitePwdResetUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RiskDisclosuresUrl\"] = 7] = \"RiskDisclosuresUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RisksOfOptionsUrl\"] = 8] = \"RisksOfOptionsUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"RisksOfDayTradingUrl\"] = 9] = \"RisksOfDayTradingUrl\";\n TradingBlockLegacyUrlEnum[TradingBlockLegacyUrlEnum[\"ServicesAgreementUrl\"] = 10] = \"ServicesAgreementUrl\";\n})(TradingBlockLegacyUrlEnum || (TradingBlockLegacyUrlEnum = {}));\n\nvar TradingBlockUrlEnum;\n\n(function (TradingBlockUrlEnum) {\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"HomeUrl\"] = 0] = \"HomeUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"VideoTourUrl\"] = 1] = \"VideoTourUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"CustomerServiceUrl\"] = 2] = \"CustomerServiceUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"OpenNewAccountUrl\"] = 3] = \"OpenNewAccountUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"TBFeesUrl\"] = 4] = \"TBFeesUrl\";\n TradingBlockUrlEnum[TradingBlockUrlEnum[\"MBFeesUrl\"] = 5] = \"MBFeesUrl\";\n})(TradingBlockUrlEnum || (TradingBlockUrlEnum = {})); // these urls are currently hosted on the legacy site\n\n\nexport var TradingBlockLegacyUrlsLookup = {\n AchRelationshipPdfApplicationUrl: '/admin/forms/apex/cashiering/ACH_Application.pdf',\n TB_CRS: '/Docs/Agreements/tb/AOS_TradingBlock_Form_CRS.pdf',\n MB_CRS: '/Docs/Agreements/mb/AOS_MoneyBlock_Form_CRS.pdf',\n ETFDisclosureUrl: '/Docs/Agreements/Leveraged_Inverse_Commodity_ETF_Disclosure.pdf',\n LegacySiteHomeUrl: '/default.aspx',\n LegacySiteLoginUrl: '/account/securitieslogin.aspx',\n LegacySitePwdResetUrl: '/account/passwordresetlogin.aspx',\n RiskDisclosuresUrl: '/account/riskanddisclosures.aspx',\n RisksOfOptionsUrl: '/docs/agreements/riskstoc.pdf',\n RisksOfDayTradingUrl: '/account/disclosureview.aspx',\n ServicesAgreementUrl: '/docs/agreements/Online_Services_Agreement_v1.4_20140713.pdf'\n};\nexport var TradingBlockUrlsLookup = Object.assign({}, TradingBlockLegacyUrlsLookup, {\n HomeUrl: '/',\n VideoTourUrl: '/videos',\n CustomerServiceUrl: '/contact',\n OpenNewAccountUrl: '',\n TBFeesUrl: '/pricing-policies',\n MBFeesUrl: '/policies'\n});","export var UserProfileLevel;\n\n(function (UserProfileLevel) {\n UserProfileLevel[\"Undefined\"] = \"Undefined\";\n UserProfileLevel[\"Admin\"] = \"Admin\";\n UserProfileLevel[\"Firm\"] = \"Firm\";\n UserProfileLevel[\"Region\"] = \"Region\";\n UserProfileLevel[\"Branch\"] = \"Branch\";\n UserProfileLevel[\"Rep\"] = \"Rep\";\n UserProfileLevel[\"Account\"] = \"Account\";\n})(UserProfileLevel || (UserProfileLevel = {}));\n\nexport var UserRole;\n\n(function (UserRole) {\n UserRole[\"CashieringApproval\"] = \"CashieringApproval\";\n UserRole[\"AccountManagementApproval\"] = \"AccountManagementApproval\";\n UserRole[\"AccountApprovalFIB\"] = \"AccountApprovalFIB\";\n UserRole[\"AccountApprovalGSP\"] = \"AccountApprovalGSP\";\n UserRole[\"AccountApprovalREP\"] = \"AccountApprovalREP\";\n UserRole[\"AccountApprovalROP\"] = \"AccountApprovalROP\";\n UserRole[\"ManageCommissionCodes\"] = \"ManageCommissionCodes\";\n UserRole[\"BypassMarginCheck\"] = \"BypassMarginCheck\";\n})(UserRole || (UserRole = {}));\n\nexport var SecurityQuestionType;\n\n(function (SecurityQuestionType) {\n SecurityQuestionType[\"BirthCity\"] = \"birth-city\";\n SecurityQuestionType[\"ChildhoodFutureJobWish\"] = \"childhood-future-job-wish\";\n SecurityQuestionType[\"ChildhoodPetName\"] = \"childhood-pet-name\";\n SecurityQuestionType[\"DriversLicenseLast4\"] = \"drivers-license-last-4\";\n SecurityQuestionType[\"FathersMiddleName\"] = \"fathers-middle-name\";\n SecurityQuestionType[\"FavoriteBook\"] = \"favorite-book\";\n SecurityQuestionType[\"FavoriteSportsTeam\"] = \"favorite-sports-team\";\n SecurityQuestionType[\"MothersMaidenName\"] = \"mothers-maiden-name\";\n SecurityQuestionType[\"PaternalGrandmothersFirstName\"] = \"paternal-grandmothers-first-name\";\n})(SecurityQuestionType || (SecurityQuestionType = {}));\n\nexport var MarketDataEntitlementTypeId;\n\n(function (MarketDataEntitlementTypeId) {\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"ProfessionalUser\"] = 1] = \"ProfessionalUser\";\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"NonProfessionalUser\"] = 2] = \"NonProfessionalUser\";\n MarketDataEntitlementTypeId[MarketDataEntitlementTypeId[\"DelayedQuotesOnlyUser\"] = 3] = \"DelayedQuotesOnlyUser\";\n})(MarketDataEntitlementTypeId || (MarketDataEntitlementTypeId = {}));","import _ from 'lodash';\nimport { AllCountries } from './Country';\nimport { AcceptedCountries } from './constants';\nexport function strEnum(o) {\n return o.reduce(function (res, key) {\n res[key] = key;\n return res;\n }, Object.create(null));\n}\nexport var isCustomStrategy = function isCustomStrategy(value) {\n return typeof value === 'string' ? value === 'Custom' : value.info.Name === 'Custom';\n};\nexport var isKnownStrategyType = function isKnownStrategyType(value) {\n return isCustomStrategy(value) === false;\n};\nexport var isKnownStrategy = function isKnownStrategy(value) {\n return isCustomStrategy(value) === false;\n};\nexport function isStrategy(strategy, stratName) {\n if (_.isNil(stratName)) {\n return false;\n }\n\n if (typeof stratName === 'string') {\n return _.includes(strategy.map(function (s) {\n return _.toLower(s.info.Name);\n }), _.toLower(stratName));\n }\n\n return false;\n}\nexport var getGroupedCountryOptions = function getGroupedCountryOptions(clearer, isSecureAccountStep) {\n return _.concat(_.sortBy(_.filter(AllCountries, function (c) {\n return _.includes(AcceptedCountries, c);\n }), function (c) {\n return _.indexOf(AcceptedCountries, c);\n }), [null], // separator\n _.filter(AllCountries, function (c) {\n return !_.includes(AcceptedCountries, c);\n }));\n};\nexport function isResponseCodeDescription(value) {\n if (_.isNil(value)) {\n return false;\n }\n\n var name = _.get(value, 'name', undefined);\n\n var description = _.get(value, 'description', undefined);\n\n var descriptionisValid = typeof description === 'string' || typeof description === 'function';\n return typeof name === 'string' && descriptionisValid;\n}","export * from './Account';\nexport * from './Application';\nexport * from './Blocks';\nexport * from './BlockSettings';\nexport * from './Cashiering';\nexport * from './constants';\nexport * from './Country';\nexport * from './DataFeed';\nexport * from './Date';\nexport * from './Duration';\nexport * from './Entitlements';\nexport * from './Environment';\nexport * from './enums';\nexport * from './Exceptions';\nexport * from './Expirations';\nexport * from './Information';\nexport * from './Language';\nexport * from './Layout';\nexport * from './Order';\nexport * from './OrderStatus';\nexport * from './Quote';\nexport * from './ResponseCode';\nexport * from './schema/index';\nexport * from './Session';\nexport * from './State';\nexport * from './StateSync';\nexport * from './Strategy';\nexport * from './Streaming'; // export * from './transformations';\n\nexport * from './Token';\nexport * from './translations';\nexport * from './Urls';\nexport * from './User';\nexport * from './util';\nexport * from './AccountManagement';","import { ActionType } from 'typesafe-actions';\nimport { AdminAccountActions } from './AdminAccountActions';\nimport { AdminCashieringActions } from './AdminCashieringActions';\nimport { AdminClientActions } from './AdminClientActions';\nimport { AdminAccountManagementActions } from './AccountManagementActions';\nimport { AdminEntitlementsActions } from './EntitlementsActions';\nimport { AdminAlertActions } from './AdminAlertActions';\nimport { AdminApplicationActions } from './AdminApplicationActions';\n\nexport interface AdminIdRequest {\n id: number | string;\n}\n\nexport const AdminActions = {\n ...AdminAccountActions,\n ...AdminAlertActions,\n ...AdminCashieringActions,\n ...AdminClientActions,\n ...AdminAccountManagementActions,\n ...AdminEntitlementsActions,\n ...AdminApplicationActions,\n};\n\nexport type AdminAction = ActionType;\n","import { ActionType, createStandardAction } from 'typesafe-actions';\r\nimport {\r\n ActionMetaOrUndefined,\r\n LoginJwtValue,\r\n ActionMetadata,\r\n FeedQuote,\r\n UiSettings,\r\n AllNotificationType,\r\n Notification,\r\n IFeedSpread,\r\n DashboardInfo,\r\n Layouts,\r\n BlockConfiguration,\r\n HistoryItem,\r\n ResponseCode,\r\n BlockType,\r\n BlockInfo,\r\n Order,\r\n Balances,\r\n Transfer,\r\n SizeType,\r\n Expiration,\r\n GroupOrderLeg,\r\n AssetSymbol,\r\n ExpiredTokenCode,\r\n DebounceMetadata,\r\n PnLItem,\r\n FeedEventData,\r\n AssetSymbolInfo,\r\n OptionPairWithSymbol,\r\n DashboardBlocksResponse,\r\n SubAccount,\r\n AccountDetails,\r\n GroupLinkColors,\r\n BalancesForWithdrawal,\r\n FeedSpread,\r\n} from '@tradingblock/types';\r\nimport { SymbolQuote, SymbolDividendData, SymbolQuoteExtended, PositionDTO } from '@tradingblock/api';\r\nimport { buildActions, actionBuilder, buildApiActions } from './actionUtilities';\r\nimport { CashieringActions } from './actions/CashieringActions';\r\nimport { SettingsActions } from './actions/SettingsActions';\r\nimport { PageActions } from './actions/PageActions';\r\nimport { OrderActions } from './actions/OrderActions';\r\nimport { AdminActions } from './actions/admin';\r\nimport { AccountActions } from './actions/AccountActions';\r\nimport { QuoteDataActions as DataQuoteActions } from './actions/QuoteActions';\r\nimport { EnvironmentActions } from './actions/EnvironmentActions';\r\nimport { CashieringEventActions } from './actions/CashieringEventActions';\r\nimport { InfoDataActions } from './actions/InfoActions';\r\nimport { AccountManagementDataActions } from './actions/AccountManagementActions';\r\nimport { BalanceState } from './state';\r\nimport { LinkedAccountsActions } from './actions/LinkedAccountsActions';\r\nimport { AccountStatementsActions } from './actions/AccountStatementsActions';\r\nimport { HistoryActions } from './actions/History';\r\nimport { SubaccountActions } from './actions/SubAccountActions';\r\nimport { MarketSchedule } from '@tradingblock/api/src/commands/marketSchedule';\r\nexport * from './actions/OrderActions';\r\n\r\n// eslint-disable-next-line @typescript-eslint/camelcase\r\nexport const REQUEST_Token = 'REQUEST_Token';\r\n// eslint-disable-next-line @typescript-eslint/camelcase\r\nexport const RECEIVE_Token = 'RECEIVE_Token';\r\nexport const RECEIVE_AUTH_TOKEN = 'RECEIVE_AUTH_Token';\r\n\r\nconst [requestWarning, receiveWarning, errorWarning] = buildApiActions([\r\n '@data/symbols/warning/REQUEST',\r\n '@data/symbols/warning/RECEIVE',\r\n '@data/symbols/warning/ERROR',\r\n])<{}, string[]>();\r\n\r\nexport const SymbolActions = {\r\n requestWarning,\r\n receiveWarning,\r\n errorWarning,\r\n};\r\n\r\nexport const LifecycleActions = {\r\n loadInitialData: createStandardAction('@data/initial/REQUEST')(),\r\n};\r\n\r\nexport const REQUEST_ACCOUNT_BALANCES = '@account/REQUEST_ACCOUNT_BALANCES';\r\nexport const FETCH_ACCOUNT_BALANCES = '@account/FETCH_ACCOUNT_BALANCES';\r\nexport const RECEIVE_ACCOUNT_BALANCES = '@account/RECEIVE_ACCOUNT_BALANCES';\r\nexport const REQUEST_LINKED_ACCOUNT_BALANCES = '@account/REQUEST_LINKED_ACCOUNT_BALANCES';\r\nexport const FETCH_LINKED_ACCOUNT_BALANCES = '@account/FETCH_LINKED_ACCOUNT_BALANCES';\r\nexport const RECEIVE_LINKED_ACCOUNT_BALANCES = '@account/RECEIVE_LINKED_ACCOUNT_BALANCES';\r\nexport const REQUEST_SUB_ACCOUNT_BALANCES = '@account/REQUEST_SUB_ACCOUNT_BALANCES';\r\nexport const FETCH_SUB_ACCOUNT_BALANCES = '@account/FETCH_SUB_ACCOUNT_BALANCES';\r\nexport const RECEIVE_SUB_ACCOUNT_BALANCES = '@account/RECEIVE_SUB_ACCOUNT_BALANCES';\r\nexport const REQUEST_PENDING_TRNASFERS = '@account/REQUEST_PENDING_TRNASFERS';\r\nexport const FETCH_PENDING_TRNASFERS = '@account/FETCH_PENDING_TRNASFERS';\r\nexport const RECEIVE_PENDING_TRNASFERS = '@account/RECEIVE_PENDING_TRNASFERS';\r\nexport const REQUEST_ACCOUNT_HISTORY = '@account/REQUEST_HISTORY';\r\nexport const RECEIVE_ACCOUNT_HISTORY = '@account/RECEIVE_HISTORY';\r\nexport const REQUEST_ACCOUNT_PNL = '@account/REQUEST_PNL';\r\nexport const RECEIVE_ACCOUNT_PNL = '@account/RECEIVE_PNL';\r\nexport const REQUEST_ACCOUNT_ORDERS = '@account/REQUEST_ACCOUNT_ORDERS';\r\nexport const REQUEST_MORE_ACCOUNT_ORDERS = '@account/orders/REQUEST_MORE';\r\nexport const RECEIVE_ACCOUNT_ORDERS = '@account/RECEIVE_ACCOUNT_ORDERS';\r\nexport const REQUEST_ACCOUNT_SETTINGS = '@account/REQUEST_SETTINGS';\r\nexport const RECEIVE_ACCOUNT_SETTINGS = '@account/RECEIVE_SETTINGS';\r\nexport const SET_ACCOUNT_SETTINGS = '@account/SET_ACCOUNT_SETTINGS';\r\nexport const TOGGLE_SETTINGS = '@account/TOGGLE_SETTINGS';\r\nexport const SET_ORIGIN = '@account/SET_ORIGIN';\r\nexport const SET_CURRENT_ACCOUNT_DETAILS = '@account/SET_CURRENT_ACCOUNT_DETAILS';\r\nexport const REQUEST_BALANCES_FOR_WITHDRAWAL = '@account/REQUEST_BALANCES_FOR_WITHDRAWAL';\r\nexport const FETCH_BALANCES_FOR_WITHDRAWAL = '@account/FETCH_BALANCES_FOR_WITHDRAWAL';\r\nexport const RECEIVE_BALANCES_FOR_WITHDRAWAL = '@account/RECEIVE_BALANCES_FOR_WITHDRAWAL';\r\n\r\n// CLASSIC API\r\nexport const Actions = {\r\n ...AccountActions,\r\n signout: createStandardAction(`@account/signout`)(),\r\n receiveCurrentAccountDetails: createStandardAction(SET_CURRENT_ACCOUNT_DETAILS)(),\r\n requestToken: createStandardAction(REQUEST_Token)(),\r\n receiveToken: createStandardAction(RECEIVE_Token)(),\r\n refreshToken: createStandardAction('@account/token/refresh')(),\r\n\r\n requestSettings: createStandardAction(REQUEST_ACCOUNT_SETTINGS)<{ accountId: number }>(),\r\n receiveSettings: createStandardAction(RECEIVE_ACCOUNT_SETTINGS)<{ accountId: number; settings: UiSettings }>(),\r\n\r\n setClientVersion: createStandardAction('@application/version/SET')<{ version: string }>(),\r\n clientVersionMismatch: createStandardAction('@application/version/MISMATCH_ERROR')<{\r\n previous: string;\r\n current: string;\r\n }>(),\r\n\r\n setSettings: createStandardAction(SET_ACCOUNT_SETTINGS)<{ accountId: number; settings: UiSettings }>(),\r\n toggleSettings: createStandardAction(TOGGLE_SETTINGS)<{ show?: boolean }>(),\r\n\r\n setOrigin: createStandardAction(SET_ORIGIN)<{ origin: string }>(),\r\n\r\n requestInitialAccountBalances: createStandardAction(REQUEST_ACCOUNT_BALANCES)<{ throttle: boolean }>(),\r\n requestAccountBalances: createStandardAction(REQUEST_ACCOUNT_BALANCES)<{ throttle: boolean }>(),\r\n fetchBalances: createStandardAction(FETCH_ACCOUNT_BALANCES)<{}, ActionMetadata>(),\r\n receiveAccountBalances: createStandardAction(RECEIVE_ACCOUNT_BALANCES)<{\r\n data: Balances;\r\n responseCode: ResponseCode;\r\n }>(),\r\n requestBalancesForWithdrawal: createStandardAction(REQUEST_BALANCES_FOR_WITHDRAWAL)<{ throttle: boolean }>(),\r\n fetchBalancesForWithdrawal: createStandardAction(FETCH_BALANCES_FOR_WITHDRAWAL)<{}, ActionMetadata>(),\r\n receiveBalancesForWithdrawal: createStandardAction(RECEIVE_BALANCES_FOR_WITHDRAWAL)<{\r\n data: BalancesForWithdrawal;\r\n responseCode: ResponseCode;\r\n }>(),\r\n\r\n //Related to fetching linked account balances\r\n requestLinkedAccountBalances: createStandardAction(REQUEST_LINKED_ACCOUNT_BALANCES)<{\r\n accountIds?: number[];\r\n }>(),\r\n fetchLinkedAccountBalances: createStandardAction(FETCH_LINKED_ACCOUNT_BALANCES)<{\r\n accountIds?: number[];\r\n }>(),\r\n receiveLinkedAccountBalances: createStandardAction(RECEIVE_LINKED_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n balance: Balances;\r\n }>(),\r\n\r\n requestSubAccountBalances: createStandardAction(REQUEST_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccounts: SubAccount[];\r\n update?: boolean;\r\n }>(),\r\n fetchSubAccountBalances: createStandardAction(FETCH_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccounts: SubAccount[];\r\n update?: boolean;\r\n }>(),\r\n receiveSubAccountBalances: createStandardAction(RECEIVE_SUB_ACCOUNT_BALANCES)<{\r\n accountId: number;\r\n subAccountId: number;\r\n balance: Balances;\r\n }>(),\r\n\r\n requestPendingTransfers: createStandardAction(REQUEST_PENDING_TRNASFERS)<{ throttle: boolean }>(),\r\n fetchPendingTransfers: createStandardAction(FETCH_PENDING_TRNASFERS)<{}, ActionMetadata>(),\r\n receivePendingTransfers: createStandardAction(RECEIVE_PENDING_TRNASFERS)<{\r\n data: Transfer[];\r\n responseCode: ResponseCode;\r\n }>(),\r\n\r\n requestAccountHistory: createStandardAction(REQUEST_ACCOUNT_HISTORY)<{ accountId: number; subaccountId?: number }>(),\r\n receiveAccountHistory: createStandardAction(RECEIVE_ACCOUNT_HISTORY)<{ accountId: number; history: HistoryItem[] }>(),\r\n\r\n requestAccountPnL: createStandardAction(REQUEST_ACCOUNT_PNL)<{ accountId: number; subaccountId?: number }>(),\r\n receiveAccountPnL: createStandardAction(RECEIVE_ACCOUNT_PNL)<{ accountId: number; pnlHistory: PnLItem[] }>(),\r\n\r\n requestAccountOrders: createStandardAction(REQUEST_ACCOUNT_ORDERS)<\r\n {\r\n accountId: number;\r\n subaccountId?: number;\r\n dateFrom?: Date;\r\n dateTo?: Date;\r\n includeOrderEvents?: boolean;\r\n pageSize?: number;\r\n pageIndex?: number;\r\n blockId?: string;\r\n isTradesTab?: boolean;\r\n workingOrdersOnly?: boolean;\r\n },\r\n ActionMetadata\r\n >(),\r\n receiveAccountOrders: createStandardAction(RECEIVE_ACCOUNT_ORDERS)<{\r\n accountId: number;\r\n orders: Order[];\r\n date: Date;\r\n dateTo?: Date;\r\n dateFrom?: Date;\r\n total?: number;\r\n pageSize?: number;\r\n pageIndex?: number;\r\n blockId?: string;\r\n isTradesTab?: boolean;\r\n }>(),\r\n requestMoreAccountOrders: createStandardAction(REQUEST_MORE_ACCOUNT_ORDERS)<{\r\n accountId: number;\r\n subaccountId?: number;\r\n }>(),\r\n setOrdersRequestPageIndex: createStandardAction('@account/orders/SET_PAGE')<{\r\n pageIndex: number;\r\n blockId: string;\r\n }>(),\r\n setOrdersRequestPageSize: createStandardAction('@account/orders/SET_PAGE_SIZE')<{\r\n pageSize: number;\r\n blockId: string;\r\n }>(),\r\n};\r\n\r\nexport const SET_QUOTES = 'SET_QUOTES';\r\nexport const QuoteActions = {\r\n setQuotes: createStandardAction(SET_QUOTES)(),\r\n};\r\n\r\nexport const PERSIST_BLOCKS = 'PERSIST_BLOCKS';\r\nexport const PERSIST_DASHBOARDS = 'PERSIST_DASHBOARDS';\r\nexport const PERSIST_DASHBOARDS_FINISHED = 'PERSIST_DASHBOARDS_FINISHED';\r\nexport const PERSIST_LAYOUTS = 'PERSIST_LAYOUTS';\r\nexport const PERSIST_FAVORITES = 'PERSIST_FAVORITES';\r\nexport const PersistActions = {\r\n blocks: createStandardAction(PERSIST_BLOCKS)(),\r\n dashboards: createStandardAction(PERSIST_DASHBOARDS)(),\r\n dashboardsFinished: createStandardAction(PERSIST_DASHBOARDS_FINISHED)(),\r\n layouts: createStandardAction(PERSIST_LAYOUTS)(),\r\n favorites: createStandardAction(PERSIST_FAVORITES)(),\r\n};\r\n\r\nexport const ADD_DASHBOARD = 'ADD_DASHBOARD';\r\nexport const ADD_EMPTY_DASHBOARD = 'ADD_EMPTY_DASHBOARD';\r\nexport const UPDATE_DASHBOARD = 'UPDATE_DASHBOARD';\r\nconst DashboardAddUpdateActions = {\r\n addDashboard: createStandardAction(ADD_DASHBOARD)<\r\n { dashboard: DashboardInfo; blocks: BlockConfiguration[] },\r\n ActionMetaOrUndefined\r\n >(),\r\n addEmptyDashboard: createStandardAction(ADD_EMPTY_DASHBOARD)<{ dashboard: DashboardInfo; setAsActive: boolean }>(),\r\n updateDashboard: createStandardAction(UPDATE_DASHBOARD)<\r\n { dashboardId: string; dashboardData: Partial },\r\n ActionMetaOrUndefined\r\n >(),\r\n};\r\n\r\nexport const REQUEST_DASHBOARDS = 'REQUEST_DASHBOARDS';\r\nexport const RECEIVE_DASHBOARDS = 'RECEIVE_DASHBOARDS';\r\nexport const SET_DASHBOARD = 'SET_DASHBOARD';\r\nexport const DashboardActions = {\r\n ...DashboardAddUpdateActions,\r\n requestDashboards: createStandardAction(REQUEST_DASHBOARDS)(),\r\n receiveDashboards: createStandardAction(RECEIVE_DASHBOARDS)(),\r\n setDashboard: createStandardAction(SET_DASHBOARD)<{ dashboard: DashboardInfo; addDashboard?: boolean }>(),\r\n};\r\nexport type AddDashboardAction = ActionType;\r\nexport type UpdateDashboardAction = ActionType;\r\n\r\nconst REQUEST_BLOCKS = '@block/REQUEST_BLOCKS';\r\nconst RECEIVE_BLOCKS = '@block/RECEIVE_BLOCKS';\r\nconst ADD_BLOCK = '@block/ADD_BLOCK';\r\nconst ADDORUPDATE_BLOCK = '@block/ADD_OR_UPDATE_BLOCK';\r\nconst UPDATE_BLOCK = '@block/UPDATE_BLOCK';\r\nconst REMOVE_BLOCK = '@block/REMOVE_BLOCK';\r\nconst SET_BLOCKS = '@block/SET_BLOCKS';\r\nconst HIGHLIGHT_BLOCKS = '@block/HIGHLIGHT_BLOCKS';\r\nconst HIGHLIGHT_GROUP = '@block/HIGHLIGHT_GROUP';\r\nconst CLEAR_HIGHLIGHTED_BLOCKS = '@block/CLEAR_HIGHLIGHTED_BLOCKS';\r\nconst ADD_BLOCK_QUOTE_SUBSCRIPTION = '@block/ADD_BLOCK_QUOTE_SUBSCRIPTION';\r\nconst SET_BLOCK_QUOTE_SUBSCRIPTION = '@block/SET_QUOTE_SUBSCRIPTION';\r\nconst LINK_BLOCKS = '@block/LINK_BLOCKS';\r\nconst UNLINK_BLOCK = '@block/UNLINK_BLOCK';\r\nconst SET_LINK_COLOR = '@block/SET_LINK_COLOR';\r\nexport const BlockActions = {\r\n requestBlocks: createStandardAction(REQUEST_BLOCKS)(),\r\n receiveBlocks: createStandardAction(RECEIVE_BLOCKS)(),\r\n noBlocks: createStandardAction('@block/NO_BLOCKS')(),\r\n addBlock: createStandardAction(ADD_BLOCK)<{ block: BlockConfiguration; addedAt: Date }, ActionMetaOrUndefined>(),\r\n addOrUpdateBlock: createStandardAction(ADDORUPDATE_BLOCK)<\r\n {\r\n block: BlockConfiguration;\r\n addedAt: Date;\r\n preserveGroupOrderData?: boolean;\r\n replaceFirstMatch?: { blockType: BlockType; groupId?: string };\r\n },\r\n ActionMetaOrUndefined\r\n >(),\r\n updateBlock: createStandardAction(UPDATE_BLOCK)<\r\n { blockId: string; blockData: Partial },\r\n ActionMetaOrUndefined\r\n >(),\r\n removeBlock: createStandardAction(REMOVE_BLOCK)(),\r\n setBlocks: createStandardAction(SET_BLOCKS)<{ blocks: BlockConfiguration[] }, ActionMetaOrUndefined>(),\r\n highlightBlocks: createStandardAction(HIGHLIGHT_BLOCKS)<{\r\n blockType: BlockType;\r\n highlightedAt: Date;\r\n options?: { activeTab?: string; allMatches?: boolean; timeoutMs?: number };\r\n }>(),\r\n highlightGroup: createStandardAction(HIGHLIGHT_GROUP)<{ groupId: string | undefined; highlightAt: Date }>(),\r\n clearHighlightedBlocks: createStandardAction(CLEAR_HIGHLIGHTED_BLOCKS)(),\r\n addQuoteSubscription: createStandardAction(ADD_BLOCK_QUOTE_SUBSCRIPTION)<{ blockId: string; symbols: string[] }>(),\r\n setQuoteSubscription: createStandardAction(SET_BLOCK_QUOTE_SUBSCRIPTION)<{ blockId: string; symbols: string[] }>(),\r\n linkBlock: createStandardAction(LINK_BLOCKS)<{ blockId: string; groupId: string }>(),\r\n unlinkBlock: createStandardAction(UNLINK_BLOCK)<{ blockId: string }>(),\r\n setColoredLink: createStandardAction(SET_LINK_COLOR)<{\r\n linkColor: GroupLinkColors | undefined;\r\n blockData: { groupId: string };\r\n }>(),\r\n};\r\n\r\nexport const BLOCKGROUP_ADDLEG = '@block/group/ADDLEG';\r\nexport const BLOCKGROUP_SetSymbolAndReset = '@block/group/SetSymbolAndReset';\r\nexport const BLOCKGROUP_SETSYMBOL = '@block/group/SETSYMBOL';\r\nexport const BLOCKGROUP_CREATEORDERFROMGROUP = '@block/group/createOrderFromGroup';\r\nexport const SharedBlockGroupActions = {\r\n SetSymbolAndReset: createStandardAction(BLOCKGROUP_SetSymbolAndReset)<{\r\n leg: GroupOrderLeg;\r\n groupId: string;\r\n symbol: AssetSymbol;\r\n }>(),\r\n};\r\nexport const BlockGroupActions = {\r\n ...SharedBlockGroupActions,\r\n addGroupLeg: createStandardAction(BLOCKGROUP_ADDLEG)<{ leg: GroupOrderLeg; groupId: string }>(),\r\n setGroupSymbol: createStandardAction(BLOCKGROUP_SETSYMBOL)<{ symbol: AssetSymbol | undefined; groupId: string }>(),\r\n createOrderFromGroup: createStandardAction(BLOCKGROUP_CREATEORDERFROMGROUP)<\r\n { leg: GroupOrderLeg; groupId: string },\r\n { persist: true }\r\n >(),\r\n};\r\nexport type BlockGroupAction = ActionType;\r\n\r\nexport const TOGGLE_LOCKED = '@grid/TOGGLE_LOCKED';\r\nexport const TOGGLE_LINKING = '@grid/TOGGLE_LINKING';\r\nexport const GridActions = {\r\n toggleLocked: createStandardAction(TOGGLE_LOCKED)<{ locked?: boolean; showTooltip?: boolean }>(),\r\n toggleLinking: createStandardAction(TOGGLE_LINKING)<{\r\n enabled: boolean | undefined;\r\n sourceBlock: BlockInfo | undefined;\r\n targetBlock: { type: BlockType } | undefined;\r\n }>(),\r\n};\r\n\r\nexport const ADD_QUOTE = '@feed/ADD_QUOTE';\r\nexport const REMOVE_QUOTE = '@feed/REMOVE_QUOTE';\r\nexport const FEED_QUOTES_UPDATE = '@feed/quotes/UDPATE';\r\nexport const ADD_SPREAD = '@feed/ADD_SPREAD';\r\nexport const REMOVE_SPREAD = '@feed/REMOVE_SPREAD';\r\nexport const FEED_SPREADS_UPDATE = '@feed/spreads/UDPATE';\r\nexport const FEED_CLOSED = '@feed/CLOSED';\r\nexport const FEED_ERRORED = '@feed/ERRORED';\r\nexport const FEED_CONNECTED = '@feed/CONNECTED';\r\nexport const FeedActions = {\r\n addSpread: createStandardAction(ADD_SPREAD)(),\r\n removeSpread: createStandardAction(REMOVE_SPREAD)(),\r\n updateSpreads: createStandardAction(FEED_SPREADS_UPDATE)<\r\n { spreads: { [symbol: string]: FeedSpread } },\r\n ActionMetaOrUndefined\r\n >(),\r\n addQuote: createStandardAction(ADD_QUOTE)(),\r\n removeQuote: createStandardAction(REMOVE_QUOTE)(),\r\n updateQuotes: createStandardAction(FEED_QUOTES_UPDATE)<\r\n { quotes: { [symbol: string]: FeedQuote } },\r\n ActionMetaOrUndefined\r\n >(),\r\n feedClosed: createStandardAction(FEED_CLOSED)(),\r\n feedErrored: createStandardAction(FEED_ERRORED)(),\r\n connected: createStandardAction(FEED_CONNECTED)(),\r\n};\r\n\r\nexport const REQUEST_EXPIRATIONS = '@data/expirations/REQUEST_EXPIRATIONS';\r\nexport const RECEIVE_EXPIRATIONS = '@data/expirations/RECEIVE_EXPIRATIONS';\r\nexport const REQUEST_STRIKES = '@data/REQUEST_STRIKES';\r\nexport const RECEIVE_STRIKES = '@data/RECEIVE_STRIKES';\r\nexport const requestExpirationAction = createStandardAction(REQUEST_EXPIRATIONS)<{ symbol: string }>();\r\nexport const requestStrikeAction = createStandardAction(REQUEST_STRIKES)<{ symbol: string; expiration: Expiration }>();\r\nexport const fetchStrikes = createStandardAction('@data/FETCH_STRIKES')<{ symbol: string; expiration: Expiration }>();\r\nexport const ExpirationStrikeActions = {\r\n requestExpirationAction,\r\n receiveExpirations: createStandardAction(RECEIVE_EXPIRATIONS)<{ symbol: string; expirations: Expiration[] }>(),\r\n requestStrikes: requestStrikeAction,\r\n fetchStrikes,\r\n receiveStrikes: createStandardAction(RECEIVE_STRIKES)<{\r\n strikes: number[];\r\n symbol: string;\r\n expiration: Expiration;\r\n }>(),\r\n};\r\nexport type ExpirationStrikeAction = ActionType;\r\nexport type RequestExpirationAction = ActionType;\r\nexport type RequestStrikeAction = ActionType;\r\n\r\nexport const REQUEST_POSITIONS = '@data/REQUEST_POSITIONS';\r\nexport const RECEIVE_POSITIONS = '@data/RECEIVE_POSITIONS';\r\nexport const FETCHING_POSITIONS = '@data/FETCHING_POSITIONS';\r\nconst MANUAL_REFRESH_OF_POSITIONS = '@data/MANUAL_REFRESH_OF_POSITIONS';\r\nexport const QuoteDataActions = DataQuoteActions;\r\nexport const DataActions = {\r\n ...QuoteDataActions,\r\n requestPositions: createStandardAction(REQUEST_POSITIONS)<\r\n { accountId?: number; subaccountId?: number; more?: boolean },\r\n Partial\r\n >(),\r\n fetchingPositions: createStandardAction(FETCHING_POSITIONS)<{ accountId?: number; subaccountId?: number }>(),\r\n receivePositions: createStandardAction(RECEIVE_POSITIONS)(),\r\n manualRefreshOfPositions: createStandardAction(MANUAL_REFRESH_OF_POSITIONS)(),\r\n};\r\n\r\nexport type OrderUpdateEventAction = ActionType;\r\nexport type OrderCancelEventAction = ActionType;\r\n\r\nexport const HIDE_NOTIFICATION = '@notification/HIDE_NOTIFICATION';\r\nexport const READ_NOTIFICATION = '@notification/READ_NOTIFICATION';\r\nexport const VIEW_NOTIFICATION = '@notification/VIEW_NOTIFICATION';\r\nexport const ADD_NOTIFICATION = '@notification/ADD_NOTIFICATION';\r\nexport const ADD_WARNING_NOTIFICATION = '@notification/ADD_WARNING_NOTIFICATION';\r\nexport const NotificationActions = {\r\n add: createStandardAction(ADD_NOTIFICATION)(),\r\n hide: createStandardAction(HIDE_NOTIFICATION)(),\r\n read: createStandardAction(READ_NOTIFICATION)(),\r\n view: createStandardAction(VIEW_NOTIFICATION)(),\r\n};\r\n\r\nexport const ADD_FAVORITE = '@favorites/ADD';\r\nexport const REMOVE_FAVORITE = '@favorites/REMOVE';\r\nexport const REQUEST_FAVORITES = '@favorites/REQUEST';\r\nexport const RECEIVE_FAVORITES = '@favorites/RECEIVE';\r\nexport const FavoriteActions = {\r\n addFavorite: createStandardAction(ADD_FAVORITE)(),\r\n remove: createStandardAction(REMOVE_FAVORITE)(),\r\n request: createStandardAction(REQUEST_FAVORITES)(),\r\n receive: createStandardAction(RECEIVE_FAVORITES)<{ value: AssetSymbolInfo[] }>(),\r\n};\r\n\r\nexport const SET_BREAKPOINT_AND_COLUMNS = '@layout/SET_BREAKPOINT_AND_COLUMNS';\r\nexport const SET_LAYOUTS = '@layout/SET_LAYOUTS';\r\nexport const SET_ALL_LAYOUTS = '@layout/SET_ALL_LAYOUTS';\r\nexport const LayoutActions = {\r\n setBreakpointAndColumns: createStandardAction(SET_BREAKPOINT_AND_COLUMNS)<{\r\n breakpoint: SizeType;\r\n columns: number;\r\n }>(),\r\n setLayouts: createStandardAction(SET_LAYOUTS)<{ layouts: Layouts }, ActionMetaOrUndefined>(),\r\n setAllLayouts: createStandardAction(SET_ALL_LAYOUTS)<{ layouts: Layouts }, ActionMetaOrUndefined>(),\r\n};\r\n\r\nexport const REQUEST_OPTION_EXPIRATIONS = '@optionchain/REQUEST_OPTION_EXPIRATIONS';\r\nexport const RECEIVE_OPTION_EXPIRATIONS = '@optionchain/RECEIVE_OPTION_EXPIRATIONS';\r\nexport const REQUEST_OPTION_CHAIN = '@optionchain/REQUEST_OPTION_CHAIN';\r\nexport const RECEIVE_OPTION_CHAIN = '@optionchain/RECEIVE_OPTION_CHAIN';\r\nexport const REQUEST_OPTION_ERROR = '@optionchain/REQUEST_OPTION_ERROR';\r\nexport const SET_STRIKECOUNT = '@optionchain/SET_STRIKECOUNT';\r\nexport const OptionChainActions = {\r\n setStrikeCount: createStandardAction(SET_STRIKECOUNT)<{\r\n blockId: string;\r\n symbol: string;\r\n strikeCount: number;\r\n expirations: Expiration[];\r\n }>(),\r\n requestOptionChainError: createStandardAction(REQUEST_OPTION_ERROR)<{\r\n blockId: string;\r\n symbol: string;\r\n expiration: Expiration;\r\n responseCode: number;\r\n }>(),\r\n requestOptionExpirations: createStandardAction(REQUEST_OPTION_EXPIRATIONS)<{ blockId: string; symbol: string }>(),\r\n receiveOptionExpirations: createStandardAction(RECEIVE_OPTION_EXPIRATIONS)<{\r\n blockId: string;\r\n symbol: string;\r\n expirations: Expiration[];\r\n }>(),\r\n requestOptionChain: createStandardAction(REQUEST_OPTION_CHAIN)<{\r\n blockId: string;\r\n symbol: string;\r\n expirations: Expiration[];\r\n strikeCount?: number;\r\n }>(),\r\n receiveOptionChain: createStandardAction(RECEIVE_OPTION_CHAIN)<{\r\n blockId: string;\r\n symbol: string;\r\n expiration: Expiration;\r\n pairs: OptionPairWithSymbol[];\r\n minStrike?: number;\r\n maxStrike?: number;\r\n }>(),\r\n};\r\n\r\nexport const SESSION_EXPIRED = '@session/EXPIRED';\r\nexport const SESSION_ERROR = '@session/SESSION_ERROR';\r\nexport const RESET_UNAUTHORIZED_REQUEST = '@session/RESET_UNAUTHORIZED_REQUEST';\r\n\r\nexport const SessionActions = {\r\n expired: createStandardAction(SESSION_EXPIRED)<{ code: ExpiredTokenCode; reason?: string; syncTab?: boolean }>(),\r\n error: createStandardAction(SESSION_ERROR)<{ code: number; url?: string; message?: string; reason?: string }>(),\r\n resetError: createStandardAction(RESET_UNAUTHORIZED_REQUEST)<{}>(),\r\n};\r\n\r\nexport const UI_DASHBOARD_DRAWER_OPEN = '@ui/dashboard/drawer/open';\r\nexport const UI_SET_SUBACCOUNT_FILTER_ID = '@ui/setSubaccountFilterId';\r\nexport const SET_MARKET_SCHEDULE = '@ui/setMarketSchedule';\r\nexport const REQUEST_MARKET_SCHEDULE = '@ui/requestMarketSchedule';\r\nexport const DEFAULT_MARKET_SCHEDULE = '@ui/defaultMarketSchedule';\r\nconst UI_SET_SHOW_PENDING_ENTITLEMENT_MODAL = '@ui/setShowPendingEntitlementModal';\r\n\r\nexport const UIActions = {\r\n setDashboardDrawerOpen: createStandardAction(UI_DASHBOARD_DRAWER_OPEN)<{ open: boolean }>(),\r\n toggleLockDashboard: createStandardAction('@ui/dashboard/toggleLock')<{}>(),\r\n setSubAccountFilterId: createStandardAction(UI_SET_SUBACCOUNT_FILTER_ID)<{ id: number | undefined }>(),\r\n setMarketSchedule: createStandardAction(SET_MARKET_SCHEDULE)(),\r\n requestMarketSchedule: createStandardAction(REQUEST_MARKET_SCHEDULE)(),\r\n defaultMarketSchedule: createStandardAction(DEFAULT_MARKET_SCHEDULE)(),\r\n setShowPendingEntitlementModal: createStandardAction(UI_SET_SHOW_PENDING_ENTITLEMENT_MODAL)<{\r\n showPendingEntitlementModal: boolean;\r\n }>(),\r\n};\r\n\r\nexport type CashieringAction = ActionType;\r\nconst allActions = {\r\n ...HistoryActions,\r\n ...EnvironmentActions,\r\n ...PageActions,\r\n ...SettingsActions,\r\n ...Actions,\r\n ...DashboardActions,\r\n ...GridActions,\r\n ...QuoteActions,\r\n ...LifecycleActions,\r\n ...FeedActions,\r\n ...PersistActions,\r\n ...DataActions,\r\n ...OrderActions,\r\n ...NotificationActions,\r\n ...FavoriteActions,\r\n ...ExpirationStrikeActions,\r\n ...LayoutActions,\r\n ...OptionChainActions,\r\n ...BlockActions,\r\n ...BlockGroupActions,\r\n ...CashieringActions,\r\n ...SessionActions,\r\n ...SymbolActions,\r\n ...UIActions,\r\n ...AdminActions,\r\n ...CashieringEventActions,\r\n ...InfoDataActions,\r\n ...AccountManagementDataActions,\r\n ...LinkedAccountsActions,\r\n ...AccountStatementsActions,\r\n ...SubaccountActions,\r\n};\r\n\r\nconst gridPersistActions = {\r\n addBlock: BlockActions.addBlock,\r\n removeBlock: BlockActions.removeBlock,\r\n updateBlock: BlockActions.updateBlock,\r\n setLayouts: LayoutActions.setLayouts,\r\n};\r\nexport type PersistActions = ActionType;\r\nexport type RootAction = ActionType;\r\n","import React, { useMemo, FC } from 'react';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport {\n HttpAutocomplete,\n OptionType,\n Pill,\n} from '@tradingblock/components';\nimport { SymbolToOption, useSymbolSearch } from '../../hooks/useSymbolSearch';\nimport { useQuote } from '../../hooks/useFeedQuote';\nimport { useDashboardSettings, useDashboardSettingsUpdater } from '../../hooks/useDashboardSettings';\n\ninterface DashboardSymbolPickerProps {\n blockType?: BlockType;\n symbol?: AssetSymbol | undefined;\n onSelect?: (value: OptionType) => void;\n onClear?: () => void;\n placeholder?: string;\n clearOptionsOnSelect?: boolean;\n focus?: boolean;\n disableFavorite?: boolean;\n hidePrice?: boolean;\n hideTime?: boolean;\n hidePercent?: boolean;\n onSearch?: (value: string, limit?: number | undefined) => void;\n onBlur?: () => void;\n onChange?: () => void;\n}\n\nexport const DashboardSymbolPicker: FC = ({\n symbol,\n placeholder = 'Search symbol..',\n clearOptionsOnSelect = true,\n focus\n}) => {\n const search = useSymbolSearch();\n const symbolValue = symbol ? symbol.symbol : '';\n const settingsUpdater = useDashboardSettingsUpdater();\n const settings = useDashboardSettings();\n const symbolQuote = useQuote(symbolValue);\n const autoCompleteValue = useMemo(() => {\n return symbol ? SymbolToOption(symbol, true) : undefined;\n }, [symbol]);\n const rest = useMemo(() => {\n return { autoFocus: focus };\n }, [focus]);\n\n const pillStyle = {\n 'backgroundColor': 'var(--dark-blue)'\n }\n\n const buttonStyle = {\n 'marginLeft': '0.2rem',\n 'marginRight': '0rem',\n 'marginTop': '0.3rem',\n 'borderColor': 'var(--blue)',\n 'borderWidth': '1px',\n 'borderRadius': '5px',\n 'borderStyle': 'solid',\n 'padding': 'revert',\n }\n\n const symbolButtonStyle = {\n 'display': 'flex'\n }\n\n const onSelect = (val: any) => {\n if (val && val.data && val.data.symbol && val.data.type) {\n settingsUpdater.updateSettings({\n ...settings,\n bannerSymbols: Array.from(new Set([...settings.bannerSymbols, val.data.symbol]))\n })\n }\n }\n\n const onBlur = () => { }\n const onClear = () => { }\n const onSearch = (value: string, limit: number | undefined) => {\n\n }\n const clearSymbolFromList: Function = (symbol_: any): void => {\n if (settings && settings.bannerSymbols && symbol_) {\n const newList = settings.bannerSymbols.filter((symbol: string) => symbol_ !== symbol);\n settingsUpdater.updateSettings({\n ...settings,\n bannerSymbols: newList\n })\n } else return\n }\n return (\n <>\n {settings.bannerSymbols && settings.bannerSymbols.length < 4 ?
\n \n
\n {\n if (onSearch !== undefined) onSearch(value, limit);\n return search(value, limit)\n }}\n onBlur={onBlur}\n value={autoCompleteValue}\n onSelect={onSelect}\n clearOptionsOnSelect={clearOptionsOnSelect}\n placeholder={placeholder ? placeholder : ''}\n debounceTimeout={500}\n symbol={symbolValue}\n charLimit={20}\n rootPortalId='dashboardSymbolPicker'\n />\n
\n {symbol && symbolQuote && (\n
\n
{symbol.symbol}
\n
{symbol.name}
\n
\n )}\n
\n
:
Remove a symbol to search. (Max 4)
}\n
{settings && settings.bannerSymbols && settings.bannerSymbols.length ? 'Remove symbols:' : ''}
\n \n {settings && settings.bannerSymbols ?\n settings.bannerSymbols.map((symbol: string, index: number) =>\n ()) : <>}\n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, FieldProps, FormikErrors, useFormikContext } from 'formik';\nimport _ from 'lodash';\nimport {\n TextboxInput,\n SelectDropdownInput,\n CheckboxInput,\n BaseInputProps,\n InputOption,\n} from '@tradingblock/components';\nimport { DashboardSymbolPicker } from '../dashboard/DashboardSymbolPicker';\nimport { OrderDefaults, UiSettings } from '@tradingblock/types';\n\nexport interface BasicSettingsField extends Partial {\n type?: 'boolean' | 'toggle' | 'string' | 'number' | 'symbolPicker';\n toggleOpposite?: boolean;\n options?: string[] | InputOption[];\n}\nexport type SettingsField = BasicSettingsField | RadioSettingsField | ChoiceSettingsField;\nexport type BlockSettingsField = SettingsFields;\nexport interface ChoiceSettingsField extends Partial {\n type: 'choice';\n values: { value: T; label?: string }[];\n}\ntype stringFunc = (value: boolean) => string;\nexport interface RadioSettingsField extends Partial {\n type: 'radio';\n fieldLabel: string;\n yesOptionLabel: string;\n noOptionLabel: string;\n fieldNote?: string | stringFunc;\n}\nexport type SettingsFields = {\n [K in keyof T]?: F;\n};\n\ninterface GenericFieldProps {\n name: string;\n settings: SettingsField;\n value: any;\n parentFieldName?: string;\n usePortalForSelect?: boolean;\n}\n\nexport const GenericField: React.FC = ({ name, value, settings, usePortalForSelect }) => {\n const { setFieldValue, errors } = useFormikContext();\n // As we add more validation on forms using this component we will need to update the type below.\n const formikErrors = errors as FormikErrors<{ block: OrderDefaults, global: OrderDefaults, } & UiSettings>;\n const { type, ...fieldprops } = settings;\n const toggleOpposite = _.get(settings, 'toggleOpposite', false);\n\n const options: string[] | InputOption[] | undefined = _.get(settings, 'options', undefined);\n const onChange = useCallback((e: React.ChangeEvent | undefined, value?: any) => {\n const nextValue = toggleOpposite ? !value : value;\n setFieldValue(name, nextValue);\n }, []);\n\n let label: any;\n\n if (\n (settings.defaultLabelId && settings.name === 'block.etfCoverage') ||\n settings.name === 'global.etfCoverage' ||\n settings.name === 'block.ipos' ||\n settings.name === 'global.ipos' ||\n settings.name === 'block.corporateActionsDividends' ||\n settings.name === 'global.corporateActionsDividends'\n ) {\n label = settings.defaultLabelId;\n } else {\n label = settings.label;\n }\n\n const blockDefaultQuantityForOptionsAndStrategiesId = 'block.defaultQuantityForOptionsAndStrategies';\n const blockDefaultQuantityForSharesId = 'block.defaultQuantityForShares';\n const globalDefaultQuantityForOptionsAndStrategiesId = 'global.defaultQuantityForOptionsAndStrategies';\n const globalDefaultQuantityForSharesId = 'global.defaultQuantityForShares';\n const cashieringPollingIntervalId = 'cashieringPollingInterval';\n const cashieringPendingReminderIntervalId = 'cashieringPendingReminderInterval';\n const cashieringPendingReminderMaxAttemptsId = 'cashieringPendingReminderMaxAttempts';\n const feedSyncIntervalMsId = 'feedSyncIntervalMs';\n const gridColumnsLargeId = 'gridColumnsLarge';\n const gridColumnsMediumId = 'gridColumnsMedium';\n const gridColumnsSmallId = 'gridColumnsSmall';\n const widthId = 'width';\n \n const getFieldIdWithError = (): string => {\n if (\n settings.name === blockDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForOptionsAndStrategies\n ) {\n return blockDefaultQuantityForOptionsAndStrategiesId;\n }\n\n if (\n settings.name === blockDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForShares\n ) {\n return blockDefaultQuantityForSharesId;\n }\n\n if (\n settings.name === globalDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForOptionsAndStrategies\n ) {\n return globalDefaultQuantityForOptionsAndStrategiesId;\n }\n\n if (\n settings.name === globalDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForShares\n ) {\n return globalDefaultQuantityForSharesId;\n }\n\n if (\n settings.name === cashieringPollingIntervalId &&\n formikErrors &&\n formikErrors.cashieringPollingInterval\n ) {\n return cashieringPollingIntervalId;\n }\n\n if (\n settings.name === cashieringPendingReminderIntervalId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderInterval\n ) {\n return cashieringPendingReminderIntervalId;\n }\n\n if (\n settings.name === cashieringPendingReminderMaxAttemptsId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderMaxAttempts\n ) {\n return cashieringPendingReminderMaxAttemptsId;\n }\n\n if (\n settings.name === feedSyncIntervalMsId &&\n formikErrors &&\n formikErrors.feedSyncIntervalMs\n ) {\n return feedSyncIntervalMsId;\n }\n\n if (\n settings.name === gridColumnsLargeId &&\n formikErrors &&\n formikErrors.gridColumnsLarge\n ) {\n return gridColumnsLargeId;\n }\n\n if (\n settings.name === gridColumnsMediumId &&\n formikErrors &&\n formikErrors.gridColumnsMedium\n ) {\n return gridColumnsMediumId;\n }\n\n if (\n settings.name === gridColumnsSmallId &&\n formikErrors &&\n formikErrors.gridColumnsSmall\n ) {\n return gridColumnsSmallId;\n }\n\n if (\n settings.name === widthId &&\n formikErrors &&\n formikErrors.width\n ) {\n return widthId;\n }\n\n return ''\n }\n\n const fieldIdWithError = getFieldIdWithError();\n\n return (\n \n {({ form }: FieldProps) => {\n let props = {\n ...fieldprops,\n label: label || _.startCase(name),\n onchange: onChange,\n };\n\n return (\n <>\n {options && (\n _.isObject(o)) ? options : _.map(options, o => ({ value: o }))}\n menuPortalTargetId={usePortalForSelect ? 'portal-root' : undefined}\n value={value}\n {...props}\n />\n )}\n {settings.type === 'boolean' && }\n {settings.type === 'toggle' && }\n {settings.type === 'string' && !settings.options && }\n {settings.type === 'number' && !settings.options && (\n <>\n \n {\n settings.name === blockDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForOptionsAndStrategies &&\n \n {formikErrors.block.defaultQuantityForOptionsAndStrategies}\n \n }\n {\n settings.name === globalDefaultQuantityForOptionsAndStrategiesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForOptionsAndStrategies &&\n \n {formikErrors.global.defaultQuantityForOptionsAndStrategies}\n \n }\n {\n settings.name === blockDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.block &&\n formikErrors.block.defaultQuantityForShares &&\n \n {formikErrors.block.defaultQuantityForShares}\n \n }\n {\n settings.name === globalDefaultQuantityForSharesId &&\n formikErrors &&\n formikErrors.global &&\n formikErrors.global.defaultQuantityForShares &&\n \n {formikErrors.global.defaultQuantityForShares}\n \n }\n {\n settings.name === cashieringPollingIntervalId &&\n formikErrors &&\n formikErrors.cashieringPollingInterval &&\n
\n {formikErrors.cashieringPollingInterval}\n
\n }\n {\n settings.name === cashieringPendingReminderIntervalId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderInterval &&\n
\n {formikErrors.cashieringPendingReminderInterval}\n
\n }\n {\n settings.name === cashieringPendingReminderMaxAttemptsId &&\n formikErrors &&\n formikErrors.cashieringPendingReminderMaxAttempts &&\n
\n {formikErrors.cashieringPendingReminderMaxAttempts}\n
\n }\n {\n settings.name === feedSyncIntervalMsId &&\n formikErrors &&\n formikErrors.feedSyncIntervalMs &&\n \n {formikErrors.feedSyncIntervalMs}\n \n }\n {\n settings.name === gridColumnsLargeId &&\n formikErrors &&\n formikErrors.gridColumnsLarge &&\n
\n {formikErrors.gridColumnsLarge}\n
\n }\n {\n settings.name === gridColumnsMediumId &&\n formikErrors &&\n formikErrors.gridColumnsMedium &&\n
\n {formikErrors.gridColumnsMedium}\n
\n }\n {\n settings.name === gridColumnsSmallId &&\n formikErrors &&\n formikErrors.gridColumnsSmall &&\n
\n {formikErrors.gridColumnsSmall}\n
\n }\n {\n settings.name === widthId &&\n formikErrors &&\n formikErrors.width &&\n
\n {formikErrors.width}\n
\n }\n \n )}\n {settings.type === 'symbolPicker' && }\n \n );\n }}\n
\n );\n};\n","module.exports = __webpack_public_path__ + \"static/media/ok.0a2c73b5.mp3\";","module.exports = __webpack_public_path__ + \"static/media/error.ce710465.mp3\";","module.exports = __webpack_public_path__ + \"static/media/updates.8e011c65.mp3\";","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { CashieringSearchResponse, ApiResponse, CashieringSearchRequest } from '@tradingblock/types';\nimport { buildGenericRequestReceiveActions } from '../actionUtilities';\n\nconst CASHIERING_SEARCH_PENDING_REQUEST = '@cashiering/search/pending/REQUEST';\nconst CASHIERING_SEARCH_PENDING_RECEIVE = '@cashiering/search/pending/RECEIVE';\nconst CASHIERING_SEARCH_PENDING_ERROR = '@cashiering/search/pending/ERROR';\n\nconst CASHIERING_PENDING_POLL_START = '@cashiering/pending/poll/START';\nconst CASHIERING_PENDING_POLL_STOP = '@cashiering/pending/poll/STOP';\n\nconst [\n cashieringPendingSearchRequest,\n cashieringPendingSearchReceive,\n cashieringPendingSearchError,\n] = buildGenericRequestReceiveActions({\n REQUEST: CASHIERING_SEARCH_PENDING_REQUEST,\n RECEIVE: CASHIERING_SEARCH_PENDING_RECEIVE,\n ERROR: CASHIERING_SEARCH_PENDING_ERROR,\n}); request: CashieringSearchRequest }>();\n\nexport const CashieringEventActions = {\n cashieringPendingSearchRequest,\n cashieringPendingSearchReceive,\n cashieringPendingSearchError,\n beginPollingForPending: createStandardAction(CASHIERING_PENDING_POLL_START)<{ timeoutMS: number }>(),\n stopPollingForPending: createStandardAction(CASHIERING_PENDING_POLL_STOP)(),\n};\n\nexport type CashieringEventAction = ActionType;\n","import { createStandardAction } from 'typesafe-actions';\nimport { SymbolQuote, SymbolQuoteExtended, SymbolDividendData, ApiResponse, SymbolEarningData } from '@tradingblock/api';\nimport { DividendTimeframeValues, EarningsTimeframeValues } from '@tradingblock/types';\nimport { actionBuilder, buildGenericRequestReceiveActions } from '../actionUtilities';\n\nexport const REQUEST_QUOTE = '@data/REQUEST_QUOTE';\nexport const FETCHING_QUOTE = '@data/FETCHING_QUOTE';\nexport const RECEIVE_QUOTE = '@data/RECEIVE_QUOTE';\nexport const REQUEST_QUOTE_EXTENDED = '@data/REQUEST_QUOTE_EXTENDED';\nexport const RECEIVE_QUOTE_EXTENDED = '@data/RECEIVE_QUOTE_EXTENDED';\nexport const ERROR_QUOTE_EXTENDED = '@data/ERROR_QUOTE_EXTENDED';\nexport const REQUEST_QUOTE_DIVIDENDS = '@data/REQUEST/QUOTE_DIVIDENDS';\nexport const RECEIVE_QUOTE_DIVIDENDS = '@data/RECEIVE/QUOTE_DIVIDENDS';\nexport const ERROR_QUOTE_DIVIDENDS = '@data/ERROR/QUOTE_DIVIDENDS';\n\nexport const REQUEST_QUOTE_EARNINGS = '@data/REQUEST/QUOTE_EARNINGS';\nexport const RECEIVE_QUOTE_EARNINGS = '@data/RECEIVE/QUOTE_EARNINGS';\nexport const ERROR_QUOTE_EARNINGS = '@data/ERROR/QUOTE_EARNINGS';\n\nconst [requestDividends, receiveDividends, errorDividends] = buildGenericRequestReceiveActions({ REQUEST: REQUEST_QUOTE_DIVIDENDS, RECEIVE: RECEIVE_QUOTE_DIVIDENDS, ERROR: ERROR_QUOTE_DIVIDENDS })<{ symbol: string; range: DividendTimeframeValues }, { symbol: string; range: DividendTimeframeValues; dividends: SymbolDividendData[] }, { symbol: string; range: DividendTimeframeValues; error?: string }>();\nconst [requestEarnings, receiveEarnings, errorEarnings] = buildGenericRequestReceiveActions({ REQUEST: REQUEST_QUOTE_EARNINGS, RECEIVE: RECEIVE_QUOTE_EARNINGS, ERROR: ERROR_QUOTE_EARNINGS })<{ symbol: string; period: EarningsTimeframeValues }, { symbol: string; period: EarningsTimeframeValues; earnings: SymbolEarningData[] }, { symbol: string; error?: string; period: EarningsTimeframeValues }>();\n\nexport const QuoteDataActions = {\n fetchingQuotes: createStandardAction(FETCHING_QUOTE)<{ symbol: string | string[] }>(),\n requestQuote: createStandardAction(REQUEST_QUOTE)<{ symbol: string | string[] }>(),\n receiveQuote: createStandardAction(RECEIVE_QUOTE)<{ symbol: string; quote: SymbolQuote }[]>(),\n\n requestQuoteExtended: createStandardAction(REQUEST_QUOTE_EXTENDED)<{ symbol: string }>(),\n receiveQuoteExtended: createStandardAction(RECEIVE_QUOTE_EXTENDED)<{ symbol: string; quote: SymbolQuoteExtended }>(),\n errorQuoteExtended: createStandardAction(ERROR_QUOTE_EXTENDED)<{ symbol: string; }>(),\n requestDividends,\n receiveDividends,\n errorDividends,\n requestEarnings,\n receiveEarnings,\n errorEarnings,\n};\n","import { buildGenericRequestReceiveActions } from '../actionUtilities';\n\n// Account Daily Statements Actions\nconst REQUEST_DAILY_ACCOUNT_STATEMENTS = '@data/REQUEST/DAILY_ACCOUNT_STATEMENTS';\nconst RECEIVE_DAILY_ACCOUNT_STATEMENTS = '@data/RECEIVE/DAILY_ACCOUNT_STATEMENTS';\nconst ERROR_DAILY_ACCOUNT_STATEMENTS = '@data/ERROR/DAILY_ACCOUNT_STATEMENTS';\n\nconst [\n requestDailyAccountStatements,\n receiveDailyAccountStatements,\n errorDailyAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_DAILY_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_DAILY_ACCOUNT_STATEMENTS,\n ERROR: ERROR_DAILY_ACCOUNT_STATEMENTS,\n})<{ accountId: number; requestedStartDate: Date; requestedEndDate: Date }, { data: any }, { error: any }>();\n\n// Account Monthly Statements Actions\nconst REQUEST_MONTHLY_ACCOUNT_STATEMENTS = '@data/REQUEST/MONTHLY_ACCOUNT_STATEMENTS';\nconst RECEIVE_MONTHLY_ACCOUNT_STATEMENTS = '@data/RECEIVE/MONTHLY_ACCOUNT_STATEMENTS';\nconst ERROR_MONTHLY_ACCOUNT_STATEMENTS = '@data/ERROR/MONTHLY_ACCOUNT_STATEMENTS';\n\nconst [\n requestMonthlyAccountStatements,\n receiveMonthlyAccountStatements,\n errorMonthlyAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_MONTHLY_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_MONTHLY_ACCOUNT_STATEMENTS,\n ERROR: ERROR_MONTHLY_ACCOUNT_STATEMENTS,\n})<{ accountId: number; requestedStartDate: Date; requestedEndDate: Date }, { data: any }, { error: any }>();\n\n// Account Tax Statements Actions\nconst REQUEST_TAX_ACCOUNT_STATEMENTS = '@data/REQUEST/TAX_ACCOUNT_STATEMENTS';\nconst RECEIVE_TAX_ACCOUNT_STATEMENTS = '@data/RECEIVE/TAX_ACCOUNT_STATEMENTS';\nconst ERROR_TAX_ACCOUNT_STATEMENTS = '@data/ERROR/TAX_ACCOUNT_STATEMENTS';\n\nconst [\n requestTaxAccountStatements,\n receiveTaxAccountStatements,\n errorTaxAccountStatements,\n] = buildGenericRequestReceiveActions({\n REQUEST: REQUEST_TAX_ACCOUNT_STATEMENTS,\n RECEIVE: RECEIVE_TAX_ACCOUNT_STATEMENTS,\n ERROR: ERROR_TAX_ACCOUNT_STATEMENTS,\n})<\n { accountId: number; taxDocument: string; taxYear: number },\n { data: any },\n { error: any }\n>();\n\nexport const AccountStatementsActions = {\n requestDailyAccountStatements,\n receiveDailyAccountStatements,\n errorDailyAccountStatements,\n requestMonthlyAccountStatements,\n receiveMonthlyAccountStatements,\n errorMonthlyAccountStatements,\n requestTaxAccountStatements,\n receiveTaxAccountStatements,\n errorTaxAccountStatements,\n};\n","import axios from 'axios';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport qs from 'qs';\nimport { OrderStatuses } from '@tradingblock/types';\nimport axiosRetry from 'axios-retry'; // export function toApiResponse(resp: ApiResponse | LegacyApiResponse): ApiResponse {\n// const payload: D = _.get(resp, 'Payload', undefined) || _.get(resp, 'payload', undefined);\n// const responseCode: ResponseCode = _.get(resp, 'ResponseCode', undefined) || _.get(resp, 'responseCode', undefined);\n// return {\n// payload,\n// responseCode,\n// };\n// }\n\nvar clients = {};\nexport var createAxiosClient = function createAxiosClient(url, token) {\n // Check if we already have a client instance for this url and token\n if (clients[\"\".concat(url, \"-\").concat(token)] !== undefined) {\n return clients[\"\".concat(url, \"-\").concat(token)];\n }\n\n var client = axios.create({\n baseURL: url,\n headers: {\n Authorization: token,\n Accept: 'application/json'\n }\n });\n axiosRetry(client, {\n retries: 6,\n retryCondition: function retryCondition(e) {\n return axiosRetry.isNetworkOrIdempotentRequestError(e) || e.response.status === 429;\n },\n shouldResetTimeout: true,\n retryDelay: function retryDelay(retryCount, error) {\n if (error.response && error.response.headers !== undefined) {\n var retry_after = error.response.headers['retry-after'];\n console.log('Retrying after: ', retry_after);\n\n if (retry_after) {\n return retry_after * 1000;\n }\n } // Can also just return 0 here for no delay if one isn't specified\n\n\n return retryCount * 2000;\n },\n onRetry: function onRetry(retryCount, error, requestConfig) {\n console.log(\"Retry attempt #\".concat(retryCount, \" for \").concat(requestConfig.url));\n console.log(\"Error \", error);\n }\n }); //Create a cache version of clients to prevent multiple clients from being created\n\n clients[\"\".concat(url, \"-\").concat(token)] = client;\n return client;\n};\nexport var formatUrl = function formatUrl(url, querystringParams) {\n var delim = url.indexOf('?') > -1 ? '&' : '?';\n var params = querystringParams ? qs.stringify(querystringParams, {\n arrayFormat: 'comma'\n }) : null;\n return \"\".concat(url).concat(params ? delim + params : '');\n};\nexport function isString(x) {\n return typeof x === 'string';\n}\nexport function getIdNumber(id) {\n return _.toNumber(id);\n}\nexport var DateFormats = {\n ApiFormat: 'MM-DD-YYYY',\n DateTimeApiFormat: 'YYYY-MM-DD hh:mm:ss'\n};\nexport var dateStringOrUndefined = function dateStringOrUndefined(dateOrString, format) {\n //if (dateOrString === undefined || isString(dateOrString)) return dateOrString;\n var dateValue = dateOrString === undefined || isString(dateOrString) ? dayjs(dateOrString).toDate() : dateOrString;\n\n if (format === undefined) {\n return dayjs(dateValue).toDate().toISOString();\n }\n\n return dayjs(dateValue).format(format);\n};\nexport function isInfinity(val) {\n return val === 'Infinity';\n}\nexport function isHeartbeat(val) {\n return val.type === 'HeartBeat';\n}\nexport function isExpiredToken(val) {\n return val.type === 'ExpiredToken';\n}\nexport function isOrderUpdate(val) {\n return val.type === 'OrderUpdate';\n}\nexport function isQuote(val) {\n return val.type === 'Quote';\n}\nexport function isSpread(val) {\n return val.type === 'Spread';\n}\nexport function isSettlement(val) {\n return val.type === 'Settlement';\n}\nexport function getOrderStatus(val) {\n var match = _.map(OrderStatuses, function (s, k) {\n return {\n status: k,\n value: s\n };\n }).find(function (v) {\n return v.value === val;\n });\n\n return match;\n}\nexport function isCashieringUpdate(msg) {\n return msg.type === 'CashieringUpdate';\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport * as tslib_1 from \"tslib\";\nimport { createAxiosClient, formatUrl } from './utilities';\n\nfunction toApiResponse(legacyResponse) {\n return {\n payload: legacyResponse.Payload,\n responseCode: legacyResponse.ResponseCode,\n errors: legacyResponse.Errors\n };\n}\n\nexport var ApiClient =\n/*#__PURE__*/\nfunction () {\n // eslint-disable-next-line @typescript-eslint/explicit-member-accessibility\n function ApiClient(rootUrl, authKey) {\n _classCallCheck(this, ApiClient);\n\n this.rootUrl = rootUrl;\n this.authKey = authKey;\n this.http = createAxiosClient(rootUrl, authKey);\n this.config = {\n headers: {}\n };\n }\n\n _createClass(ApiClient, [{\n key: \"authenticated\",\n value: function authenticated(authKey) {\n this.config.headers['Authorization'] = authKey || this.authKey;\n return this;\n }\n }, {\n key: \"withResponseHandler\",\n value: function withResponseHandler(_ref) {\n var onResponse = _ref.onResponse,\n onResponseError = _ref.onResponseError;\n this.http.interceptors.response.use(onResponse, onResponseError);\n return this;\n }\n }, {\n key: \"get\",\n value: function get(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context.abrupt(\"return\", this.http.get(formatUrl(path, params), combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n }\n }, {\n key: \"getBinary\",\n value: function getBinary(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context2.abrupt(\"return\", this.http.get(formatUrl(path, params), Object.assign({}, combinedConfig, {\n responseType: 'arraybuffer'\n })));\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n }\n }, {\n key: \"post\",\n value: function post(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context3.abrupt(\"return\", this.http.post(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n }\n }, {\n key: \"put\",\n value: function put(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context4.abrupt(\"return\", this.http.put(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n }\n }, {\n key: \"delete\",\n value: function _delete(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context5.abrupt(\"return\", this.http.delete(formatUrl(path, params), combinedConfig).then(function (res) {\n return res.data;\n }).then(toApiResponse));\n\n case 2:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n }\n }]);\n\n return ApiClient;\n}();\nexport var UiApiClient =\n/*#__PURE__*/\nfunction () {\n // eslint-disable-next-line @typescript-eslint/explicit-member-accessibility\n function UiApiClient(rootUrl, authKey) {\n _classCallCheck(this, UiApiClient);\n\n this.rootUrl = rootUrl;\n this.authKey = authKey;\n this.http = createAxiosClient(rootUrl, authKey);\n this.config = {\n headers: {}\n };\n }\n\n _createClass(UiApiClient, [{\n key: \"authenticated\",\n value: function authenticated(authKey) {\n this.config.headers['Authorization'] = authKey || this.authKey;\n this.config.withCredentials = true;\n return this;\n }\n }, {\n key: \"with\",\n value: function _with(func) {\n this.config = func(this.config);\n this.config.withCredentials;\n return this;\n }\n }, {\n key: \"withResponseHandler\",\n value: function withResponseHandler(_ref2) {\n var onResponse = _ref2.onResponse,\n onResponseError = _ref2.onResponseError;\n this.http.interceptors.response.use(onResponse, onResponseError);\n return this;\n }\n }, {\n key: \"get\",\n value: function get(path, params, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n var combinedConfig;\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n combinedConfig = Object.assign({}, this.config, options || {});\n return _context6.abrupt(\"return\", this.http.get(formatUrl(path, params), combinedConfig).then(function (res) {\n return res.data;\n }));\n\n case 2:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n }\n }, {\n key: \"post\",\n value: function post(path, payload, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee7() {\n var _a, queryParams, config, combinedConfig;\n\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n _a = options || {\n queryParams: undefined\n }, queryParams = _a.queryParams, config = tslib_1.__rest(_a, [\"queryParams\"]);\n combinedConfig = Object.assign({}, this.config, config);\n return _context7.abrupt(\"return\", this.http.post(formatUrl(path, queryParams || undefined), payload, combinedConfig).then(function (res) {\n return res.data;\n }));\n\n case 3:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7, this);\n }));\n }\n }]);\n\n return UiApiClient;\n}();","import { BlockType } from '@tradingblock/types';\nimport { ceil } from 'lodash';\n/**\n * Calculates the minimum block size based on the block type, number of columns, and screen size.\n * @param {BlockType} type - The type of block.\n * @param {number} columns - The number of columns in the grid.\n * @param {SizeType} breakpoint - The current screen size breakpoint.\n * @returns An object containing the minimum height (h) and width (w) for the block.\n */\n\nexport var getMinBlockSize = function getMinBlockSize(type, columns, breakpoint) {\n // Calculate minWidth based on the breakpoint, adjusting for screen size\n var minWidth = breakpoint === 'lg' ? ceil(columns / 3) : breakpoint === 'md' ? ceil(columns / 2) : columns; // 100% width for small screens, 50% for medium screens, 33% for large screens\n\n switch (type) {\n case BlockType.Account:\n // Specific handling for 'Account' block type\n return {\n h: 2,\n w: Math.max(minWidth, 1)\n };\n\n default:\n // Default handling for other block types\n return {\n h: 5,\n w: Math.max(minWidth, 1)\n };\n }\n};\n/**\n * Determines the default block size based on type, columns, and breakpoint.\n * This function uses getMinBlockSize for calculating the minimum required size and adjusts it based on additional rules.\n * @param {BlockType} type - The type of block.\n * @param {number} columns - The number of columns in the grid.\n * @param {SizeType} breakpoint - The current screen size breakpoint.\n * @returns An object containing the adjusted height (h) and width (w) for the block.\n */\n\nexport var getDefaultBlockSize = function getDefaultBlockSize(type, columns, breakpoint, isInvalidLayout) {\n // Get the minimum block size for the given parameters\n var min = getMinBlockSize(type, columns, breakpoint);\n var size = {\n minH: min.h,\n minW: min.w\n };\n\n if (isInvalidLayout) {\n // for lg screens, we need to adjust the width to 50% if the layout is invalid\n if (breakpoint === 'lg') {\n return Object.assign({}, size, {\n h: 5,\n w: Math.max(ceil(columns / 2), min.w)\n });\n } // for anything smaller, we need to adjust the width to 100% if the layout is invalid\n\n\n return Object.assign({}, size, {\n h: 5,\n w: columns\n });\n } // Adjust width for screens smaller than 'lg'\n\n\n if (breakpoint !== 'lg') {\n switch (type) {\n case BlockType.Quote:\n case BlockType.Info:\n case BlockType.PriceChart:\n // Specific handling for Quote, Info, and PriceChart block types\n return Object.assign({}, size, {\n h: 5,\n w: min.w\n });\n\n case BlockType.Account:\n // Specific handling for Account block type\n return Object.assign({}, size, {\n h: 2,\n w: min.w\n });\n\n default:\n // Default handling for other block types on smaller screens\n return Object.assign({}, size, {\n h: 5,\n w: columns\n });\n }\n } // Handling for 'lg' (large) screens and above\n\n\n switch (type) {\n case BlockType.Account:\n // Specific handling for Account block type on larger screens\n return Object.assign({}, size, {\n h: 2,\n w: Math.max(ceil(columns / 3), min.w)\n });\n\n default:\n // Default handling for other block types on larger screens\n return Object.assign({}, size, {\n h: 5,\n w: Math.max(ceil(columns / 2), min.w)\n });\n }\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetPnLUrl } from '../constants';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n\nvar get = function get(api) {\n return function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var apiResponse, sanitizedPnLItems;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(GetPnLUrl, request);\n\n case 2:\n apiResponse = _context.sent;\n sanitizedPnLItems = _.map(apiResponse.payload.Items, function (item) {\n var closeAmount = Number(item.CloseAmount);\n var closeOrderId = Number(item.CloseOrderId);\n var costBasis = Number(item.CostBasis);\n var dateClosed = dayjs(item.DateClosed).toDate();\n var dateOpened = dayjs(item.DateOpened).toDate();\n var openOrderId = Number(item.OpenOrderId);\n var quantity = Number(item.Quantity);\n return Object.assign({}, item, {\n CloseAmount: closeAmount,\n CloseOrderId: closeOrderId,\n CostBasis: costBasis,\n DateClosed: dateClosed,\n DateOpened: dateOpened,\n OpenOrderId: openOrderId,\n Quantity: quantity\n });\n });\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n Items: sanitizedPnLItems\n }) : undefined\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\n\nexport var pnlHistory = {\n get: get\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { GenericErrorResponseCode, DefaultAccountDetails } from '@tradingblock/types';\nimport { GetAccountsUrl, GetAccountDetailsUrl, AccountsSearchUrl, GetSubaccountsUrl, SearchAccountUpdatesUrl, GetAccountUpdateDetailsUrl, GetAccountManagementDetailsUrl, GetDocumentStatusUrl } from '../constants';\nimport { getIdNumber } from '..';\nimport { dateStringOrUndefined } from '..';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function accounts(api) {\n var _this = this;\n\n return {\n all: function all() {\n return api.authenticated().get(GetAccountsUrl, {}, RequestHeaders);\n },\n get: function get(acctId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var accountId;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n accountId = getIdNumber(acctId);\n _context.next = 4;\n return api.authenticated().get(GetAccountsUrl, {\n accountId: accountId\n }, RequestHeaders);\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](0);\n console.warn('error requesting account by accountId', acctId);\n return _context.abrupt(\"return\", {\n responseCode: GenericErrorResponseCode,\n payload: []\n });\n\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[0, 7]]);\n }));\n },\n subaccounts: function subaccounts(acctId) {\n var accountId = getIdNumber(acctId);\n return api.authenticated().get(GetSubaccountsUrl, {\n accountId: accountId\n }, RequestHeaders);\n },\n details: function details(acctId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var accountId;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n accountId = getIdNumber(acctId);\n _context2.next = 4;\n return api.authenticated().get(GetAccountDetailsUrl, {\n accountId: accountId\n }, RequestHeaders);\n\n case 4:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 7:\n _context2.prev = 7;\n _context2.t0 = _context2[\"catch\"](0);\n console.warn('error requesting account details by accountId', acctId);\n return _context2.abrupt(\"return\", {\n responseCode: GenericErrorResponseCode,\n payload: DefaultAccountDetails\n });\n\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[0, 7]]);\n }));\n },\n search: function search(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var searchRequest, result;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n searchRequest = Object.assign({}, request);\n _context3.next = 3;\n return api.authenticated().get(AccountsSearchUrl, searchRequest, RequestHeaders);\n\n case 3:\n result = _context3.sent;\n return _context3.abrupt(\"return\", result);\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n update: function update(acctId, request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var holder, result;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n holder = request.holder ? request.holder : 0;\n _context4.next = 3;\n return api.authenticated().put(\"Accounts/UpdateAccount?accountId=\".concat(acctId, \"&holder=\").concat(holder), request, RequestHeaders);\n\n case 3:\n result = _context4.sent;\n return _context4.abrupt(\"return\", result);\n\n case 5:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n getUpdate: function getUpdate(confirm) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return api.authenticated().get(\"Accounts/GetAccountUpdate?confirm=\".concat(confirm), RequestHeaders);\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n },\n confirmUpdate: function confirmUpdate(confirm) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return api.authenticated().put(\"Accounts/ConfirmAccountUpdate?confirm=\".concat(confirm), confirm, RequestHeaders);\n\n case 2:\n return _context6.abrupt(\"return\", _context6.sent);\n\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n },\n getUserUpdates: function getUserUpdates(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee7() {\n var startDate, endDate, searchRequest;\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n startDate = _.isNil(request.startDate) ? undefined : dateStringOrUndefined(request.startDate, 'YYYY-MM-DD');\n endDate = _.isNil(request.endDate) ? undefined : dateStringOrUndefined(request.endDate, 'YYYY-MM-DD');\n searchRequest = Object.assign({}, request, {\n endDate: endDate,\n startDate: startDate\n });\n _context7.next = 5;\n return api.authenticated().get(SearchAccountUpdatesUrl, searchRequest, RequestHeaders);\n\n case 5:\n return _context7.abrupt(\"return\", _context7.sent);\n\n case 6:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }));\n },\n getUserUpdateDetails: function getUserUpdateDetails(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee8() {\n var updateRequest;\n return _regeneratorRuntime.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n updateRequest = {\n accountId: request.accountId,\n updateId: request.id\n };\n _context8.next = 3;\n return api.authenticated().get(GetAccountUpdateDetailsUrl, updateRequest, RequestHeaders);\n\n case 3:\n return _context8.abrupt(\"return\", _context8.sent);\n\n case 4:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }));\n },\n getUserAccountDetails: function getUserAccountDetails(accountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee9() {\n return _regeneratorRuntime.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return api.authenticated().get(GetAccountManagementDetailsUrl, accountId, RequestHeaders);\n\n case 2:\n return _context9.abrupt(\"return\", _context9.sent);\n\n case 3:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9);\n }));\n },\n firmApproveUpdate: function firmApproveUpdate(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee10() {\n return _regeneratorRuntime.wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n _context10.next = 2;\n return api.authenticated().put(\"Accounts/FirmApproveAccountUpdate?accountId=\".concat(request.accountId, \"&updateId=\").concat(request.updateId), request.request, RequestHeaders);\n\n case 2:\n return _context10.abrupt(\"return\", _context10.sent);\n\n case 3:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10);\n }));\n },\n firmRejectUpdate: function firmRejectUpdate(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee11() {\n return _regeneratorRuntime.wrap(function _callee11$(_context11) {\n while (1) {\n switch (_context11.prev = _context11.next) {\n case 0:\n _context11.next = 2;\n return api.authenticated().put(\"Accounts/FirmRejectAccountUpdate?accountId=\".concat(request.accountId, \"&updateId=\").concat(request.updateId), request.request, RequestHeaders);\n\n case 2:\n return _context11.abrupt(\"return\", _context11.sent);\n\n case 3:\n case \"end\":\n return _context11.stop();\n }\n }\n }, _callee11);\n }));\n },\n entitlements: function entitlements() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee12() {\n return _regeneratorRuntime.wrap(function _callee12$(_context12) {\n while (1) {\n switch (_context12.prev = _context12.next) {\n case 0:\n _context12.next = 2;\n return api.authenticated().get(\"/User/GetEntitlements\", {}, RequestHeaders);\n\n case 2:\n return _context12.abrupt(\"return\", _context12.sent);\n\n case 3:\n case \"end\":\n return _context12.stop();\n }\n }\n }, _callee12);\n }));\n },\n getDocumentStatus: function getDocumentStatus(accountId) {\n return api.authenticated().get(GetDocumentStatusUrl, {\n accountId: accountId\n }, RequestHeaders);\n }\n };\n}","import CryptoJS from 'crypto-js';\nvar UNSAFE_KEY = 'tradingblock';\nexport var encode = function encode(source) {\n return CryptoJS.AES.encrypt(JSON.stringify(source), UNSAFE_KEY).toString();\n};\nexport var decode = function decode(text) {\n try {\n var bytes = CryptoJS.AES.decrypt(text, UNSAFE_KEY);\n var jsonStr = bytes.toString(CryptoJS.enc.Utf8);\n return JSON.parse(jsonStr);\n } catch (err) {\n return undefined;\n }\n};","import jwt from 'jsonwebtoken';\nimport _ from 'lodash';\nexport var verify = function verify(key, value, _ref) {\n var clientType = _ref.clientType,\n algorithms = _ref.algorithms,\n ignoreExpiration = _ref.ignoreExpiration;\n var clientTypes = _.isArray(clientType) ? clientType : [clientType];\n\n if (!value) {\n return Promise.resolve(null);\n }\n\n return new Promise(function (resolve, reject) {\n return jwt.verify(value, key, {\n algorithms: algorithms,\n ignoreExpiration: ignoreExpiration\n }, function (err, payload) {\n if (payload) {\n var _jwt = payload;\n\n if (!clientTypes.includes(_jwt.clientType)) {\n var expected = clientTypes.join('|');\n reject(\"Incorrect clientType '\".concat(_jwt.clientType, \"'. Expected '\").concat(expected, \"'\"));\n }\n\n return resolve(payload);\n } else {\n console.error('jwt verification failed', err);\n return resolve(null);\n }\n });\n });\n};\nexport var sign = function sign(key, value, opts) {\n try {\n return jwt.sign(value, key, opts);\n } catch (err) {\n console.error('jwt signing error', err);\n }\n\n return null;\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { encode } from '../jsonEncode';\nimport { BaseApiUrl, LoginApiUrl, UIClientTypes } from '@tradingblock/types';\nimport { LogoutTokenUrl, NoPassLoginFinishUrl, NoPassLoginStartUrl } from '../constants';\nimport { verify } from '../utilities/JwtUtilities';\n\nfunction isString(x) {\n return typeof x === 'string';\n}\n\nexport function TryLogin(values, options) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var host, loginUrl;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n host = options.host || '';\n loginUrl = host + (options.subdirectory ? options.subdirectory : '') + LoginApiUrl(options.subroot);\n _context.next = 4;\n return fetch(loginUrl, {\n method: 'post',\n body: JSON.stringify({\n encoded: encode(values)\n }),\n headers: {\n 'Content-Type': 'application/json'\n }\n }).then(function (res) {\n return res.json();\n }).then(function (json) {\n return json;\n });\n\n case 4:\n return _context.abrupt(\"return\", _context.sent);\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n}\nvar httpOptions = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport var auth = function auth(api) {\n return {\n logout: function logout() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", api.authenticated().post(LogoutTokenUrl, {}, httpOptions));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }\n };\n};\n\nvar tryVerify = function tryVerify(publicKey, token) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var decoded, jwtValues;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.prev = 0;\n _context3.next = 3;\n return verify(publicKey, token, {\n clientType: UIClientTypes.dashboard,\n algorithms: ['RS256'],\n ignoreExpiration: false\n });\n\n case 3:\n decoded = _context3.sent;\n\n if (!(!decoded || isString(decoded))) {\n _context3.next = 9;\n break;\n }\n\n console.warn('jwt response was invalid, an object was expected', decoded);\n return _context3.abrupt(\"return\", null);\n\n case 9:\n jwtValues = decoded;\n return _context3.abrupt(\"return\", {\n value: token,\n decoded: jwtValues\n });\n\n case 11:\n _context3.next = 17;\n break;\n\n case 13:\n _context3.prev = 13;\n _context3.t0 = _context3[\"catch\"](0);\n console.warn('token verification failed:', _context3.t0);\n return _context3.abrupt(\"return\", null);\n\n case 17:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, null, [[0, 13]]);\n }));\n};\n\nexport var verifyToken = function verifyToken(id_token, uiApi) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n var pubKey;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return fetch(\"\".concat(BaseApiUrl, \"/publickey\")).then(function (res) {\n return res.json();\n });\n\n case 2:\n pubKey = _context4.sent;\n _context4.next = 5;\n return tryVerify(pubKey.key, id_token);\n\n case 5:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 6:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n};\nexport function TryNoPassLogin(values, host, loginUrl, setImage, setRequestInProgress, setNoPassError) {\n return tslib_1.__awaiter(this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n var username, password, apiToken, clientType, noPassLoginStartUrl, noPassLoginFinishUrl, data1, authId, image, data2, tokenPayload, uiTokenData, tokenResult, value, decoded;\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n username = values.username, password = values.password, apiToken = values.apiToken, clientType = values.clientType;\n noPassLoginStartUrl = host + '/' + NoPassLoginStartUrl + '?username=' + values.username;\n noPassLoginFinishUrl = host + '/' + NoPassLoginFinishUrl + '?authid=';\n setRequestInProgress(true);\n _context5.prev = 4;\n _context5.next = 7;\n return fetch(\"\".concat(noPassLoginStartUrl), {\n method: 'post',\n body: JSON.stringify({\n encoded: encode(values)\n }),\n headers: {\n 'Content-Type': 'application/json'\n }\n }).then(function (res) {\n return res.json();\n });\n\n case 7:\n data1 = _context5.sent;\n\n if (!(data1.Payload && data1.Payload.AuthId)) {\n _context5.next = 33;\n break;\n }\n\n authId = data1.Payload.AuthId;\n image = data1.Payload.Image;\n setImage(image);\n _context5.next = 14;\n return fetch(\"\".concat(noPassLoginFinishUrl + authId)).then(function (res) {\n return res.json();\n });\n\n case 14:\n data2 = _context5.sent;\n tokenPayload = data2.Payload;\n\n if (!tokenPayload) {\n _context5.next = 32;\n break;\n }\n\n _context5.next = 19;\n return TryLogin({\n username: username,\n password: '',\n apiToken: tokenPayload,\n clientType: clientType\n }, {\n host: loginUrl\n });\n\n case 19:\n uiTokenData = _context5.sent;\n _context5.next = 22;\n return verifyToken(uiTokenData.token, loginUrl);\n\n case 22:\n tokenResult = _context5.sent;\n\n if (!tokenResult) {\n _context5.next = 29;\n break;\n }\n\n setRequestInProgress(false);\n value = tokenResult.value, decoded = tokenResult.decoded;\n return _context5.abrupt(\"return\", Object.assign({}, decoded, {\n apiToken: tokenPayload,\n token: value\n }));\n\n case 29:\n setNoPassError('NoPass Authentication Failed');\n\n case 30:\n _context5.next = 33;\n break;\n\n case 32:\n setNoPassError('User is not registered or the request has been denied.');\n\n case 33:\n _context5.next = 39;\n break;\n\n case 35:\n _context5.prev = 35;\n _context5.t0 = _context5[\"catch\"](4);\n console.error('⬤ NoPass Authentication Error', _context5.t0);\n setNoPassError(\"NoPass Authentication Error: \".concat(_context5.t0));\n\n case 39:\n setRequestInProgress(false);\n return _context5.abrupt(\"return\", null);\n\n case 41:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, null, [[4, 35]]);\n }));\n}","import * as _ from 'lodash';\n\nvar getEnvValue = function getEnvValue(key) {\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var keyVal = \"\".concat(prefix).concat(key);\n var strVal = process.env[keyVal];\n return strVal;\n};\n\nfunction getValueOrDefault(key, prefix, getValue) {\n return function (defaultValue) {\n var keyVal = \"\".concat(prefix).concat(key);\n var strVal = process.env[keyVal];\n var envVal = getValue ? getValue(strVal) : strVal;\n return _.isNil(envVal) ? defaultValue : envVal;\n };\n}\n\nvar value = function value(key, getValue) {\n return getValueOrDefault(key, '', getValue);\n};\n\nvar isTrue = function isTrue(value) {\n return value && ['1', 'true', 'True', 'TRUE', 'yes'].includes(value) ? true : false;\n};\n\nexport var ConfigUtils = {\n value: value,\n getValueOrDefault: getValueOrDefault,\n getEnvValue: getEnvValue,\n isTrue: isTrue\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport _inherits from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _wrapNativeSuper from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, groups) { var _this = _RegExp.call(this, re); _groups.set(_this, groups); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (typeof args[args.length - 1] !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nimport { ExpiredTokenCode } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\nimport _ from 'lodash';\nimport { toRawOccSymbol, isOCCSymbol } from '..';\nexport var WebsocketFeedParser = function WebsocketFeedParser(value) {\n var _this = this;\n\n _classCallCheck(this, WebsocketFeedParser);\n\n this.str = function (ind) {\n return _this.values[ind];\n };\n\n this.int = function (ind) {\n return parseInt(_this.str(ind));\n };\n\n this.float = function (ind) {\n return parseFloat(_this.str(ind));\n };\n\n this.date = function (ind) {\n return dayjs(_this.str(ind));\n };\n\n this.success = function (ind) {\n return _this.int(ind) === 0 ? true : false;\n };\n\n this.getMessageType = function (typeVal) {\n var typeValInt = _this.int(typeVal);\n\n switch (typeValInt) {\n case 100:\n case 0:\n return 'HeartBeat';\n\n case 1:\n return 'Quote';\n\n case 2:\n return 'Spread';\n\n case 3:\n return 'OrderUpdate';\n\n case 4:\n return 'Settlement';\n\n case 90:\n return 'ExpiredToken';\n\n case 6:\n return 'CashieringUpdate';\n\n default:\n return undefined;\n }\n };\n\n this.metadata = function () {\n return {\n success: _this.success(0),\n type: _this.getMessageType(1),\n raw: _this.raw\n };\n };\n\n this.parseExpiredTokenMessage = function () {\n var metadata = _this.metadata();\n\n var Code = _this.int(2) === 10 ? ExpiredTokenCode.DuplicateLogin : ExpiredTokenCode.Unknown;\n return Object.assign({}, metadata, {\n Code: Code,\n Reason: _this.str(3),\n isValid: true\n });\n };\n\n this.parseQuote = function () {\n var metadata = _this.metadata();\n\n var _QuoteTime = {\n QuoteTime: _this.str(2)\n },\n QuoteTime = _QuoteTime.QuoteTime;\n\n var symbol = _this.str(3);\n\n var Symbol = isOCCSymbol(symbol) ? toRawOccSymbol(symbol) : symbol;\n return Object.assign({}, metadata, {\n QuoteTime: QuoteTime,\n Symbol: Symbol,\n LastTradePrice: _this.float(4),\n BidPrice: _this.float(5),\n AskPrice: _this.float(6),\n NetChange: _this.float(7),\n High: _this.float(8),\n Low: _this.float(9),\n Volume: _this.float(10),\n ChangePercentage: _this.float(11),\n BidSize: _this.float(12),\n AskSize: _this.float(13),\n isValid: dayjs(QuoteTime, 'MM/DD/YYYY HH:mm:ss').isValid() && dayjs(QuoteTime, 'MM/DD/YYYY HH:mm:ss').year() >= dayjs().year()\n });\n };\n\n this.parseOrderUpdate = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n AccountId: _this.int(2),\n OrderId: _this.int(3),\n OrderTime: _this.date(4).toDate(),\n Symbol: _this.str(5),\n OrderQuantity: _this.float(6),\n FilledQuantity: _this.float(7),\n OrderPrice: _this.float(8),\n OrderAction: _this.str(9),\n OrderStatus: _this.int(10),\n Expiration: _this.date(11).toDate(),\n CallPut: _this.str(12),\n Strike: _this.float(13),\n isValid: true\n });\n };\n\n this.parseSettlement = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n CloseDate: _this.str(2),\n Symbol: _this.str(3),\n ClosePrice: _this.float(4),\n ClosePriceTMinus2: _this.float(5),\n IsSettlementSet: true,\n isValid: true\n });\n };\n\n this.parseHeartbeat = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n isValid: true\n });\n };\n\n this.parseSpread = function () {\n var metadata = _this.metadata();\n\n var _SpreadTime = {\n SpreadTime: _this.str(2)\n },\n SpreadTime = _SpreadTime.SpreadTime;\n\n var symbol = _this.str(3).replace(/\\./g, '');\n\n var Symbol = isOCCSymbol(symbol) ? toRawOccSymbol(symbol) : symbol;\n return Object.assign({}, metadata, {\n SpreadTime: SpreadTime,\n Symbol: Symbol,\n Last: _this.float(4),\n Bid: _this.float(5),\n Ask: _this.float(6),\n Change: _this.float(7),\n isValid: true\n });\n };\n\n this.parseCashieringUpdate = function () {\n var metadata = _this.metadata();\n\n return Object.assign({}, metadata, {\n accountId: _this.int(2),\n updateTime: _this.date(3).toDate(),\n updateType: _this.str(4),\n updateTypeId: _this.int(5),\n status: _this.str(6),\n isValid: true\n });\n };\n\n this.parseMap = {\n Quote: this.parseQuote,\n HeartBeat: this.parseHeartbeat,\n OrderUpdate: this.parseOrderUpdate,\n ExpiredToken: this.parseExpiredTokenMessage,\n Spread: this.parseSpread,\n Settlement: this.parseSettlement,\n CashieringUpdate: this.parseCashieringUpdate\n };\n\n this.parse = function () {\n var parser = _this.parseMap;\n\n var metadata = _this.metadata();\n\n if (parser && metadata && metadata.type && parser[metadata.type]) {\n return parser[metadata.type]();\n }\n\n return undefined;\n };\n\n this.values = value.split('|').reduce(function (acc, vv) {\n var matchVal = vv.match(_wrapRegExp(/(\\d+)=(.*)/, {\n fieldkey: 1,\n fieldvalue: 2\n }));\n\n if (_.isNil(matchVal)) {\n return acc;\n } // vv.replace(/(\\d+)=/, '')\n\n\n var _matchVal$groups = matchVal.groups,\n fieldkey = _matchVal$groups.fieldkey,\n fieldvalue = _matchVal$groups.fieldvalue;\n\n var fKey = _.parseInt(fieldkey);\n\n if (_.isNil(fKey) || _.isNaN(fKey)) {\n return acc;\n }\n\n return Object.assign({}, acc, _defineProperty({}, fKey, fieldvalue));\n }, {});\n this.raw = value; // if (vals.length < 12) {\n // console.warn('quote string from feed has less fields than expected', value);\n // }\n};","import { debug } from 'debug';\nexport var logger = function logger(subname) {\n var log = debug(\"tb\");\n\n if (subname) {\n return log.extend(subname);\n }\n\n return log;\n};\nexport var setLogLevel = function setLogLevel(val) {\n return debug.enable(val);\n};","import { AssetType, SymbolTypes, OptionExpirationType, OptionType } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { SymbolsWithAMPMExpirations } from '../constants';\nimport { isString } from '../utilities';\nexport var AssetTypeToSymbolType = function AssetTypeToSymbolType(assType) {\n switch (assType) {\n case AssetType.Index:\n {\n return SymbolTypes.index;\n }\n\n case AssetType.Equity:\n {\n return SymbolTypes.stock;\n }\n\n default:\n {\n return AssetType[assType];\n }\n }\n};\n\nvar isIndex = function isIndex(symbol) {\n return _.first(symbol) === '$';\n};\n\nexport var isIndexSymbol = function isIndexSymbol(symbol) {\n return isString(symbol) ? isIndex(symbol) : symbol ? symbol.type === SymbolTypes.index || isIndex(symbol.symbol) : false;\n};\nexport var toAssetSymbol = function toAssetSymbol(symbol, assetType, symbolType, partSymb) {\n return Object.assign({\n rootSymbol: symbol,\n underlyingSymbol: symbol,\n name: symbol,\n provider: ''\n }, partSymb || {}, {\n symbol: symbol,\n type: symbolType,\n assetType: assetType\n });\n};\nexport var toAssetSymbolBySymbolType = function toAssetSymbolBySymbolType(symbol, symbolType, partSymb) {\n return toAssetSymbol(symbol, symbolType === SymbolTypes.index ? AssetType.Index : AssetType.Equity, symbolType, partSymb);\n};\nexport var occParseRegex = /([\\w]{1,4})[\\s]*(\\d{2})(\\d{2})(\\d{2})([PC])(\\d*)/;\nexport var isOCCSymbol = function isOCCSymbol(occSymbol) {\n var data = _.replace(occSymbol, '.', '').match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n return true;\n }\n\n return false;\n};\nexport var deriveRootSymbol = function deriveRootSymbol(symbol) {\n if (isOCCSymbol(symbol)) {\n var data = symbol.match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n return data[1];\n }\n } else {\n return symbol;\n }\n};\nexport var deriveOptionExpirationType = function deriveOptionExpirationType(symbol, underlyingSymbol) {\n if (isOCCSymbol(symbol)) {\n if (SymbolsWithAMPMExpirations.includes(underlyingSymbol)) {\n var cleanRootSymbol = deriveRootSymbol(symbol).trim().toLocaleLowerCase();\n\n var cleanUnderlying = _.replace(underlyingSymbol, '$', '').trim().toLocaleLowerCase();\n\n return cleanRootSymbol !== cleanUnderlying ? OptionExpirationType.PM : OptionExpirationType.AM;\n } else {\n return OptionExpirationType.PM;\n }\n }\n\n return undefined;\n};\nexport var isSymbolEqual = function isSymbolEqual(one, two) {\n if (_.isNil(one) || _.isNil(two)) {\n return false;\n }\n\n return one.underlyingSymbol === two.underlyingSymbol && one.rootSymbol === two.rootSymbol && one.symbol === two.symbol;\n};\nexport var parseOccSymbol = function parseOccSymbol(occSymbol) {\n var data = occSymbol.match(occParseRegex);\n\n if (data && data && data.length >= 5) {\n var symbol = data[1]; // since year match is 2 digits, ensure full year is 20** (otherwise Date will parse 2 digit year as 19**)\n\n var year = 2000 + parseInt(data[2]); // Date object uses zero-indexed month\n\n var month = parseInt(data[3]) - 1;\n var day = parseInt(data[4]);\n var callput = data[5];\n var price = data[6];\n return {\n symbol: symbol,\n expiration: new Date(year, month, day),\n option: callput ? callput.toLocaleLowerCase() === 'p' ? OptionType.Put : OptionType.Call : undefined,\n strike: price ? parseInt(price) / 1000 : undefined,\n assetType: AssetType.Option\n };\n } else {\n return {\n symbol: occSymbol,\n assetType: AssetType.Equity\n };\n }\n};\nexport function isOptionSymbol(val) {\n return parseOccSymbol(val).assetType === AssetType.Option;\n}\nexport function isOptionAsset(val) {\n return val.assetType === AssetType.Option;\n}\nexport function isMutualFundSymbol(val) {\n return val.startsWith(':');\n}","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _ from 'lodash';\nimport { StrikeRules, AssetType, OptionType } from '@tradingblock/types';\nimport { findDuplicateLegs } from '..';\n\nvar buildStrikeErrors = function buildStrikeErrors(strikes, sch) {\n return function (message) {\n var errs = [{\n keyword: 'strike',\n message: message,\n params: {\n strikes: strikes,\n rule: StrikeRules[sch]\n }\n }]; // currentValidatorFunc.errores = currentValidatorFunc.errores ? [...currentValidatorFunc.errores, ...errs] : errs;\n\n return errs;\n };\n};\n\nvar minStrike = function minStrike(legs, type) {\n return _(legs).filter(function (l) {\n return type ? l.OptionType === type : true;\n }).map(function (l) {\n return l.Strike;\n }).min();\n};\n\nvar maxStrike = function maxStrike(legs, type) {\n return _(legs).filter(function (l) {\n return type ? l.OptionType === type : true;\n }).map(function (l) {\n return l.Strike;\n }).max();\n};\n\nvar validateRules = function validateRules(rule, legs, strikes, getErrors) {\n var strikesShouldBeDifferent = rule === StrikeRules.DifferentStrikes || rule === StrikeRules.DifferentStrikesDescending;\n\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option && _.isNumber(l.Strike);\n });\n\n var getStrikeErrors = getErrors;\n\n if (strikesShouldBeDifferent) {\n var isValid = _.uniq(strikes).length === optionLegs.length;\n\n if (!isValid) {\n return getStrikeErrors('Strikes must be different.');\n }\n } else if (rule === StrikeRules.EquidistantStrikes) {\n var distances = _.reduce(strikes, function (acc, currVal, ind) {\n var nextVal = strikes[ind + 1];\n\n if (nextVal === undefined) {\n return acc;\n }\n\n var vals = [currVal, nextVal];\n\n var dist = _.max(vals) - _.min(vals);\n\n return [].concat(_toConsumableArray(acc), [dist]);\n }, []);\n\n var _isValid = _.uniq(strikes).length >= 2 && _.uniq(distances).length === 1;\n\n var hasDuplicateLegs = findDuplicateLegs(optionLegs).length > 0;\n\n if (!_isValid) {\n return getStrikeErrors('Strikes must be equidistant.');\n }\n\n if (hasDuplicateLegs) {\n return getStrikeErrors('Cannot have two identical legs in the same order.');\n }\n } else if (rule === StrikeRules.IronCondor || rule === StrikeRules.IronButterfly) {\n var K1 = optionLegs[1].Strike;\n var K2 = optionLegs[0].Strike;\n var K3 = optionLegs[2].Strike;\n var K4 = optionLegs[3].Strike;\n var isButterfly = rule === StrikeRules.IronButterfly;\n var isCondor = rule === StrikeRules.IronCondor; //K1 < K2, K3 > K4; K2 - K1 = K3 - K4; K1 > K3\n\n if (K1 >= K2) {\n return getStrikeErrors(\"First CALL strike (\".concat(K2, \") must be greater than second CALL strike (\").concat(K1, \")\"));\n } else if (K4 >= K3) {\n return getStrikeErrors(\"Second PUT strike (\".concat(K4, \") must be less than first PUT strike (\").concat(K3, \")\"));\n } else if (isCondor && K3 >= K1) {\n return getStrikeErrors(\"Lowest CALL strike (\".concat(K1, \") must be greater than highest PUT strike (\").concat(K3, \")\"));\n } else if (isButterfly && K3 !== K1) {\n return getStrikeErrors(\"Lowest CALL strike (\".concat(K1, \") must be equal to highest PUT strike (\").concat(K3, \")\"));\n } else if (K2 - K1 !== K3 - K4) {\n return getStrikeErrors(\"The difference between CALL strikes (\".concat(K2 - K1, \") must equal the difference between PUT strikes (\").concat(K3 - K4, \")\"));\n }\n } else if (rule === StrikeRules.SameStrikes) {\n var _isValid2 = _.uniq(strikes).length === 1;\n\n if (!_isValid2) {\n return getStrikeErrors('Strikes must be the same');\n }\n } else if (rule === StrikeRules.CallHigherThanPut) {\n var putLeg = _.find(optionLegs, function (l) {\n return l.OptionType === OptionType.Put;\n });\n\n var callLeg = _.find(optionLegs, function (l) {\n return l.OptionType === OptionType.Call;\n });\n\n var callPutErrors = undefined;\n\n if (!putLeg || !callLeg) {\n callPutErrors = getStrikeErrors('Must have PUT leg and CALL leg');\n }\n\n var putVal = putLeg.Strike;\n var callVal = callLeg.Strike;\n\n if (!_.isFinite(putVal) || !_.isFinite(callVal)) {\n callPutErrors = getStrikeErrors('Strikes must have finite values');\n }\n\n if (putVal >= callVal) {\n callPutErrors = getStrikeErrors('CALL strike must be greater than PUT strike');\n }\n\n if (callPutErrors) {\n return callPutErrors;\n }\n } else if (rule === StrikeRules.IncreasingOrder || rule === StrikeRules.DecreasingOrder) {\n var isInc = rule === StrikeRules.IncreasingOrder;\n\n var correctOrder = _.every(strikes, function (strike, ind) {\n if (ind === 0) {\n return true;\n }\n\n var prevStrike = strikes[ind - 1];\n return isInc ? prevStrike < strike : prevStrike > strike;\n });\n\n if (!correctOrder) {\n return getStrikeErrors(\"Strikes must be in \".concat(isInc ? 'ascending' : 'descending', \" order\"));\n }\n } else if (rule === StrikeRules.EquidistantStrikesByTwos) {\n var firstGroup = _.take(strikes, 2);\n\n var firstDiff = _.max(firstGroup) - _.min(firstGroup);\n\n var secondGroup = _.drop(strikes, 2);\n\n var secondDiff = _.max(secondGroup) - _.min(secondGroup);\n\n if (firstDiff !== secondDiff) {\n return getStrikeErrors(\"Distance between first strikes (\".concat(firstDiff, \") isnt equal to distance between last strikes (\").concat(secondDiff, \")\"));\n }\n } else if (rule === StrikeRules.LowestCallEqualsHighestPut) {\n var lowestCall = minStrike(optionLegs, OptionType.Call);\n var highestPut = maxStrike(optionLegs, OptionType.Put);\n\n if (lowestCall !== highestPut) {\n return getStrikeErrors(\"Lowest CALL Strike must equal highest PUT Strike\");\n }\n } else if (rule === StrikeRules.LowestCallGreaterThanHighestPut) {\n var _lowestCall = minStrike(optionLegs, OptionType.Call);\n\n var _highestPut = maxStrike(optionLegs, OptionType.Put);\n\n if (_lowestCall <= _highestPut) {\n return getStrikeErrors(\"Lowest CALL Strike must be greater than highest PUT Strike\");\n }\n }\n\n return null;\n};\n\nvar tryValidateRules = function tryValidateRules(rule, legs) {\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option && _.isNumber(l.Strike);\n });\n\n var strikes = optionLegs.map(function (l) {\n return l.Strike;\n });\n var getStrikeErrors = buildStrikeErrors(strikes, rule);\n\n try {\n return validateRules(rule, legs, strikes, getStrikeErrors);\n } catch (err) {\n return getStrikeErrors(\"Error occurred while validating: \".concat(JSON.stringify(err)));\n }\n};\n\nexport var strikeValidation = function strikeValidation(sch) {\n return function strikeValidation(data) {\n if (_.get(strikeValidation, 'errors', null) === null) {}\n\n var legs = data;\n var rules = _.isArray(sch) ? sch : [sch];\n\n var errors = _.reduce(rules, function (errors, rule) {\n var ruleErrors = tryValidateRules(rule, legs);\n\n if (ruleErrors === null) {\n return errors;\n }\n\n return _.concat(errors, ruleErrors);\n }, []);\n\n if (errors.length > 0) {\n strikeValidation['errors'] = errors;\n return false;\n }\n\n return true;\n };\n};","import _ from 'lodash';\nimport { OptionType, DirectionRules, OrderAction } from '@tradingblock/types';\n\nvar buildDirectionErrors = function buildDirectionErrors(strikes, sch) {\n return function (message) {\n var errs = [{\n keyword: 'action',\n message: message,\n params: {\n strikes: strikes,\n rule: DirectionRules[sch]\n }\n }]; // currentValidatorFunc.errores = currentValidatorFunc.errores ? [...currentValidatorFunc.errores, ...errs] : errs;\n\n return errs;\n };\n};\n\nvar validateRules = function validateRules(rule, legs, actions, getErrors) {\n var shouldBeDifferent = rule === DirectionRules.DifferentDirections;\n\n if (shouldBeDifferent) {\n var isValid = _.uniq(actions).length === legs.length;\n\n if (!isValid) {\n return getErrors('Actions must be different');\n }\n } else if (rule === DirectionRules.SameDirections) {\n var _isValid = _.uniq(actions).length === 1;\n\n if (!_isValid) {\n return getErrors('Actions must be the same');\n }\n } else if (rule === DirectionRules.Butterfly) {\n // butterfly should have two legs with the same action and one leg with the opposite action\n var actionCounts = _.countBy(actions);\n\n var _isValid2 = actionCounts[OrderAction.Buy] === 2 && actionCounts[OrderAction.Sell] === 1 || actionCounts[OrderAction.Buy] === 1 && actionCounts[OrderAction.Sell] === 2; // in addition, the leg with the opposite action must be the leg with the highest spread ratio\n\n\n var legsBySpreadRatio = _.sortBy(legs, function (l) {\n return l.SpreadRatio;\n });\n\n var highestSpreadRatioLeg = _.last(legsBySpreadRatio);\n\n var otherLegs = _.filter(legsBySpreadRatio, function (l) {\n return l !== highestSpreadRatioLeg;\n }); // if the highest spread ratio leg is a buy, then the other two legs must be sells and vice versa\n\n\n var isValidLegs = highestSpreadRatioLeg.Action === OrderAction.Buy ? otherLegs[0].Action === OrderAction.Sell && otherLegs[1].Action === OrderAction.Sell : otherLegs[0].Action === OrderAction.Buy && otherLegs[1].Action === OrderAction.Buy;\n\n if (!_isValid2) {\n return getErrors('Butterfly must have two legs with the same action and one leg with the opposite action');\n }\n\n if (!isValidLegs) {\n return getErrors('The leg with the highest spread ratio must be the opposite action of the other two legs');\n }\n } else if (rule === DirectionRules.Condor) {\n // condor should have two legs with the same action and two legs with the opposite action\n var _actionCounts = _.countBy(actions);\n\n var _isValid3 = _actionCounts[OrderAction.Buy] === 2 && _actionCounts[OrderAction.Sell] === 2; // in addition, the middle two strikes must have the same action\n\n\n var legsByStrike = _.sortBy(legs, function (l) {\n return l.Strike;\n });\n\n var middleTwoStrikes = _.slice(legsByStrike, 1, 3);\n\n var middleTwoStrikesActions = _.map(middleTwoStrikes, function (l) {\n return l.Action;\n });\n\n var isValidStrikes = _.uniq(middleTwoStrikesActions).length === 1;\n\n if (!_isValid3) {\n return getErrors('Condor must have two legs with the same action and two legs with the opposite action');\n }\n\n if (!isValidStrikes) {\n return getErrors('The middle two strikes must have the same action');\n }\n } else if (rule === DirectionRules.Iron) {\n // iron butterfly/condor consists of four legs, 2 calls and 2 puts\n // the calls should have opposite actions as should the puts\n // Sell Call, Buy Call, Sell Put, Buy Put\n var callLegs = _.filter(legs, function (l) {\n return l.OptionType === OptionType.Call;\n });\n\n var putLegs = _.filter(legs, function (l) {\n return l.OptionType === OptionType.Put;\n });\n\n var callActions = _.map(callLegs, function (l) {\n return l.Action;\n });\n\n var putActions = _.map(putLegs, function (l) {\n return l.Action;\n });\n\n var _isValid4 = callActions.length === 2 && putActions.length === 2 && callActions[0] !== callActions[1] && putActions[0] !== putActions[1];\n\n if (!_isValid4) {\n return getErrors('Iron Butterfly must have two calls and two puts with opposite actions');\n }\n }\n\n return null;\n};\n\nvar tryValidateRules = function tryValidateRules(rule, legs) {\n var actions = legs.map(function (l) {\n return l.Action;\n });\n var getStrikeErrors = buildDirectionErrors(actions, rule);\n\n try {\n return validateRules(rule, legs, actions, getStrikeErrors);\n } catch (err) {\n return getStrikeErrors(\"Error occurred while validating: \".concat(JSON.stringify(err)));\n }\n};\n\nexport var directionValidation = function directionValidation(sch) {\n return function directionValidation(data) {\n if (_.get(directionValidation, 'errors', null) === null) {}\n\n var legs = data;\n var rules = _.isArray(sch) ? sch : [sch];\n\n var errors = _.reduce(rules, function (errors, rule) {\n var ruleErrors = tryValidateRules(rule, legs);\n\n if (ruleErrors === null) {\n return errors;\n }\n\n return _.concat(errors, ruleErrors);\n }, []);\n\n if (errors.length > 0) {\n directionValidation['errors'] = errors;\n return false;\n }\n\n return true;\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport Ajv from 'ajv'; // import betterAjvErrors from 'better-ajv-errors';\n\nimport { AssetType, OrderAction, ExpirationRules } from '@tradingblock/types';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { strikeValidation } from './strikeValidator';\nimport { validateSpreadRatio } from './spreadRatioValidation';\nimport { directionValidation } from './directionValidator';\nexport var SchemaValidator = function SchemaValidator(initial) {\n var ajv = initial || new Ajv({\n allErrors: true\n }); // options can be passed, e.g. {allErrors: true}\n\n ajv.addKeyword('strike', {\n type: 'array',\n compile: function compile(sch) {\n return strikeValidation(sch);\n },\n errors: true\n });\n ajv.addKeyword('action', {\n type: 'array',\n compile: function compile(sch) {\n return directionValidation(sch);\n },\n errors: true\n });\n ajv.addKeyword('ratio', {\n type: 'array',\n compile: function compile(sch) {\n return function validate(data) {\n var errors = validateSpreadRatio(sch)(data);\n\n if (errors !== null) {\n validate['errors'] = errors;\n return false;\n }\n\n return true;\n };\n },\n errors: true\n });\n ajv.addKeyword('expiration', {\n type: 'array',\n compile: function compile(sch) {\n return function validateExpiration(data) {\n if (_.get(validateExpiration, 'errors', null) === null) {\n validateExpiration['errors'] = [];\n }\n\n var legs = data;\n\n if (sch === ExpirationRules.SameExpiry) {\n var optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option;\n });\n\n var expirations = _.filter(optionLegs, function (l) {\n return l.Expiration !== undefined && dayjs(l.Expiration.date) && dayjs(l.Expiration.date).isValid();\n }).map(function (l) {\n return dayjs(l.Expiration.date).format('YYYY/MM/DD');\n });\n\n if (_.uniq(expirations).length !== 1) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Leg Expirations must be the same. Values: [\".concat(expirations.join(','), \"]\"),\n params: {\n expirations: expirations,\n rule: ExpirationRules[sch]\n }\n });\n }\n } else if (sch === ExpirationRules.DifferentExpiries) {\n var _optionLegs = _.filter(legs, function (l) {\n return l && l.AssetType === AssetType.Option;\n });\n\n var _expirations = _.filter(_optionLegs, function (l) {\n return l.Expiration !== undefined && dayjs(l.Expiration.date) && dayjs(l.Expiration.date).isValid();\n }).map(function (l) {\n return dayjs(l.Expiration.date).format('YYYY/MM/DD');\n });\n\n if (_.uniq(_expirations).length !== _optionLegs.length) {\n // if the root symbols are different, then we need to have the message read 'Expiration dates must differ.';\n // otherwise, we need to have the message read 'Expirations must differ.'\n var rootSymbols = _.uniq(_optionLegs.map(function (l) {\n return l.Expiration && l.Expiration.rootSymbol;\n }));\n\n var rootSymbol = rootSymbols.length === 1 ? rootSymbols[0] : undefined;\n var message = !rootSymbol ? \"Expiration dates must differ.\" : \"Expirations must differ.\";\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: message,\n params: {\n expirations: _expirations,\n rule: ExpirationRules[sch]\n }\n });\n }\n } else if (sch === ExpirationRules.BuyWithLaterSellWithSooner) {\n var buyLeg = _.find(legs, function (l) {\n return l.AssetType === AssetType.Option && l.Action === OrderAction.Buy;\n });\n\n var sellLeg = _.find(legs, function (l) {\n return l.AssetType === AssetType.Option && l.Action === OrderAction.Sell;\n });\n\n var buyExpiration = buyLeg ? buyLeg.Expiration : undefined;\n var sellExpiration = sellLeg ? sellLeg.Expiration : undefined;\n\n if (!buyExpiration || !sellExpiration) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Order must have both buy and sell legs with valid expirations\",\n params: {\n buyExpiration: buyExpiration,\n sellExpiration: sellExpiration,\n legs: legs\n }\n });\n } else if (!dayjs(buyLeg.Expiration.date).isAfter(sellLeg.Expiration.date)) {\n validateExpiration['errors'].push({\n keyword: 'expiration',\n message: \"Buy leg expiration must be after sell leg expiration\",\n params: {\n buyExpiration: buyExpiration,\n sellExpiration: sellExpiration,\n legs: legs\n }\n });\n }\n }\n\n return validateExpiration['errors'].length === 0;\n };\n },\n errors: true,\n metaSchema: {\n type: 'number'\n }\n });\n return ajv;\n};\nexport var tryValidate = function tryValidate(ajv, schema, data) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var validate, validationRes, valid, errorMessage;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n validate = ajv.compile(schema);\n validationRes = validate(data);\n\n if (!(typeof validationRes === 'boolean')) {\n _context.next = 6;\n break;\n }\n\n _context.t0 = validationRes;\n _context.next = 9;\n break;\n\n case 6:\n _context.next = 8;\n return validationRes;\n\n case 8:\n _context.t0 = _context.sent;\n\n case 9:\n valid = _context.t0;\n // var errorMessage = valid ? undefined : betterAjvErrors(schema, data, validate.errors);\n errorMessage = undefined;\n return _context.abrupt(\"return\", {\n valid: valid,\n value: data,\n errors: validate.errors,\n errorMessage: errorMessage,\n reason: ajv.errorsText(validate.errors),\n ajv: validate\n });\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};","import { AssetType, SizeRatio } from '@tradingblock/types';\nimport _ from 'lodash';\nexport var validateSpreadRatio = function validateSpreadRatio(sch) {\n return function (data) {\n var ratios = _.map(data, function (l) {\n return l.SpreadRatio;\n });\n\n var shareRatio = _.first(data.filter(function (l) {\n return l.AssetType === AssetType.Equity;\n }).map(function (l) {\n return l.SpreadRatio;\n }));\n\n var optionRatios = data.filter(function (l) {\n return l.AssetType === AssetType.Option;\n }).map(function (l) {\n return l.SpreadRatio;\n });\n\n var getError = function getError(message) {\n return {\n keyword: 'spreadratio',\n message: message,\n params: {\n shareRatio: shareRatio,\n optionRatios: optionRatios\n }\n };\n };\n\n if (sch === SizeRatio.HundredToOneToOne || sch === SizeRatio.HundredToOne) {\n if (!shareRatio) {\n return getError('Order must have share leg');\n }\n\n if (optionRatios.length < 1) {\n return getError('Order must have option leg');\n }\n\n var optRatio = _.max(optionRatios);\n\n if (shareRatio / optRatio !== 100) {\n return getError(\"Share ratio/Option ratio isnt 100:1 - \".concat(shareRatio / optRatio));\n }\n } else if ([SizeRatio.OneToOne, SizeRatio.OneToOneToOneToOne].includes(sch)) {\n if (_.uniq(ratios).length !== 1) {\n return getError('Ratios are not 1:1');\n }\n } else if (sch === SizeRatio.OneTwoOne) {\n if (_.uniq(ratios).length !== 2) {\n return getError('There must only be 2 unique ratios');\n }\n\n if (_.max(ratios) / _.min(ratios) !== 2) {\n return getError('Ratios must be 2:1');\n }\n }\n\n return null;\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _slicedToArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { Durations, AssetType, OrderAction, PositionEffect, OrderActionDirection, SizeRatio } from '@tradingblock/types';\nimport { tryValidate, SchemaValidator } from './strategyValidator';\nexport var baseOccPattern = function baseOccPattern() {\n var optionType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'PC';\n return new RegExp('([\\\\s]{3})([\\\\w]{3,6})(\\\\d{2})(\\\\d{2})(\\\\d{2})([' + optionType + '])(\\\\d{5,8})');\n}; //export const occSymbolPattern = /([\\s]{3})([\\w]{3,6})(\\d{2})(\\d{2})(\\d{2})([PC])(\\d{5,8})/g;\n\nexport var occSymbolPattern = baseOccPattern();\nexport var legSchemaBuilder = function legSchemaBuilder(_ref, sizeRatio) {\n var spreadRatio = _ref.spreadRatio,\n assetType = _ref.assetType,\n action = _ref.action,\n optionType = _ref.optionType;\n var requiredFields = ['UnderlyingSymbol', 'AssetType', 'Action', 'PositionEffect', 'Symbol'];\n\n if (assetType === AssetType.Option) {\n requiredFields = [].concat(_toConsumableArray(requiredFields), ['Expiration', 'Strike']);\n }\n\n var isSpread = sizeRatio !== SizeRatio.NA;\n\n if (isSpread) {\n requiredFields = [].concat(_toConsumableArray(requiredFields), ['SpreadRatio']);\n }\n\n var legSchema = {\n type: 'object',\n required: requiredFields,\n properties: {\n UnderlyingSymbol: {\n type: 'string'\n },\n SpreadRatio: isSpread ? {\n type: 'number'\n } : {\n anyOf: [{\n type: 'number'\n }, {\n const: undefined\n }]\n },\n AssetType: {\n enum: _.isArray(assetType) ? assetType : [assetType]\n },\n Strike: assetType === AssetType.Option ? {\n type: 'number'\n } : {\n const: undefined\n },\n Action: _.isArray(action) ? {\n enum: action\n } : {\n type: 'number'\n },\n PositionEffect: {\n enum: [PositionEffect.Open, PositionEffect.Close]\n },\n // Strike: assetType === AssetType.Option ? { type: 'number' } : undefined,\n Symbol: {\n type: 'string'\n },\n OptionType: {\n const: optionType\n }\n }\n };\n return legSchema;\n};\n\nvar orderSchemaBuilder = function orderSchemaBuilder(orderClass, legSchema, spreadRatio, moreProperties) {\n var _a = _.merge(moreProperties, {\n Strike: undefined,\n Expiration: undefined,\n Direction: undefined\n }),\n Strike = _a.Strike,\n Expiration = _a.Expiration,\n Direction = _a.Direction,\n rest = tslib_1.__rest(_a, [\"Strike\", \"Expiration\", \"Direction\"]);\n\n return {\n required: ['OrderClass', 'Duration', 'Legs'],\n properties: Object.assign({\n OrderClass: {\n const: orderClass\n },\n Duration: {\n enum: [Durations.GTC, Durations.Day, Durations.Manual]\n },\n Legs: {\n minItems: legSchema.length,\n maxItems: legSchema.length,\n type: 'array',\n items: _.map(legSchema, function (l) {\n return legSchemaBuilder(l, spreadRatio);\n }),\n strike: Strike,\n expiration: Expiration,\n ratio: spreadRatio,\n action: Direction\n }\n }, rest || {})\n };\n};\n\nfunction isActionLegSchema(val) {\n if (val && _.get(val, 'action', false)) {\n return true;\n }\n\n return false;\n}\n\nvar buildValidationSchemas = function buildValidationSchemas(strategy) {\n var legsDef = _.map(strategy.profile.Legs, function (l) {\n var legSchem = {\n assetType: l.AssetType,\n spreadRatio: l.SpreadRatio,\n optionType: l.OptionType\n };\n\n if (l.Direction) {\n return Object.assign({}, legSchem, {\n action: l.Direction === OrderActionDirection.Long ? OrderAction.Buy : OrderAction.Sell\n });\n }\n\n return legSchem;\n });\n\n var additionalRules = strategy.profile.Rules ? {\n Strike: strategy.profile.Rules.Strike,\n Expiration: strategy.profile.Rules.Expiration,\n Direction: strategy.profile.Rules.Direction\n } : {};\n var orderSchema = orderSchemaBuilder(strategy.profile.OrderClass, legsDef, strategy.profile.Rules.SpreadRatio, additionalRules);\n var inverseOrderSchema = strategy.profile.Bidirectional ? orderSchemaBuilder(strategy.profile.OrderClass, legsDef.map(function (ll) {\n if (isActionLegSchema(ll)) {\n return Object.assign({}, ll, {\n action: ll.action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy\n });\n }\n\n return ll;\n }), strategy.profile.Rules.SpreadRatio, additionalRules) : undefined;\n return {\n buySchema: orderSchema,\n sellSchema: inverseOrderSchema\n };\n};\n\nexport var tryValidateOrderForStrategy = function tryValidateOrderForStrategy(ajv, strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var schemas, _ref2, _ref3, validationResults, inverseValidationResults;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n schemas = buildValidationSchemas(strategy);\n _context.next = 3;\n return Promise.all([tryValidate(ajv, schemas.buySchema, order), schemas.sellSchema ? tryValidate(ajv, schemas.sellSchema, order) : Promise.resolve(undefined)]);\n\n case 3:\n _ref2 = _context.sent;\n _ref3 = _slicedToArray(_ref2, 2);\n validationResults = _ref3[0];\n inverseValidationResults = _ref3[1];\n return _context.abrupt(\"return\", {\n order: order,\n sell: {\n isValid: inverseValidationResults && inverseValidationResults.valid ? true : false,\n results: inverseValidationResults\n },\n buy: {\n isValid: validationResults && validationResults.valid ? true : false,\n results: validationResults\n }\n });\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n};\nexport var tryValidateOrder = function tryValidateOrder(ajv, strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var schemas, res, inverse, isVal, isInverseValid;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n schemas = buildValidationSchemas(strategy);\n _context2.next = 3;\n return tryValidate(ajv, schemas.buySchema, order);\n\n case 3:\n res = _context2.sent;\n\n if (!schemas.sellSchema) {\n _context2.next = 10;\n break;\n }\n\n _context2.next = 7;\n return tryValidate(ajv, schemas.sellSchema, order);\n\n case 7:\n _context2.t0 = _context2.sent;\n _context2.next = 11;\n break;\n\n case 10:\n _context2.t0 = undefined;\n\n case 11:\n inverse = _context2.t0;\n isVal = res.valid ? res.valid : inverse ? inverse.valid : false;\n isInverseValid = isVal && inverse && inverse.valid ? true : false; // console.log(strategy.info.Name, res, inverse);\n\n return _context2.abrupt(\"return\", {\n isInverse: isInverseValid,\n valid: isVal,\n validationResults: res,\n inverseValidationResults: inverse\n });\n\n case 15:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n};\nexport var validateOrder = function validateOrder(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return tryValidateOrder(SchemaValidator(), strategy, order);\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n};\nexport var validateOrderForStrategy = function validateOrderForStrategy(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return tryValidateOrderForStrategy(SchemaValidator(), strategy, order);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n};\nexport var isValid = function isValid(strategy, order) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return validateOrder(strategy, order).then(function (res) {\n return res.valid;\n });\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nvar _MarginRequirements, _profile, _MarginRequirements2, _profile2, _MarginRequirements3, _profile3, _MarginRequirements4, _profile4, _MarginRequirements5, _profile5, _MarginRequirements6, _profile6, _MarginRequirements7, _profile7, _MarginRequirements8, _profile8, _MarginRequirements9, _profile9, _MarginRequirements10, _profile10, _MarginRequirements11, _profile11, _MarginRequirements12, _profile12, _MarginRequirements13, _profile13, _MarginRequirements14, _profile14, _MarginRequirements15, _profile15, _MarginRequirements16, _profile16, _MarginRequirements17, _profile17;\n\nimport { OrderClass, AssetType, SizeRatio, StrategyType, OrderActionDirection, OptionType, StrikeRules, ExpirationRules, DirectionRules } from '@tradingblock/types';\nimport { isIndexSymbol } from '..';\nexport { validateOrder } from './validation';\nexport { SchemaValidator } from './strategyValidator';\nexport var Shares = {\n info: {\n Name: 'Shares',\n Symbol: 'S',\n LegsAmount: 1,\n Strikes: 0,\n PermissionLevel: 0,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'shares',\n IconKind: 'svg'\n },\n profile: (_profile = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n OrderClass: OrderClass.Single,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile, OrderActionDirection.Long, {\n Strength: 9,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile, OrderActionDirection.Short, {\n Strength: 8,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile, \"MarginRequirements\", (_MarginRequirements = {}, _defineProperty(_MarginRequirements, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // if isLimitOrder\n // then \tif MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S)) // Px(S) is the client’s specified price for the strategy\n // else X = Px(S)\n // else \tif MktAsk(S) > 0\n // \tthen X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \telse X = Last(S) // Last price will be a good estimate for execution price X\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity;\n var ask = quotes[0].AskPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice);\n } else {\n x = offerPrice;\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = last;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // margin value is based on estimated execution price X of selling shares\n // if isLimitOrder\n // \tthen\tX = Max( MktBid(S), Px(S))) // Px(S) is the client’s specified price for the strategy\n // \telse\tX = Max( MktBid(S), Last(S)) // conservative estimate of the execution price X\n // fi\n // margin = ( X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity\n var bid = quotes[0].BidPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n x = Math.max(bid, offerPrice);\n } else {\n x = Math.max(bid, last);\n }\n\n return x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3 ? 5 : 0.3 * x;\n }), _MarginRequirements)), _profile)\n};\nexport var Call = {\n // validation: {\n // orderSchema: orderSchemaBuilder(OrderClass.Single, [\n // {\n // assetType: AssetType.Option,\n // action: [OrderAction.Buy, OrderAction.Sell],\n // spreadRatio: 1,\n // },\n // ]),\n // },\n info: {\n Name: 'Call',\n Symbol: 'C',\n LegsAmount: 1,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'call',\n IconKind: 'svg'\n },\n profile: (_profile2 = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n Bidirectional: true,\n OrderClass: OrderClass.Single,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile2, OrderActionDirection.Long, {\n Strength: 10,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile2, OrderActionDirection.Short, {\n Strength: 9,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile2, \"MarginRequirements\", (_MarginRequirements2 = {}, _defineProperty(_MarginRequirements2, OrderActionDirection.Long, function () {\n return 0;\n }), _defineProperty(_MarginRequirements2, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // X = Last(S)\n // if S is Index\n // then\tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K – X ) ) ) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then X = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // margin = Max( 0.1 * X, 0.20 * (X – Max( 0, K – X ) ) ) * quantity * Multiplier\n // fi\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (Object.values(legs).length <= 0) {\n return 0;\n }\n\n var strike = Object.values(legs)[0].Strike;\n var x = quotes[0].LastTradePrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * x, 0.15 * (x - Math.max(0, strike - x)));\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(0.1 * x, 0.2 * (x - Math.max(0, strike - x)));\n }\n }), _MarginRequirements2)), _profile2)\n};\nexport var Put = {\n // validation: {\n // orderSchema: orderSchemaBuilder(OrderClass.Single, [\n // {\n // assetType: AssetType.Option,\n // action: [OrderAction.Buy, OrderAction.Sell],\n // spreadRatio: 1,\n // },\n // ]),\n // },\n info: {\n Name: 'Put',\n Symbol: 'P',\n LegsAmount: 1,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.NA,\n SvgPath: 'put',\n IconKind: 'svg'\n },\n profile: (_profile3 = {\n Rules: {\n SpreadRatio: SizeRatio.NA\n },\n Bidirectional: true,\n OrderClass: OrderClass.Single,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile3, OrderActionDirection.Long, {\n Strength: 10,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile3, OrderActionDirection.Short, {\n Strength: 8,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile3, \"MarginRequirements\", (_MarginRequirements3 = {}, _defineProperty(_MarginRequirements3, OrderActionDirection.Long, function () {\n // 0\n return 0;\n }), _defineProperty(_MarginRequirements3, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // margin is based on estimate of current value X of the underlying symbol S\n // X = Last(S)\n // if S is Index\n // then margin = Max( 0.1 * K, 0.15 * (X – Max( 0, X - K ) ) )\n // else margin = Max( 0.1 * K, 0.20 * (X – Max( 0, X - K ) ) )\n // fi\n //TODO: Ask Milan about how the user set price plays a role in the the margin calculation\n var symbol = quotes[0].Symbol;\n\n if (Object.values(legs).length <= 0) {\n return 0;\n }\n\n var strike = Object.values(legs)[0].Strike;\n var x = quotes[0].LastTradePrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * strike, 0.15 * (x - Math.max(0, x - strike)));\n } else {\n return Math.max(0.1 * strike, 0.2 * (x - Math.max(0, x - strike)));\n }\n }), _MarginRequirements3)), _profile3)\n};\nexport var CoveredCall = {\n info: {\n Name: 'Covered Call',\n Symbol: 'CC',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.HundredToOne,\n SvgPath: 'covered-call',\n IconKind: 'svg'\n },\n profile: (_profile4 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 100,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile4, OrderActionDirection.Long, {\n Strength: 6,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile4, OrderActionDirection.Short, {\n Strength: 7,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile4, \"Rules\", {\n SpreadRatio: SizeRatio.HundredToOne,\n Direction: DirectionRules.DifferentDirections\n }), _defineProperty(_profile4, \"MarginRequirements\", (_MarginRequirements4 = {}, _defineProperty(_MarginRequirements4, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying stock and selling call\n // // margin value is based on estimated price X of shares\n // // Px(S) is the client’s specified price for the strategy\n // if isLimitOrder\n // then\n // if MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S) + Max(0, MktAsk(S) - K)\n // // Px(S) is the client’s specified price for the strategy\n // else X = Min( Last(S), Px(S) + Max(0, Last(S) - K)\n // else\n // if MktAsk(S) > 0\n // \t then X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \t else X = Last(S) // Last price will be a good estimate for execution price X\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n // TODO: ask what should be the default value of X, inferred last price\n var ask = quotes[0].AskPrice;\n\n if (Object.values(legs).length <= 1) {\n return 0;\n }\n\n var strike = Object.values(legs)[1].Strike;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice + Math.max(0, ask - strike));\n } else {\n x = Math.min(quotes[0].LastTradePrice, offerPrice + Math.max(0, quotes[0].LastTradePrice - strike));\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements4, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling stock and buying call\n // // margin value is based on estimated price X of shares\n // if MktAsk(S) > 0\n // then \tX = MktAsk(S)\n // else \tX = Last(S)\n // fi\n // margin = MAX( 0.5 * X, Min(0.1 * K + Max(0, K-X), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity * Multiplier\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n var bid = quotes[0].BidPrice;\n\n if (Object.values(legs).length <= 1) {\n return 0;\n }\n\n var strike = Object.values(legs)[1].Strike;\n var qty = 1;\n var x = null;\n\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n\n return Math.max(0.5 * x, Math.min(0.1 * strike + Math.max(0, strike - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x));\n }), _MarginRequirements4)), _profile4)\n};\nexport var MarriedPut = {\n info: {\n Name: 'Married Put',\n Symbol: 'MP',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.HundredToOne,\n SvgPath: 'married-put',\n IconKind: 'svg'\n },\n profile: (_profile5 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 100,\n AssetType: AssetType.Equity,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile5, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile5, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile5, \"Rules\", {\n SpreadRatio: SizeRatio.HundredToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile5, \"MarginRequirements\", (_MarginRequirements5 = {}, _defineProperty(_MarginRequirements5, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying stock and buying put\n // // margin value is based on estimated price X of shares\n // if isLimitOrder\n // then \tif MktAsk(S) > 0 // if there is available market offer in S greater than 0\n // then X = Min( MktAsk(S), Px(S)) // Px(S) is the client’s specified price for the strategy\n // else X = Min( Last(S), Px(S) )\n // else \tif MktAsk(S) > 0\n // \tthen X = MktAsk(S) // Market best offer will be a good estimate for execution price\n // \telse X = Last(S) // Last price will be a good estimate for execution price X\n // \tfi\n // fi\n // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n var ask = quotes[0].AskPrice;\n var last = quotes[0].LastTradePrice;\n var x;\n\n if (isLimitOrder) {\n if (ask > 0) {\n x = Math.min(ask, offerPrice);\n } else {\n x = Math.min(last, offerPrice);\n }\n } else {\n if (ask > 0) {\n x = ask;\n } else {\n x = last;\n }\n }\n\n return x < 5 ? x : 0.5 * x;\n }), _defineProperty(_MarginRequirements5, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling stock and selling put\n // // margin value is based on estimated price X of shares\n // if MktAsk(S) > 0\n // then \tX = MktAsk(S)\n // else \tX = Last(S)\n // fi\n // margin = MAX( 0.5 * X + MAX( 0, K – X ), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) ) * quantity * Multiplier\n var ask = quotes[0].AskPrice;\n var strike = Object.values(legs)[0].Strike;\n var x;\n\n if (ask > 0) {\n x = ask;\n } else {\n x = quotes[0].LastTradePrice;\n }\n\n return Math.max(0.5 * x + Math.max(0, strike - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x);\n }), _MarginRequirements5)), _profile5)\n};\nexport var CallCalendar = {\n info: {\n Name: 'Call Calendar',\n Symbol: 'CT',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n BidirectionalDebitCredit: true,\n Icon: 'fal fa-calendar-alt',\n IconKind: 'icon'\n },\n profile: (_profile6 = {\n Rules: {\n Expiration: ExpirationRules.DifferentExpiries,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections,\n Strike: StrikeRules.Any\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call\n }]\n }, _defineProperty(_profile6, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile6, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile6, \"MarginRequirements\", (_MarginRequirements6 = {}, _defineProperty(_MarginRequirements6, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying later expiring call with strike K1 and selling earlier expiring call with strike K2\n // if IRA Aaccount\n // \tthen \t// margin is the maximum of zero and strike difference\n // \tmargin = Max( 0, K2 – K1 ) * quantity * Multiplier\n // else\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Min( Max( 0, K2 – K1 ), Max( 0.1 * X, 0.15 * (X – Max( 0, K2 – X ) ) ) ) * quantity * Multiplier\n // \telse\t// Missing MktAsk shall be treated as zero\n // \t\tif MktAsk > 0 then\n // \t\t\tX = Max( Last(S), MktAsk(S) )\n // \t\tfi\n // \t\tmargin = Min( Max( 0, K2 – K1 ), Max( 0.1 * X, 0.20 * (X – Max( 0, K2 – X ) ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n\n if (isIRA) {\n return Math.max(0, K2 - K1);\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (isIndexSymbol(symbol)) {\n return Math.min(Math.max(0, K2 - K1), Math.max(0.1 * x, 0.15 * (x - Math.max(0, K2 - x))));\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.min(Math.max(0, K2 - K1), Math.max(0.1 * x, 0.2 * (x - Math.max(0, K2 - x))));\n }\n }), _defineProperty(_MarginRequirements6, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling later expiring call with strike K1 and buying earlier expiring call with strike K2\n // // margin is the margin of the short call with strike K1 based on estimate of current value X of the\n // // underlying symbol S\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) )\n // \tfi\n // \tmargin = Max( 0.1 * X, 0.20 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * x, 0.15 * (x - Math.max(0, K1 - x)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(0.1 * x, 0.2 * (x - Math.max(0, K1 - x)));\n }\n }), _MarginRequirements6)), _profile6)\n};\nexport var PutCalendar = {\n info: {\n Name: 'Put Calendar',\n Symbol: 'PT',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n BidirectionalDebitCredit: true,\n Icon: 'fal fa-calendar-alt',\n IconKind: 'icon'\n },\n profile: (_profile7 = {\n Rules: {\n Expiration: ExpirationRules.DifferentExpiries,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections,\n Strike: StrikeRules.Any\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put\n }]\n }, _defineProperty(_profile7, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile7, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile7, \"MarginRequirements\", (_MarginRequirements7 = {}, _defineProperty(_MarginRequirements7, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // buying later expiring put with strike K1 and selling earlier expiring put with strike K2\n // if IRA Aaccount then \t// margin is the maximum of zero and strike difference\n // \tmargin = Max( 0, K1 – K2 ) * quantity * Multiplier\n // else\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Min( Max( 0, K1 – K2 ), Max( 0.1 * K2, 0.15 * (X – Max( 0, X – K2 ) ) ) ) * quantity * Multiplier\n // \telse\n // \t\tmargin = Min( Max( 0, K1 – K2 ), Max( 0.1 * K2, 0.20 * (X – Max( 0, X – K2 ) ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n\n if (isIRA) {\n return Math.max(0, K1 - K2);\n } else {\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.min(Math.max(0, K1 - K2), Math.max(0.1 * K2, 0.15 * (x - Math.max(0, x - K2))));\n } else {\n return Math.min(Math.max(0, K1 - K2), Math.max(0.1 * K2, 0.2 * (x - Math.max(0, x - K2))));\n }\n }\n }), _defineProperty(_MarginRequirements7, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling later expiring put with strike K1 and buying earlier expiring put with strike K2\n // // margin is the margin of the short put with strike K1 based on estimate of current value X of the\n // // underlying symbol S\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( 0.1 * K1, 0.15 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // else\n // \tmargin = Max( 0.1 * K1, 0.20 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(0.1 * K1, 0.15 * (x - Math.max(0, x - K1)));\n } else {\n return Math.max(0.1 * K1, 0.2 * (x - Math.max(0, x - K1)));\n }\n }), _MarginRequirements7)), _profile7)\n};\nexport var CallVertical = {\n info: {\n Name: 'Call Vertical',\n Symbol: 'CV',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'call-vertical',\n IconKind: 'svg'\n },\n profile: (_profile8 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.IncreasingOrder,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile8, OrderActionDirection.Long, {\n Strength: 8,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile8, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile8, \"MarginRequirements\", (_MarginRequirements8 = {}, _defineProperty(_MarginRequirements8, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements8, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // selling call with lower strike K1 and buying call with higher strike K2, same expiration\n // if IRA Aaccount then \t// margin is the maximum risk\n // \tmargin = | K2 – K1 | * quantity * Multiplier\n // else \t// margin will be the margin of the short call with the strike K1\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Max( 0.1 * X, 0.15 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // \telse\t// Missing MktAsk shall be treated as zero\n // \t\tif MktAsk > 0 then\n // \t\t\tX = Max( Last(S), MktAsk(S) )\n // \t\tfi\n // \t\tmargin = Max( 0.1 * X, 0.20 * (X – Max( 0, K1 – X ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var strikeDiff = Math.abs(K2 - K1);\n\n if (isIRA) {\n return strikeDiff;\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n var ask = quotes[0].AskPrice;\n\n if (isIndexSymbol(symbol)) {\n var margin = Math.max(0.1 * x, 0.15 * (x - Math.max(0, K1 - x)));\n return Math.min(strikeDiff, margin);\n } else {\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n var _margin = Math.max(0.1 * x, 0.2 * (x - Math.max(0, K1 - x)));\n\n return Math.min(strikeDiff, _margin);\n }\n }), _MarginRequirements8)), _profile8)\n};\nexport var PutVertical = {\n info: {\n Name: 'Put Vertical',\n Symbol: 'PV',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 1,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'put-vertical',\n IconKind: 'svg'\n },\n profile: (_profile9 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.DecreasingOrder,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.DifferentDirections\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile9, OrderActionDirection.Long, {\n Strength: 8,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile9, OrderActionDirection.Short, {\n Strength: 6,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile9, \"MarginRequirements\", (_MarginRequirements9 = {}, _defineProperty(_MarginRequirements9, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements9, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // selling put with higher strike K1 and buying put with lower strike K2, same expiration\n // if IRA Aaccount then \t// margin is the maximum risk\n // \tmargin = | K1 – K2 | * quantity * Multiplier\n // else \t// margin will be the margin of the short put with the strike K1\n // \tX = Last(S)\n // \tif S is Index then\n // \t\tmargin = Max( 0.1 * K, 0.15 * (X – Max( 0, X - K1 ) ) ) * quantity * Multiplier\n // \telse\n // \t\tmargin = Max( 0.1 * K, 0.20 * (X – Max( 0, X – K1 ) ) ) * quantity * Multiplier\n // \tfi\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var strikeDiff = Math.abs(K1 - K2);\n\n if (isIRA) {\n return strikeDiff;\n }\n\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n var margin = Math.max(0.1 * x, 0.15 * (x - Math.max(0, x - K1)));\n return Math.min(strikeDiff, margin);\n } else {\n var _margin2 = Math.max(0.1 * x, 0.2 * (x - Math.max(0, x - K1)));\n\n return Math.min(strikeDiff, _margin2);\n }\n }), _MarginRequirements9)), _profile9)\n};\nexport var CallButterfly = {\n info: {\n Name: 'Call Butterfly',\n Symbol: 'CF',\n LegsAmount: 3,\n Strikes: 3,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneTwoOne,\n SvgPath: 'call-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile10 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.EquidistantStrikes,\n SpreadRatio: SizeRatio.OneTwoOne,\n Direction: DirectionRules.Butterfly\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 2,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile10, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile10, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile10, \"MarginRequirements\", (_MarginRequirements10 = {}, _defineProperty(_MarginRequirements10, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements10, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K2 - K1|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K2 - K1);\n }), _MarginRequirements10)), _profile10)\n};\nexport var PutButterfly = {\n info: {\n Name: 'Put Butterfly',\n Symbol: 'PF',\n LegsAmount: 3,\n Strikes: 3,\n PermissionLevel: 2,\n SizeRatio: SizeRatio.OneTwoOne,\n SvgPath: 'put-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile11 = {\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.EquidistantStrikes,\n SpreadRatio: SizeRatio.OneTwoOne,\n Direction: DirectionRules.Butterfly\n },\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 2,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile11, OrderActionDirection.Long, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile11, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile11, \"MarginRequirements\", (_MarginRequirements11 = {}, _defineProperty(_MarginRequirements11, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements11, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements11)), _profile11)\n};\nexport var Straddle = {\n info: {\n Name: 'Straddle',\n Symbol: 'SD',\n LegsAmount: 2,\n Strikes: 1,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'straddle',\n IconKind: 'svg'\n },\n profile: (_profile12 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile12, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile12, OrderActionDirection.Short, {\n Strength: 0,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile12, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.SameStrikes,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile12, \"MarginRequirements\", (_MarginRequirements12 = {}, _defineProperty(_MarginRequirements12, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements12, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling a call and a put with the same strike\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( Max( 0.1*X, 0.15*(X–Max(0,K–X))) , Max(0.1*K, 0.15*(X–Max(0,X-K)))) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // \tmargin = Max( Max( 0.1*X, 0.20*(X–Max(0,K–X))), Max(0.1*K, 0.20*(X–Max(0,X-K)))) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length <= 0) {\n return 0;\n }\n\n var K = legsArray[0].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(Math.max(0.1 * x, 0.15 * Math.max(0, K - x)), Math.max(0.1 * K, 0.15 * Math.max(0, x - K)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(Math.max(0.1 * x, 0.2 * Math.max(0, K - x)), Math.max(0.1 * K, 0.2 * Math.max(0, x - K)));\n }\n }), _MarginRequirements12)), _profile12)\n};\nexport var Strangle = {\n info: {\n Name: 'Strangle',\n Symbol: 'SG',\n LegsAmount: 2,\n Strikes: 2,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOne,\n SvgPath: 'strangle',\n IconKind: 'svg'\n },\n profile: (_profile13 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile13, OrderActionDirection.Long, {\n Strength: 7,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile13, OrderActionDirection.Short, {\n Strength: 1,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile13, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: StrikeRules.CallHigherThanPut,\n SpreadRatio: SizeRatio.OneToOne,\n Direction: DirectionRules.SameDirections\n }), _defineProperty(_profile13, \"MarginRequirements\", (_MarginRequirements13 = {}, _defineProperty(_MarginRequirements13, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements13, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // // selling a call and a put with different strikes, K1 Call strike, K2 Put Strike\n // X = Last(S)\n // if S is Index then\n // \tmargin = Max( Max( 0.1*X, 0.15*(X–Max(0,K1–X))) , Max(0.1*K2, 0.15*(X–Max(0,X-K2)))) * quantity * Multiplier\n // else\t// Missing MktAsk shall be treated as zero\n // \tif MktAsk > 0 then\n // \t\tX = Max( Last(S), MktAsk(S) ) // MktAsk(S) cannot be infinity either\n // \tmargin = Max( Max( 0.1*X, 0.20*(X–Max(0,K1–X))), Max(0.1*K2, 0.20*(X–Max(0,X-K2)))) * quantity * Multiplier\n // fi\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n var x = quotes[0].LastTradePrice;\n var symbol = quotes[0].Symbol;\n\n if (isIndexSymbol(symbol)) {\n return Math.max(Math.max(0.1 * x, 0.15 * Math.max(0, K1 - x)), Math.max(0.1 * K2, 0.15 * Math.max(0, x - K2)));\n } else {\n var ask = quotes[0].AskPrice;\n\n if (ask > 0) {\n x = Math.max(x, ask);\n }\n\n return Math.max(Math.max(0.1 * x, 0.2 * Math.max(0, K1 - x)), Math.max(0.1 * K2, 0.2 * Math.max(0, x - K2)));\n }\n }), _MarginRequirements13)), _profile13)\n};\nexport var CallCondor = {\n info: {\n Name: 'Call Condor',\n Symbol: 'CR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'call-condor',\n IconKind: 'svg'\n },\n profile: (_profile14 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile14, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile14, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile14, \"Rules\", {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IncreasingOrder, StrikeRules.EquidistantStrikesByTwos],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Condor\n }), _defineProperty(_profile14, \"MarginRequirements\", (_MarginRequirements14 = {}, _defineProperty(_MarginRequirements14, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements14, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K2 - K1|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K2 - K1);\n }), _MarginRequirements14)), _profile14)\n};\nexport var PutCondor = {\n info: {\n Name: 'Put Condor',\n Symbol: 'PR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'put-condor',\n IconKind: 'svg'\n },\n profile: (_profile15 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.DecreasingOrder, StrikeRules.EquidistantStrikesByTwos],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Condor\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }]\n }, _defineProperty(_profile15, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Bear\n }), _defineProperty(_profile15, OrderActionDirection.Short, {\n Strength: 4,\n StrategyType: StrategyType.Bull\n }), _defineProperty(_profile15, \"MarginRequirements\", (_MarginRequirements15 = {}, _defineProperty(_MarginRequirements15, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements15, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n //|K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements15)), _profile15)\n};\nexport var IronButterfly = {\n info: {\n Name: 'Iron Butterfly',\n Symbol: 'IF',\n LegsAmount: 4,\n Strikes: 3,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'iron-butterfly',\n IconKind: 'svg'\n },\n profile: (_profile16 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IronButterfly, StrikeRules.EquidistantStrikesByTwos, StrikeRules.CallFirstPutsSecond],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Iron\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile16, OrderActionDirection.Long, {\n Strength: 6,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile16, OrderActionDirection.Short, {\n Strength: 2,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile16, \"MarginRequirements\", (_MarginRequirements16 = {}, _defineProperty(_MarginRequirements16, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements16, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // |K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements16)), _profile16)\n};\nexport var IronCondor = {\n info: {\n Name: 'Iron Condor',\n Symbol: 'IR',\n LegsAmount: 4,\n Strikes: 4,\n PermissionLevel: 4,\n SizeRatio: SizeRatio.OneToOneToOneToOne,\n SvgPath: 'iron-condor',\n IconKind: 'svg'\n },\n profile: (_profile17 = {\n OrderClass: OrderClass.Multileg,\n Bidirectional: true,\n Rules: {\n Expiration: ExpirationRules.SameExpiry,\n Strike: [StrikeRules.IronCondor, StrikeRules.EquidistantStrikesByTwos, StrikeRules.CallFirstPutsSecond],\n SpreadRatio: SizeRatio.OneToOneToOneToOne,\n Direction: DirectionRules.Iron\n },\n Legs: [{\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Short\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Call,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Long\n }, {\n SpreadRatio: 1,\n AssetType: AssetType.Option,\n OptionType: OptionType.Put,\n Direction: OrderActionDirection.Short\n }]\n }, _defineProperty(_profile17, OrderActionDirection.Long, {\n Strength: 5,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile17, OrderActionDirection.Short, {\n Strength: 3,\n StrategyType: StrategyType.Volatility\n }), _defineProperty(_profile17, \"MarginRequirements\", (_MarginRequirements17 = {}, _defineProperty(_MarginRequirements17, OrderActionDirection.Long, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n return 0;\n }), _defineProperty(_MarginRequirements17, OrderActionDirection.Short, function (legs, quotes, isLimitOrder, offerPrice, isIRA) {\n // |K1 - K2|\n var legsArray = Object.values(legs);\n\n if (legsArray.length < 2) {\n return 0;\n }\n\n var K1 = legsArray[0].Strike;\n var K2 = legsArray[1].Strike;\n return Math.abs(K1 - K2);\n }), _MarginRequirements17)), _profile17)\n}; // export const Collar: TradingStrategy = {\n// info: {\n// Name: 'Collar',\n// Symbol: 'CO',\n// LegsAmount: 3,\n// Strikes: 2,\n// PermissionLevel: 4,\n// SizeRatio: SizeRatio.HundredToOneToOne,\n// SvgPath: 'collar',\n// IconKind: 'svg',\n// },\n// profile: {\n// OrderClass: OrderClass.Multileg,\n// Bidirectional: true,\n// Legs: [\n// {\n// SpreadRatio: 100,\n// AssetType: AssetType.Equity,\n// Direction: OrderActionDirection.Long,\n// },\n// {\n// SpreadRatio: 1,\n// AssetType: AssetType.Option,\n// OptionType: OptionType.Call,\n// Direction: OrderActionDirection.Short,\n// },\n// {\n// SpreadRatio: 1,\n// AssetType: AssetType.Option,\n// OptionType: OptionType.Put,\n// Direction: OrderActionDirection.Long,\n// },\n// ],\n// [OrderActionDirection.Long]: {\n// Strength: 8,\n// StrategyType: StrategyType.Bull,\n// },\n// [OrderActionDirection.Short]: {\n// Strength: 8,\n// StrategyType: StrategyType.Bear,\n// },\n// Rules: {\n// Expiration: ExpirationRules.SameExpiry,\n// Strike: StrikeRules.CallHigherThanPut,\n// SpreadRatio: SizeRatio.HundredToOneToOne,\n// },\n// MarginRequirements: {\n// [OrderActionDirection.Long]: (legs, quotes, isLimitOrder, offerPrice, isIRA) => {\n// // // buying shares and selling a call with strike K1 and buying a put with strike K2\n// // // margin is the same as for covered call\n// // // margin value is based on estimated price X of shares\n// // // Px(S) is the client’s specified price for the strategy\n// // if isLimitOrder then\n// // \tif MktAsk(S) > 0 then\n// // \t\tX = Min( MktAsk(S), Px(S) + Max(0, MktAsk(S) – K1) // if there is available market offer in S greater than 0\n// // \telse // Px(S) is the client’s specified price for the strategy\n// // \t\tX = Min( Last(S), Px(S) + Max(0, Last(S) – K1)\n// // \tfi\n// // else\n// // \tif MktAsk(S) > 0 then\n// // \t\tX = MktAsk(S) // Market best offer will be a good estimate for execution price\n// // \telse\n// // \t\tX = Last(S) // Last price will be a good estimate for execution price X\n// // \tfi\n// // fi\n// // margin = ( X < 5 ? X : 0.5 * X ) * quantity * Multiplier;\n// const legsArray = Object.values(legs);\n// if (legsArray.length < 2) {\n// return 0;\n// }\n// const K1 = (legsArray[0] as OrderLegDTOState).Strike;\n// let x: number;\n// const ask = quotes[0].AskPrice;\n// if (isLimitOrder) {\n// if (ask > 0) {\n// x = Math.min(ask, offerPrice + Math.max(0, ask - K1));\n// } else {\n// x = Math.min(quotes[0].LastTradePrice, offerPrice + Math.max(0, quotes[0].LastTradePrice - K1));\n// }\n// } else {\n// if (ask > 0) {\n// x = ask;\n// } else {\n// x = quotes[0].LastTradePrice;\n// }\n// }\n// return x < 5 ? x : 0.5 * x;\n// },\n// [OrderActionDirection.Short]: (legs, quotes, isLimitOrder, offerPrice, isIRA) => {\n// // if MktAsk(S) > 0 then\n// // \tX = MktAsk(S)\n// // else\n// // \tX = Last(S)\n// // fi\n// // margin = MAX( 0.5 * X + MAX( 0, K2 – X ), X < 2.5 ? 2.5 : ( X < 5 ? X : (X < 50 /3.0 ? 5 : 0.3 * X ) ) )\n// const legsArray = Object.values(legs);\n// if (legsArray.length < 2) {\n// return 0;\n// }\n// let x: number = quotes[0].LastTradePrice;\n// const ask = quotes[0].AskPrice;\n// const K2 = (legsArray[1] as OrderLegDTOState).Strike;\n// if (ask > 0) {\n// x = ask;\n// }\n// return Math.max(0.5 * x + Math.max(0, K2 - x), x < 2.5 ? 2.5 : x < 5 ? x : x < 50 / 3.0 ? 5 : 0.3 * x);\n// },\n// },\n// },\n// };\n\nexport var Strategies = [Shares, Call, Put, CallVertical, CallCalendar, PutVertical, PutCalendar, Straddle, Strangle, CoveredCall, MarriedPut, CallButterfly, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor];\nexport var IndexStrategies = [Call, Put, CallVertical, CallCalendar, PutVertical, PutCalendar, Straddle, Strangle, CallButterfly, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor];","export var CustomStrategy = {\n info: {\n Name: 'Custom'\n }\n};","import { ExpirationType, OptionExpirationType } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport { populateTimeZones, findTimeZone, convertTimeToDate } from 'timezone-support/dist/lookup-convert';\nimport * as tzdata from 'timezone-support/dist/data-2012-2022';\nimport { convertDateToTime } from 'timezone-support';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\npopulateTimeZones(tzdata);\ndayjs.extend(LocalizedFormat);\ndayjs.extend(utc);\n\nfunction isDayjs(d) {\n if (d === undefined) {\n return false;\n }\n\n return dayjs.isDayjs(d);\n}\n\nexport var getLocalDateFromTimezone = function getLocalDateFromTimezone(date) {\n var tz = findTimeZone(timeZone);\n var dateVal = isDayjs(date) ? date.toDate() : date || new Date();\n var localDate = tz ? convertTimeToDate(convertDateToTime(dateVal)) : dateVal;\n return dayjs(localDate);\n};\nexport var getWeekdayOfMonth = function getWeekdayOfMonth(date, dayOfWeek, weekOfMonth) {\n var firstDayOfMonth = dayjs(date).date(1); // start on 1st of month, then set day of week (starts at 'Sunday' === 0)\n\n var firstDayOfWeek = dayjs(firstDayOfMonth).day(dayOfWeek); // add extra week if setting day of week above shifted to previous month\n\n var weeksToAdd = firstDayOfWeek.isBefore(firstDayOfMonth) ? weekOfMonth + 1 : weekOfMonth; // shift date to week of the month (one less since starting in first week)\n\n return firstDayOfWeek.add(weeksToAdd - 1, 'week');\n};\nexport var getExpirationType = function getExpirationType(date) {\n // monthly expirations are on 3rd friday of the month ('Friday' === 5)\n var dateValue = dayjs.isDayjs(date) ? date.toDate() : date;\n var monthlyExpiration = getWeekdayOfMonth(dateValue, 5, 3);\n return dayjs(dateValue).isSame(monthlyExpiration, 'date') ? ExpirationType.Monthly : ExpirationType.Weekly;\n};\nexport var formatExpiration = function formatExpiration(dto) {\n var date = dayjs(dto.Date).toDate();\n var isWeekly = dto.ExpirationFreqCode === 'W' || dto.ExpirationFreqCode === 'MW' || dto.ExpirationFreqCode === 'WW' || dto.ExpirationFreqCode.includes('Week') || dto.ExpirationFreqCode.includes('W') || dto.ExpirationFreqCode === 'ME';\n var isQuarterly = dto.ExpirationFreqCode === 'QuarterlyEOM';\n return Object.assign({}, dto, {\n date: date,\n type: isWeekly ? ExpirationType.Weekly : isQuarterly ? ExpirationType.Quarterly : ExpirationType.Monthly,\n optionExpirationType: dto.Time,\n rootSymbol: dto.RootSymbol\n });\n};\nexport var toExpiration = function toExpiration(date, rootSymbol, optionExpirationType) {\n return {\n date: date,\n type: getExpirationType(date),\n optionExpirationType: optionExpirationType || OptionExpirationType.PM,\n rootSymbol: rootSymbol\n };\n};\nexport var toShort = function toShort(date) {\n return (isDayjs(date) ? date : dayjs(date)).format('MMM D, YYYY');\n};\nexport var ToUtcMidnight = function ToUtcMidnight(date) {\n return dayjs(date || new Date()).set('hour', 0).set('minute', 0).set('second', 0);\n};\nexport var isBetweenInclusive = function isBetweenInclusive(date, startDate, endDate) {\n if (date) {\n var d = dayjs(date);\n return d.isAfter(startDate, 'date') && d.isBefore(endDate, 'date') || d.isSame(startDate, 'date') || d.isSame(endDate, 'date');\n }\n\n return false;\n};\nexport var isDateBetweenExclusive = function isDateBetweenExclusive(date, startDate, endDate) {\n if (date) {\n var d = dayjs(date);\n return d.isAfter(startDate, 'date') && d.isBefore(endDate, 'date');\n }\n\n return false;\n};\nexport var isBefore = function isBefore(curr, date) {\n var compDate = dayjs.isDayjs(date) ? date.toDate() : date;\n return curr ? dayjs(curr).isBefore(compDate, 'date') : false;\n};\nexport var TodayDate = function TodayDate() {\n return dayjs(new Date()).hour(0).toDate();\n};\nexport var isToday = function isToday(curr) {\n return curr ? dayjs(curr).isSame(TodayDate(), 'date') : false;\n}; // TODO: type fix\n\nexport var timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _, { uniqueId } from 'lodash';\nimport dayjs from 'dayjs';\nimport { OptionType, AssetType, OptionExpirationType, OrderStatuses } from '@tradingblock/types';\nimport { OrderAction, PositionEffect, OrderActionDirection, OrderClass, Durations as DurationValues, Durations, DebitOrCredit } from '@tradingblock/types';\nimport { isIndexSymbol, parseOccSymbol, isOptionAsset } from './SymbolUtilities';\nimport { Strategies } from '../strategies/strategies';\nimport { CustomStrategy } from '../strategies/CustomStrategy';\nimport { isBetweenInclusive } from './DateUtilities';\nexport var OCCSymbolToOptionData = parseOccSymbol;\nexport var DeriveLegAssetType = function DeriveLegAssetType(leg) {\n if (_.isNil(leg.OptionType) === false) {\n return AssetType.Option;\n } else if (isIndexSymbol(leg.UnderlyingSymbol)) {\n return AssetType.Index;\n } else {\n return AssetType.Equity;\n }\n};\nexport var GetOCCSymbol = function GetOCCSymbol(symbolData) {\n var underlyingSymbol = symbolData.underlyingSymbol,\n expiration = symbolData.expiration,\n optionType = symbolData.optionType,\n strike = symbolData.strike,\n prefixSymbolName = symbolData.prefixSymbolName;\n\n if (expiration === undefined || strike === undefined || optionType === undefined) {\n return underlyingSymbol;\n }\n\n var otype = optionType === OptionType.Put ? 'P' : 'C';\n var rootSymbol = underlyingSymbol;\n rootSymbol = _.replace(underlyingSymbol, '$', '');\n\n if (isIndexSymbol(underlyingSymbol)) {\n // rootSymbol = _.replace(underlyingSymbol, '$', '');\n if (expiration.optionExpirationType === OptionExpirationType.PM && rootSymbol !== 'NANOS') {\n rootSymbol = \"\".concat(rootSymbol, \"W\");\n }\n }\n\n var dateVal = dayjs(expiration.date).format('YYMMDD'); //const strikeVal = _.padStart((strike * 1000).toString(), 6, '0');\n\n var strikeVal = strike * 1000;\n var prefix = prefixSymbolName ? '.' : '';\n return \"\".concat(prefix).concat(rootSymbol, \" \").concat(dateVal).concat(otype).concat(strikeVal);\n};\nexport var orderLegOccSymbol = function orderLegOccSymbol(underlyingSymbol, leg) {\n var Expiration = leg.Expiration,\n OptionType = leg.OptionType,\n Strike = leg.Strike;\n var symbolOcc = undefined;\n\n if (!OptionType || leg.AssetType === AssetType.Equity) {\n symbolOcc = underlyingSymbol.symbol;\n } else if (OptionType && Expiration && Strike) {\n symbolOcc = GetOCCSymbol({\n underlyingSymbol: underlyingSymbol.symbol,\n symbolType: underlyingSymbol.type,\n expiration: Expiration,\n optionType: OptionType,\n strike: Strike\n });\n } else {\n symbolOcc = undefined;\n }\n\n return symbolOcc;\n};\nexport var toPrefixedOccSymbol = function toPrefixedOccSymbol(symbol) {\n return _.first(symbol) === '.' ? symbol : \".\".concat(symbol);\n};\nexport var toRawOccSymbol = function toRawOccSymbol(symbol) {\n return _.isNil(symbol) ? '' : _.first(symbol) === '.' ? _.replace(symbol, '.', '') : symbol;\n};\nexport var AllStrategies = [].concat(_toConsumableArray(Strategies), [CustomStrategy]);\nexport var getStrategy = function getStrategy(name) {\n return _.find(AllStrategies, function (s) {\n return s.info.Name === name;\n }) || CustomStrategy;\n};\nexport var getKnownStrategy = function getKnownStrategy(name) {\n return _.find(Strategies, function (s) {\n return s.info.Name === name;\n });\n};\nexport var buildOrderLeg = function buildOrderLeg(partOrd, orderAction, assetType, positionEffect, optionType, ratio) {\n return {\n Symbol: partOrd.Symbol,\n UnderlyingSymbol: partOrd.UnderlyingSymbol || partOrd.Symbol,\n Id: uniqueId(),\n SpreadRatio: ratio,\n AssetType: assetType,\n Action: orderAction,\n PositionEffect: positionEffect,\n OptionType: optionType\n };\n};\nexport var transformForApi = function transformForApi(orderDesc) {\n var transformedOrder = orderDesc.kind === 'simple' ? {\n AccountId: orderDesc.accountId,\n SubaccountId: orderDesc.subaccountId,\n UnderlyingSymbol: '',\n Legs: [{\n AssetType: orderDesc.assetType,\n Symbol: orderDesc.symbol,\n Action: orderDesc.action,\n PositionEffect: orderDesc.effect\n }],\n ClientRefId: orderDesc.referenceId,\n OrderClass: OrderClass.Single,\n Quantity: orderDesc.quantity,\n OrderType: orderDesc.orderType,\n Price: orderDesc.price,\n Stop: orderDesc.stop,\n AllOrNone: false,\n Duration: DurationValues.Day,\n Description: '',\n DebitCredit: DebitOrCredit.Debit\n } : Object.assign({}, orderDesc, {\n Legs: _.map(orderDesc.Legs, function (l) {\n return Object.assign({}, l, {\n Symbol: l.OccSymbol || l.Symbol\n });\n })\n });\n var isSpreadOrder = _.keys(transformedOrder.Legs).length > 1 ? true : false;\n var DebitCredit = isSpreadOrder ? transformedOrder.DebitCredit : undefined;\n var finalorder = Object.assign({}, transformedOrder, {\n DebitCredit: DebitCredit\n });\n return transformOrderForApi(finalorder);\n};\n\nvar getCallPutValue = function getCallPutValue(l) {\n var legSymbol = l.OccSymbol;\n\n if (legSymbol === undefined) {\n return null;\n }\n\n var symInfo = parseOccSymbol(legSymbol);\n\n if (isOptionAsset(symInfo)) {\n return symInfo.option === OptionType.Call ? true : false;\n }\n\n return null;\n};\n\nfunction isPartialOrderWithLegs(order) {\n var ordLegs = _.get(order, 'Legs', undefined);\n\n return order && _.isArray(ordLegs) ? true : false;\n}\n\nexport function transformOrderForApi(order) {\n var Price = Math.abs(order.Price);\n\n if (isPartialOrderWithLegs(order)) {\n var Legs = _.map(order.Legs, function (l) {\n return Object.assign({}, l, {\n CallPut: getCallPutValue(l)\n });\n });\n\n return Object.assign({}, order, {\n Price: Price,\n Legs: Legs\n });\n }\n\n return Object.assign({}, order, {\n Price: Price\n });\n}\nexport var transformFromApi = function transformFromApi(order) {\n var Duration = getDurationFromCode(order.Duration);\n return Object.assign({}, order, {\n Duration: Duration,\n Legs: _.map(order.Legs, function (l) {\n return Object.assign({}, l, {\n Symbol: toRawOccSymbol(l.Symbol),\n OccSymbol: toPrefixedOccSymbol(l.Symbol)\n });\n })\n });\n};\n\nvar getDurationFromCode = function getDurationFromCode(duration) {\n if (_.isNumber(duration)) {\n var durationCode = _.toNumber(duration);\n\n switch (durationCode) {\n case 1:\n return Durations.Day;\n\n case 2:\n return Durations.GTC;\n\n case 3:\n return Durations.Manual;\n }\n }\n\n return duration;\n};\n\nexport var BuildInitialOrder = function BuildInitialOrder(strategy, partOrd) {\n return {\n OrderClass: strategy.profile.OrderClass,\n Legs: _.map(strategy.profile.Legs, function (leg, ind) {\n var legAction = leg.Direction === OrderActionDirection.Long ? OrderAction.Buy : OrderAction.Sell;\n\n if (leg.Direction === undefined) {\n legAction = ind === 0 ? OrderAction.Buy : OrderAction.Sell;\n }\n\n return Object.assign({}, leg, buildOrderLeg(partOrd, legAction, leg.AssetType, PositionEffect.Open, leg.OptionType, leg.SpreadRatio));\n })\n };\n};\nexport var getNextLegId = function getNextLegId(existingLegs) {\n var id = _.uniqueId('leg_');\n\n while (_.keys(existingLegs).includes(id)) {\n id = _.uniqueId('leg_');\n }\n\n return id;\n};\nexport var orderToReplaceOrder = function orderToReplaceOrder(order) {\n var valOrUndef = function valOrUndef(val) {\n return val && val !== 0 ? val : undefined;\n };\n\n return {\n AccountId: order.AccountId,\n DebitCredit: order.DebitCredit,\n SubaccountId: valOrUndef(order.SubaccountId),\n OrderId: order.OrderId,\n ClientRefId: valOrUndef(order.ClientRefId),\n OrderType: order.OrderType,\n Price: order.Price,\n Stop: valOrUndef(order.Stop)\n };\n};\nexport var OnlyFilledOrders = function OnlyFilledOrders(orders) {\n return _(orders).filter(function (o) {\n var orderStatus = o.OrderStatus;\n\n switch (orderStatus) {\n case OrderStatuses.PartiallyFilled:\n case OrderStatuses.Filled:\n {\n return true;\n }\n\n default:\n return false;\n }\n }).value();\n};\nexport var FilterOrderByDate = function FilterOrderByDate(orders, startDate, endDate) {\n return _.filter(orders, function (order) {\n if (startDate === undefined) {\n return true;\n }\n\n var endDateVal = endDate || new Date();\n return isBetweenInclusive(order.Date, startDate, endDateVal) ? true : false;\n });\n};\nexport var TodaysFilledOrders = function TodaysFilledOrders(orders) {\n var startDate = dayjs(new Date()).hour(0).toDate();\n var endDate = dayjs(new Date()).toDate();\n return OnlyFilledOrders(FilterOrderByDate(orders, startDate, endDate));\n};\nexport var GetSymbolsFromOrders = function GetSymbolsFromOrders(orders) {\n return _.reduce(orders, function (acc, o) {\n var Legs = o.Legs;\n var orderSymbols = Legs ? _.map(Legs, function (l) {\n return l.Symbol;\n }) : [];\n\n var updated = _(acc).union(orderSymbols).uniq().value();\n\n return updated;\n }, []);\n};\n\nvar toOrderLegWithMetaData = function toOrderLegWithMetaData(o, l) {\n return Object.assign({}, l, {\n UnderlyingSymbol: o.UnderlyingSymbol,\n OrderId: o.OrderId,\n Date: o.Date\n });\n};\n\nvar toOrderLegsWithMetaData = function toOrderLegsWithMetaData(orders) {\n return _.flatMap(orders, function (o) {\n return o.Legs.map(function (l) {\n return toOrderLegWithMetaData(o, l);\n });\n });\n};\n\nexport var orderutility = {\n toOrderLegsWithMetaData: toOrderLegsWithMetaData\n};\nexport var isSymbolExpired = function isSymbolExpired(symbol) {\n var symbData = parseOccSymbol(symbol); //not expired\n\n if (symbData.expiration && symbData.expiration.valueOf() <= new Date().valueOf()) {\n return true;\n }\n\n return false;\n};\nexport var getDefaultOrderQuantity = function getDefaultOrderQuantity(strategy, _ref) {\n var defaultQuantityForOptionsAndStrategies = _ref.defaultQuantityForOptionsAndStrategies,\n defaultQuantityForShares = _ref.defaultQuantityForShares;\n\n if (strategy === 'Custom' || strategy === undefined) {\n return 1;\n } else if (strategy === 'Shares') {\n return defaultQuantityForShares || 1;\n } else {\n return defaultQuantityForOptionsAndStrategies || 1;\n }\n};\nexport var getCustomStrategyLegQuantity = function getCustomStrategyLegQuantity(assetType, _ref2) {\n var defaultQuantityForOptionsAndStrategies = _ref2.defaultQuantityForOptionsAndStrategies,\n defaultQuantityForShares = _ref2.defaultQuantityForShares;\n\n if (assetType === AssetType.Equity) {\n return defaultQuantityForShares || 1;\n } else {\n return defaultQuantityForOptionsAndStrategies || 1;\n }\n};\nexport var findDuplicateLegs = function findDuplicateLegs(legs) {\n var partialLegs = _.map(legs, function (l) {\n var symbolData = parseOccSymbol(l.Symbol);\n var data = {\n spreadRatio: l.SpreadRatio,\n expiration: symbolData.expiration,\n strike: symbolData.strike,\n optionType: symbolData.option\n };\n return {\n symbol: l.Symbol,\n occSymbol: l.OccSymbol,\n data: data\n };\n });\n\n return _.filter(partialLegs, function (curr, currInd) {\n var eq = _.find(partialLegs, function (e, eInd) {\n return _.isEqual(e.data, curr.data) && eInd !== currInd;\n });\n\n return eq ? true : false;\n });\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nvar _RatioForPrice;\n\nimport { OrderAction, AssetType, DebitOrCredit } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { isCalendar } from '..';\nvar RatioForPrice = (_RatioForPrice = {}, _defineProperty(_RatioForPrice, AssetType.Equity.toFixed(), 0.01), _defineProperty(_RatioForPrice, AssetType.Option.toFixed(), 1), _RatioForPrice);\n\nvar getLegMarketValueTotalForPrice = function getLegMarketValueTotalForPrice(leg, price) {\n var at = leg.AssetType;\n var priceRatio = RatioForPrice[at.toFixed()];\n var quantity = leg.SpreadRatio || 1;\n return priceRatio * quantity * price;\n};\n\nvar getAggregatedBidAsk = function getAggregatedBidAsk(legs) {\n return _.reduce(legs, function (acc, l) {\n return Object.assign({}, acc, {\n bid: acc.bid + l.bid,\n ask: acc.ask + l.ask\n });\n }, {\n bid: 0,\n ask: 0\n });\n};\n\nvar minOrZero = function minOrZero(vals) {\n return _.min(vals) || 0;\n};\n\nvar maxOrZero = function maxOrZero(vals) {\n return _.max(vals) || 0;\n};\n\nvar getLegBidAsk = function getLegBidAsk(legs, quotes) {\n return _.reduce(legs, function (acc, leg, legSymbol) {\n var legQuote = _.find(quotes, function (q) {\n return q.Symbol === legSymbol;\n });\n\n if (legQuote && leg && legSymbol) {\n // const isBuy = leg.Action === OrderAction.Buy;\n // const marketBidPrice = isBuy ? legQuote.BidPrice : legQuote.AskPrice;\n // const marketAskPrice = isBuy ? legQuote.AskPrice : legQuote.BidPrice;\n var legbid = getLegMarketValueTotalForPrice(leg, legQuote.BidPrice);\n var legask = getLegMarketValueTotalForPrice(leg, legQuote.AskPrice);\n return [].concat(_toConsumableArray(acc), [{\n leg: leg,\n bid: legbid,\n ask: legask,\n action: leg.Action\n }]);\n } else {\n return acc;\n }\n }, []);\n};\n\nexport var calculateOrderPrice = function calculateOrderPrice(legs, quotes, action, gcd, strategy) {\n if (strategy === 'Put Calendar' || strategy === 'Call Calendar') {\n var _option_legs = Object.values(legs).filter(function (l) {\n return l.AssetType === AssetType.Option;\n });\n\n var option_legs_keys = Object.keys(legs).filter(function (l) {\n return legs[l].AssetType === AssetType.Option;\n });\n\n if (_option_legs !== undefined && _option_legs.length === 2 && _option_legs[0] !== undefined && _option_legs[1] !== undefined && _option_legs[0].Expiration !== undefined && _option_legs[1].Expiration !== undefined) {\n var later_exp_option = _option_legs[0].Expiration.date > _option_legs[1].Expiration.date ? 0 : 1;\n var earlier_exp_option = _option_legs[0].Expiration.date < _option_legs[1].Expiration.date ? 0 : 1;\n var later_exp_option_quote = quotes.find(function (q) {\n return q.Symbol === option_legs_keys[later_exp_option];\n });\n var earlier_exp_option_quote = quotes.find(function (q) {\n return q.Symbol === option_legs_keys[earlier_exp_option];\n });\n var _totalMultiple = 100;\n\n if (later_exp_option_quote !== undefined && earlier_exp_option_quote !== undefined) {\n var _bid = later_exp_option_quote.BidPrice - earlier_exp_option_quote.AskPrice;\n\n var _ask = later_exp_option_quote.AskPrice - earlier_exp_option_quote.BidPrice;\n\n return {\n bid: _.round(_bid, 2),\n ask: _.round(_ask, 2),\n mid: _.round((_ask - _bid) / 2 + _bid, 3),\n totalMultiple: _totalMultiple,\n gcd: gcd\n };\n }\n }\n }\n\n var option_legs = Object.values(legs).filter(function (l) {\n return l.AssetType === AssetType.Option;\n });\n var maxRatio = _.max(_.map(legs, function (l) {\n return RatioForPrice[l.AssetType.toFixed()];\n })) || 1;\n var legPrices = getLegBidAsk(legs, quotes);\n\n var shortLegs = _.filter(legPrices, function (l) {\n return l.action === OrderAction.Sell;\n });\n\n var longLegs = _.filter(legPrices, function (l) {\n return l.action === OrderAction.Buy;\n });\n\n var shorts = getAggregatedBidAsk(shortLegs);\n var longs = getAggregatedBidAsk(longLegs);\n var bidValue = action === OrderAction.Buy ? longs.bid - shorts.ask : shorts.bid - longs.ask;\n var askValue = action === OrderAction.Buy ? longs.ask - shorts.bid : shorts.ask - longs.bid;\n var bid = minOrZero([bidValue, askValue]) / gcd / maxRatio;\n var ask = maxOrZero([bidValue, askValue]) / gcd / maxRatio;\n var mid = (ask - bid) / 2 + bid;\n var totalMultiple = option_legs.length > 0 ? 100 : 1;\n return {\n ask: _.round(ask, 2),\n bid: _.round(bid, 2),\n mid: _.round(mid, 2),\n totalMultiple: totalMultiple,\n gcd: gcd\n };\n};\nexport var getDebitOrCredit = function getDebitOrCredit(data) {\n var action = data.action,\n strategy = data.strategy,\n currentDebitOrCredit = data.currentDebitOrCredit,\n price = data.price,\n updateCreditOrDebit = data.updateCreditOrDebit,\n legs = data.legs,\n mid = data.mid,\n match = data.match;\n var orderActionValue = isCalendar(strategy) ? OrderAction.Buy : action;\n var defaultDebitOrCredit = orderActionValue === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n var debitCredit = currentDebitOrCredit;\n var isCalendarMatch = match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n var isCallVerticalMatch = match && match.info.Name === 'Call Vertical';\n var isPutVerticalMatch = match && match.info.Name === 'Put Vertical';\n var isCoveredCallMatch = match && match.info.Name === 'Covered Call';\n var isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n var isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n var isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n var isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n var isCallCondorMatch = match && match.info.Name === 'Call Condor';\n var isPutCondorMatch = match && match.info.Name === 'Put Condor';\n var isCall = match && match.info.Name === 'Call';\n var isPut = match && match.info.Name === 'Put';\n\n if (strategy === 'Custom' && _.every(legs, function (l) {\n return l.Action === OrderAction.Buy;\n })) {\n debitCredit = DebitOrCredit.Debit;\n } else if (strategy === 'Custom' && _.every(legs, function (l) {\n return l.Action === OrderAction.Sell;\n })) {\n debitCredit = DebitOrCredit.Credit;\n } else if (updateCreditOrDebit && (mid !== undefined && mid < 0 || price < 0)) {\n debitCredit = defaultDebitOrCredit === DebitOrCredit.Debit ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n } else if (updateCreditOrDebit && (mid !== undefined && mid >= 0 || price >= 0)) {\n debitCredit = defaultDebitOrCredit;\n }\n\n if (strategy === 'Call Calendar' || strategy === 'Put Calendar') {\n if (price !== undefined) {\n if (price > 0 && action === OrderAction.Buy) {\n debitCredit = DebitOrCredit.Debit;\n } else if (price > 0 && action === OrderAction.Sell) {\n debitCredit = DebitOrCredit.Credit;\n }\n\n if (price < 0 && action === OrderAction.Buy) {\n debitCredit = DebitOrCredit.Credit;\n } else if (price < 0 && action === OrderAction.Sell) {\n debitCredit = DebitOrCredit.Debit;\n }\n }\n } // find the latest expiring leg\n\n\n var findLatestExpiration = function findLatestExpiration(legs) {\n var latestExpiration = null;\n var latestExpirationDate = new Date(0); // Initialize with a very early date\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n var expirationDate = new Date(leg.Expiration.date);\n\n if (expirationDate > latestExpirationDate) {\n latestExpirationDate = expirationDate;\n latestExpiration = leg;\n }\n }\n\n return latestExpiration;\n }; // find the lowest strike leg\n\n\n var findLowestStrike = function findLowestStrike(legs) {\n var lowestStrike = null;\n var lowestStrikeValue = 0;\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n var strike = leg.Strike;\n\n if (lowestStrike === null || strike < lowestStrikeValue) {\n lowestStrikeValue = strike;\n lowestStrike = leg;\n }\n }\n\n return lowestStrike;\n };\n\n var findShareLeg = function findShareLeg(legs) {\n var shareLeg = null;\n\n for (var legKey in legs) {\n var leg = legs[legKey];\n\n if (leg.AssetType === AssetType.Equity) {\n shareLeg = leg;\n break;\n }\n }\n\n return shareLeg;\n };\n\n if (isCall) {\n var lowestStrikeLeg = findLowestStrike(legs);\n\n if (lowestStrikeLeg) {\n if (updateCreditOrDebit) {\n debitCredit = lowestStrikeLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPut) {\n var _lowestStrikeLeg = findLowestStrike(legs);\n\n if (_lowestStrikeLeg) {\n if (updateCreditOrDebit) {\n debitCredit = _lowestStrikeLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallVerticalMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg2 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg2) {\n if (updateCreditOrDebit) {\n // for a call vertical the order is considered a buy if you are buying the lower strike and selling the higher strike\n debitCredit = _lowestStrikeLeg2.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPutVerticalMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg3 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg3) {\n if (updateCreditOrDebit) {\n // for a put vertical the order is considered a buy if you are buying the higher strike and selling the lower strike\n debitCredit = _lowestStrikeLeg3.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n\n if (isCoveredCallMatch) {\n // use the share leg action to determine the debit or credit\n var shareLeg = findShareLeg(legs);\n\n if (shareLeg) {\n if (updateCreditOrDebit) {\n // for a covered call the order is considered a buy if you are buying the share and selling the call\n debitCredit = shareLeg.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg4 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg4) {\n if (updateCreditOrDebit) {\n // for a call butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg4.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isPutButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg5 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg5) {\n if (updateCreditOrDebit) {\n // for a put butterfly the order is considered a buy if you are buying the middle strike and selling the lower strike and higher strike\n debitCredit = _lowestStrikeLeg5.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isIronButterflyMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg6 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg6) {\n if (updateCreditOrDebit) {\n // for an iron butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg6.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isIronCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg7 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg7) {\n if (updateCreditOrDebit) {\n // for an iron condor the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n debitCredit = _lowestStrikeLeg7.Action === OrderAction.Sell ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n }\n }\n }\n\n if (isCallCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg8 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg8) {\n if (updateCreditOrDebit) {\n if (price > 0) {\n debitCredit = _lowestStrikeLeg8.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n } else if (price < 0) {\n debitCredit = _lowestStrikeLeg8.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n }\n\n if (isPutCondorMatch) {\n // use the lowest strike leg action to determine the debit or credit\n var _lowestStrikeLeg9 = findLowestStrike(legs);\n\n if (_lowestStrikeLeg9) {\n if (updateCreditOrDebit) {\n if (price > 0) {\n debitCredit = _lowestStrikeLeg9.Action === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\n } else if (price < 0) {\n debitCredit = _lowestStrikeLeg9.Action === OrderAction.Buy ? DebitOrCredit.Credit : DebitOrCredit.Debit;\n }\n }\n }\n }\n\n return debitCredit;\n};\nexport var getBestPrice = function getBestPrice(_ref) {\n var ask = _ref.ask,\n bid = _ref.bid,\n last = _ref.last,\n defaultValue = _ref.defaultValue,\n isSettlementSet = _ref.isSettlementSet;\n // Normalize ask and bid values to 0 if they are undefined or null, assuming negative prices are invalid\n var askValue = _.isNil(ask) ? 0 : ask;\n var bidValue = _.isNil(bid) ? 0 : bid; // If the settlement is set, return the last price immediately\n\n if (isSettlementSet === true) {\n return last;\n } // If both bid and ask prices are non-negative\n\n\n if (bidValue >= 0 && askValue > 0) {\n // If the last price is less than or equal to the bid, return the bid value\n if (last <= bidValue) {\n return bidValue;\n } // Else if the last price is greater than the ask, return the ask value\n else if (last > askValue) {\n return askValue;\n } // If the default value is set to 'average', compute the average of ask and bid\n\n\n if (defaultValue === 'avgBidAsk') {\n // If the bid value is 0, askValue is greater than 0, and last is greater than askValue,\n // return askValue, otherwise return the last price\n if (bidValue === 0) {\n // If ask is greater than 0, and last is greater than ask, return ask, otherwise return last\n if (askValue > 0 && last > askValue) {\n return askValue;\n } else {\n return last;\n }\n } else {\n // Otherwise, return the average of ask and bid\n return (askValue + bidValue) / 2;\n }\n } else {\n // Else if not averaging, return the last price\n return last;\n }\n } else {\n // Else if the bid or ask values are not in the expected range\n if (askValue <= 0) {\n // And ask value is non-positive, return the last price\n return last;\n } else {\n // Else if the ask value is positive but less than the last, return ask, otherwise return last\n if (askValue < last) {\n return askValue;\n } else {\n return last;\n }\n }\n }\n};","import _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport * as dayjs from 'dayjs';\nimport { toExpiration, getNextLegId, isString } from '..';\nimport { getDefaultOrderQuantity } from '../utilities/OrderUtilities';\nexport var LegBuilder =\n/*#__PURE__*/\nfunction () {\n function LegBuilder(rootSymbol, id) {\n var _this = this;\n\n _classCallCheck(this, LegBuilder);\n\n this.expiration = function (val, optionExpirationType) {\n var expVal = dayjs.isDayjs(val) ? val.toDate() : new Date(val);\n return _this.set('Expiration', toExpiration(expVal, _this.rootSymbol, optionExpirationType));\n };\n\n this.legState = {};\n this.rootSymbol = rootSymbol;\n this.id = id;\n }\n\n _createClass(LegBuilder, [{\n key: \"set\",\n value: function set(k, value) {\n this.legState = Object.assign({}, this.legState, _defineProperty({}, k, value));\n return this;\n }\n }, {\n key: \"get\",\n value: function get(k) {\n return this.legState[k];\n }\n }, {\n key: \"optionType\",\n value: function optionType(val) {\n return this.set('OptionType', val);\n }\n }, {\n key: \"positionEffect\",\n value: function positionEffect(val) {\n return this.set('PositionEffect', val);\n }\n }, {\n key: \"assetType\",\n value: function assetType(val) {\n return this.set('AssetType', val);\n }\n }, {\n key: \"action\",\n value: function action(act) {\n return this.set('Action', act);\n }\n }, {\n key: \"quantity\",\n value: function quantity(val) {\n return this.set('SpreadRatio', val || 1);\n }\n }, {\n key: \"strike\",\n value: function strike(val) {\n return this.set('Strike', val);\n }\n }, {\n key: \"subaccountId\",\n value: function subaccountId(val) {\n return this.set('SubaccountId', val);\n }\n }, {\n key: \"leg\",\n value: function leg() {\n var _this$legState = this.legState,\n Strike = _this$legState.Strike,\n Expiration = _this$legState.Expiration,\n SpreadRatio = _this$legState.SpreadRatio,\n Action = _this$legState.Action,\n PositionEffect = _this$legState.PositionEffect,\n AssetType = _this$legState.AssetType,\n OptionType = _this$legState.OptionType,\n SubaccountId = _this$legState.SubaccountId;\n return {\n Id: this.id,\n UnderlyingSymbol: this.rootSymbol,\n Expiration: Expiration,\n Strike: Strike,\n SpreadRatio: SpreadRatio,\n OptionType: OptionType,\n Action: Action,\n AssetType: AssetType,\n PositionEffect: PositionEffect,\n SubaccountId: SubaccountId\n };\n }\n }]);\n\n return LegBuilder;\n}();\nvar OrderBuilderNoSymbolError = {\n error: 'you must set order symbol before creating legs'\n};\nexport var OrderBuilder =\n/*#__PURE__*/\nfunction () {\n function OrderBuilder(ordDefaults) {\n _classCallCheck(this, OrderBuilder);\n\n this.orderState = {};\n this.dirty = {};\n this.order_defaults = ordDefaults;\n }\n\n _createClass(OrderBuilder, [{\n key: \"set\",\n value: function set(k, value) {\n this.dirty[k] = true;\n this.orderState = Object.assign({}, this.orderState, _defineProperty({}, k, value));\n return this;\n }\n }, {\n key: \"leg\",\n value: function leg(legBuilder) {\n var _this$orderState = this.orderState,\n symbol = _this$orderState.symbol,\n legs = _this$orderState.legs;\n\n if (this.orderState.symbol === undefined) {\n throw OrderBuilderNoSymbolError;\n }\n\n var existingLegs = legs || {};\n var legId = getNextLegId(existingLegs);\n this.orderState = Object.assign({}, this.orderState, {\n legs: Object.assign({}, existingLegs, _defineProperty({}, legId, legBuilder(new LegBuilder(symbol.rootSymbol, legId)).leg()))\n });\n return this;\n }\n }, {\n key: \"duration\",\n value: function duration(val) {\n return this.set('duration', val);\n }\n }, {\n key: \"strategy\",\n value: function strategy(_strategy) {\n var strategyName = isString(_strategy) ? _strategy : _strategy.info.Name;\n var updated = this.set('strategy', strategyName);\n var orderDefs = this.order_defaults;\n\n if (orderDefs && !this.dirty['quantity']) {\n return updated.set('quantity', getDefaultOrderQuantity(strategyName, orderDefs));\n }\n\n return updated;\n }\n }, {\n key: \"symbol\",\n value: function symbol(_symbol) {\n return this.set('symbol', _symbol);\n }\n }, {\n key: \"quantity\",\n value: function quantity(val) {\n return this.set('quantity', val);\n }\n }, {\n key: \"orderType\",\n value: function orderType(val) {\n return this.set('orderType', val);\n }\n }, {\n key: \"creditOrDebit\",\n value: function creditOrDebit(val) {\n return this.set('debitCredit', val);\n }\n }, {\n key: \"action\",\n value: function action(val) {\n return this.set('action', val);\n }\n }, {\n key: \"orderDefaults\",\n value: function orderDefaults(defaultValues) {\n this.order_defaults = defaultValues;\n return this;\n }\n }, {\n key: \"order\",\n value: function order() {\n return this.orderState;\n }\n }, {\n key: \"subaccountId\",\n value: function subaccountId(val) {\n return this.set('subaccountId', val);\n }\n }]);\n\n return OrderBuilder;\n}();","import { OrderStatuses } from '@tradingblock/types';\nexport var CancellableStatuses = [OrderStatuses.New, OrderStatuses.PartiallyFilled, OrderStatuses.Replaced, OrderStatuses.PendingCancel, OrderStatuses.PendingNew, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelRejected, OrderStatuses.ReplaceRejected];\nexport var ReplaceableStatuses = [OrderStatuses.New, OrderStatuses.Replaced, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.ReplaceRejected];\nexport var OrderFilledStatuses = [OrderStatuses.Filled, OrderStatuses.PartiallyFilled, OrderStatuses.PartiallyCancelled];\nexport var ExecutedStatuses = [OrderStatuses.Filled, OrderStatuses.PartiallyFilled];\nexport var OpenStatuses = [OrderStatuses.New, OrderStatuses.PendingNew, OrderStatuses.Replaced, OrderStatuses.PendingReplace, OrderStatuses.Saved, OrderStatuses.Initiated, OrderStatuses.ReplaceInitiated, OrderStatuses.CancelInitiated, OrderStatuses.CancelRejected, OrderStatuses.ReplaceRejected];\nexport var OrderStatusCategories = {\n Cancellable: CancellableStatuses,\n Replaceable: ReplaceableStatuses,\n Filled: OrderFilledStatuses,\n Executed: ExecutedStatuses,\n Open: OpenStatuses\n};","import { isStrategy } from '@tradingblock/types';\nimport { CallCalendar, PutCalendar } from '..';\nexport var isCalendar = function isCalendar(strategy) {\n return isStrategy([CallCalendar, PutCalendar], strategy);\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as tslib_1 from \"tslib\";\nimport dayjs from 'dayjs';\nimport { getBestPrice } from '../orders/orderPrice';\nimport { OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nexport var pnlByPrice = function pnlByPrice(_ref, priceBaseline, commission) {\n var Symbol = _ref.Symbol,\n AskPrice = _ref.AskPrice,\n BidPrice = _ref.BidPrice,\n LastOrClosePrice = _ref.LastOrClosePrice,\n PositionOnOpen = _ref.PositionOnOpen,\n Multiplier = _ref.Multiplier,\n isSettlementSet = _ref.isSettlementSet;\n var bestPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n isSettlementSet: isSettlementSet\n }); // const commissionValue = commission === undefined ? 0 : commission;\n\n var commissionValue = 0;\n var initialValue = priceBaseline * PositionOnOpen + commissionValue;\n var currentValue = bestPrice * PositionOnOpen;\n var pnl = (currentValue - initialValue) * Multiplier;\n\n if (_.includes(Symbol, 'HUT')) {\n console.log(\"\".concat(Symbol), {\n bestPrice: bestPrice,\n commissionValue: commissionValue,\n initialValue: initialValue,\n currentValue: currentValue,\n pnl: pnl,\n priceBaseline: priceBaseline,\n LastOrClosePrice: LastOrClosePrice,\n AskPrice: AskPrice,\n BidPrice: BidPrice,\n PositionOnOpen: PositionOnOpen,\n Multiplier: Multiplier,\n isSettlementSet: isSettlementSet\n });\n } // const pnl = currentValue - initialValue;\n\n\n return pnl;\n};\nexport var orderLegNetQuantityChange = function orderLegNetQuantityChange(_ref2) {\n var Action = _ref2.Action,\n LegFillQuantity = _ref2.LegFillQuantity;\n var isBuy = Action === OrderAction.Buy;\n var fillQuantity = _.isNumber(LegFillQuantity) ? LegFillQuantity : 0;\n var quantityBought = isBuy ? fillQuantity : 0;\n var quantitySold = !isBuy ? Math.abs(fillQuantity) : 0;\n return quantityBought - quantitySold;\n};\n\nvar getAvgPrice = function getAvgPrice(legs) {\n var totalQuantity = _(legs).map(function (l) {\n return l.LegFillQuantity || 0;\n }).sum();\n\n var avgPrice = _.reduce(legs, function (acc, l) {\n var avgPrice = l.AverageLegFillPrice || 0;\n var quantity = l.LegFillQuantity || 0;\n return acc + avgPrice * (quantity / totalQuantity);\n }, 0);\n\n var priceInfo = {\n total: totalQuantity,\n avgPrice: avgPrice\n };\n return priceInfo;\n};\n\nexport var orderLegTradingPnL = function orderLegTradingPnL(_a, legs) {\n var roundPrecision = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 4;\n\n var AskPrice = _a.AskPrice,\n BidPrice = _a.BidPrice,\n LastOrClosePrice = _a.LastOrClosePrice,\n ClosePrice = _a.ClosePrice,\n Multiplier = _a.Multiplier,\n IsSettlementSet = _a.IsSettlementSet,\n rest = tslib_1.__rest(_a, [\"AskPrice\", \"BidPrice\", \"LastOrClosePrice\", \"ClosePrice\", \"Multiplier\", \"IsSettlementSet\"]);\n\n var legGroups = _.reduce(legs, function (acc, leg) {\n var Action = leg.Action;\n var isBuy = Action === OrderAction.Buy;\n return {\n buys: isBuy ? [].concat(_toConsumableArray(acc.buys), [leg]) : acc.buys,\n sells: isBuy ? acc.sells : [].concat(_toConsumableArray(acc.sells), [leg])\n };\n }, {\n buys: [],\n sells: []\n });\n\n var sells = getAvgPrice(legGroups.sells);\n var buys = getAvgPrice(legGroups.buys); // const buyPrices: number[] = isBuy ? _.times(fillQuantity, () => AverageLegFillPrice || 0) : [];\n // const avgBoughtPrice = quantityBought > 0 ? _.sum(buyPrices) / quantityBought : 0;\n // const sellPrices: number[] = !isBuy ? _.times(fillQuantity, () => AverageLegFillPrice || 0) : [];\n // const avgSoldPrice = quantitySold > 0 ? _.sum(sellPrices) / quantitySold : 0;\n\n var lastPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n isSettlementSet: IsSettlementSet\n });\n var tradingPnLValue = (buys.total * (lastPrice - buys.avgPrice) - sells.total * (lastPrice - sells.avgPrice)) * Multiplier;\n return {\n pnl: _.round(tradingPnLValue, roundPrecision),\n sells: sells,\n buys: buys\n };\n};\nexport var PositionPnLInfo = function PositionPnLInfo(position) {\n var roundPrecision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;\n var DateOpened = position.DateOpened,\n OpenPrice = position.OpenPrice,\n ClosePrice = position.ClosePrice;\n var dailyPLPriceBaseline = dayjs(DateOpened).isSame(new Date(), 'date') ? OpenPrice : ClosePrice || 0;\n var isToday = dayjs(DateOpened).isSame(new Date(), 'date');\n\n var pnl = _.round(pnlByPrice(position, dailyPLPriceBaseline), roundPrecision);\n\n return {\n trading: isToday ? pnl : 0,\n position: isToday ? 0 : pnl,\n total: pnl\n };\n}; // export const ExistingPositionsPnL = () => {\n// const positionPnL = positionDailyPnL();\n// }\n// export const PositionPnL = () => {\n// const positionsTradedToday = (quantityBought * (lastPrice - avgBoughtPrice) - quantitySold * (lastPrice - avgSoldPrice)) * (isOption ? 100 : 1);\n// const positionsExistingBeforeToday = positionOnOpen * (lastPrice - closePrice) * (isOption ? 100 : 1);\n// const combined = tradingPnL + positionPnL;\n// return {\n// positionsTradedToday,\n// positionsExistingBeforeToday,\n// combined,\n// }\n// }","import { PutCalendar, CallCalendar, Straddle, CallButterfly, Strangle, PutButterfly, CallCondor, PutCondor, IronButterfly, IronCondor } from './strategies';\nimport { OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { isInfinity } from '..';\n\nvar getLoss = function getLoss(strategyName, _ref, quotes) {\n var price = _ref.price,\n Quantity = _ref.Quantity,\n Legs = _ref.Legs,\n action = _ref.action;\n var isBuy = action === OrderAction.Buy;\n\n var allStrikes = _(Legs).map(function (l) {\n return l.Strike;\n }).filter(function (s) {\n return s !== undefined;\n }).value();\n\n var Px = price;\n var Cx = 0;\n var multiplier = _.every(quotes, function (q) {\n return q.Multiplier === 1;\n }) ? 1 : 100;\n var Qty = Quantity * multiplier;\n var K1 = allStrikes[0];\n var K2 = allStrikes[1];\n\n switch (strategyName) {\n case 'Call':\n case 'Shares':\n case Strangle.info.Name:\n case Straddle.info.Name:\n {\n return isBuy ? Px + Cx : 'Infinity';\n }\n\n case 'Put':\n {\n return isBuy ? Px + Cx : Px - Qty * K1 - Cx;\n }\n\n case 'Covered Call':\n {\n return isBuy ? Px + Cx : -Qty * K1 + Px - Cx;\n }\n\n case 'Married Put':\n {\n return isBuy ? Qty * K1 - Px - Cx : 'Infinity';\n }\n\n case 'Call Vertical':\n case 'Put Vertical':\n case CallButterfly.info.Name:\n case PutButterfly.info.Name:\n case CallCondor.info.Name:\n case PutCondor.info.Name:\n case IronButterfly.info.Name:\n case IronCondor.info.Name:\n {\n return isBuy ? Px + Cx : -Qty * Math.abs(K1 - K2) + Px - Cx;\n }\n\n case PutCalendar.info.Name:\n {\n return isBuy ? -Qty * _.max([0, K2 - K1]) - Px - Cx : -Qty * _.max([0, K1 - K2]) + Px - Cx;\n }\n\n case CallCalendar.info.Name:\n {\n return isBuy ? -Qty * _.max([0, K1 - K2]) - Px - Cx : -Qty * _.max([0, K2 - K1]) + Px - Cx;\n }\n // case Collar.info.Name: {\n // return isBuy ? Qty * _.min([K1, K2]) - Px - Cx : -Qty * _.max([K1, K2]) + Px - Cx;\n // }\n\n default:\n {\n return 0;\n }\n }\n};\n\nvar absVal = function absVal(val) {\n return isInfinity(val) ? val : Math.abs(val);\n};\n\nvar getProfitValue = function getProfitValue(strategyName, _ref2, quotes) {\n var price = _ref2.price,\n Quantity = _ref2.Quantity,\n Legs = _ref2.Legs,\n action = _ref2.action,\n commission = _ref2.commission;\n var isBuy = action === OrderAction.Buy;\n\n var allStrikes = _(Legs).map(function (l) {\n return l.Strike;\n }).filter(function (s) {\n return s !== undefined && s !== null;\n }).value();\n\n var Px = price;\n var multiplier = _.every(quotes, function (q) {\n return q.Multiplier === 1;\n }) ? 1 : 100;\n var Qty = Quantity * multiplier;\n var K1 = allStrikes[0];\n var K2 = allStrikes[1];\n\n switch (strategyName) {\n case 'Call':\n case 'Shares':\n case Strangle.info.Name:\n case Straddle.info.Name:\n {\n return isBuy ? 'Infinity' : Px;\n }\n\n case 'Put':\n case 'Covered Call':\n {\n return isBuy ? Qty * K1 - Px : Px;\n }\n\n case 'Married Put':\n {\n return isBuy ? 'Infinity' : -1 * Qty * K1 + Px;\n }\n\n case 'Call Vertical':\n case 'Put Vertical':\n case CallButterfly.info.Name:\n case PutButterfly.info.Name:\n case CallCondor.info.Name:\n case PutCondor.info.Name:\n case IronButterfly.info.Name:\n case IronCondor.info.Name:\n {\n return isBuy ? Qty * Math.abs(K1 - K2) - Px : Px;\n }\n\n case PutCalendar.info.Name:\n {\n return isBuy ? Qty * _.max([0, K1 - K2]) + Px : Qty * _.max([0, K2 - K1]) - Px;\n }\n\n case CallCalendar.info.Name:\n {\n return isBuy ? Qty * _.max([0, K2 - K1]) + Px : Qty * _.max([0, K1 - K2]) - Px;\n }\n // case Collar.info.Name: {\n // return isBuy ? Qty * _.max([0, K1 - K2]) - Px - Cx : -Qty * _.min([K1, K2]) + Px - Cx;\n // }\n\n default:\n {\n return 0;\n }\n }\n};\n\nexport var getProfitLoss = function getProfitLoss(strategyName, order, quotes) {\n var profit = getProfitValue(strategyName, order, quotes);\n var loss = getLoss(strategyName, order, quotes);\n return {\n profit: absVal(profit),\n loss: absVal(loss)\n };\n};","import { TokenRequestUrl } from '../constants';\nimport CryptoJS from 'crypto-js';\n\nfunction base64url(source) {\n // Encode in classical base64\n var encodedSource = CryptoJS.enc.Base64.stringify(source); // Remove padding equal characters\n\n encodedSource = encodedSource.replace(/=+$/, ''); // Replace characters according to base64url specifications\n\n encodedSource = encodedSource.replace(/\\+/g, '-');\n encodedSource = encodedSource.replace(/\\//g, '_');\n return encodedSource;\n}\n\nfunction GenerateIV() {\n var date = new Date();\n var ivyear = date.getUTCFullYear().toString();\n var ivmonth = date.getUTCMonth() + 1 > 9 ? (date.getUTCMonth() + 1).toString() : '0' + (date.getUTCMonth() + 1);\n var ivday = date.getUTCDate() > 9 ? date.getUTCDate().toString() : '0' + date.getUTCDate();\n var ivstr = 'TBAPIENT' + ivyear + ivmonth + ivday;\n return ivstr;\n} //helper function for encrypt message\n\n\nfunction Encrypt(txtUserName, _key) {\n var key = CryptoJS.enc.Utf8.parse(_key);\n var iv = CryptoJS.enc.Utf8.parse(GenerateIV());\n var ciphertext = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(txtUserName), key, {\n keySize: 128,\n iv: iv,\n mode: CryptoJS.mode.CBC,\n padding: CryptoJS.pad.Pkcs7\n });\n var re = String(ciphertext.toString());\n re = re.replace(/=+$/, '');\n re = re.replace(/\\+/g, '-');\n re = re.replace(/\\//g, '_');\n return re;\n} //--------------------------------------------------------------------------------\n// STEP 1: generate JWT header this part should provide a static output as: \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9\"\n\n\nfunction generateHeader() {\n var header = {\n typ: 'JWT',\n alg: 'HS256'\n };\n var stringifiedHeader = CryptoJS.enc.Utf8.parse(JSON.stringify(header));\n var encodedHeader = base64url(stringifiedHeader);\n return encodedHeader;\n} //----------------------------------------------------\n//STEP 3: Generate Signature\n\n\nfunction generateSignature(_header, _payload, _apikey) {\n var toSign = _header + '.' + _payload;\n var signature = CryptoJS.HmacSHA256(toSign, _apikey);\n var encodedSignature = base64url(signature);\n return encodedSignature;\n} //------------------------------------------------------\n//STEP 2: generate Payload\n\n\nfunction generatePayload(_username, _password, _apikey, _bearer) {\n var user = {\n username: _username,\n password: _password\n }; //encode user\n\n var stringedUser = JSON.stringify(user); //encode user json and use AES to encrypt with api key.\n\n var ciphertext = Encrypt(stringedUser, _apikey);\n var date = new Date();\n var payload = {\n EndUser: ciphertext,\n Entity: _bearer,\n Timestamp: date\n };\n var stringifiedPayload = CryptoJS.enc.Utf8.parse(JSON.stringify(payload));\n var encodedPayload = base64url(stringifiedPayload);\n return encodedPayload;\n}\n\nfunction getTokenRequest(username, password, apikey, bearer) {\n var header = generateHeader();\n var payload = generatePayload(username, password, apikey, bearer);\n var signature = generateSignature(header, payload, apikey);\n var request = header + '.' + payload + '.' + signature;\n return request;\n}\n\nexport function GetToken(api) {\n return function (username, password, key, bearer) {\n var request = getTokenRequest(username, password, key, bearer);\n console.log('GetToken :: payload: ', request);\n return api.post(TokenRequestUrl, {\n JWS: request\n }).then(function (res) {\n if (res.responseCode !== 0) {\n console.log('GetToken Response', res);\n }\n\n return res;\n });\n };\n}","import { GetBalancesForAccountsURL, GetBalancesForWithdrawalURL, GetBalancesUrl } from '../constants';\nexport function GetAvailableFunds(api) {\n return function (accountId, subaccountId) {\n return api.authenticated().get(GetBalancesUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalances(api) {\n return function (accountId, subaccountId) {\n return api.authenticated().get(GetBalancesUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalancesForAccounts(api) {\n return function (items) {\n return api.authenticated().post(GetBalancesForAccountsURL, {\n items: items\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function GetBalancesForWithdrawal(api) {\n return function (accountId) {\n return api.authenticated().get(GetBalancesForWithdrawalURL(accountId), {}, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}","import { GetBarsUrl } from '../constants';\nimport { dateStringOrUndefined } from '../utilities';\nexport function GetBars(api) {\n return function (options) {\n var opts = Object.assign({}, options, {\n starttime: dateStringOrUndefined(options.starttime),\n endtime: dateStringOrUndefined(options.endtime)\n });\n return api.get(GetBarsUrl, opts);\n };\n}","import { MarketScheduleURL } from '../constants';\nexport function GetMarketSchedule(api) {\n return function () {\n return api.get(MarketScheduleURL, {});\n };\n}","import { GetQuoteUrl, GetQuoteDividendUrl, GetQuoteEarningsUrl } from '../constants';\nimport { GetQuoteExtendedUrl } from '../constants';\nimport _ from 'lodash';\nimport Axios from 'axios';\nexport function GetQuotes(api) {\n return function (symbol) {\n var symbs = _.isArray(symbol) ? symbol : [symbol];\n var cancelToken = Axios.CancelToken.source();\n return [api.get(GetQuoteUrl, {\n symbols: symbs.join(','),\n cancelToken: cancelToken.token\n }), cancelToken];\n };\n}\nexport function GetQuotesExtended(api) {\n return function (symbol) {\n return api.get(GetQuoteExtendedUrl, {\n symbol: symbol\n });\n };\n}\n\nfunction GetQuoteDividends(api) {\n return function (range, symbol) {\n return api.get(GetQuoteDividendUrl, {\n symbol: symbol,\n range: range\n });\n };\n}\n\nfunction GetEarnings(api) {\n return function (symbol, period) {\n return api.get(GetQuoteEarningsUrl, {\n symbol: symbol,\n period: period\n });\n };\n}\n\nexport function GetQuotesCharting(api) {\n return function (symbol) {\n var symbs = _.isArray(symbol) ? symbol : [symbol];\n return api.get(GetQuoteUrl, {\n symbols: symbs.join(',')\n });\n };\n}\nexport var quotes = function quotes(api) {\n return {\n get: GetQuotes(api),\n extended: GetQuotesExtended(api),\n dividends: GetQuoteDividends(api),\n earnings: GetEarnings(api),\n getChartingFeed: GetQuotesCharting(api)\n };\n};","import { GetSymbolsUrl } from '../constants';\nimport _ from 'lodash';\nexport function GetSymbols(api) {\n return function (query) {\n var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10;\n var querystringRequest = _.isString(query) ? {\n query: query,\n limit: limit\n } : query;\n return api.authenticated().get(GetSymbolsUrl, querystringRequest, {\n headers: {\n Accept: 'application/json'\n }\n }).then(function (res) {\n return res.payload || [];\n }).catch(function (reason) {\n console.error('Error trying to fetch symbols', reason);\n return [];\n });\n };\n}\nexport function Symbols(api) {\n return {\n search: function search(query) {\n var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10;\n var querystringRequest = _.isString(query) ? {\n query: query,\n limit: limit\n } : query;\n return api.authenticated().get(GetSymbolsUrl, querystringRequest, {\n headers: {\n Accept: 'application/json'\n }\n }).then(function (res) {\n return res.payload || [];\n }).catch(function (reason) {\n console.error('Error trying to fetch symbols', reason);\n return [];\n });\n },\n warnings: function warnings() {\n return api.authenticated().get('Symbol/WarningSymbols', {}, {\n headers: {\n Accept: 'application/json'\n }\n });\n }\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { AssetType } from '@tradingblock/types';\nimport { PositionsUrl } from '../constants';\nimport { deriveRootSymbol, deriveOptionExpirationType } from '../utilities/SymbolUtilities';\nexport var get = function get(api) {\n return function (accountId, subaccountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var res, payload, responseCode, data;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(PositionsUrl, {\n accountId: accountId,\n subaccountId: subaccountId\n });\n\n case 2:\n res = _context.sent;\n payload = res.payload, responseCode = res.responseCode;\n data = _.map(payload, function (position) {\n var isOption = position.AssetType === AssetType.Option;\n var PositionId = \"\".concat(position.Symbol, \"-\").concat(dayjs(position.DateOpened).valueOf(), \"-\").concat(position.OrderId);\n var isMutualFund = position.AssetType === AssetType.MutualFund || position.AssetType === AssetType.MoneyMarket;\n var res = Object.assign({}, position, {\n PositionId: PositionId,\n Symbol: isMutualFund ? ':' + position.Symbol : position.Symbol,\n UnderlyingSymbol: isMutualFund ? ':' + position.UnderlyingSymbol : position.UnderlyingSymbol,\n meta: {\n OptionExpirationType: isOption ? deriveOptionExpirationType(position.Symbol, position.UnderlyingSymbol) : undefined,\n RootSymbol: deriveRootSymbol(position.Symbol),\n Description: position.Description\n }\n });\n return res;\n });\n return _context.abrupt(\"return\", Object.assign({}, res, {\n payload: data,\n responseCode: responseCode\n }));\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { GetExpirationsUrl, GetStrikesUrl, GetChainUrl } from '../constants';\nimport { formatExpiration } from '../utilities/DateUtilities';\nimport { DateFormats } from '..';\nexport var getExpirations = function getExpirations(api) {\n return function (symbol) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var res, expDates;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(GetExpirationsUrl, {\n underlyingSymbol: symbol,\n isExpanded: 'true'\n });\n\n case 2:\n res = _context.sent;\n expDates = _.map(res.payload ? res.payload : [], function (d) {\n return Object.assign({}, d, formatExpiration(d));\n });\n return _context.abrupt(\"return\", {\n responseCode: res.responseCode,\n payload: expDates\n });\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\nexport var getStrikes = function getStrikes(api) {\n return function (symbol, expiration, time, strikeMin, strikeMax) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n var expirations;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.get(GetStrikesUrl, {\n underlyingSymbol: symbol,\n expiration: dayjs(expiration).format(DateFormats.ApiFormat),\n strikeMin: strikeMin,\n strikeMax: strikeMax,\n time: time\n });\n\n case 2:\n expirations = _context2.sent;\n return _context2.abrupt(\"return\", expirations);\n\n case 4:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n };\n};\nexport var getChain = function getChain(api) {\n return function (symbol, expiration, strikeCount, fetchGreeks) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n var underlyingSymbol, strikeParams, chainData, chainDataResults;\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // if strike count == 0, fetch all strikes\n underlyingSymbol = symbol;\n strikeParams = strikeCount === 0 ? {} : {\n strikesAroundMarket: strikeCount / 2\n };\n _context3.next = 4;\n return api.get(GetChainUrl, Object.assign({\n underlyingSymbol: underlyingSymbol,\n expiration: dayjs(expiration).format(DateFormats.ApiFormat),\n // pass date part only without time\n fetchGreeks: fetchGreeks\n }, strikeParams));\n\n case 4:\n chainData = _context3.sent;\n chainDataResults = _(chainData.payload).reduce(function (pairs, expirations, opsymbol) {\n var expirationStrikes = _(expirations).flatMap(function (exp) {\n return _.flatMap(exp);\n }).map(function (e) {\n return Object.assign({}, e, {\n symbol: opsymbol,\n underlyingSymbol: underlyingSymbol\n });\n }).value();\n\n return _.union(pairs, expirationStrikes);\n }, []);\n return _context3.abrupt(\"return\", {\n data: _.sortBy(chainDataResults, function (op) {\n return op.Strike;\n }),\n responseCode: chainData.responseCode\n });\n\n case 7:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n };\n};\nexport var options = function options(api) {\n return {\n expirations: getExpirations(api),\n strikes: getStrikes(api),\n optionchain: getChain(api)\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { HistoryGetHistoryUrl } from '../constants';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n\nvar get = function get(api) {\n return function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var apiResponse, sanitizedHistoryItems;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.get(HistoryGetHistoryUrl, request);\n\n case 2:\n apiResponse = _context.sent;\n sanitizedHistoryItems = _.map(apiResponse.payload.Items, function (item) {\n var recordDate = dayjs(item.recordDate).toDate();\n var amount = Number(item.amount);\n var commission = Number(item.commission);\n var orderAction = String(item.orderAction);\n var fillPrice = Number(item.fillPrice);\n var description = String(item.description);\n var symbol = String(item.symbol);\n var fillQuantity = Number(item.fillQuantity);\n return Object.assign({}, item, {\n description: description,\n symbol: symbol,\n orderAction: orderAction,\n fillQuantity: fillQuantity,\n fillPrice: fillPrice,\n commission: commission,\n amount: amount,\n recordDate: recordDate\n });\n });\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n Payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n Items: sanitizedHistoryItems\n }) : undefined\n }));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\n\nexport var history = {\n get: get\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport _ from 'lodash';\nimport { PlaceOrderUrl, GetOrdersUrl, CancelOrderUrl, ChangeOrderUrl } from '../constants';\nimport { transformForApi, transformFromApi, transformOrderForApi } from '..';\nimport dayjs from 'dayjs';\nvar httpOptions = {\n headers: {\n Accept: 'application/json'\n }\n};\n\nvar _create = function create(api) {\n return function (orderDesc) {\n var order = transformForApi(orderDesc);\n return api.authenticated().post(PlaceOrderUrl, order, httpOptions);\n };\n};\n\nexport { _create as create };\n\nvar _change = function change(api) {\n return function (orderDesc) {\n var order = transformOrderForApi(orderDesc);\n return api.authenticated().post(ChangeOrderUrl, order, httpOptions);\n };\n};\n\nexport { _change as change };\n\nvar _cancel = function cancel(api) {\n return function (orderId, accountId) {\n // might need to pass subaccountId, clientRefId params at some point: https://ny4staging.tradingblock.com/RestHub/swagger-ui#/Orders/CancelOrder\n var data = {\n orderId: orderId,\n accountId: accountId\n };\n return api.authenticated().post(CancelOrderUrl, data, httpOptions);\n };\n};\n\nexport { _cancel as cancel };\nexport var getOrders = function getOrders(api) {\n return function (options) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var request, optionValues, apiResponse;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // remove blockId from request & format dates dayjs(options.dateFrom).utc().toDate()\n request = _.omit(options, ['blockId']);\n optionValues = Object.assign({}, request, {\n dateFrom: request.dateFrom ? dayjs(request.dateFrom).utc().toDate() : undefined,\n dateTo: request.dateTo ? dayjs(request.dateTo).utc().toDate() : undefined\n });\n _context.next = 4;\n return api.authenticated().get(GetOrdersUrl, optionValues, httpOptions);\n\n case 4:\n apiResponse = _context.sent;\n return _context.abrupt(\"return\", Object.assign({}, apiResponse, {\n payload: apiResponse.payload ? Object.assign({}, apiResponse.payload, {\n items: _.map(apiResponse.payload.items, transformFromApi)\n }) : undefined\n }));\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n };\n};\nexport function order(api) {\n var _this2 = this;\n\n return function (accountId, subaccountId) {\n return {\n change: function change(req) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return _change(api)(req);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n create: function create(orderDesc) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", _create(api)(Object.assign({}, orderDesc, {\n AccountId: accountId,\n kind: 'order'\n })));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n get: function get(request) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n return _context4.abrupt(\"return\", getOrders(api)(Object.assign({}, request, {\n accountId: accountId,\n subaccountId: subaccountId\n })));\n\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n cancel: function cancel(orderId) {\n return tslib_1.__awaiter(_this2, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", _cancel(api)(orderId, accountId));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n }\n };\n };\n}","import dayjs from 'dayjs';\nimport { CreateUserUrl, CreateAccountUrl, UserRequirementsUrl, DocumentsUploadUrl, GetHeardAboutUrl, GetApplicationInvestigationStatusUrl, UploadApplicationDocumentUrl, UploadInvestigationDocumentUrl, DuplicateAccountCheckUrl } from '../constants';\nimport { DateFormats } from '..';\nimport { RequestHeaders } from './utilities';\nexport function Application(api) {\n return {\n getUserRequirements: function getUserRequirements() {\n return api.get(UserRequirementsUrl, undefined, RequestHeaders);\n },\n getHeardAbout: function getHeardAbout(siteConfigId) {\n return api.get(GetHeardAboutUrl(siteConfigId), {}, RequestHeaders);\n },\n getApplicationStatus: function getApplicationStatus(accountId) {\n return api.authenticated().get(GetApplicationInvestigationStatusUrl(accountId), undefined, RequestHeaders);\n },\n createUser: function createUser(data) {\n return api.post(CreateUserUrl, data, RequestHeaders);\n },\n uploadDocument: function uploadDocument(file, tag) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var data = new FormData();\n data.append('metaData', JSON.stringify({\n tag: tag,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n data.append('file', file); // NOTE: when posting multipart/form-data, not passing Accept: 'application/json' header (see: https://stackoverflow.com/a/35206069)\n\n return api.authenticated().post(DocumentsUploadUrl, data).then(function (res) {\n return Object.assign({}, res, {\n payload: {\n id: res.payload,\n filename: file.name\n }\n });\n });\n },\n uploadApplicationDocument: function uploadApplicationDocument(file, accountId, accountHolderId, documentType) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var uploadFormData = new FormData();\n uploadFormData.append('metaData', JSON.stringify({\n DocumentName: documentType,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n uploadFormData.append('file', file);\n return api.authenticated().post(UploadApplicationDocumentUrl(accountId, accountHolderId), uploadFormData);\n },\n uploadInvestigationDocument: function uploadInvestigationDocument(file, accountId, investigationId, documentType) {\n var TakenOn = dayjs(file.lastModified).utc().format(DateFormats.DateTimeApiFormat);\n var uploadFormData = new FormData();\n uploadFormData.append('metaData', JSON.stringify({\n DocumentName: documentType,\n ImageName: file.name,\n TakenOn: TakenOn\n }));\n uploadFormData.append('file', file);\n return api.authenticated().post(UploadInvestigationDocumentUrl(accountId, investigationId), uploadFormData);\n },\n createAccount: function createAccount(data) {\n return api.authenticated().post(CreateAccountUrl, data, RequestHeaders);\n },\n duplicateAccountCheck: function duplicateAccountCheck(data) {\n return api.authenticated().post(DuplicateAccountCheckUrl, data, RequestHeaders);\n }\n };\n}","import { RequestHeaders } from './utilities';\nexport function UserCommands(api) {\n return {\n profile: function profile() {\n return api.authenticated().get(\"User/GetProfile\", {}, RequestHeaders);\n }\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetReleaseNotesUrl, GetNewsFeedUrl, AlertMessagesURL, GetAlertMessageTemplatesURL, UpdateAlertsURL, CreateReleaseNotesUrl, UpdateReleaseNotesUrl } from '../constants';\nimport _ from 'lodash';\nexport function GetNewsFeed(api) {\n return function (symbols, updatedSince, channels) {\n var symbs = _.isArray(symbols) ? symbols : [symbols];\n return api.get(GetNewsFeedUrl, {\n symbols: symbs.join(','),\n updatedSince: updatedSince,\n channels: channels\n });\n };\n}\nexport var create = function create(api) {\n return function (releaseNote) {\n return api.authenticated().post(CreateReleaseNotesUrl, releaseNote, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n};\nexport var info = function info(api) {\n return {\n get: function get(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n var page, pageSize, searchRequest;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n page = request.page ? request.page : 0;\n pageSize = request.pageSize ? request.pageSize : 5;\n searchRequest = Object.assign({}, request, {\n page: page,\n pageSize: pageSize\n });\n _context.next = 5;\n return api.get(GetReleaseNotesUrl, searchRequest);\n\n case 5:\n return _context.abrupt(\"return\", _context.sent);\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n createAlert: function createAlert(alert) {\n return api.authenticated().post(AlertMessagesURL, alert);\n },\n getActiveAlerts: function getActiveAlerts(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.get(AlertMessagesURL, request);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n getAlertTemplates: function getAlertTemplates(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return api.get(GetAlertMessageTemplatesURL, request);\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n updateAlert: function updateAlert(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return api.authenticated().put(UpdateAlertsURL(request.id, request.active), request);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n news: GetNewsFeed(api),\n createReleaseNote: create(api),\n updateReleaseNote: function updateReleaseNote(releaseNote) {\n return api.authenticated().put(UpdateReleaseNotesUrl(releaseNote.id), {\n releaseDate: releaseNote.releaseDate,\n summary: releaseNote.summary,\n restrictedToUserLevel: releaseNote.restrictedToUserLevel,\n type: releaseNote.type\n });\n }\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\n\nvar _this = this;\n\nimport * as tslib_1 from \"tslib\";\nimport { GetAccountManagementDetailsUrl, GetPendingUserMarketDataEntitlementsUrl, GetUserMarketDataEntitlementsUrl, SubmitMktDataUserProfileReviewUrl } from '../constants';\nimport { RequestHeaders } from './utilities';\nexport var Entitlements = function Entitlements(api) {\n return {\n getPendingUserMarketDataEntitlements: function getPendingUserMarketDataEntitlements(request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.authenticated().get(GetPendingUserMarketDataEntitlementsUrl, request);\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n getAccountDetails: function getAccountDetails(accountId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return api.authenticated().get(GetAccountManagementDetailsUrl, accountId, RequestHeaders);\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n submitMktDataUserProfileReview: function submitMktDataUserProfileReview(data) {\n return api.authenticated().post(SubmitMktDataUserProfileReviewUrl, data, RequestHeaders);\n },\n getUserMarketDataEntitlements: function getUserMarketDataEntitlements() {\n return api.authenticated().get(GetUserMarketDataEntitlementsUrl, {}, RequestHeaders);\n }\n };\n};","import { DownloadsDailyConfirm, DownloadsDailyConfirms, DownloadsMonthlyStatement, DownloadsMonthlyStatements, DownloadsTaxDocument, DownloadsTaxDocuments } from '..';\nimport dayjs from 'dayjs';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function Downloads(api) {\n return {\n getDailyConfirms: function getDailyConfirms(accountId, startDate, endDate) {\n var startDateString = dayjs(startDate).format('YYYY-MM-DD');\n var endDateString = dayjs(endDate).format('YYYY-MM-DD');\n return api.authenticated().get(DownloadsDailyConfirms(accountId), {\n startDate: startDateString,\n endDate: endDateString\n }, RequestHeaders);\n },\n getDailyConfirm: function getDailyConfirm(accountId, date) {\n var requestedDate = dayjs(date).format('YYYY-MM-DD');\n return api.authenticated().getBinary(DownloadsDailyConfirm(accountId), {\n date: requestedDate\n }, RequestHeaders);\n },\n getMonthlyStatements: function getMonthlyStatements(accountId, startDate, endDate) {\n var startDateString = dayjs(startDate).format('YYYY-MM-DD');\n var endDateString = dayjs(endDate).format('YYYY-MM-DD');\n return api.authenticated().get(DownloadsMonthlyStatements(accountId), {\n startDate: startDateString,\n endDate: endDateString\n }, RequestHeaders);\n },\n getMonthlyStatement: function getMonthlyStatement(accountId, date) {\n var requestedDate = dayjs(date).format('YYYY-MM-DD');\n return api.authenticated().getBinary(DownloadsMonthlyStatement(accountId), {\n date: requestedDate\n }, RequestHeaders);\n },\n getTaxDocuments: function getTaxDocuments(accountId, form, taxYear) {\n return api.authenticated().get(DownloadsTaxDocuments(accountId, form), {\n taxYear: taxYear\n }, RequestHeaders);\n },\n getTaxDocument: function getTaxDocument(accountId, form, date) {\n return api.authenticated().getBinary(DownloadsTaxDocument(accountId, form), {\n date: date\n }, RequestHeaders);\n }\n };\n}","import { HistoryGetBalancesEndpoint, HistoryGetHistoryBalances } from '../constants';\nexport function GetBalanceHistory(api) {\n return function (accountId) {\n return api.authenticated().get(HistoryGetHistoryBalances, {\n accountId: accountId\n }, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}\nexport function HistoryGetBalances(api) {\n return function (payload) {\n return api.authenticated().get(HistoryGetBalancesEndpoint, payload, {\n headers: {\n Accept: 'application/json'\n }\n });\n };\n}","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport * as tslib_1 from \"tslib\";\nimport { NoPassLoginStartUrl, NoPassLoginFinishUrl, NoPassListDevicesURL, NoPassDeleteDeviceURL } from '../constants';\nvar RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport function nopass(api) {\n var _this = this;\n\n return {\n loginStart: function loginStart(username) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return api.post(\"\".concat(NoPassLoginStartUrl, \"?username=\").concat(username), {}, RequestHeaders);\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n loginFinish: function loginFinish(authId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", api.get(NoPassLoginFinishUrl, {\n authid: authId\n }, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n getDevices: function getDevices() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", api.authenticated().get(NoPassListDevicesURL, {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n deleteDevice: function deleteDevice(deviceId) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n return _context4.abrupt(\"return\", api.authenticated().post(NoPassDeleteDeviceURL(deviceId), {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n },\n getAuthHistory: function getAuthHistory() {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", api.authenticated().get(NoPassListDevicesURL, {}, RequestHeaders));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n }\n };\n}","var RequestHeaders = {\n headers: {\n Accept: 'application/json'\n }\n};\nexport var GET_SUBACCOUNT_URL = 'Accounts/Subaccounts/GetSubaccounts';\nexport var CREATE_SUBACCOUNT_URL = 'Accounts/Subaccounts/CreateSubaccount';\nexport var UPDATE_SUBACCOUNT_URL = 'Accounts/Subaccounts/UpdateSubaccount';\nexport var TRANSFER_SUBACCOUNT_POSITIONS = 'Accounts/Subaccounts/TransferPositions';\nexport var UPDATE_DISTRIBUTION_RATIO = 'Accounts/Subaccounts/UpdateDistributionRatio';\nexport var DELETE_SUBACCOUNT_URL = 'Accounts/Subaccounts/DeleteSubaccount';\nexport var subaccounts = function subaccounts(api) {\n return {\n //returns object array\n getSubaccounts: function getSubaccounts(payload) {\n return api.authenticated().get(GET_SUBACCOUNT_URL, payload, RequestHeaders);\n },\n createSubaccount: function createSubaccount(createSubaccountPayload) {\n return api.authenticated().post(CREATE_SUBACCOUNT_URL, createSubaccountPayload, RequestHeaders);\n },\n updateSubaccount: function updateSubaccount(updateSubaccountPayload) {\n return api.authenticated().put(UPDATE_SUBACCOUNT_URL, updateSubaccountPayload, RequestHeaders);\n },\n transferPositions: function transferPositions(transferPositionsPayload) {\n return api.authenticated().put(TRANSFER_SUBACCOUNT_POSITIONS, transferPositionsPayload, RequestHeaders);\n },\n updateDistributionRatio: function updateDistributionRatio(distributionRatioPayload) {\n return api.authenticated().put(UPDATE_DISTRIBUTION_RATIO, distributionRatioPayload, RequestHeaders);\n },\n deleteSubaccount: function deleteSubaccount(deleteSubaccountPayload) {\n return api.authenticated().delete(DELETE_SUBACCOUNT_URL, deleteSubaccountPayload, RequestHeaders);\n }\n };\n};","import _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport * as tslib_1 from \"tslib\";\nimport { ApiClient, UiApiClient } from './ApiClient';\nimport { GetToken } from './commands/getToken';\nimport { accounts } from './commands/account';\nimport { GetAvailableFunds, GetBalances, GetBalancesForAccounts, GetBalancesForWithdrawal } from './commands/getBalances';\nimport { GetBars } from './commands/getBars';\nimport { GetMarketSchedule } from './commands/marketSchedule';\nimport { quotes } from './commands/quote';\nimport { GetSymbols, Symbols } from './commands/symbols';\nimport * as positions from './commands/positions';\nimport { options } from './commands/options';\nimport { history } from './commands/history';\nimport { ACH, Transfers, cashieringSearch, cashieringDetails, SecurityQuestion, cashieringDocuments, TransferInstructions } from './commands/cashiering';\nimport { pnlHistory } from './commands/getPnLItem';\nimport { order } from './commands/orderApi';\nimport { Application } from './commands/application';\nimport { UserCommands } from './commands/userCommands';\nimport { auth } from './commands/auth';\nimport { info } from './commands/information';\nimport { AccManagement } from './commands/accountManagement';\nimport { Entitlements } from './commands/entitlements';\nimport { Downloads } from './commands/downloads';\nimport { GetBalanceHistory, HistoryGetBalances } from './commands/historyGetBalance';\nimport { nopass } from './commands/nopass';\nimport { subaccounts } from './commands/subaccounts';\nexport var TradingBlockAccountApi = function TradingBlockAccountApi(api, accountId, subaccountId) {\n var _this = this;\n\n _classCallCheck(this, TradingBlockAccountApi);\n\n this.order = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee() {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", order(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n };\n\n this.availableFunds = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2() {\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", GetAvailableFunds(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n };\n\n this.balances = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3() {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", GetBalances(this.api)(this.accountId, this.subaccountId));\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n };\n\n this.positions = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4() {\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return positions.get(this.api)(this.accountId, this.subaccountId);\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this);\n }));\n };\n\n this.history = function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee5() {\n return _regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", history.get(this.api)(Object.assign({}, request, {\n accountId: this.accountId\n })));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n };\n\n this.pnl = function (request) {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee6() {\n return _regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n return _context6.abrupt(\"return\", pnlHistory.get(this.api)(Object.assign({}, request, {\n accountId: this.accountId\n })));\n\n case 1:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this);\n }));\n };\n\n this.availableWithdrawalFunds = function () {\n return tslib_1.__awaiter(_this, void 0, void 0,\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee7() {\n return _regeneratorRuntime.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n return _context7.abrupt(\"return\", GetBalancesForWithdrawal(this.api)(this.accountId));\n\n case 1:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7, this);\n }));\n };\n\n this.accountId = accountId;\n this.subaccountId = subaccountId;\n this.api = api;\n};\nexport function TradingBlockApi(api) {\n return {\n auth: auth(api),\n accounts: accounts(api),\n accountManagement: AccManagement(api),\n balances: {\n get: GetBalances(api),\n getForAccounts: GetBalancesForAccounts(api),\n getForWithdrawals: GetBalancesForWithdrawal(api)\n },\n client: api,\n application: Application(api),\n getToken: GetToken(api),\n getBars: GetBars(api),\n getMarketSchedule: GetMarketSchedule(api),\n getSymbols: GetSymbols(api),\n cashiering: {\n ach: ACH(api),\n balances: GetBalances(api),\n securityQuestion: SecurityQuestion(api),\n transfers: Transfers(api),\n transferInstructions: TransferInstructions(api),\n search: cashieringSearch(api).search,\n details: cashieringDetails(api),\n documents: cashieringDocuments(api)\n },\n history: {\n getBalanceHistory: GetBalanceHistory(api),\n getBalances: HistoryGetBalances(api)\n },\n downloads: Downloads(api),\n entitlements: Entitlements(api),\n information: info(api),\n nopass: nopass(api),\n order: order(api),\n options: options(api),\n quotes: quotes(api),\n symbols: Symbols(api),\n user: UserCommands(api),\n subaccounts: subaccounts(api)\n };\n}\nvar tradingblockApis = {};\nexport function ApiFactory(rootUrl, authKey, onResponse, onResponseError) {\n if (tradingblockApis[rootUrl + authKey] !== undefined) {\n return tradingblockApis[rootUrl + authKey];\n }\n\n var tb_api = TradingBlockApi(new ApiClient(rootUrl, authKey).withResponseHandler({\n onResponse: onResponse,\n onResponseError: onResponseError\n }));\n tradingblockApis[rootUrl + authKey] = tb_api;\n return tb_api;\n}\nexport function AccountApiFactory(rootUrl, authKey, accountId, subaccountId) {\n return new TradingBlockAccountApi(new ApiClient(rootUrl, authKey), accountId, subaccountId);\n}\nexport function UiApiFactory(rootUrl, authKey) {\n return new UiApiClient(rootUrl, authKey);\n}","export var Periods = ['M1', 'M5', 'M15', 'M30', 'H1', 'Day'];","import _ from 'lodash';\nexport var stringifyObject = function stringifyObject(obj) {\n var cache = [];\n var res = JSON.stringify(obj, function (key, value) {\n if (typeof value === 'object' && value !== null) {\n if (cache.indexOf(value) !== -1) {\n // Circular reference found, discard key\n return;\n } // Store value in our collection\n\n\n cache.push(value);\n }\n\n return value;\n });\n cache = null;\n return res;\n};\nexport var GetUrlParams = function GetUrlParams(href) {\n return _.chain(href).split('?').nth(1).split('&').map(function (v) {\n return _.split(v, '=', 2);\n }).fromPairs().value();\n};","import _ from 'lodash';\nvar MoneyBlockSiteGrp = 'mb';\n\nvar isMoneyBlockUrl = function isMoneyBlockUrl(href) {\n console.log('isMoneyBlockUrl', process.env.TB_SITE_GROUP);\n return process.env.TB_SITE_GROUP === MoneyBlockSiteGrp;\n};\n\nexport var isMoneyBlockAccount = function isMoneyBlockAccount(accountNumber) {\n // MoneyBlock account numbers start with \"3OD\"\n return _.take(accountNumber, 3).join('') === '3OD';\n};\n\nvar isMoneyBlockSite = function isMoneyBlockSite(href, accountNumber) {\n return isMoneyBlockUrl(href) && !accountNumber || isMoneyBlockAccount(accountNumber);\n};\n\nexport var GetSiteName = function GetSiteName(href, accountNumber) {\n if (isMoneyBlockSite(href, accountNumber)) {\n return 'MoneyBlock';\n }\n\n return 'TradingBlock';\n};\nexport var GetSiteGrp = function GetSiteGrp(href, accountNumber) {\n if (isMoneyBlockSite(href, accountNumber)) {\n return MoneyBlockSiteGrp;\n }\n\n return '';\n};\nexport var getSiteLogo = function getSiteLogo(href, type, accountNumber) {\n // for logo mark, site branding not needed\n if (type === 'mark') {\n return \"logo-\".concat(type);\n }\n\n var logo = \"logo-\".concat(GetSiteName(href, accountNumber).toLowerCase());\n\n if (type) {\n return \"\".concat(logo, \"-\").concat(type);\n }\n\n return logo;\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\n// TODO: Remove middleInitial from the types once backend has updated the database retroactively\nexport var getRequestedParticipantsDocuments = function getRequestedParticipantsDocuments(investigations, applications) {\n var participants = []; // Create a union on CIP and Application investigation data structure\n\n var applicationRequestedDocuments = [].concat(_toConsumableArray(investigations ? investigations : []), _toConsumableArray(applications ? applications : []));\n applicationRequestedDocuments.forEach(function (requestedDocumentDetailEntry) {\n // Check if we have an entry for the participant of the applications\n // We need to do this since accounts can have multiple people like\n // Joint accounts.\n var participantIndex = participants.findIndex(function (participant) {\n return requestedDocumentDetailEntry.firstName === participant.firstName && requestedDocumentDetailEntry.lastName === participant.lastName;\n });\n\n if (participantIndex === -1) {\n // If we do not have an entry for the participant base on the first name\n // and last name. Then, we create one.\n participants.push({\n firstName: requestedDocumentDetailEntry.firstName ? requestedDocumentDetailEntry.firstName : '',\n middleInitial: requestedDocumentDetailEntry.middleInitial ? requestedDocumentDetailEntry.middleInitial : '',\n middleName: requestedDocumentDetailEntry.middleName ? requestedDocumentDetailEntry.middleName : '',\n lastName: requestedDocumentDetailEntry.lastName ? requestedDocumentDetailEntry.lastName : '',\n suffix: requestedDocumentDetailEntry.suffix ? requestedDocumentDetailEntry.suffix : '',\n accountHolderId: requestedDocumentDetailEntry.accountHolderId,\n investigationId: requestedDocumentDetailEntry.investigationId,\n requestedCatagories: {\n application: [],\n investigations: []\n },\n uploadedDocuments: []\n }); // set the participantIndex to the new entry\n\n participantIndex = participants.length - 1;\n } else {\n if (!participants[participantIndex].accountHolderId && requestedDocumentDetailEntry.accountHolderId) {\n participants[participantIndex].accountHolderId = requestedDocumentDetailEntry.accountHolderId;\n }\n\n if (participants[participantIndex].investigationId && requestedDocumentDetailEntry.investigationId) {\n participants[participantIndex].investigationId = requestedDocumentDetailEntry.investigationId;\n }\n } //Union the requested document categories\n\n\n var categories = [].concat(_toConsumableArray(requestedDocumentDetailEntry.appCategories ? requestedDocumentDetailEntry.appCategories : []), _toConsumableArray(requestedDocumentDetailEntry.cipCategories ? requestedDocumentDetailEntry.cipCategories : [])); // Uniquely read all documentNames that have been uploaded\n\n var uploadedDocumentsNames = _toConsumableArray(new Set(requestedDocumentDetailEntry.uploadedDocuments ? requestedDocumentDetailEntry.uploadedDocuments.map(function (document) {\n return document.documentName;\n }) : []));\n\n var uploadedDocuments = _toConsumableArray(new Set(requestedDocumentDetailEntry.uploadedDocuments ? requestedDocumentDetailEntry.uploadedDocuments : []));\n\n if (uploadedDocuments.length > 0) {\n participants[participantIndex].uploadedDocuments = uploadedDocuments;\n } // If current category is accepted and the\n\n\n var activeDocumentCategories = categories.filter(function (category) {\n return category.state !== 'Accepted' && category.state !== 'Pending' && !uploadedDocumentsNames.map(function (uploadedDocumentName) {\n return category.requestedDocuments.includes(uploadedDocumentName);\n }).includes(true);\n }); // If we have an investigationId then we need to set the investigations\n // otherwise it is an application request.\n\n if (requestedDocumentDetailEntry.investigationId) {\n participants[participantIndex].requestedCatagories.investigations = activeDocumentCategories;\n } else {\n participants[participantIndex].requestedCatagories.application = activeDocumentCategories;\n }\n });\n return participants;\n};","import * as ApiClient from './ApiClient';\nexport * from './blocks';\nexport * from './commands/getPnLItem';\nexport * from './commands/account';\nexport * from './commands/auth';\nexport * from './config';\nexport * from './constants';\nexport * from './feed/WebsocketFeedParser';\nexport * from './jsonEncode';\nexport * from './logger';\nexport * from './orders';\nexport * from './performance';\nexport * from './strategies/strategies';\nexport * from './strategies/profitloss';\nexport * from './strategies/validation';\nexport * from './strategies/CustomStrategy';\nexport * from './TradingBlockApi';\nexport * from './types';\nexport * from './utilities';\nexport * from './utilities/DateUtilities';\nexport * from './utilities/JwtUtilities';\nexport * from './utilities/OrderUtilities';\nexport * from './utilities/SymbolUtilities';\nexport * from './utilities/ObjectUtilities';\nexport * from './utilities/positionUtilities';\nexport * from './utilities/QuoteUtilities';\nexport * from './utilities/SiteUtilities';\nexport * from './utilities/DocumentUtilities';\nexport * from './performance';\nexport default {\n ApiClient: ApiClient\n};","import { AssetType, PositionPerformance, Position, SymbolTypes, Fetchable } from '@tradingblock/types';\nimport {\n SymbolQuoteAndChangeData,\n SymbolQuote,\n PartialQuote,\n toAssetSymbol,\n getBestPrice,\n AggregatedPositionDTO,\n AssetTypeToSymbolType,\n} from '@tradingblock/api';\n\nimport _ from 'lodash';\nimport { sumNumbers } from '../../../utilities/data';\nimport { changeCalculation } from '../../../utilities/position';\n\nexport const QuoteDataToPartialQuote = (\n quoteData: Fetchable<\n SymbolQuoteAndChangeData & {\n isLoaded: boolean;\n }\n >[]\n) => {\n return _.map(\n quoteData,\n ({\n LastTradePrice,\n IsSettlementSet,\n ClosePrice,\n ClosePriceTMinus2,\n BestPriceCalculated,\n ChangePercentage,\n LastOrClosePrice,\n NetChange,\n Open,\n Symbol,\n UnderlyingSymbol,\n AskPrice,\n BidPrice,\n Multiplier,\n Description,\n }: SymbolQuote): PartialQuote => ({\n IsSettlementSet,\n ClosePrice,\n ClosePriceTMinus2,\n BestPriceCalculated,\n LastTradePrice,\n ChangePercentage,\n LastOrClosePrice,\n NetChange,\n Open,\n Symbol,\n UnderlyingSymbol,\n AskPrice,\n BidPrice,\n Multiplier,\n Description,\n })\n );\n};\n\nexport const positionToPerformance = (\n position: Pick<\n AggregatedPositionDTO,\n | 'OpenPrice'\n | 'DateOpened'\n | 'OpenQuantity'\n | 'ValueBasis'\n | 'CostBasis'\n | 'Symbol'\n | 'UnderlyingSymbol'\n | 'AssetType'\n | 'OptionMultiplier'\n | 'Description'\n | 'Commission'\n | 'DailyPnL'\n | 'OverallPnl'\n | 'UseCalculatedPnL'\n >,\n feedQuote: PartialQuote\n): PositionPerformance => {\n /* \n TODO: Review bug causing white screens for account switcher. Default values of 0 are being used for now but this is a workaround.\n Errors being seen through recorder scripts show that values AskPrice, BidPrice, etc. not being set are leading to white screens.\n */\n if (!feedQuote) {\n return {\n ask: 0,\n bid: 0,\n change: 0,\n changePercent: 0,\n cost: position.CostBasis * position.OptionMultiplier,\n lastTradePrice: 0,\n bestTradePrice: 0,\n value: position.ValueBasis,\n quantity: position.OpenQuantity,\n symbol: toAssetSymbol(position.Symbol, position.AssetType, AssetTypeToSymbolType(position.AssetType), {\n rootSymbol: position.Symbol,\n underlyingSymbol: position.UnderlyingSymbol,\n }),\n underlyingSymbol: position.UnderlyingSymbol,\n gain: 0,\n close: 0,\n description: position.Description,\n prevClose: 0,\n IsSettlementSet: false,\n ClosePriceTMinus2: 0,\n dailyPnl: position.DailyPnL,\n overallPnl: position.OverallPnl,\n useCalculatedPnL: position.UseCalculatedPnL,\n };\n }\n\n const {\n AskPrice,\n BidPrice,\n LastOrClosePrice,\n LastTradePrice,\n ClosePrice,\n IsSettlementSet,\n ClosePriceTMinus2,\n NetChange,\n ChangePercentage,\n } = feedQuote;\n\n let close_or_settled = IsSettlementSet ? ClosePriceTMinus2 : ClosePrice;\n\n const bestTradePrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice || 0,\n bid: BidPrice || 0,\n defaultValue: 'avgBidAsk',\n isSettlementSet: IsSettlementSet,\n });\n\n const currentValue = bestTradePrice * position.ValueBasis;\n\n const { change, changePercent } = changeCalculation(\n LastTradePrice,\n ClosePrice,\n ClosePriceTMinus2,\n BidPrice,\n AskPrice,\n position.Symbol,\n IsSettlementSet\n ) || {\n change: undefined,\n changePercent: undefined,\n };\n\n const positionPerformance: PositionPerformance = {\n ask: AskPrice,\n bid: BidPrice,\n change: NetChange,\n changePercent: ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n cost: position.CostBasis,\n lastTradePrice: position.AssetType === AssetType.MoneyMarket ? 1 : LastTradePrice, //TODO: Need to pull this from quote, but right now the feed system is not supporting moneymarkets\n bestTradePrice: position.AssetType === AssetType.MoneyMarket ? 1 : bestTradePrice,\n value: currentValue,\n quantity: position.OpenQuantity,\n symbol: toAssetSymbol(position.Symbol, position.AssetType, AssetTypeToSymbolType(position.AssetType), {\n rootSymbol: position.Symbol,\n underlyingSymbol: position.UnderlyingSymbol,\n }),\n underlyingSymbol: position.UnderlyingSymbol,\n gain: currentValue - position.CostBasis,\n close: position.AssetType === AssetType.MoneyMarket ? 1 : ClosePrice,\n description: position.Description,\n prevClose: IsSettlementSet ? ClosePriceTMinus2 : ClosePrice,\n IsSettlementSet: IsSettlementSet,\n ClosePriceTMinus2: ClosePriceTMinus2,\n dailyPnl: position.DailyPnL,\n overallPnl: position.OverallPnl,\n useCalculatedPnL: position.UseCalculatedPnL,\n };\n return positionPerformance;\n};\n\nexport const aggregatedSymbolPosition = (\n positions: Position[],\n quotes: PartialQuote[],\n underlyingSymbol: string\n): PositionPerformance => {\n const positionInfo = _.reduce(\n positions,\n (res: PositionPerformance[], pos: Position) => {\n // Replace the fund symbol with the underlying symbol by removing \";\"\n const quote = _.find(quotes, q => q.Symbol === pos.Symbol.replace(';', ''));\n if (!quote) {\n return res;\n }\n const aggregated = {\n ...pos,\n ValueBasis: pos.OpenQuantity * pos.OptionMultiplier,\n };\n return [...res, positionToPerformance(aggregated, quote)];\n },\n []\n );\n const aggregatedSymbolQuote = _.find(quotes, q => q.Symbol === underlyingSymbol);\n const sharesPositions = _.filter(\n positions,\n p =>\n p.AssetType === AssetType.Equity || p.AssetType === AssetType.MoneyMarket || p.AssetType === AssetType.MutualFund\n );\n\n const aggregatedDailyPnL = sumNumbers(positionInfo.map(pi => pi.dailyPnl));\n const aggregatedOverallPnL = sumNumbers(positionInfo.map(pi => pi.overallPnl));\n\n return {\n symbol: toAssetSymbol(\n underlyingSymbol,\n sharesPositions.length > 0 ? sharesPositions[0].AssetType : positions[0].AssetType,\n SymbolTypes.Equity,\n {}\n ),\n underlyingSymbol: underlyingSymbol,\n cost: sumNumbers(positionInfo.map(pi => pi.cost)),\n value: sumNumbers(positionInfo.map(pi => pi.value)),\n quantity: sumNumbers(positionInfo.map(pi => pi.quantity)),\n options: _.filter(positions, p => p.AssetType === AssetType.Option).length,\n shares: sharesPositions.length,\n sharesSum: _.isEmpty(sharesPositions) ? undefined : sumNumbers(_.map(sharesPositions, p => p.OpenQuantity)),\n\n gain: sumNumbers(_.map(positionInfo, pi => pi.gain)),\n ask: aggregatedSymbolQuote ? aggregatedSymbolQuote.AskPrice : 0,\n bid: aggregatedSymbolQuote ? aggregatedSymbolQuote.BidPrice : 0,\n lastTradePrice: aggregatedSymbolQuote ? aggregatedSymbolQuote.LastTradePrice : 0,\n bestTradePrice: aggregatedSymbolQuote ? aggregatedSymbolQuote.LastOrClosePrice : 0,\n change: aggregatedSymbolQuote ? aggregatedSymbolQuote.NetChange : 0,\n changePercent: aggregatedSymbolQuote ? aggregatedSymbolQuote.ChangePercentage : 0,\n close: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePrice : 0,\n prevClose: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePriceTMinus2 : 0,\n IsSettlementSet: aggregatedSymbolQuote ? aggregatedSymbolQuote.IsSettlementSet : false,\n description: aggregatedSymbolQuote ? aggregatedSymbolQuote.Description : '',\n ClosePriceTMinus2: aggregatedSymbolQuote ? aggregatedSymbolQuote.ClosePriceTMinus2 : 0,\n dailyPnl: aggregatedDailyPnL ? aggregatedDailyPnL : 0,\n overallPnl: aggregatedOverallPnL ? aggregatedOverallPnL : 0,\n useCalculatedPnL: positions[0].UseCalculatedPnL,\n };\n};\n","import { ActionType, createStandardAction } from 'typesafe-actions';\nimport {\n ApiResponse,\n ClientEntity,\n GenericError,\n SearchAccountsRequest,\n SearchAccountsResponse,\n} from '@tradingblock/types';\nimport { buildGenericRequestReceiveActions } from '../../actionUtilities';\nimport { AdminIdRequest } from '.';\n\nconst ADMIN_CLIENT_REQUEST = '@admin/clients/get/REQUEST';\nconst ADMIN_CLIENT_RECEIVE = '@admin/clients/get/RECEIVE';\nconst ADMIN_CLIENT_ERROR = '@admin/clients/get/ERROR';\n\nconst ADMIN_CLIENT_SEARCH_SET_SEARCH = '@admin/clients/search/ui/SET_SEARCH';\nconst ADMIN_CLIENT_SEARCH_SET_PAGE = '@admin/clients/search/ui/SET_PAGE';\nconst ADMIN_CLIENT_SEARCH_SET_PAGE_SIZE = '@admin/clients/search/ui/SET_PAGE_SIZE';\nconst ADMIN_CLIENT_SEARCH_SET_SORTBY = '@admin/clients/search/ui/SET_SORTBY';\n\nconst [clientRequest, clientReceive, clientError] = buildGenericRequestReceiveActions({\n REQUEST: ADMIN_CLIENT_REQUEST,\n RECEIVE: ADMIN_CLIENT_RECEIVE,\n ERROR: ADMIN_CLIENT_ERROR,\n})<\n SearchAccountsRequest,\n { response: ApiResponse; request: SearchAccountsRequest },\n GenericError\n>();\n\nexport const AdminClientActions = {\n clientRequest,\n clientReceive,\n clientError,\n setSearch: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE)>(),\n setPage: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE)>(),\n setPageSize: createStandardAction(ADMIN_CLIENT_SEARCH_SET_PAGE_SIZE)>(),\n setSortBy: createStandardAction(ADMIN_CLIENT_SEARCH_SET_SORTBY)<\n Pick\n >(),\n};\n\nexport type AdminClientAction = ActionType;\n","import React, { useContext, useMemo } from 'react';\nimport _ from 'lodash';\nimport {\n FeedQuote,\n IFeedSpread,\n ConnectionStatusType,\n FeedOrderUpdate,\n FeedSettlement,\n FeedSpread,\n} from '@tradingblock/types';\nimport { FeedProviderStatus } from '../../types';\n\nexport interface TradingblockWebsocketState {\n status?: FeedProviderStatus;\n spreads: { [key: string]: FeedSpread };\n quotes: { [key: string]: FeedQuote };\n quoteQueue: FeedQuote[];\n spreadQueue: FeedSpread[];\n orders: {\n [orderId: string]: { status: FeedOrderUpdate; history: FeedOrderUpdate[] };\n };\n lastMessage: string;\n}\n\n/// Redux state object that we use to create data for FeedDataState\n// List req = new List();\n\n// Spread spread = new Spread();\n// spread.Type = SpreadType.Vertical;\n// spread.Legs = new Leg[2];\n\n// Leg leg = new Leg();\n// leg.Symbol = \".IWM 190215C134000\";\n// leg.AssetType = enumAssetType.Option;\n\n// spread.Legs[0] = leg;\n\n// leg = new Leg();\n// leg.Symbol = \".IWM 190215C139000\";\n// leg.AssetType = enumAssetType.Option;\n\n// spread.Legs[1] = leg;\n\n// req.Add(spread);\n\nexport interface FeedState {\n quotes: string[];\n spreads: IFeedSpread[];\n connectionStatus?: ConnectionStatusType;\n}\n\nexport type FeedActions =\n | {\n type: 'setStatus';\n payload: FeedProviderStatus;\n }\n | {\n type: 'setQuote';\n payload: { quote: FeedQuote; raw: string };\n }\n | {\n type: 'setSpread';\n payload: { spread: FeedSpread; raw: string };\n }\n | {\n type: 'dropFromQueue';\n payload: { count: number };\n }\n | {\n type: 'dropFromSpreadQueue';\n payload: { count: number };\n }\n | {\n type: 'receivedOrderUpdate';\n payload: { order: FeedOrderUpdate; raw: string };\n }\n | {\n type: 'setSettlement';\n payload: { settlement: FeedSettlement; raw: string };\n }\n\nexport const FeedReducer = (state: TradingblockWebsocketState, action: FeedActions): TradingblockWebsocketState => {\n switch (action.type) {\n case 'setStatus':\n return {\n ...state,\n status: action.payload,\n };\n case 'dropFromQueue': {\n return {\n ...state,\n quoteQueue: _.drop(state.quoteQueue, action.payload.count),\n };\n }\n case 'dropFromSpreadQueue': {\n return {\n ...state,\n spreadQueue: _.drop(state.spreadQueue, action.payload.count),\n };\n }\n case 'setQuote': {\n const { quote, raw } = action.payload;\n const existingQuote = state.quotes[quote.Symbol] || {};\n const combinedQuoteValue = _.mergeWith({}, existingQuote, quote, (a, b) =>\n _.isNil(b) || _.isNaN(b) ? a : undefined\n );\n return {\n ...state,\n quotes: {\n ...state.quotes,\n [quote.Symbol]: combinedQuoteValue,\n },\n quoteQueue: [...state.quoteQueue, combinedQuoteValue],\n lastMessage: raw,\n };\n }\n case 'setSpread': {\n const { spread, raw } = action.payload;\n const existingSpread = state.spreads[spread.Symbol] || {};\n const combinedSpreadValue = _.mergeWith({}, existingSpread, spread, (a, b) =>\n _.isNil(b) || _.isNaN(b) ? a : undefined\n );\n return {\n ...state,\n spreads: {\n ...state.spreads,\n [spread.Symbol]: combinedSpreadValue,\n },\n spreadQueue: [...state.spreadQueue, combinedSpreadValue],\n lastMessage: raw,\n };\n }\n case 'setSettlement': {\n const { settlement, raw } = action.payload;\n const existingQuote = state.quotes[settlement.Symbol] || {};\n const combinedQuoteValue = _.mergeWith({}, existingQuote, settlement, (a, b) =>\n _.isNil(b) || _.isNaN(b) ? a : undefined\n );\n // Set the quotes Last Trade Price to be from the settlement close price sent over\n combinedQuoteValue.LastTradePrice = settlement.ClosePrice;\n return {\n ...state,\n quotes: {\n ...state.quotes,\n [settlement.Symbol]: combinedQuoteValue,\n },\n quoteQueue: [...state.quoteQueue, combinedQuoteValue],\n lastMessage: raw,\n };\n }\n case 'receivedOrderUpdate': {\n const { order, raw } = action.payload;\n const { OrderId } = order;\n const existing = state.orders[OrderId] || { status: order, history: [] };\n return {\n ...state,\n orders: {\n ...state.orders,\n [OrderId]: {\n ...existing,\n status: order,\n history: [...existing.history, order],\n },\n },\n lastMessage: raw,\n };\n }\n\n default:\n return state;\n }\n};\n\nexport const FeedInitialState: TradingblockWebsocketState = {\n quoteQueue: [],\n spreadQueue: [],\n spreads: {},\n quotes: {},\n orders: {},\n lastMessage: '',\n};\n\nexport const FeedActionContext = React.createContext>(() => {});\nexport const FeedStateContext = React.createContext(FeedInitialState);\nexport const FeedSendContext = React.createContext<{\n send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;\n}>({ send: () => {} });\n\nexport const getFeedActions = (dispatch: React.Dispatch) => {\n const setStatus = (status: FeedProviderStatus) => dispatch({ type: 'setStatus', payload: status });\n return {\n setStatus,\n onQuote: (quote: FeedQuote, raw: string) => dispatch({ type: 'setQuote', payload: { quote, raw } }),\n onSpread: (spread: FeedSpread, raw: string) => dispatch({ type: 'setSpread', payload: { spread, raw } }),\n onOrderUpdate: (order: FeedOrderUpdate, raw: string) =>\n dispatch({ type: 'receivedOrderUpdate', payload: { order, raw } }),\n onSettlement: (settlement: FeedSettlement, raw: string) =>\n dispatch({ type: 'setSettlement', payload: { settlement, raw } }),\n dropFromQueue: (count: number) => dispatch({ type: 'dropFromQueue', payload: { count } }),\n dropFromSpreadQueue: (count: number) => dispatch({ type: 'dropFromSpreadQueue', payload: { count } }),\n };\n};\n\nexport const useFeedActions = () => {\n const dispatch = useContext(FeedActionContext);\n return useMemo(() => getFeedActions(dispatch), [dispatch]);\n};\n","import _ from 'lodash';\nimport { DataFeedSubscription, QuoteFeedType, SpreadFeedType, OrderUpdateFeedType } from '@tradingblock/types';\nimport { isOCCSymbol, toPrefixedOccSymbol } from '@tradingblock/api';\n\nexport const DATA_FEED_PREFIX = 'tradingblockfeed';\n\nfunction getSubscriptionData(s: DataFeedSubscription) {\n switch (s.kind) {\n case 'Quote': {\n const allSymbols = _.map(s.symbols, sym => (isOCCSymbol(sym) ? toPrefixedOccSymbol(sym) : sym)).join(',');\n return s.symbols.length > 0 ? `${QuoteFeedType}=${allSymbols}` : '';\n }\n case 'Spread':\n return s && s.spreadDefinition && s.spreadDefinition.length > 0\n ? `${SpreadFeedType}=${JSON.stringify(s.spreadDefinition)}`\n : '';\n case 'OrderUpdate':\n return `${OrderUpdateFeedType}=1`;\n }\n}\n\nexport const getQuoteSubscription = (\n apiToken: string,\n accountId: string | number,\n subs: DataFeedSubscription[],\n unsubscribe?: boolean\n) => {\n const headerValues = [`0=${apiToken}`, `1=${accountId}`, unsubscribe ? '9=0' : '9=1'].filter(v => v !== undefined);\n const orderedSubscriptions = _.orderBy(subs, s => s)\n .filter(ss =>\n ss.kind === 'Quote' ? ss.symbols.length > 0 : ss.kind === 'Spread' ? ss.spreadDefinition.length > 0 : true\n )\n .map(ss => getSubscriptionData(ss));\n if (apiToken && subs && orderedSubscriptions.length > 0) {\n const subscriptString = _.union(headerValues, orderedSubscriptions).join('|');\n return subscriptString;\n }\n return undefined;\n};\nexport const getOrderUpdateSubscription = (apiToken: string, accountId: string | number, unsubscribe?: boolean) => {\n const value = unsubscribe === true ? 0 : 1;\n return `0=${apiToken}|1=${accountId}|13=${value}`;\n};\nexport const getCashieringUpdateSubscriptionCmd = (\n apiToken: string,\n accountId: number | string,\n unsubscribe?: boolean\n) => `0=${apiToken}|1=${accountId}|15=${unsubscribe ? 2 : 1}`;\n\n/*\n\n 0 = 1 (Success)\n 1 = 1 (i.e. single leg quote. any instrument)\n 2 = QuoteTime\n 3 = Symbol\n 4 = LastTradePrice\n 5 = BidPrice\n 6 = AskPrice\n 7 = NetChange\n 8 = High\n 9 = Low\n 10 = Volume\n 11 = Change Percentage\n\nexample:\n\n 0=0|1=1|2=07/24/2019 18:35:38|3=TSLA|4=240.3|5=240.3|6=240.59|7=-19.87|8=266.07|9=258.1601|10=10494992|11=-7.64\n\n*/\n\nexport const tryParseMessage = (message: string) => {};\n\n// const parser = (value: string) => {\n// const vals = value.split('|').map(vv => vv.replace(/\\d+=/, ''));\n// if (vals.length < 12) {\n// console.warn('quote string from feed has less fields than expected', value);\n// }\n// const str = (ind: number) => vals[ind];\n// const int = (ind: number) => parseInt(str(ind));\n// const float = (ind: number) => parseFloat(str(ind));\n// const success = (ind: number) => (int(ind) === 0 ? true : false);\n// const mtype = (typeVal: number): FeedMessageType => (typeVal === 0 ? 'HeartBeat' : typeVal === 1 ? 'Quote' : typeVal === 2 ? 'Spread' : typeVal === 3 ? 'OrderUpdate' : undefined);\n// const result = {\n// success: success(0),\n// type: mtype(1),\n// };\n// return {\n// str,\n// int,\n// float,\n// success,\n// mtype,\n// result,\n// };\n// };\n\n// export const parseQuote = (quote: string): FeedData => {\n// const { str, float, result } = parser(quote);\n// return {\n// ...result,\n// QuoteTime: str(2),\n// Symbol: str(3),\n// LastTradePrice: float(4),\n// BidPrice: float(5),\n// AskPrice: float(6),\n// NetChange: float(7),\n// High: float(8),\n// Low: float(9),\n// Volume: float(10),\n// ChangePercentage: float(11),\n// raw: quote,\n// };\n// };\n","import { useContext, useCallback } from 'react';\nimport _ from 'lodash';\nimport { DataFeedSubscription } from '@tradingblock/types';\nimport { useLog } from '@tradingblock/components';\nimport { FeedSendContext } from './FeedState';\nimport { getQuoteSubscription, getOrderUpdateSubscription, getCashieringUpdateSubscriptionCmd } from './DataFeed';\n\nconst getSymbols = (sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const subscription = _.isArray(sub) ? sub : [sub];\n return _.flatMap(subscription, s => (s.kind === 'Quote' ? s.symbols : []));\n};\n\nexport function useFeedActions(apiToken: string) {\n const log = useLog('DataFeed');\n const { send } = useContext(FeedSendContext);\n const trySend = useCallback(\n (cmd: string | undefined) => {\n try {\n if (cmd) {\n send(cmd);\n return true;\n }\n } catch (ex) {\n console.warn('useFeedActions :: Caught error trying to send feed cmd \"', cmd, '\": ', ex);\n // throw ex;\n }\n return false;\n },\n [send]\n );\n const subscribeQuote = useCallback(\n (accountId: string | number, sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const subscription = _.isArray(sub) ? sub : [sub];\n const cmd = getQuoteSubscription(apiToken, accountId, subscription);\n log.extend('subscribe')(`%o`, { symbols: getSymbols(sub), message: cmd });\n return trySend(cmd);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [trySend, apiToken]\n );\n const unsubscribeQuote = useCallback(\n (accountId: string | number, sub: DataFeedSubscription | DataFeedSubscription[]) => {\n const cmd = getQuoteSubscription(apiToken, accountId, _.isArray(sub) ? sub : [sub], true);\n log.extend('unsubscribe')(`%o`, { symbols: getSymbols(sub), message: cmd });\n return trySend(cmd);\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [trySend, apiToken]\n );\n const subscribeOrderUpdates = useCallback(\n (accountId: string | number) => {\n const cmd = getOrderUpdateSubscription(apiToken, accountId);\n return trySend(cmd);\n },\n [trySend, apiToken]\n );\n const unsubscribeOrderUpdates = useCallback(\n (accountId: string | number) => {\n const cmd = getOrderUpdateSubscription(apiToken, accountId, true);\n return trySend(cmd);\n },\n [trySend, apiToken]\n );\n const subscribeToCashieringUpdates = useCallback(\n (accountId: number | string) => trySend(getCashieringUpdateSubscriptionCmd(apiToken, accountId)),\n [trySend, apiToken]\n );\n const unsubscribeFromCashieringUpdates = useCallback(\n (accountId: string | number) => trySend(getCashieringUpdateSubscriptionCmd(apiToken, accountId, true)),\n [trySend, apiToken]\n );\n return {\n subscribeQuote,\n unsubscribeQuote,\n subscribeOrderUpdates,\n unsubscribeOrderUpdates,\n unsubscribeFromCashieringUpdates,\n subscribeToCashieringUpdates,\n };\n}\n","import constate from 'constate';\nimport { useState } from 'react';\n\nexport const useSubscribedSymbolsContext = constate(() => {\n const [subscribedQuotes, setSubscribedQuotes] = useState([]);\n\n return [subscribedQuotes, setSubscribedQuotes] as [string[], typeof setSubscribedQuotes];\n});\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useMemo } from 'react';\nimport _ from 'lodash';\nimport { IFeedSpread, DataFeedSubscription } from '@tradingblock/types';\nimport { useLog, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useStateSelector, blocksSelectors } from '../global/dataSelectors';\nimport { useFeedActions } from './useFeedActions';\nimport { useSubscribedSymbolsContext } from './context/DataFeedSymbolsContext';\n\nexport const getFeedSubscription = ({ quotes, spread }: { quotes?: string | string[]; spread?: IFeedSpread }) => {\n let feedValues: DataFeedSubscription[] = [];\n if (quotes) {\n const quoteValues = _.isArray(quotes) ? quotes : [quotes];\n feedValues = [...feedValues, { kind: 'Quote', symbols: quoteValues }];\n }\n if (spread) {\n feedValues = [...feedValues, { kind: 'Spread', spreadDefinition: [spread] }];\n }\n return feedValues;\n};\n\nconst log = useLog('DataFeedInitializer');\nexport const DataFeedInitializer: React.FC<{ apiToken: string; accountId: number; authToken: string }> = ({\n apiToken,\n accountId,\n}) => {\n // const [subscribedQuotes, setSubscribedQuotes] = useState([]);\n const [subscribedQuotes, setSubscribedQuotes] = useSubscribedSymbolsContext();\n\n const { subscribeQuote, unsubscribeQuote, subscribeOrderUpdates, unsubscribeOrderUpdates } = useFeedActions(apiToken);\n const quotes = useStateSelector(blocksSelectors.allBlockQuotes);\n const feedProviderStatus = useStateSelector(s => s.feedProvider.status);\n const selectedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n useWhyDidYouUpdate('DataFeedInitializer', { log, subscribedQuotes, apiToken, accountId, quotes, feedProviderStatus });\n\n const quotesToAdd = useMemo(() => {\n log('quotes %o', { subscribedQuotes, incoming: quotes });\n return _.uniq(_.difference(quotes || [], subscribedQuotes || []) || []);\n }, [subscribedQuotes, quotes, log]);\n\n const quotesToRemove = useMemo(() => {\n return _.difference(subscribedQuotes || [], quotes || []) || [];\n }, [subscribedQuotes, quotes]);\n\n useEffect(() => {\n if (feedProviderStatus && feedProviderStatus === 'open') {\n subscribeOrderUpdates(accountId);\n if (subscribedQuotes && subscribedQuotes.length > 0) {\n subscribeQuote(accountId, getFeedSubscription({ quotes: subscribedQuotes || [] }));\n }\n }\n }, [feedProviderStatus]);\n\n useEffect(() => {\n if (feedProviderStatus && feedProviderStatus === 'open') {\n if (selectedAccountId) {\n console.log('selected linked account', selectedAccountId);\n subscribeOrderUpdates(selectedAccountId);\n }\n }\n }, [selectedAccountId]);\n\n useEffect(() => {\n const shouldAdd = quotesToAdd && quotesToAdd.length > 0;\n const shouldRemove = quotesToRemove && quotesToRemove.length > 0;\n let updatedSubscribedQuotes = subscribedQuotes;\n if (shouldAdd) {\n //const subscribeResult = true;\n //***UNCOMMENT THIS ONCE QUOTE SUBSCRIBE/UNSUBSCRIBE IS DEPLOYED****\n const subscribeResult = subscribeQuote(accountId, getFeedSubscription({ quotes: quotesToAdd || [] }));\n\n if (subscribeResult) {\n updatedSubscribedQuotes = _.uniq([...updatedSubscribedQuotes, ...quotesToAdd]);\n log('subscribed to quotes %o', quotesToAdd);\n } else {\n log('failed to subscribe to quotes %o', quotesToAdd);\n }\n }\n if (shouldRemove) {\n //const removeResult = true;\n const removeResult = unsubscribeQuote(accountId, getFeedSubscription({ quotes: quotesToRemove || [] }));\n if (removeResult) {\n updatedSubscribedQuotes = _.filter(updatedSubscribedQuotes, q => {\n return !quotesToRemove.includes(q);\n });\n\n log('unsubscribed from quotes %o', quotesToRemove);\n } else {\n log('failed to unsubscribe from quotes %o', quotesToRemove);\n }\n }\n if (shouldRemove || shouldAdd) {\n //***REMOVE THIS ONCE QUOTE SUBSCRIBE/UNSUBSCRIBE IS DEPLOYED****\n //const result = subscribe(accountId, getFeedSubscription({ quotes: updatedSubscribedQuotes || [] }));\n //log('subscribed to quotes %o', result);\n\n setSubscribedQuotes(updatedSubscribedQuotes);\n }\n }, [quotesToAdd, subscribedQuotes, subscribeQuote, accountId, quotesToRemove, log, unsubscribeQuote]);\n\n return <>;\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useMemo, useState, useRef } from 'react';\nimport _ from 'lodash';\nimport { useStateSelector, blocksSelectors } from '../global/dataSelectors';\nimport { useLog } from '@tradingblock/components';\nimport { useDispatcher } from '../global/hooks';\nimport { RequestDebounceMS } from '../../constants';\nimport { QuoteDataActions } from '../global/actions/QuoteActions';\n\nconst log = useLog('QuoteRequestHandler');\nexport const QuoteRequestInitializer: React.FunctionComponent<{\n apiToken: string;\n accountId: number;\n authToken: string;\n}> = ({ apiToken, accountId }) => {\n const { dispatch } = useDispatcher();\n\n const quotes = useStateSelector(blocksSelectors.allBlockQuotes);\n\n useEffect(() => {\n if (quotes && quotes.length > 0) {\n dispatch(QuoteDataActions.requestQuote({ symbol: [...new Set(quotes)] }));\n }\n }, [quotes, accountId, dispatch]);\n\n return <>;\n};\n","import React, { useEffect, useRef } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { LifecycleActions, UIActions } from './global/actions';\nimport { useStateSelector, AuthenticationInfoSelector, account } from './global/dataSelectors';\nimport { DataFeedInitializer } from './feed/DataFeedInitializer';\nimport { useDispatcher } from './global/hooks';\nimport { QuoteRequestInitializer } from './quotes/QuoteRequestHandler';\nimport { AccountActions } from './global/actions/AccountActions';\nimport { UserRole } from '@tradingblock/types';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { MarketScheduleState } from './global/state';\nimport _ from 'lodash';\n\nexport const DataInitializer: React.FC<{}> = () => {\n const { isAuthenticated, apiToken, token, accountId } = useStateSelector(AuthenticationInfoSelector);\n const dispatch = useDispatch();\n const { dispatcher } = useDispatcher();\n const accountRoles = useStateSelector(account.userRoles);\n const isIRA = useStateSelector(s => s.account.isIRA);\n const isUGMA = useStateSelector(s => s.account.isUGMA);\n const isPartnership = useStateSelector(s => s.account.isPartnership);\n const marketSchedule = useStateSelector(s => s.ui.marketSchedule);\n const currentTimeout = useRef(null);\n const currentTargetTime = useRef(null);\n const prevMarketSchedule = useRef(null);\n\n useEffect(() => {\n if (isAuthenticated) {\n dispatch(AccountActions.loadUserData({ accountId }));\n dispatch(LifecycleActions.loadInitialData());\n }\n }, [dispatch, isAuthenticated, accountId]);\n\n useEffect(() => {\n if (isAuthenticated && accountId) {\n if (accountRoles !== undefined) {\n if (accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n dispatch(UIActions.requestMarketSchedule());\n runEvery30Minutes();\n }\n // dispatcher.balances.request();\n }\n }, [dispatcher, isAuthenticated, accountRoles]);\n\n function runEvery30Minutes() {\n setTimeout(() => {\n dispatch(UIActions.requestMarketSchedule());\n runEvery30Minutes();\n }, 1000 * 60 * 30);\n }\n\n useEffect(() => {\n if (marketSchedule.market && marketSchedule.indexMarket && !_.isEqual(prevMarketSchedule.current, marketSchedule)) {\n let checkDates: Dayjs[] = [];\n if (marketSchedule.market.nextClose) {\n checkDates.push(marketSchedule.market.nextClose);\n } else if (marketSchedule.market.nextOpen) {\n checkDates.push(marketSchedule.market.nextOpen);\n }\n\n if (marketSchedule.indexMarket.nextClose) {\n checkDates.push(marketSchedule.indexMarket.nextClose);\n }\n\n let targetTime: Dayjs | null = null;\n\n checkDates.forEach((date: Dayjs) => {\n if (targetTime) targetTime = date.isBefore(targetTime) ? date : targetTime;\n else targetTime = date;\n });\n\n if (targetTime) {\n const now = dayjs();\n const target = dayjs(targetTime);\n\n // Calculate the delay in milliseconds for the new timeout\n const newDelay = target.diff(now);\n\n if (newDelay <= 0) {\n return;\n }\n\n // If there's an existing timeout, compare the delays\n if (currentTimeout.current && currentTargetTime.current) {\n const existingDelay = currentTargetTime.current.diff(now);\n\n if (newDelay >= existingDelay || currentTargetTime.current.isSame(targetTime)) {\n return; // Do not schedule a new timeout\n }\n\n // Clear the existing timeout if the new one is closer\n clearTimeout(currentTimeout.current as NodeJS.Timeout);\n }\n\n // Schedule the new timeout\n currentTimeout.current = setTimeout(() => {\n dispatch(UIActions.requestMarketSchedule());\n currentTimeout.current = null; // Reset after execution\n currentTargetTime.current = null;\n }, newDelay + 300); // adding more delay to allow the request to update the market schedule time to be fired right after close/open\n\n currentTargetTime.current = target;\n }\n }\n }, [marketSchedule]);\n\n useEffect(() => {\n prevMarketSchedule.current = marketSchedule;\n }, [marketSchedule]);\n\n return (\n <>\n {apiToken && isAuthenticated && token && account && accountId && (\n <>\n \n \n \n )}\n \n );\n};\n","import _ from 'lodash';\nimport { IStorageEngine, CreateDashboardPath, StorageDashboardPath, StorageDashboardsPath, DashboardInfo, CreateDashboardRequest } from '@tradingblock/types';\n\nexport const trySaveDashboards = async (storage: IStorageEngine, dashboards: DashboardInfo[]) => {\n try {\n return storage.save(StorageDashboardsPath, dashboards).then(res => (_.isArray(res) ? res : []));\n } catch (ex) {\n console.error('trySaveDashboards', ex);\n return Promise.resolve([]);\n }\n};\n\nexport const tryCreateDashboard = async (storage: IStorageEngine, createDashboard: CreateDashboardRequest) => {\n try {\n return storage.save(CreateDashboardPath, createDashboard);\n } catch (ex) {\n console.error('tryCreateDashboards', ex);\n return Promise.resolve(undefined);\n }\n};\n\nexport const tryCreateEmptyDashboard = async (storage: IStorageEngine, dashboard: DashboardInfo) => {\n try {\n await storage.save(StorageDashboardPath, dashboard);\n return dashboard;\n } catch (ex) {\n console.error('tryCreateEmptyDashboard', ex);\n return Promise.resolve(undefined);\n }\n};\n","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { useMemo } from 'react';\n\nconst ActivityActionTypes = {\n setTimeframe: 'setTimeframe',\n toggleActivityPopover: 'toggleActivityPopover',\n};\nexport const Actions = {\n setTimeframe: createStandardAction(ActivityActionTypes.setTimeframe)<{ startDate: Date | undefined; endDate: Date | undefined }>(),\n toggleActivityPopover: createStandardAction(ActivityActionTypes.toggleActivityPopover)<{}>(),\n};\nexport type ActivityActions = ActionType;\n\nexport function useActivityActions() {\n const dispatch = useBlockActionDispatch();\n\n return useMemo(\n () => ({\n setTimeframe: (startDate: Date | undefined, endDate: Date | undefined) => {\n return dispatch({ type: ActivityActionTypes.setTimeframe, payload: { startDate: startDate, endDate: endDate } });\n },\n }),\n [dispatch]\n );\n}\n","import { ActionType, getType } from 'typesafe-actions';\nimport { legacyOrderGroupActions, LegacyOrderGroupAction } from './OrderActions';\n\ntype GroupAction = ActionType;\nexport function isGroupHandlingAction(action: T | GroupAction): action is GroupAction {\n return [legacyOrderGroupActions.handleOrderGroupChange].map(a => getType(a)).includes(action.type);\n}\n\nexport function isLegacyOrderGroupAction(\n action: T | LegacyOrderGroupAction\n): action is LegacyOrderGroupAction {\n return [legacyOrderGroupActions.addOrderLeg, legacyOrderGroupActions.handleOrderGroupChange]\n .map(a => getType(a))\n .includes(action.type);\n}\n","import dayjs, { Dayjs } from 'dayjs';\nimport parseMs from 'parse-ms';\nimport { AssetType, DateValueModel, Expiration, OptionExpirationType, OrderLeg } from '@tradingblock/types';\nimport _ from 'lodash';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport { SYMBOLS_THAT_CAN_TRADED_AFTER_MARKET_CLOSE } from '../constants';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\ntype Holiday = {\n name: string;\n date: string;\n earlyClose: boolean;\n message: string;\n};\n\nconst HOLIDAYS_DATA: Holiday[] = [\n {\n name: \"New Year's Day\",\n date: '2024-01-01',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Martin Luther King, Jr. Day',\n date: '2024-01-15',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: \"Washington's Birthday\",\n date: '2024-02-19',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Good Friday',\n date: '2024-03-29',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Memorial Day',\n date: '2024-05-27',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Juneteenth National Independence Day',\n date: '2024-06-19',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Independence Eve',\n date: '2024-07-03',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Independence Day',\n date: '2024-07-04',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'Thanksgiving Day',\n date: '2024-11-28',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n {\n name: 'After Thanksgiving',\n date: '2024-11-29',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Christmas Eve',\n date: '2024-12-24',\n earlyClose: true,\n message: 'Early Market Close Due to',\n },\n {\n name: 'Christmas Day',\n date: '2024-12-25',\n earlyClose: false,\n message: 'Market Closed Due to',\n },\n];\n\nexport const isSameDate = (date1: Date | dayjs.Dayjs | undefined, date2: Date | dayjs.Dayjs | undefined) => {\n if (date1 && date2) {\n return dayjs(date1).isSame(date2, 'date');\n }\n return false;\n};\n\nexport function isToday(date: Date | undefined): boolean {\n return date ? isSameDate(date, new Date()) : false;\n}\n\nexport function returnMarketHoliday(date?: Date): Holiday | undefined {\n let now;\n if (date) now = dayjs.utc(date);\n else now = dayjs.utc().toDate();\n //Check to see if today is a holiday, if so, return Holiday object. If not, return undefined\n return HOLIDAYS_DATA.find(h => dayjs(h.date).isSame(now, 'day'));\n}\n\nexport const MarketOpenTime = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n let hour = isDST ? 13 : 14;\n\n return dayjs\n .utc()\n .hour(hour)\n .minute(30)\n .second(0)\n .millisecond(0);\n};\n\nexport const MarketCloseTime = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n const holiday = returnMarketHoliday();\n let hour = isDST ? 20 : 21;\n\n // if today is a holiday with early close, set hours to 1 pm EST (check for DST)\n // See isMarketOpen to see when the market is closed fully on the holiday.\n if (holiday && holiday.earlyClose) hour = isDST ? 17 : 18;\n\n return dayjs\n .utc()\n .set('hour', hour)\n .set('minute', 0)\n .set('second', 0);\n};\n\nexport const IndexMarketCloseTime = () => {\n const isDST = dayjs.tz(undefined, 'America/New_York').utcOffset() === -240 ? true : false;\n const holiday = returnMarketHoliday();\n let hour = isDST ? 20 : 21;\n\n // if today is a holiday with early close, set hours to 1 pm EST (check for DST)\n // See isMarketOpen to see when the market is closed fully on the holiday.\n if (holiday && holiday.earlyClose) hour = isDST ? 17 : 18;\n\n return dayjs\n .utc()\n .set('hour', hour)\n .set('minute', 15)\n .set('second', 0);\n};\n\nexport const isMarketOpen = () => {\n const now = dayjs.utc().toDate();\n const holiday = returnMarketHoliday();\n const marketOpen = MarketOpenTime().toDate();\n const marketClose = MarketCloseTime().toDate();\n\n // Check to see if today is a holiday. If so, return false if market is fully closed.\n // See TimeTillClose for when the market is partially open\n if (holiday && !holiday.earlyClose) return false;\n\n return isBetween(now, marketOpen, marketClose);\n};\nexport const isIndexMarketOpen = () => {\n const now = dayjs.utc().toDate();\n const holiday = returnMarketHoliday();\n const marketOpen = MarketOpenTime().toDate();\n const indexMarketClose = IndexMarketCloseTime().toDate();\n\n // Check to see if today is a holiday. If so, return false if market is fully closed.\n // See IndexTimeTillClose for when the market is partially open\n if (holiday && !holiday.earlyClose) return false;\n\n return isBetween(now, marketOpen, indexMarketClose);\n};\n\nexport const isBetweenMidnightInclusiveAndOpeningHoursExclusive = (): boolean => {\n if (!isMarketOpen()) {\n let now = dayjs.utc();\n let todayUtcMidnight = dayjs.utc().startOf('day');\n let marketOpenTime = MarketOpenTime();\n return (now.isAfter(todayUtcMidnight) || now.isSame(todayUtcMidnight)) && now.isBefore(marketOpenTime);\n }\n return false;\n};\n\n// Calculate the next Market Open Time\nexport const NextMarketOpenTime = () => {\n // If the time now is prior to open time (market is closed and the time is before opening market time), then don't add a day. Otherwise set nextOpen to the next day\n // This check is needed when the time now changes to the next UTC day:\n // i.e. - Time now UTC is Monday post-market close, this function returns Tuesday's Open hours\n // - Time now UTC is Tuesday pre-market open, this function returns Tuesday's Open Hours\n let nextOpen = dayjs(MarketOpenTime()).add(isBetweenMidnightInclusiveAndOpeningHoursExclusive() ? 0 : 1, 'day');\n let holiday = returnMarketHoliday(nextOpen.toDate());\n // If the nextOpen is the weekend/(closed holiday), then keep adding a day until reaching an open business day\n while (isWeekend(nextOpen) || (holiday && !holiday.earlyClose)) {\n nextOpen = nextOpen.add(1, 'day');\n holiday = returnMarketHoliday(nextOpen.toDate());\n }\n return nextOpen;\n};\n\nexport const isTodayOrAfter = (date: Date | dayjs.Dayjs) =>\n // assuming that if today, should be before market closes\n (isSameDate(date, dayjs()) && dayjs().isBefore(MarketCloseTime())) || dayjs().isBefore(date);\n\nexport function isExpiration(value: Expiration | T): value is Expiration {\n return _.keys(value).includes('date');\n}\nexport const expirationToDayjs = (date: Date | Expiration) => {\n if (isExpiration(date)) {\n return dayjs(date.date);\n }\n return dayjs(date);\n};\nexport const expirationUnixTimestamp = (date: Date | Expiration | undefined) =>\n date === undefined ? -1 : expirationToDayjs(date).valueOf();\nexport const getSimpleDateString = (date: Date | Expiration) => {\n return expirationToDayjs(date).format('YYMMDD:HHmmss');\n};\nexport const expirationValue = (date: Expiration) => {\n return `${getSimpleDateString(date)} ${OptionExpirationType[date.optionExpirationType]}`;\n};\nexport const isSameExpiration = (date1: Expiration, date2: Expiration) =>\n expirationValue(date1) === expirationValue(date2);\n\nexport const DisplayTimeTilClose = (parsed: parseMs.Parsed) => {\n return `${parsed.hours} hour${parsed.hours === 1 ? '' : 's'}, ${parsed.minutes} minute${\n parsed.minutes === 1 ? '' : 's'\n }`;\n};\n\n/**\n * Checks to see whether or not the given date is between two dates\n *\n * @param date the Date to be checked\n * @param startDate start of date range\n * @param endDate end of date range\n */\nexport const isBetween = (date: Date | undefined, startDate: Date, endDate: Date) => {\n if (date) {\n const d = dayjs(date);\n return d.isAfter(startDate) && d.isBefore(endDate);\n }\n return false;\n};\n\n// is startingDate in year of 1970\nexport const isStartingDateIn1970 = (startingDate: Dayjs) => {\n return startingDate.year() === 1970;\n};\n\nexport function daterangeToTimeframe(\n startingDate: dayjs.Dayjs | null | undefined,\n endingDate: dayjs.Dayjs | null | undefined\n): string {\n if (!startingDate || !endingDate || isStartingDateIn1970(startingDate)) {\n return 'All';\n }\n const today = dayjs();\n if (isSameDate(startingDate, today) && isSameDate(endingDate, today)) {\n return 'Today';\n }\n if (isSameDate(startingDate, today.subtract(1, 'week')) && isSameDate(endingDate, today)) {\n return 'Week';\n }\n if (isSameDate(startingDate, today.subtract(1, 'month')) && isSameDate(endingDate, today)) {\n return 'Month';\n }\n if (isSameDate(startingDate, today.subtract(1, 'year')) && isSameDate(endingDate, today)) {\n return 'Year';\n }\n const format = 'M/D/YY';\n return `${startingDate.format(format)} - ${endingDate.format(format)}`;\n}\n\nexport const formatDate = (date: dayjs.Dayjs | string) => {\n return (_.isString(date) ? dayjs(date) : date).format('MMM D, YYYY h:mm A');\n};\n\nexport const formatDateWithoutTime = (date: dayjs.Dayjs | string) => {\n return (_.isString(date) ? dayjs(date) : date).format('MMM D, YYYY');\n};\n\nexport const cleanDatePart = (value: number | undefined) => {\n return value && `${value < 10 ? '0' : ''}${value}`;\n};\n\nexport const cleanDateModel = (value: DateValueModel | null | undefined) => {\n if (value) {\n return `${cleanDatePart(value.year)}-${cleanDatePart(value.month)}-${cleanDatePart(value.day)}`;\n }\n return null;\n};\n\n// Function to check if a date is a weekend\nconst isWeekend = (date: dayjs.Dayjs): boolean => {\n const day = date.day(); // Get the day of the week (0: Sunday, 1: Monday, ..., 6: Saturday)\n return day === 0 || day === 6; // Return true if it's Sunday or Saturday\n};\n\n/**\n * This function determines if an order can be filled during the index market times. The order can be filled during these times if the underlying symbol for the order\n * is in the list of symbols that can trade during the index market times and if all of the legs of the order are an option asset type.\n * @param {string | undefined} underlyingSymbol - the underlying symbol for the order\n * @param {OrderLeg[] | undefined} orderLegs - the legs of the order\n * @return {boolean} - if the order can be filled during index market times\n */\nexport const orderCanBeFilledDuringIndexMarketTimes = (underlyingSymbol?: string, orderLegs?: OrderLeg[]): boolean => {\n if (!underlyingSymbol || !orderLegs || (orderLegs && orderLegs.length === 0)) {\n return false;\n }\n\n if (\n SYMBOLS_THAT_CAN_TRADED_AFTER_MARKET_CLOSE.includes(underlyingSymbol) &&\n orderLegs.every(orderLeg => orderLeg.AssetType === AssetType.Option)\n ) {\n return true;\n }\n\n return false;\n};\n","import _ from 'lodash';\nimport { Legs, OrderLegDTOState, OrderAction } from '@tradingblock/types';\nimport { expirationUnixTimestamp } from '../../../utilities/date';\n\nexport const getOrderActionForCalendar = (orderLegs: Legs, currentOrderAction: OrderAction): OrderAction => {\n if (_.some(orderLegs, l => l.Expiration === undefined)) {\n return currentOrderAction;\n }\n const latestExpirationLeg = _(orderLegs).reduce(\n (latestExp: OrderLegDTOState, l): OrderLegDTOState => {\n const latestValue = expirationUnixTimestamp(latestExp.Expiration);\n const currentValue = expirationUnixTimestamp(l.Expiration);\n if (latestExp === undefined || currentValue > latestValue) {\n return l;\n }\n return latestExp;\n }\n );\n return latestExpirationLeg ? latestExpirationLeg.Action : currentOrderAction;\n};\n","import { IBlockState } from '@tradingblock/types';\r\nimport { OrderState, OrderBlockState } from '../OrderState';\r\n\r\nconst wrapped = (orderState: IBlockState) => ({\r\n value: () => orderState,\r\n withLegError: (err?: string) => {\r\n return wrapped({\r\n ...orderState,\r\n data: {\r\n ...orderState.data,\r\n legError: err,\r\n },\r\n });\r\n },\r\n});\r\n\r\nexport const orderstate = (orderState: IBlockState) => wrapped(orderState);\r\n","import _ from 'lodash';\nimport { getType, isActionOf } from 'typesafe-actions';\nimport { OrderBlockState, OrderState } from '../OrderState';\nimport { OrderActions, Actions, AllOrderActions, ValidationActions } from '../OrderActions';\nimport { DebitOrCredit, OrderAction, isCustomStrategy } from '@tradingblock/types';\nimport { orderLegsToClassifiedStrategy } from '../../../../data/global/utilities/strategyClassification';\nimport { Strategies } from '@tradingblock/api';\n\n// const isOrderValidSelector = createCachedSelector(\n// (s: OrderState, blockId: string) => s.validation.valid,\n// (s: OrderState, blockId: string) => {\n// const legs = s.legs;\n// if (_.isNil(legs) || _.values(legs).length === 0) {\n// return false;\n// }\n// return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\n// if (_.isNil(OptionType)) {\n// return true;\n// } else {\n// return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\n// }\n// });\n// },\n// (valid, complete) => {\n// return { valid, complete };\n// }\n// )((s: OrderState, blockId: string) => blockId);\n\nconst isOrderComplete = (state: OrderState) => {\n const legs = state.legs;\n const numLegs = _.values(legs).length;\n if (_.isNil(legs) || _.values(legs).length === 0) {\n return false;\n }\n return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\n if (_.isNil(OptionType)) {\n return true;\n } else {\n // only check SpreadRatio for multi-leg orders\n if (numLegs === 1) {\n return _.every([Strike, Expiration], v => !_.isNil(v));\n } else {\n return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\n }\n }\n });\n};\n\nexport const OrderPreviewReducer = (state: OrderBlockState, action: AllOrderActions): OrderBlockState => {\n switch (action.type) {\n case 'initializeData':\n case getType(Actions.clear):\n case getType(Actions.setSymbol):\n case getType(Actions.removeLeg):\n case getType(ValidationActions.startValidation):\n case getType(ValidationActions.finishValidation):\n case getType(Actions.setPositionInfo):\n case getType(Actions.setOptionType):\n case getType(Actions.setLegQuantity):\n case getType(Actions.setExpiration):\n case getType(Actions.setStrike):\n case getType(Actions.setOrderAction):\n case getType(Actions.setLegAction):\n case getType(Actions.addOrderLeg):\n case getType(Actions.setStrategy):\n case getType(Actions.handleOrderGroupChange):\n case getType(Actions.reset):\n case getType(Actions.SetSymbolAndReset):\n case getType(Actions.addOrderLegFromGroup): {\n const isOrderAction = isActionOf(Actions.setOrderAction, action);\n const { legs } = state.data;\n\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(legs) as any);\n const isComplete = isOrderComplete(state.data);\n const isValid = state.data.validation.valid;\n const isCustom = state.data.strategy === 'Custom';\n let recalculatePrice = true;\n if (isOrderAction) {\n recalculatePrice = false;\n } else {\n recalculatePrice = true;\n }\n\n let debitCredit;\n let orderAction;\n\n debitCredit =\n state.data.debitCredit || (classifyStrategy.action === 'BUY' && DebitOrCredit.Debit) || DebitOrCredit.Credit;\n\n // Determine the order action based on whether the order is custom or predefined strategy\n if (!isCustom) {\n // If the order is not custom (i.e., it follows a predefined strategy),\n // set the order action based on the classified strategy's action\n // If the action is 'BUY', set orderAction to OrderAction.Buy, otherwise set it to OrderAction.Sell\n orderAction = classifyStrategy.action === 'BUY' ? OrderAction.Buy : OrderAction.Sell;\n } else {\n // If the order is custom, set the order action based on the current state data's action value\n orderAction = state.data.action;\n }\n\n return {\n ...state,\n data: {\n ...state.data,\n recalculatePrice,\n debitCredit: state.data.debitCredit,\n action: orderAction,\n preview: {\n // status: isComplete === false ? 'incomplete' : isValid === false ? 'invalid' : 'complete',\n enabled: isValid && isComplete ? true : false,\n },\n },\n };\n }\n\n default:\n return state;\n }\n};\n","import { getType, isActionOf, ActionType } from 'typesafe-actions';\r\nimport { Actions as ActActions } from '../../Activity/state/ActivityActions';\r\nimport _ from 'lodash';\r\nimport {\r\n Legs,\r\n OrderLegDTO,\r\n isCustomStrategy,\r\n OrderAction,\r\n AssetType,\r\n Order,\r\n StrikeRules,\r\n PositionInfo,\r\n DebitOrCredit,\r\n GroupOrderLeg,\r\n AssetSymbolInfo,\r\n Expiration,\r\n OrderValidationError,\r\n OrderBlockSettings,\r\n isKnownStrategyType,\r\n TradingStrategyNameOrCustom,\r\n Durations,\r\n OrderType,\r\n} from '@tradingblock/types';\r\nimport {\r\n DeriveLegAssetType,\r\n CustomStrategy,\r\n getStrategy,\r\n isSymbolEqual,\r\n getDebitOrCredit,\r\n isString,\r\n AllStrategies,\r\n getDefaultOrderQuantity,\r\n Strategies,\r\n} from '@tradingblock/api';\r\nimport { toArray } from '../../../utilities/data';\r\nimport { OrderStateFactory } from '../../BlockStateFactory';\r\nimport {\r\n OrderActions,\r\n Actions,\r\n OrderInitializeAction,\r\n addOrderLegFromGroupType,\r\n SetSymbolAndResetType,\r\n AllOrderActions,\r\n} from './OrderActions';\r\nimport { OrderState, OrderBlockState, OrderQuote } from './OrderState';\r\nimport {\r\n isCalendarStrategy,\r\n getNextLegId,\r\n getLegPosition,\r\n getStrategiesForSymbol,\r\n defaultStrategyForSymbol,\r\n SymbolForLeg,\r\n} from '../OrderUtilities';\r\nimport { isLegacyOrderGroupAction, isGroupHandlingAction } from './OrderActionUtility';\r\nimport { getOrderActionForCalendar } from './orderReducerUtilities';\r\nimport { orderstate } from './transforms/orderStateTransforms';\r\nimport { OrderPreviewReducer } from './reducers/OrderPreviewReducer';\r\nimport { blockReducer, isBlockAction } from '../../../components/blocks/BlockState';\r\nimport { BlockTablesReducer } from '../../../components/blocks/state/blockTable/BlockTableReducer';\r\nimport { BlockTableAction } from '../../../components/blocks/state/blockTable/BlockTableActions';\r\nimport { OrderToOrderState } from './OrderStateToOrder';\r\nimport dayjs from 'dayjs';\r\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\r\nimport { useBidAsk } from '../components/useBidAsk';\r\n\r\nexport const DefaultOrderState = (\r\n orderSettings: OrderBlockSettings,\r\n strategy?: TradingStrategyNameOrCustom\r\n): OrderState => ({\r\n validStrategies: AllStrategies,\r\n duration: Durations.Day,\r\n orderType: OrderType.Limit,\r\n legs: {},\r\n recalculatePrice: false,\r\n quantity: strategy ? getDefaultOrderQuantity(strategy, orderSettings) : 1,\r\n action: OrderAction.Buy,\r\n isDirty: false,\r\n positions: {},\r\n debitCredit: DebitOrCredit.Debit,\r\n quotes: {},\r\n preview: {\r\n enabled: false,\r\n },\r\n validation: {\r\n isValidating: false,\r\n errors: [],\r\n },\r\n tables: {},\r\n});\r\n\r\nconst emptyValidation = {\r\n errors: [],\r\n message: undefined,\r\n valid: undefined,\r\n match: undefined,\r\n isValidating: false,\r\n field: undefined,\r\n};\r\n\r\nconst emptyValidValidation = {\r\n ...emptyValidation,\r\n valid: true,\r\n};\r\n\r\nconst updateAllLegs = (legs: Legs, update: (existing: OrderLegDTO) => Partial) => {\r\n return _.reduce(\r\n legs,\r\n (all, leg) => {\r\n const updatedLeg = update(leg);\r\n return {\r\n ...all,\r\n [leg.Id]: {\r\n ...leg,\r\n ...updatedLeg,\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n};\r\n\r\ntype OrderLegInfoDto = Omit;\r\nexport function reduceLeg(positions: PositionInfo) {\r\n return (leg: T, assetSymbol: AssetSymbolInfo | undefined) => {\r\n return {\r\n ...leg,\r\n PositionEffect: getLegPosition(positions, leg, assetSymbol),\r\n };\r\n };\r\n}\r\n\r\nexport function reduceLegs(positions: PositionInfo, assetSymbol: AssetSymbolInfo | undefined) {\r\n const reduce = reduceLeg(positions);\r\n return (legs: Legs) => {\r\n return _(legs)\r\n .keys()\r\n .reduce((acc: Legs, id: string) => {\r\n const existingLeg = acc[id];\r\n\r\n return existingLeg\r\n ? {\r\n ...acc,\r\n [id]: reduce(existingLeg, assetSymbol),\r\n }\r\n : acc;\r\n }, legs);\r\n };\r\n}\r\n\r\nexport const BaseOrderStateReducer = (orderState: OrderBlockState, action: OrderActions): OrderBlockState => {\r\n const state = orderState;\r\n const legReducer = reduceLeg(state.data.positions);\r\n\r\n switch (action.type) {\r\n // I Do not like that we technically now how both activity reducer and order reducer here... but we do now...\r\n case getType(ActActions.setTimeframe): {\r\n const { startDate, endDate } = action.payload as {\r\n startDate: Date | undefined;\r\n endDate: Date | undefined;\r\n };\r\n let startDateValue = dayjs(startDate)\r\n .startOf('day')\r\n .toDate();\r\n let endDateValue = dayjs(endDate)\r\n .endOf('day')\r\n .toDate();\r\n if (startDateValue && endDateValue && dayjs(endDateValue).isBefore(startDateValue)) {\r\n endDateValue = dayjs(startDateValue)\r\n .endOf('day')\r\n .toDate();\r\n startDateValue = dayjs(endDateValue)\r\n .startOf('day')\r\n .toDate();\r\n }\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n startDate: startDateValue,\r\n endDate: endDateValue,\r\n },\r\n } as any;\r\n }\r\n case 'initializeData': {\r\n const dataState = state.data;\r\n const strat = dataState.strategy;\r\n let orderActionValue =\r\n strat && isCalendarStrategy(strat)\r\n ? getOrderActionForCalendar(dataState.legs, state.data.action)\r\n : state.data.action;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n action: orderActionValue,\r\n legError: undefined,\r\n validation: {\r\n ...emptyValidation,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.clear): {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legs: {},\r\n legError: undefined,\r\n price: undefined,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case 'startValidation': {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: true,\r\n },\r\n },\r\n };\r\n }\r\n case 'finishValidation': {\r\n const { valid, match } = action.payload;\r\n const errors: OrderValidationError[] = _.filter(action.payload.errors, e => e !== undefined);\r\n const errMap: OrderValidationError[] = _.reduce(\r\n errors,\r\n (acc: OrderValidationError[], v: OrderValidationError): OrderValidationError[] => {\r\n const symbol = isString(v) ? undefined : _.get(v, 'symbol', undefined);\r\n const message = isString(v) ? v : v.message;\r\n const updatedError: OrderValidationError = v.type === 'OrderFieldError' ? { ...v, message, symbol } : v;\r\n return [...acc, updatedError];\r\n },\r\n []\r\n );\r\n const firstError = errMap ? _.first(errMap) : undefined;\r\n let message: string | undefined = undefined;\r\n let field: keyof Order | keyof OrderLegDTO | undefined = undefined;\r\n let legIds: string[] = [];\r\n if (firstError) {\r\n message = firstError.message;\r\n if (firstError.type === 'OrderFieldError') {\r\n const fieldVal = firstError.field.trim().toLowerCase() === 'strike' ? 'Strike' : (firstError.field as any);\r\n field = fieldVal;\r\n }\r\n if (valid === false && firstError.type === 'OrderLegError') {\r\n legIds = _.filter(state.data.legs, l => {\r\n const occSymbol = SymbolForLeg(l, state.data.symbol);\r\n return occSymbol === firstError.symbol;\r\n }).map(l => l.Id);\r\n }\r\n }\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n validation: {\r\n errors,\r\n message,\r\n valid,\r\n match,\r\n field,\r\n isValidating: false,\r\n legIds,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.orderPlaced): {\r\n const result = {\r\n ...state,\r\n };\r\n return result;\r\n }\r\n case getType(Actions.removeLeg): {\r\n const { id } = action.payload;\r\n const legsWithoutCurrent = _.reduce(\r\n state.data.legs,\r\n (acc: Legs, value: OrderLegDTO, key: string) => {\r\n if (key === id) {\r\n return acc;\r\n }\r\n acc[key] = value;\r\n return acc;\r\n },\r\n {}\r\n );\r\n const legsStillExist = _.keys(legsWithoutCurrent).length > 0;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legs: legsWithoutCurrent,\r\n recalculatePrice: legsStillExist,\r\n price: legsStillExist ? state.data.price : undefined,\r\n },\r\n };\r\n }\r\n case getType(Actions.setSymbol): {\r\n const { symbol, options } = action.payload;\r\n const { settings } = options;\r\n\r\n const blockSettings = state.settings;\r\n if (isSymbolEqual(symbol, state.data.symbol)) {\r\n return state;\r\n }\r\n const combinedBlockSettings = { ...(settings || {}), ...(blockSettings || {}) };\r\n const resetOrder = options.defaultToEmptyCustomIfSymbolChanges === true;\r\n if (symbol === undefined && resetOrder) {\r\n const resetState = {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(combinedBlockSettings, state.data.strategy),\r\n isLoaded: true,\r\n },\r\n };\r\n return resetState;\r\n }\r\n let defaultStrategy = defaultStrategyForSymbol(symbol, blockSettings.defaultStrategy, settings);\r\n\r\n if (defaultStrategy === undefined) {\r\n return {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(combinedBlockSettings),\r\n isLoaded: true,\r\n },\r\n };\r\n }\r\n let legs = isKnownStrategyType(defaultStrategy) ? OrderStateFactory.Build(defaultStrategy, symbol).legs : {};\r\n if (resetOrder) {\r\n legs = {};\r\n defaultStrategy = 'Custom';\r\n }\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n quantity: getDefaultOrderQuantity(defaultStrategy, combinedBlockSettings),\r\n price: undefined,\r\n recalculatePrice: true,\r\n action: OrderAction.Buy,\r\n symbol: symbol,\r\n strategy: defaultStrategy,\r\n legs,\r\n validStrategies: AllStrategies,\r\n validation: emptyValidValidation,\r\n },\r\n };\r\n }\r\n case getType(Actions.SetSymbolAndReset): {\r\n const payload = (action as SetSymbolAndResetType).payload;\r\n const symbol = payload.symbol;\r\n const leg = payload.leg;\r\n const legs: Legs = {};\r\n const strategy = defaultStrategyForSymbol(symbol, state.settings.defaultStrategy);\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legs: {\r\n ...legs,\r\n [leg.Id]: legReducer({ ...leg, AssetType: DeriveLegAssetType(leg) }, symbol),\r\n },\r\n symbol,\r\n strategy,\r\n legError: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.addOrderLegFromGroup): {\r\n const { leg } = (action as addOrderLegFromGroupType).payload;\r\n let legs = state.data.legs;\r\n const existingSymbol = state && state.data && state.data.symbol ? state.data.symbol : undefined;\r\n if (getType(Actions.addOrderLegFromGroup) === action.type) {\r\n if (!existingSymbol || (leg.UnderlyingSymbol && leg.UnderlyingSymbol !== existingSymbol.underlyingSymbol)) {\r\n console.warn('not adding leg, incorrect underlying symbol');\r\n }\r\n }\r\n\r\n // set leg error if already max # of custom legs\r\n if (_.size(legs) >= 4) {\r\n return orderstate(state)\r\n .withLegError('Maximum legs already added to order')\r\n .value();\r\n }\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legs: {\r\n ...legs,\r\n [leg.Id]: legReducer(\r\n {\r\n ...leg,\r\n AssetType: DeriveLegAssetType(leg),\r\n },\r\n existingSymbol\r\n ),\r\n },\r\n strategy: CustomStrategy.info.Name,\r\n legError: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n // this is the {type: 'initialize', ...} action!\r\n case getType(Actions.reset): {\r\n const { strategy, symbol, legs, quantity, settings, orderType } = (action as OrderInitializeAction).payload;\r\n const orderAction = action.payload.action;\r\n const legValues = _.reduce(\r\n legs,\r\n (all, l) => {\r\n return {\r\n ...all,\r\n [l.Id]: {\r\n ...l,\r\n UnderlyingSymbol: symbol ? symbol.underlyingSymbol : l.UnderlyingSymbol,\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n const getCalendarLegAction = (_legs: Legs | { [legId: string]: GroupOrderLeg }) => {\r\n // Get id values for legs. leg_## is the format\r\n const legKeys = Object.getOwnPropertyNames(legs);\r\n // Compare dates. Choose the leg reference by their latest date. Acchtopess the leg using the OwnProperties lookup.\r\n if (legs[legKeys[0]].Expiration && legs[legKeys[1]].Expiration) {\r\n const laterLegIndex =\r\n new Date(legs[legKeys[0]].Expiration!.date) > new Date(legs[legKeys[1]].Expiration!.date)\r\n ? legKeys[0]\r\n : legKeys[1];\r\n // Return that legs action when updating the component\r\n return legs[laterLegIndex].Action;\r\n }\r\n };\r\n // Action buttons in positions/activities tables reset the order block with updatedState.\r\n // Previously, closing a long position incorrectly showed a debit when selling.\r\n // This fix resets the order block to reflect the typical debit/credit for the order action.\r\n // In unusual cases (like negative prices), debit/credit is recalculated after setting the price.\r\n let debitCredit = orderAction === OrderAction.Buy ? DebitOrCredit.Debit : DebitOrCredit.Credit;\r\n const updatedState = {\r\n ...state,\r\n data: {\r\n ...DefaultOrderState(settings),\r\n quantity,\r\n strategy,\r\n symbol,\r\n orderType: orderType,\r\n legs: legValues,\r\n validStrategies: AllStrategies,\r\n legError: undefined,\r\n isLoaded: true,\r\n recalculatePrice: true,\r\n price: undefined,\r\n debitCredit,\r\n action:\r\n strategy && strategy.includes('Calendar') && Object.keys(legs).length\r\n ? getCalendarLegAction(legs)\r\n : orderAction\r\n ? orderAction\r\n : OrderAction.Buy,\r\n },\r\n };\r\n return updatedState;\r\n }\r\n case getType(Actions.addOrderLeg):\r\n case getType(Actions.handleOrderGroupChange): {\r\n const { settings } = action.payload;\r\n const symbol = isLegacyOrderGroupAction(action) && action.payload.symbol ? action.payload.symbol : undefined;\r\n const validStrategies = getStrategiesForSymbol(symbol);\r\n let strategy = isGroupHandlingAction(action) ? action.payload.strategy : undefined;\r\n if (\r\n strategy === undefined ||\r\n _.find(validStrategies, vs => strategy && vs.info.Name === strategy) === undefined\r\n ) {\r\n strategy = defaultStrategyForSymbol(symbol, state.settings.defaultStrategy);\r\n }\r\n const orderLeg: GroupOrderLeg | undefined =\r\n isLegacyOrderGroupAction(action) && action.payload.leg ? action.payload.leg : undefined;\r\n const legAction = orderLeg && orderLeg ? orderLeg.Action : undefined;\r\n const orderAction = action.payload.action || legAction || state.data.action;\r\n const quantity = action.payload.quantity || state.data.quantity;\r\n const legId = orderLeg\r\n ? orderLeg.Id || orderLeg.UniqueId || getNextLegId(state.data.legs)\r\n : getNextLegId(state.data.legs);\r\n const groupSymbolChanged = isLegacyOrderGroupAction(action) && isSymbolEqual(symbol, state.data.symbol) !== true;\r\n const reinitialize = groupSymbolChanged;\r\n // reset legs if current strategy isn't custom\r\n const currentLegs = !state.data.strategy || state.data.strategy !== 'Custom' ? {} : state.data.legs;\r\n\r\n // what should asset type be?\r\n const assetType = AssetType.Option;\r\n\r\n // short circuit if leg already part of order\r\n if (!reinitialize && legId !== undefined && _.some(currentLegs, l => l.UniqueId === legId || l.Id === legId)) {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: undefined,\r\n },\r\n };\r\n }\r\n\r\n // set leg error if already max # of custom legs\r\n if (_.size(currentLegs) >= 4) {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n legError: 'Maximum legs already added to order',\r\n },\r\n };\r\n }\r\n const newLeg: Omit | undefined = orderLeg\r\n ? {\r\n Id: legId,\r\n\r\n AssetType: assetType,\r\n ...orderLeg,\r\n }\r\n : undefined;\r\n let baseData = state.data;\r\n if (reinitialize && state.data.symbol !== symbol) {\r\n baseData = DefaultOrderState(settings);\r\n }\r\n const legs = newLeg\r\n ? {\r\n ...currentLegs,\r\n [legId]: legReducer(newLeg, symbol),\r\n }\r\n : currentLegs;\r\n const orderStrategy = strategy || state.data.strategy;\r\n const orderQuant = quantity\r\n ? quantity\r\n : orderStrategy\r\n ? getDefaultOrderQuantity(orderStrategy, state.settings)\r\n : 1;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...baseData,\r\n isDirty: true,\r\n validStrategies: AllStrategies,\r\n action: orderAction,\r\n quantity: orderQuant,\r\n strategy: orderStrategy,\r\n symbol: symbol || state.data.symbol,\r\n legError: undefined,\r\n legs,\r\n // price: undefined,\r\n recalculatePrice: true,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.setStrategy): {\r\n const { legs, validStrategies } = state.data;\r\n const { symbol, strategy, reverseLegs, settings } = (action as ActionType).payload;\r\n const isCustom = isCustomStrategy(strategy);\r\n const orderAction = isCustom ? OrderAction.Buy : state.data.action;\r\n let updatedLegs = legs;\r\n const validStrats = validStrategies.length > 0 ? validStrategies : getStrategiesForSymbol(symbol);\r\n if (\r\n validStrats.length > 0 &&\r\n _.find(validStrats, vs => strategy && vs.info.Name === strategy.info.Name) === undefined\r\n ) {\r\n return state;\r\n }\r\n if (state.data.strategy && state.data.strategy === strategy.info.Name) {\r\n return state;\r\n }\r\n if (isCustom) {\r\n updatedLegs = {};\r\n } else if (symbol && !isCustomStrategy(strategy)) {\r\n updatedLegs = OrderStateFactory.Build(strategy, symbol, reverseLegs).legs;\r\n }\r\n const result = {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n validStrategies: AllStrategies,\r\n strategy: strategy.info.Name,\r\n legError: undefined,\r\n price: undefined,\r\n stopPrice: undefined,\r\n recalculatePrice: true,\r\n isInitializing: true,\r\n legs: updatedLegs,\r\n quantity: getDefaultOrderQuantity(strategy.info.Name, settings),\r\n action: orderAction,\r\n validation: {\r\n ...emptyValidation,\r\n isValidating: false,\r\n },\r\n },\r\n };\r\n return result;\r\n }\r\n case getType(Actions.setOrderAction):\r\n case getType(Actions.setLegAction): {\r\n const { strategy, legs } = state.data;\r\n const { legId } = action.payload;\r\n const isCustom = strategy && isCustomStrategy(strategy);\r\n const orderAction = isCustom\r\n ? state.data.action\r\n : state.data.action === OrderAction.Buy\r\n ? OrderAction.Sell\r\n : OrderAction.Buy;\r\n const updatedLegs = _.reduce(\r\n legs,\r\n (acc: Legs, val: OrderLegDTO): Legs => {\r\n const inverseAction = val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\r\n let legAction = val.Action;\r\n if (legId && isCustom && val.Id === legId) {\r\n legAction = action.payload.action ? action.payload.action : inverseAction;\r\n } else if (!isCustom) {\r\n legAction = val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\r\n }\r\n return {\r\n ...acc,\r\n [val.Id]: legReducer({ ...val, Action: legAction }, state.data.symbol),\r\n };\r\n },\r\n {}\r\n );\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n action: orderAction,\r\n legError: undefined,\r\n legs: {\r\n ...updatedLegs,\r\n },\r\n price: undefined,\r\n },\r\n };\r\n }\r\n\r\n case 'setStrike': {\r\n const { strike, legId } = action.payload;\r\n const { strategy } = state.data;\r\n const stateStrategy = strategy ? getStrategy(strategy) : undefined;\r\n let setAllStrikes =\r\n stateStrategy &&\r\n !isCustomStrategy(stateStrategy) &&\r\n toArray(stateStrategy.profile.Rules.Strike).includes(StrikeRules.SameStrikes);\r\n const legs = updateAllLegs(state.data.legs, existing => {\r\n const shouldUpdateLegStrike = setAllStrikes === true || existing.Id === legId;\r\n return legReducer(\r\n {\r\n ...existing,\r\n Strike: shouldUpdateLegStrike ? strike : existing.Strike,\r\n },\r\n state.data.symbol\r\n );\r\n });\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: {\r\n ...state.data.legs,\r\n ...legs,\r\n },\r\n },\r\n };\r\n }\r\n\r\n case getType(Actions.setExpiration): {\r\n const { legId } = action.payload;\r\n const expiration: Expiration = action.payload.expiration;\r\n const { strategy } = state.data;\r\n const stateStrategy = strategy ? getStrategy(strategy) : undefined;\r\n const isCalendar = stateStrategy && isCalendarStrategy(stateStrategy);\r\n const orderLegs = state.data.legs;\r\n let updateAllOptionLegs = stateStrategy && !isCustomStrategy(stateStrategy) && !isCalendar;\r\n const updatedLegs: Legs = _.reduce(\r\n orderLegs,\r\n (all, leg): Legs => {\r\n const legMatchesId = legId === leg.Id;\r\n const legIsOptionAndAllShouldUpdate = updateAllOptionLegs && leg.AssetType === AssetType.Option;\r\n const shouldUpdateExpiration = legMatchesId || legIsOptionAndAllShouldUpdate;\r\n const legExpiration = shouldUpdateExpiration ? expiration : leg.Expiration;\r\n return {\r\n ...all,\r\n [leg.Id]: legReducer(\r\n {\r\n ...leg,\r\n Expiration: legExpiration,\r\n Strike: shouldUpdateExpiration ? undefined : leg.Strike,\r\n },\r\n state.data.symbol\r\n ),\r\n };\r\n },\r\n {}\r\n );\r\n\r\n let orderActionValue = isCalendar ? getOrderActionForCalendar(updatedLegs, state.data.action) : state.data.action;\r\n\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n action: orderActionValue,\r\n price: undefined,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: updatedLegs,\r\n },\r\n };\r\n }\r\n\r\n case 'setLegQuantity': {\r\n const { legId, quantity } = action.payload;\r\n const { legs } = state.data;\r\n const hasOneLeg = _.keys(legs).length === 1;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n legError: undefined,\r\n recalculatePrice: hasOneLeg ? false : true,\r\n legs: {\r\n ...state.data.legs,\r\n [legId]: legReducer(\r\n {\r\n ...(state.data.legs[action.payload.legId] || {}),\r\n SpreadRatio: hasOneLeg ? undefined : quantity,\r\n },\r\n state.data.symbol\r\n ),\r\n },\r\n },\r\n };\r\n }\r\n\r\n case 'setOptionType': {\r\n const { legId, optionType } = action.payload;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n recalculatePrice: true,\r\n legError: undefined,\r\n legs: {\r\n ...state.data.legs,\r\n [legId]: legReducer(\r\n {\r\n ...(state.data.legs[action.payload.legId] || {}),\r\n OptionType: optionType,\r\n },\r\n state.data.symbol\r\n ),\r\n },\r\n },\r\n };\r\n }\r\n case getType(Actions.setPositionInfo): {\r\n const positions = action.payload.info as PositionInfo;\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n positions,\r\n legs: reduceLegs(positions, state.data.symbol)(state.data.legs),\r\n },\r\n };\r\n }\r\n case getType(Actions.setQuantity): {\r\n const quantity = action.payload.quantity as number;\r\n return {\r\n ...state,\r\n\r\n data: {\r\n ...state.data,\r\n isDirty: true,\r\n quantity,\r\n },\r\n };\r\n }\r\n case getType(Actions.setPrice): {\r\n if (!isActionOf(Actions.setPrice, action)) {\r\n return state;\r\n } else {\r\n const { price, negativePrice } = action.payload;\r\n let priceValue = price;\r\n\r\n const currentDebitOrCredit = state.data.debitCredit;\r\n\r\n if (negativePrice && priceValue && priceValue > 0 && state.data.strategy === 'Custom') {\r\n priceValue = priceValue * -1;\r\n }\r\n\r\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(state.data.legs) as any);\r\n\r\n const allSells = _.every(state.data.legs, l => l.Action === OrderAction.Sell);\r\n const allBuys = _.every(state.data.legs, l => l.Action === OrderAction.Buy);\r\n\r\n // if the strategy is a calendar, then we need to determine debit/credit based on the price and the legs to determine if the cost is positive or negative\r\n const isCustom = state.data.strategy === 'Custom';\r\n const isCalendarMatch = classifyStrategy.name.includes('Calendar') && state.data.strategy === 'Custom';\r\n const isCalendar = classifyStrategy.name.includes('Calendar') && state.data.strategy !== 'Custom';\r\n const latestExpiringLeg = _.maxBy(Object.values(state.data.legs), l => l.Expiration && l.Expiration.date);\r\n\r\n let debitValue;\r\n let orderPrice = priceValue || 0;\r\n\r\n if (isCalendar && latestExpiringLeg) {\r\n // Consolidate the logic for debit/credit when isCalendar is true\r\n debitValue =\r\n orderPrice > 0\r\n ? latestExpiringLeg.Action === OrderAction.Buy\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit\r\n : latestExpiringLeg.Action === OrderAction.Buy\r\n ? DebitOrCredit.Credit\r\n : DebitOrCredit.Debit;\r\n } else if (isCalendarMatch) {\r\n // Directly assign debit or credit based on the price value for isCalendarMatch\r\n debitValue = orderPrice > 0 ? DebitOrCredit.Debit : DebitOrCredit.Credit;\r\n }\r\n // Assuming the rest of the logic for setting `debitCreditValue` remains applicable only if `debitValue` is defined\r\n let debitCreditValue;\r\n if (debitValue !== undefined) {\r\n debitCreditValue = debitValue;\r\n } else {\r\n // Fallback or other logic if neither isCalendar nor isCalendarMatch conditions are met\r\n debitCreditValue =\r\n classifyStrategy.name.includes('Calendar') || (!allSells && !allBuys && classifyStrategy.name === 'Custom')\r\n ? currentDebitOrCredit\r\n : classifyStrategy.action === 'BUY'\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit;\r\n }\r\n // Only allow negative prices for calendar strategies or custom strategies that match the calendar strategy\r\n // If the price is negative and the strategy is not a calendar strategy, set the price to 0\r\n if (priceValue && priceValue < 0 && !isCalendar && !isCalendarMatch && !isCustom) {\r\n priceValue = 0;\r\n }\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n price: priceValue,\r\n debitCredit: debitCreditValue,\r\n recalculatePrice: false,\r\n },\r\n };\r\n }\r\n }\r\n case getType(Actions.setStopPrice): {\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n stopPrice: action.payload.price,\r\n },\r\n };\r\n }\r\n case getType(Actions.setDebitCredit): {\r\n const debitCredit = isActionOf(Actions.setDebitCredit, action) ? action.payload.debitCredit : undefined;\r\n const classifyStrategy = orderLegsToClassifiedStrategy(Object.values(state.data.legs) as any);\r\n const allSells = _.every(state.data.legs, l => l.Action === OrderAction.Sell);\r\n const allBuys = _.every(state.data.legs, l => l.Action === OrderAction.Buy);\r\n\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n debitCredit:\r\n classifyStrategy.name.includes('Calendar') || (!allSells && !allBuys && classifyStrategy.name === 'Custom')\r\n ? debitCredit\r\n : classifyStrategy.action === 'BUY'\r\n ? DebitOrCredit.Debit\r\n : DebitOrCredit.Credit,\r\n },\r\n };\r\n }\r\n case getType(Actions.setSubaccountId): {\r\n const subaccountId = action.payload.subaccountId;\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n subaccountId,\r\n },\r\n };\r\n }\r\n case getType(Actions.setOrder): {\r\n const order = action.payload.order;\r\n const orderState = OrderToOrderState(order);\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n ...orderState,\r\n },\r\n };\r\n }\r\n case getType(Actions.updateQuote): {\r\n const quotesArray = isActionOf(Actions.updateQuote, action) ? _.values(action.payload) : [];\r\n const quotes: Record = _.reduce(\r\n quotesArray,\r\n (acc, v) => {\r\n return {\r\n ...acc,\r\n [v.Symbol]: v,\r\n };\r\n },\r\n {}\r\n );\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n quotes,\r\n },\r\n };\r\n }\r\n case getType(Actions.removeQuote): {\r\n const key = isActionOf(Actions.removeQuote, action) ? action.payload : undefined;\r\n const quotes: Record = _(state.data.quotes)\r\n .filter(q => q.Symbol !== key)\r\n .reduce((acc: Record, v) => ({ ...acc, [v.Symbol]: v }), {});\r\n return {\r\n ...state,\r\n data: {\r\n ...state.data,\r\n quotes,\r\n },\r\n };\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport const OrderStateReducer = (initialOrderState: OrderBlockState, action: AllOrderActions) => {\r\n const baseBlockState = isBlockAction(action)\r\n ? blockReducer(initialOrderState, action)\r\n : initialOrderState;\r\n const intermediateState: OrderBlockState = BaseOrderStateReducer(baseBlockState, action as any);\r\n const orderState = OrderPreviewReducer(intermediateState, action);\r\n const finalOrderState = BlockTablesReducer(orderState, action as BlockTableAction);\r\n return finalOrderState;\r\n};\r\n","import _ from 'lodash';\nimport {\n AssetSymbol,\n Legs,\n OrderAction,\n TradingStrategy,\n OrderLegDTO,\n BlockType,\n IBlockDataState,\n PriceChartSettings,\n TradingStrategyNameOrCustom,\n TradingStrategyName,\n InfoBlockSettings,\n} from '@tradingblock/types';\nimport { BuildInitialOrder, getKnownStrategy } from '@tradingblock/api';\nimport { OrderState } from './Order/state/OrderState';\nimport { DefaultOrderState } from './Order/state/OrderReducer';\nimport { DefaultOrderBlockSettings } from './Order/state/OrderSettings';\nimport { PriceChartState } from './PriceChart/state/PriceChartState';\nimport { DefaultPriceChartSettings } from './PriceChart/state/PriceChartSettings';\nimport { OptionChainState } from './OptionChain/state/OptionChainState';\nimport { QuoteState } from './QuoteExtended/state/QuoteState';\nimport { InfoBlockDataState } from './Info/state/InfoState';\nimport { DefaultInfoBlockSettings } from './Info/state/InfoSettings';\nexport const OrderStateFactory = {\n Initial: DefaultOrderState(DefaultOrderBlockSettings, 'Custom'),\n Build: (\n strategyOrStrategyName: TradingStrategy | TradingStrategyName,\n symbol: AssetSymbol,\n reverse: boolean = false\n ): OrderState => {\n const strategy =\n typeof strategyOrStrategyName === 'string' ? getKnownStrategy(strategyOrStrategyName) : strategyOrStrategyName;\n if (strategy && strategy.profile) {\n const defaultLegs = BuildInitialOrder(strategy, { Symbol: symbol.symbol }).Legs;\n const legs = _.reduce(\n defaultLegs,\n (acc: Legs, val: OrderLegDTO) => {\n const legAction = reverse\n ? val.Action === OrderAction.Buy\n ? OrderAction.Sell\n : OrderAction.Buy\n : val.Action;\n return { ...acc, [val.Id]: { ...val, Action: legAction } };\n },\n {}\n );\n return {\n ...DefaultOrderState(DefaultOrderBlockSettings, strategy.info.Name),\n symbol,\n legs,\n strategy: strategy.info.Name,\n };\n }\n return {\n ...DefaultOrderState(DefaultOrderBlockSettings, 'Custom'),\n symbol,\n strategy: 'Custom',\n };\n },\n};\nexport const PriceChartStateFactory: StateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): PriceChartState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n Settings: DefaultPriceChartSettings,\n};\nexport const OptionChainStateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): OptionChainState => {\n return {\n isDirty: false,\n };\n },\n};\nexport const QuoteStateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): QuoteState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n};\nexport const InfoStateFactory: StateFactory = {\n Initial: {},\n Build: (symbol: AssetSymbol): InfoBlockDataState => {\n return {\n symbol,\n isDirty: false,\n };\n },\n Settings: DefaultInfoBlockSettings,\n};\ninterface StateSettingsFactory {\n Settings: SET;\n}\ninterface StateFactory extends StateSettingsFactory {\n Initial: Partial;\n Build: (...args: any[]) => S;\n}\nconst FactoryMap = {\n [BlockType.PriceChart]: PriceChartStateFactory,\n};\nexport function blockStateFactory(type: T): StateSettingsFactory {\n const defaultFactory: StateSettingsFactory = { Settings: {} };\n return _.get(FactoryMap, type, defaultFactory);\n}\n","import _ from 'lodash';\nimport {\n BlockConfiguration,\n DashboardConfiguration,\n Layout,\n BlockType,\n Layouts,\n SizeType,\n BlockLayouts,\n DefaultDashboardConfiguration,\n BlockTypeConfiguration,\n CreateDashboardRequest,\n} from '@tradingblock/types';\nimport { Shares, getMinBlockSize } from '@tradingblock/api';\nimport { newId } from '@tradingblock/components';\nimport {\n OrderStateFactory,\n PriceChartStateFactory,\n OptionChainStateFactory,\n QuoteStateFactory,\n InfoStateFactory,\n} from '../blocks/BlockStateFactory';\n\ntype BlockPreset = Pick;\n\nexport const isBlockTypeAllowed = (blockType: BlockType, isVirtualEnv: boolean) => {\n if (isVirtualEnv) {\n // some block types are not allowed in virtual env\n return (\n !_.includes([BlockType.AccountTransfer], blockType) &&\n !_.includes([BlockType.AccountManagement], blockType) &&\n !_.includes([BlockType.AdminTools], blockType) &&\n !_.includes([BlockType.AccountStatements], blockType) &&\n !_.includes([BlockType.SubAccountManagement], blockType)\n );\n }\n\n return true;\n};\n\nconst getBlocksWithIds = (blocks: Omit[], isVirtualEnv: boolean) => {\n const allowedBlocks = _.filter(blocks, b => isBlockTypeAllowed(b.type, isVirtualEnv));\n return _.map(allowedBlocks, b => ({ ...b, blockId: newId(), groupId: b.groupId || newId() }));\n};\n\nconst getPresetData = (blocks: BlockPreset[], isVirtualEnv: boolean) => {\n const blocksWithIds = getBlocksWithIds(blocks, isVirtualEnv);\n // separate out layouts from blocks\n const presetLayouts = _.reduce(\n blocksWithIds,\n (layouts: Layouts, block) => {\n return _.reduce(\n block.layouts || {},\n (acc: Layouts, blockLayout, breakpoint) => {\n const breakpointLayouts = [\n ...(acc[breakpoint] || []),\n { ...blockLayout, i: block.blockId, type: block.type },\n ];\n return { ...acc, [breakpoint]: breakpointLayouts };\n },\n layouts\n );\n },\n {}\n );\n // remove layouts from each block\n const presetBlocks = _.map(blocksWithIds, b => _.omit(b, 'layouts'));\n return {\n presetBlocks,\n presetLayouts,\n };\n};\n\nconst presetBlockLayoutAndData = (columns: number, breakpoint: SizeType) => (type: BlockType, layout: Layout) => (\n b: BlockTypeConfiguration\n) => {\n const isMatch = b.type === type;\n if (isMatch) {\n let data: any = b.initialData;\n const initSymbol = b.initialData.symbol;\n if (type === BlockType.PriceChart) {\n data = PriceChartStateFactory.Build(b.initialData.symbol);\n } else if (initSymbol && type === BlockType.OptionChain) {\n data = OptionChainStateFactory.Build(initSymbol);\n } else if (initSymbol && type === BlockType.Order) {\n data = OrderStateFactory.Build(Shares, initSymbol);\n } else if (initSymbol && type === BlockType.Quote) {\n data = QuoteStateFactory.Build(initSymbol);\n } else if (initSymbol && type === BlockType.Info) {\n data = InfoStateFactory.Build(initSymbol);\n }\n\n const minSize = getMinBlockSize(type, columns, breakpoint);\n const layouts = _.reduce(\n _.values(SizeType),\n (acc: BlockLayouts, b) => ({ ...acc, [b]: { ...layout, type, minW: minSize.w, minH: minSize.h } }),\n {}\n );\n return {\n ...b,\n layouts,\n data,\n };\n }\n\n return b;\n};\n\nconst getDashboardPreset = (\n columns: number,\n dashboardConfig: DefaultDashboardConfiguration,\n isVirtualEnv: boolean,\n breakpoint: SizeType\n) => {\n const equalSize = Math.floor(columns * 0.5);\n // const narrowSize = Math.floor(columns * 0.45);\n\n // calculate w/x for block layouts based on columns\n const layouts = {\n full: { w: columns, x: 0 },\n equal: {\n left: { w: equalSize, x: 0 },\n right: { w: columns - equalSize, x: equalSize },\n },\n // offset: {\n // left: { w: narrowSize, x: 0 },\n // right: { w: columns - narrowSize, x: narrowSize },\n // },\n };\n\n const presetBlockData = presetBlockLayoutAndData(columns, breakpoint);\n\n switch (dashboardConfig.title) {\n case 'Account Summary':\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 7, y: 1 }))\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 7, y: 1 }))\n .map(presetBlockData(BlockType.AccountManagement, { ...layouts.equal.left, h: 5, y: 2 }))\n .map(presetBlockData(BlockType.AccountStatements, { ...layouts.equal.left, h: 4, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.Positions, { ...layouts.equal.right, h: 4, y: 2 }))\n .map(presetBlockData(BlockType.Order, { ...layouts.equal.right, h: 6, y: 3 }))\n .map(presetBlockData(BlockType.AccountTransfer, { ...layouts.equal.right, h: 4, y: 4 })),\n isVirtualEnv\n ),\n };\n\n case 'Research':\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Favorites, { ...layouts.equal.left, h: 6, y: 1 }))\n .map(presetBlockData(BlockType.OptionChain, { ...layouts.equal.left, h: 5, y: 2 }))\n .map(presetBlockData(BlockType.Info, { ...layouts.equal.left, h: 5, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.PriceChart, { ...layouts.equal.right, h: 9, y: 2 }))\n .map(presetBlockData(BlockType.Quote, { ...layouts.equal.right, h: 5, y: 3 })),\n isVirtualEnv\n ),\n };\n\n case 'Trading': {\n return {\n ...dashboardConfig,\n ...getPresetData(\n dashboardConfig.blocks\n .map(presetBlockData(BlockType.Order, { ...layouts.equal.left, h: 6, y: 1 }))\n .map(presetBlockData(BlockType.Activity, { ...layouts.equal.left, h: 4, y: 2 }))\n .map(presetBlockData(BlockType.OptionChain, { ...layouts.equal.left, h: 6, y: 3 }))\n .map(presetBlockData(BlockType.Account, { ...layouts.equal.right, h: 2, y: 1 }))\n .map(presetBlockData(BlockType.Positions, { ...layouts.equal.right, h: 6, y: 2 }))\n .map(presetBlockData(BlockType.PriceChart, { ...layouts.equal.right, h: 8, y: 3 })),\n isVirtualEnv\n ),\n };\n }\n }\n return {\n ...dashboardConfig,\n ...getPresetData(dashboardConfig.blocks, isVirtualEnv),\n };\n};\n\nexport const getDashboardPresetsForRepCode = (\n repCode: string | undefined,\n columns: number,\n dashboardConfig: DefaultDashboardConfiguration[],\n isVirtualEnv: boolean,\n breakpoint: SizeType\n): DashboardConfiguration[] => {\n if (repCode) {\n // preset dashboards for specific rep codes not defined yet...\n return [];\n }\n // default preset dashboards (rep code not defined)\n return dashboardConfig.map(dc => getDashboardPreset(columns, dc, isVirtualEnv, breakpoint));\n};\n\nexport const getCreateDashboardRequest = (board: DashboardConfiguration): CreateDashboardRequest => {\n const { presetBlocks, presetLayouts, ...info } = board;\n return {\n info,\n blocks: presetBlocks,\n layouts: presetLayouts,\n dashboard: { dashboardTemplateId: info.dashboardTemplateId },\n };\n};\n","import useMount from 'react-use/lib/useMount';\nimport { createSelector } from 'reselect';\nimport { DashboardConfiguration } from '@tradingblock/types';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { getDashboardPresetsForRepCode } from '../../../utilities/dashboard';\nimport { dashboardSettingsSelector } from '../../../hooks/useDashboardSettings';\n\nconst defaultDashboardsSelector = createSelector(\n (s: DataState) => s.settings.defaultDashboards,\n (s: DataState) => dashboardSettingsSelector(s).columns.lg,\n (s: DataState) => s.environment.isVirtual,\n (s: DataState) => s.settings.ui.breakpoint,\n (defState, lgColumns, isVirtual, breakpoint) => {\n const dashValues = defState.dashboards || [];\n const dashboards = getDashboardPresetsForRepCode('', lgColumns, dashValues, isVirtual, breakpoint);\n return {\n dashboards,\n isFetching: defState.isFetching,\n };\n }\n);\n\nexport const useDefaultDashboards = (): [DashboardConfiguration[], boolean] => {\n const { dashboards, isFetching } = useStateSelector(defaultDashboardsSelector);\n\n const { dispatcher } = useDispatcher();\n useMount(() => {\n if (isFetching || (dashboards && dashboards.length > 0)) {\n return;\n } else {\n dispatcher.settings.requestDefaultDashboards();\n }\n });\n return [dashboards, isFetching];\n};\n","/* eslint-disable @typescript-eslint/camelcase */\nimport _ from 'lodash';\nimport { Config } from '../config';\n\nexport const isLocalhost = () => _.includes(window.location.host, 'localhost');\n\nexport const IsDevelopment = Config.isProduction === false;\n\nexport const LoginRedirectUrl = `${Config.authRedirect}/auth`;\n","import React, { useState, useMemo, useCallback } from 'react';\nimport { useSelector } from 'react-redux';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal, Button, FormGroup } from 'react-bootstrap';\nimport { Modal, TextboxField, Alert } from '@tradingblock/components';\nimport { DashboardInfo, AlertType } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { dashboardsSelectors } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { GenericField } from '../../form/GenericField';\nimport { isLocalhost } from '../../../utilities/url';\n\nexport interface EditBoardProps {\n validateOnMount?: boolean;\n dashboard: DashboardInfo;\n header?: string;\n show: boolean;\n onSave: (board: DashboardInfo) => void;\n onDelete?: () => void;\n onClose: () => void;\n}\n\ntype DashboardFormValues = Pick & { confirmDelete: string };\nexport const EditDashboardModal: React.FunctionComponent = ({ header, dashboard, show, onSave, onDelete, onClose, validateOnMount }) => {\n const [confirmDelete, setConfirmDelete] = useState(false);\n const dashboardTitlesExcludingCurrent = useSelector((s: DataState) => dashboardsSelectors.dashboardTitlesExcludingId(s, dashboard.dashboardId));\n const onValidate = useCallback(\n (values: DashboardFormValues) => {\n // console.warn('EditBoard :: validate values ', values);\n if (!values.title) {\n return { title: 'Title is required' };\n }\n if (dashboardTitlesExcludingCurrent.includes(values.title.toLocaleLowerCase().trim())) {\n return { title: 'This title is already in use. Please rename your dashboard.' };\n }\n return {};\n },\n [dashboardTitlesExcludingCurrent]\n );\n const onSubmit = useCallback(\n (values: DashboardFormValues) => {\n const title = values.title;\n const cleanValues = {\n ...values,\n title: title && isString(title) ? title.trim() : title,\n };\n onSave({ ...dashboard, ...cleanValues });\n\n onClose();\n },\n [dashboard, onClose, onSave]\n );\n const onDeleteClick = () => {\n if (onDelete && isLocalhost()) {\n onDelete();\n onClose();\n } else {\n setConfirmDelete(true);\n }\n };\n const onDeleteConfirmClick = (values: DashboardFormValues) => {\n const confirmDeleteValue = values.confirmDelete;\n if (onDelete && confirmDeleteValue && confirmDeleteValue.toLocaleLowerCase().trim() === 'delete') {\n onDelete();\n setConfirmDelete(false);\n onClose();\n }\n };\n const initialValues: DashboardFormValues = useMemo(() => ({ title: dashboard ? dashboard.title : '', confirmDelete: '' }), [dashboard]);\n const headerText = useMemo(() => {\n if (header) {\n return header;\n } else {\n return `${confirmDelete ? 'Delete' : dashboard && dashboard.dashboardId ? 'Edit' : 'Add'} dashboard`;\n }\n }, [confirmDelete, dashboard, header]);\n if (!show) {\n return null;\n }\n\n return (\n \n {({ values, handleSubmit, errors }) => (\n onClose} show>\n \n {headerText}\n \n \n
\n \n {/* */}\n \n {errors.title && }\n \n\n {onDelete && confirmDelete && (\n <>\n \n

\n To confirm deletion of this dashboard, please type DELETE in the box below.\n

\n \n
\n \n )}\n
\n
\n \n {onDelete && (\n <>\n {!confirmDelete && (\n \n )}\n {confirmDelete && (\n <>\n \n \n \n )}\n \n )}\n {!confirmDelete && (\n <>\n \n \n \n )}\n \n
\n )}\n \n );\n};\n","import React, { useState, useEffect, useCallback } from 'react';\nimport { DashboardInfo } from '@tradingblock/types';\nimport { ExternalLink, getClassNames } from '@tradingblock/components';\nimport { EditDashboardModal } from './EditDashboardModal';\n\nexport const DashboardItem: React.FunctionComponent<{\n dashboard: DashboardInfo;\n isSelected?: boolean;\n isLocked?: boolean;\n openInNewWindow?: boolean;\n onSelectBoard?: () => void;\n onSaveBoard?: (board: DashboardInfo) => void;\n onDeleteBoard?: () => void;\n}> = ({ dashboard, isSelected, isLocked, openInNewWindow, onSelectBoard, onSaveBoard, onDeleteBoard, children }) => {\n const [showEditBoard, setShowEditBoard] = useState(false);\n const onKeyDown = (e: KeyboardEvent) => {\n // if modals open while pressing ESC, close them\n if (showEditBoard && e.keyCode === 27) {\n e.preventDefault();\n e.stopPropagation();\n if (showEditBoard) {\n setShowEditBoard(false);\n }\n }\n };\n\n useEffect(() => {\n // NOTE: we add listener to body, instead of document (since dashboard drawer listens on document, and this inner listener should fire first)\n document.body.addEventListener('keydown', onKeyDown);\n return () => {\n document.body.removeEventListener('keydown', onKeyDown);\n };\n });\n const onKeyPressHandler = useCallback(() => {}, []);\n\n const className = getClassNames(['board-thumb', isSelected ? 'board-thumb-current' : null]);\n return (\n <>\n
\n
\n
{dashboard && dashboard.title}
\n
\n {isSelected && (\n \n \n \n \n )}\n {isLocked && (\n
\n \n
\n )}\n
\n {children}\n {onSaveBoard && (\n <>\n
\n \n
\n setShowEditBoard(false)} />\n \n )}\n {openInNewWindow && dashboard.dashboardId && (\n <>\n
\n \n Open in new tab\n \n
\n \n )}\n \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport { Carousel, CarouselResponsiveOptions } from '@tradingblock/components';\nimport { DashboardInfo, DashboardConfiguration } from '@tradingblock/types';\nimport { useDefaultDashboards } from './hooks/useDefaultDashboards';\nimport { DashboardItem } from './drawer/DashboardItem';\nimport { EditDashboardModal } from './drawer/EditDashboardModal';\nimport { dashboardsSelectors } from '../../data/global/dataSelectors';\n\nexport const DashboardPresetCarousel: React.FunctionComponent<{ onSelectBoard: (board: DashboardConfiguration) => void }> = ({ onSelectBoard }) => {\n const [defaultDashboards, isFetching] = useDefaultDashboards();\n const [selectedBoard, setSelectedBoard] = useState();\n const dashboardTitles = useSelector(dashboardsSelectors.dashboardTitles);\n const onBoardSelected = useCallback(\n (board: DashboardConfiguration) => {\n if (dashboardTitles && dashboardTitles.includes(board.title.toLocaleLowerCase().trim())) {\n setSelectedBoard(board);\n } else {\n onSelectBoard(board);\n }\n },\n [dashboardTitles, onSelectBoard]\n );\n\n const onClose = useCallback(() => {\n setSelectedBoard(undefined);\n }, []);\n const onSave = useCallback(\n (board: DashboardInfo) => {\n const saveValue = selectedBoard ? { ...selectedBoard, title: board.title } : undefined;\n setSelectedBoard(undefined);\n if (saveValue) {\n onSelectBoard(saveValue);\n }\n },\n [onSelectBoard, selectedBoard]\n );\n return (\n <>\n

\n Starter boards\n

\n
\n {isFetching === true && 'Loading...'}\n {isFetching === false && (\n <>\n \n {defaultDashboards.map(d => (\n onBoardSelected(d)} />\n ))}\n \n {selectedBoard && }\n \n )}\n
\n \n );\n};\n","import { DataState } from '../state';\nimport { origin as originSel } from '../dataSelectors';\n\nexport const origin = {\n ...originSel,\n origin: (s: DataState) => s.auth.origin,\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { TradingBlockLink as BaseTradingBlockLink, TradingBlockLinkProps } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { origin } from '../../data/global/selectors/originSelector';\n\nexport const TradingBlockLink: React.FC> = ({ children, ...props }) => {\n const accountNumber = useSelector(account.accountNumber);\n const originVal = useSelector(origin.origin);\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport _ from 'lodash';\nimport { SiteName as BaseSiteName } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { origin } from '../../data/global/selectors/originSelector';\n\nexport const SiteName: React.FC = () => {\n const accountNumber = useSelector(account.accountNumber);\n const originValue = useSelector(origin.origin);\n\n return ;\n};\n","import React, { useCallback, useState, useEffect, useMemo } from 'react';\nimport { useSelector } from 'react-redux';\nimport _ from 'lodash';\nimport { Carousel, CarouselResponsiveOptions, useAlerts, newId } from '@tradingblock/components';\nimport { DashboardInfo, DashboardConfiguration } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { dashboardsSelectors } from '../../data/global/dataSelectors';\nimport { useStore } from '../../context/Storage';\nimport { tryCreateDashboard } from '../../data/async/dashboards';\nimport { DashboardPresetCarousel } from './DashboardPresetCarousel';\nimport { EditDashboardModal } from './drawer/EditDashboardModal';\nimport { DashboardItem } from './drawer/DashboardItem';\nimport { DashboardActions } from '../../data/global/actions';\nimport { TradingBlockLink } from '../basic/TradingBlockLink';\nimport { SiteName } from '../basic/SiteName';\nimport { getCreateDashboardRequest } from '../../utilities/dashboard';\nimport Config from '../../config';\n\ninterface DashboardDrawerProps {\n isOpen: boolean;\n toggleIsOpen: () => void;\n}\n\nconst defaultDashboard: DashboardInfo = {\n dashboardId: newId(),\n title: '',\n};\n\nexport const DashboardDrawer: React.FunctionComponent = ({ isOpen, toggleIsOpen }) => {\n const store = useStore();\n const { dispatch, dispatcher } = useDispatcher();\n const notifications = useAlerts();\n\n const userDashboards = useSelector(dashboardsSelectors.dashboards);\n const currentDashboardId = useSelector(dashboardsSelectors.dashboardId);\n const [showAddBoard, setShowAddBoard] = useState(false);\n\n const canDeleteUserDashboard = useMemo(() => {\n // on production, can't delete last dashboard (so there is always at least one)\n return userDashboards ? _.size(userDashboards) > 1 : false;\n }, [userDashboards]);\n\n // hardcoded exchange boards\n const exchangeBoards = _.map(['Research #1', 'Trade Ideas #2'], t => ({ title: t, dashboardId: '' }));\n\n const onAddBoard = useCallback((values: DashboardInfo) => {\n const dashboardInfo: DashboardInfo = { title: values.title, dashboardId: newId() };\n dispatch(DashboardActions.addEmptyDashboard({ dashboard: dashboardInfo, setAsActive: true }));\n }, []);\n\n const onUpdateBoard = useCallback(\n (board: DashboardInfo) => {\n dispatcher.dashboards.updateDashboard(board);\n },\n [dispatcher.dashboards]\n );\n\n const onDeleteBoard = useCallback(\n (board: DashboardInfo) => {\n dispatcher.dashboards.updateDashboard({ ...board, isDeleted: true });\n },\n [dispatcher.dashboards]\n );\n\n const onSelectDashboard = (board: DashboardInfo) => {\n dispatcher.dashboards.setDashboard({ dashboard: board });\n // toggleIsOpen();\n };\n\n const onSelectPresetDashboard = useCallback(\n (board: DashboardConfiguration) => {\n const newBoard = {\n ...board,\n dashboardId: newId(),\n };\n const createRequest = getCreateDashboardRequest(newBoard);\n\n tryCreateDashboard(store, createRequest).then(dashboardSaved => {\n if (!dashboardSaved) {\n console.warn('saving dashboard failed! ', newBoard);\n }\n dispatcher.dashboards.setDashboard({ dashboard: { ...newBoard } });\n });\n },\n [store, dispatcher.dashboards]\n );\n\n const onSelectExchangeDashboard = useCallback(async () => {\n notifications.info('Exchange boards not yet available...', { id: 'exchange-boards' });\n }, [notifications]);\n\n const onKeyDown = (e: KeyboardEvent) => {\n // if drawer open while pressing ESC, close drawer\n if (isOpen && e.keyCode === 27) {\n e.preventDefault();\n e.stopPropagation();\n if (showAddBoard) {\n setShowAddBoard(false);\n } else {\n toggleIsOpen();\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('keydown', onKeyDown);\n return () => {\n document.removeEventListener('keydown', onKeyDown);\n };\n });\n\n return (\n
\n
\n
\n Welcome to the new{' '}\n \n \n {' '}\n – designed to let you configure it just how you like.{' '}\n \n TAKE A VIDEO TOUR\n \n
\n
\n\n

\n My custom boards   \n \n

\n
\n setShowAddBoard(false)}\n validateOnMount={false}\n header=\"Add board\" />\n \n {_.map(userDashboards, (d, i) => (\n onSelectDashboard(d)}\n onSaveBoard={board => onUpdateBoard({ ...d, ...board })}\n onDeleteBoard={canDeleteUserDashboard ? () => onDeleteBoard(d) : undefined} />\n ))}\n \n
\n\n \n\n {exchangeBoards.length > 0 && (\n <>\n

\n The Exchange\n

\n
\n \n {exchangeBoards.map((b, i) => (\n onSelectExchangeDashboard()}\n isLocked={true} />\n ))}\n \n
\n \n )}\n
\n );\n};\n","import { createSelector } from 'reselect';\nimport { DataState } from '../state';\n\nexport const IsVirtualEnvironment = createSelector(\n (s: DataState) => s.environment.isVirtual,\n isVirtual => {\n return isVirtual;\n }\n);\n","import { useMemo } from 'react';\nimport { useStateSelector } from '../data/global/dataSelectors';\nimport { IsVirtualEnvironment } from '../data/global/selectors/environmentSelector';\n\nexport const useVirtualTrading = () => {\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n return useMemo(() => ({ isVirtualEnv }), [isVirtualEnv]);\n};\n","import { DataState } from './state';\nimport { DefaultGridLayout, ErroredStatus } from '@tradingblock/types';\nimport { DefaultOrderBlockSettings } from '../../blocks/Order/state/OrderSettings';\nimport Config from '../../config';\nimport { Session } from '../../constants';\nimport { DefaultAccountUpdateDetails, DefaultUserUpdateAccountDetails } from '@tradingblock/types';\nimport { DefaultOptionChainBlockSettings } from '../../blocks/OptionChain/state/OptionChainSettings';\nimport { DefaultInfoBlockSettings } from '../../blocks/Info/state/InfoSettings';\nimport { DefaultPositionsBlockSettings } from '../../blocks/Positions/usePositionSettings';\nimport { DefaultFavoriteBlockSettings } from '../../blocks/Favorites/useFavoriteSettings';\nimport { v4 as uuidv4 } from 'uuid';\n\nexport const InitialState: DataState = {\n auth: {\n isAuthenticated: false,\n isExpired: false,\n origin: '',\n },\n account: {\n dataEntitled: undefined,\n nickname: '',\n isIRA: false,\n isUGMA: false,\n isPartnership: false,\n accountId: -1,\n accountNumber: '',\n isFetching: false,\n account: undefined,\n subaccounts: { isFetching: false },\n history: [],\n pnl: [],\n profile: {\n isFetching: false,\n },\n isFetchingHistory: false,\n isFetchingOrders: false,\n shouldLoadMoreOrders: false,\n orders: undefined,\n orderErrorEvents: [],\n ordersUIState: {},\n showAccountSwitcher: false,\n hasMultipleAccounts: false,\n isSelectedLinkedAccountLoaded: true,\n accountDetails: undefined,\n },\n subAccountManagement: {\n subAccounts: [],\n subAccountPositions: [],\n },\n history: {\n balanceHistory: [],\n },\n accountData: {\n balances: { isFetching: false },\n accountsBalances: {},\n subAccountsBalances: {},\n },\n accounts: { isFetching: false },\n linkedAccounts: {\n accounts: [],\n page: 0,\n pageSize: 0,\n total: 0,\n isFetching: false,\n },\n accountManagement: {\n accountDetails: {\n isLoaded: false,\n data: {\n email: '',\n homePhone: '',\n mobilePhone: '',\n workPhone: '',\n mailingAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n physicalAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n },\n },\n update: {\n isLoading: false,\n isLoaded: false,\n data: undefined,\n },\n accountManagementDetails: {\n details: DefaultUserUpdateAccountDetails,\n isFetching: false,\n error: null,\n },\n pendingAccountManagementUpdates: {\n isFetching: false,\n data: null,\n error: null,\n },\n isPollingForPending: false,\n security: {\n isFetching: false,\n devices: [],\n error: null,\n },\n authHistory: {\n data: [],\n isFetching: false,\n error: null,\n },\n },\n environment: { isVirtual: Config.isVirtual },\n errors: {},\n favorites: {\n isFetching: false,\n symbols: [],\n },\n feedProvider: {},\n //info: {},\n layout: {},\n orders: {\n isFetching: false,\n },\n settings: {\n authenticationTimeout: Session.inactivityTimeout,\n ui: {\n ...DefaultGridLayout,\n muteAllSounds: false,\n showBannerSymbols: true,\n isFetching: false,\n bannerSymbols: [],\n afterHoursTrading: false,\n balancePollingThrottleMs: 1000 * 5,\n feedSyncIntervalMs: 500,\n cashieringPollingInterval: 120,\n cashieringPendingReminderInterval: 15 * 60,\n cashieringPendingReminderMaxAttempts: 16,\n hotkeys: true,\n },\n defaultDashboards: {\n isFetching: false,\n },\n },\n positions: { isFetching: false, positions: [], isDirty: false, info: {}, loaded: false },\n blocks: {\n isFetching: false,\n blocks: [],\n locked: true,\n linking: false,\n isFetchingInitial: false,\n groups: [],\n blockTypeSettings: {\n Order: DefaultOrderBlockSettings,\n OptionChain: DefaultOptionChainBlockSettings,\n Info: DefaultInfoBlockSettings,\n Positions: DefaultPositionsBlockSettings,\n Favorites: DefaultFavoriteBlockSettings,\n },\n },\n dashboards: { isFetching: false },\n spread: {\n spreadMetadata: {\n data: {},\n isFetching: false,\n },\n },\n quotes: {\n quoteMetadata: {\n isFetching: false,\n data: {},\n extended: {},\n },\n quoteExtended: {\n isFetching: false,\n data: {},\n },\n dividends: {},\n earnings: {},\n },\n notifications: [],\n optionchain: {\n bySymbol: {},\n },\n expirations: {},\n strikes: {},\n cashiering: {\n forms: {\n account: { isFetching: false, isSaving: false },\n transfer: { isFetching: false, isSaving: false },\n },\n securityQuestion: { isFetching: false, isSaving: false },\n balances: {},\n transfers: { isFetching: false, isSaving: false },\n achRelationships: { isFetching: false, isSaving: false },\n transferInstructions: { isFetching: false, isSaving: false },\n entities: {},\n isFetchingBalances: false,\n isFetchingEntities: false,\n isPollingForPending: false,\n },\n private: {\n account: {\n accounts: {},\n balances: {},\n accountDetails: {},\n balancesForWithdrawal: {},\n },\n accountManagement: {\n isFetching: false,\n updates: {},\n error: null,\n byQuery: {},\n ui: {\n page: 0,\n pageSize: 10,\n sortBy: 'Date',\n sortByOrder: 'desc',\n },\n currentItem: {\n request: {},\n details: DefaultAccountUpdateDetails,\n isFetching: false,\n isAccountFetching: false,\n error: null,\n accountInfo: DefaultUserUpdateAccountDetails,\n isUpdated: false,\n documentUpdate: false,\n },\n },\n alerts: {\n isFetching: false,\n ui: {\n page: 0,\n pageSize: 10,\n },\n alerts: [],\n error: undefined,\n byQuery: {},\n },\n applications: {\n isFetching: false,\n applications: {},\n ui: {\n page: 0,\n pageSize: 10,\n sortBy: 'createdOnValue',\n sortByOrder: 'desc',\n errors: [ErroredStatus.All],\n iraType: [],\n },\n currentItem: {\n application: {},\n investigation: {\n isFetching: false,\n response: {},\n },\n },\n error: undefined,\n byQuery: {},\n },\n cashiering: {\n relationships: {},\n relationshipDetails: {},\n transfers: {},\n transferDetails: {},\n beneficiaries: {},\n recipientBanks: {},\n wireInstructions: {},\n wireInstructionsDetails: {},\n entities: {},\n entityUpdatesExist: false,\n byQuery: {},\n ui: {\n pageSize: 50,\n page: 0,\n sortBy: 'Date',\n sortByOrder: 'desc',\n },\n adminCashieringDetailPageRouteKey: uuidv4(),\n adminCashieringTablePageRouteKey: uuidv4(),\n latestCashieringUpdateDataFromWebsocket: null,\n },\n clients: {\n byQuery: {},\n clients: {},\n ui: {\n pageSize: 25,\n page: 0,\n sortBy: 'AccountName',\n sortByOrder: 'asc',\n },\n },\n entitlements: {\n entitlementItems: {},\n isFetching: false,\n error: null,\n byQuery: {},\n ui: {\n pageSize: 10,\n page: 0,\n },\n currentItem: {\n request: {\n UserId: 0,\n AccountNumber: '',\n },\n isFetching: false,\n isAccountFetching: false,\n details: {},\n accountInfo: DefaultUserUpdateAccountDetails,\n },\n },\n },\n symbols: {\n isFetching: false,\n warningSymbols: [],\n },\n ui: {\n dashboard: {\n drawerIsOpen: false,\n isLocked: false,\n subAccountFilterId: undefined,\n entitlements: {\n showPendingEntitlementModal: null,\n },\n },\n marketSchedule: {\n market: undefined,\n indexMarket: undefined,\n },\n },\n performance: {\n bySymbol: {},\n positions: {},\n totals: {\n positionValue: 0,\n accountValue: 0,\n tradedToday: { trading: 0, position: 0, total: 0, pnls: [] },\n all: { trading: 0, position: 0, total: 0, pnls: [] },\n },\n },\n information: {\n alerts: {\n isFetching: false,\n activeAlerts: [],\n },\n releaseNotes: {},\n ui: {\n page: 0,\n pageSize: 5,\n },\n releaseNoteUpdate: false,\n marketNews: {},\n isPollingForMarketNews: false,\n },\n accountStatements: {\n dailyStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n monthlyStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n taxStatements: {\n dataStartDate: new Date(),\n dataEndDate: new Date(),\n data: [],\n },\n },\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { Formik } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport * as Yup from 'yup';\nimport { FormGroup, Modal, Tooltip, } from '@tradingblock/components';\nimport { DefaultGridLayout, UiSettings } from '@tradingblock/types';\nimport { useDispatcher } from './../../data/global/hooks';\nimport { useStateSelector, account, dashboardsSelectors } from '../../data/global/dataSelectors';\nimport { useStore } from './../../context/Storage';\nimport { useDashboardSettings, useDashboardSettingsUpdater } from './../../hooks/useDashboardSettings';\nimport { GenericField } from '../form/GenericField';\nimport { Config } from '../../config';\nimport { useVirtualTrading } from '../../hooks/useVirtualTrading';\nimport { useSelector } from 'react-redux';\nimport { InitialState } from '../../data/global/initialState';\n\nexport const DashboardSettings: React.FC<{ show?: boolean; toggleModal: () => void }> = ({ show, toggleModal }) => {\n const { columns, ...initialSettings } = useDashboardSettings();\n const { updateSettings } = useDashboardSettingsUpdater();\n const { isVirtualEnv } = useVirtualTrading();\n const { dispatcher } = useDispatcher();\n const [shouldResetSettings, setShouldResetSettings] = useState(false);\n const [shouldDisableSubmit, setShouldDisableSubmit] = useState(false);\n const dashboardId = useSelector(dashboardsSelectors.dashboardId);\n const accountId = useStateSelector(account.accountId);\n const store = useStore();\n const [submitBtnDisabled, setSubmitBtnDisabled] = useState(false);\n const [submitBtnRef, setSubmitBtnRef] = useState(null);\n\n const initialUiState = InitialState.settings.ui;\n const defaultDashboardSettings = {\n ...DefaultGridLayout,\n muteAllSounds: initialUiState.muteAllSounds,\n showBannerSymbols: initialUiState.showBannerSymbols,\n bannerSymbols: initialUiState.bannerSymbols,\n afterHoursTrading: initialUiState.afterHoursTrading,\n balancePollingThrottleMs: initialUiState.balancePollingThrottleMs,\n feedSyncIntervalMs: initialUiState.feedSyncIntervalMs,\n cashieringPollingInterval: initialUiState.cashieringPollingInterval,\n cashieringPendingReminderInterval: initialUiState.cashieringPendingReminderInterval,\n cashieringPendingReminderMaxAttempts: initialUiState.cashieringPendingReminderMaxAttempts,\n hotkeys: initialUiState.hotkeys,\n };\n\n useEffect(() => {\n const tryReset = async () => {\n const approvedSettingsReset = shouldResetSettings && window.confirm(\n 'Are you sure you want to reset dashboard settings?\\nAll settings will be return to default values.\\nContinue?'\n );\n if (dashboardId && approvedSettingsReset) {\n if (accountId) {\n dispatcher.settings.setSettings(accountId, defaultDashboardSettings);\n }\n }\n if (approvedSettingsReset) toggleModal();\n };\n if (store && (shouldResetSettings)) tryReset();\n return () => {\n setShouldDisableSubmit(false);\n setShouldResetSettings(false);\n }\n }, [dashboardId, shouldResetSettings, shouldDisableSubmit, store, toggleModal]);\n\n const onSubmit = useCallback(\n (values: UiSettings, { setSubmitting }) => {\n const settings = {\n ...values,\n gridColumnsLarge: _.toNumber(values.gridColumnsLarge),\n gridColumnsMedium: _.toNumber(values.gridColumnsMedium),\n gridColumnsSmall: _.toNumber(values.gridColumnsSmall),\n width: _.toNumber(values.width),\n feedSyncIntervalMs: _.toNumber(values.feedSyncIntervalMs),\n cashieringPollingInterval: _.toNumber(values.cashieringPollingInterval),\n cashieringPendingReminderInterval: _.toNumber(values.cashieringPendingReminderInterval),\n cashieringPendingReminderMaxAttempts: _.toNumber(values.cashieringPendingReminderMaxAttempts),\n };\n !shouldDisableSubmit && updateSettings(settings);\n !shouldDisableSubmit && toggleModal();\n },\n [updateSettings, toggleModal]\n );\n const onCancel = useCallback(() => {\n toggleModal();\n }, [toggleModal]);\n const canViewCashieringAdmin = useStateSelector(account.hasCashieringAdminPermission);\n\n // Validation\n const genericNumberInputErrorMsg = 'Please enter a positive integer greater than zero.'\n const genericNumberInputValidationSchema = Yup\n .number()\n .transform((value) => isNaN(value) ? null : value)\n .nullable()\n .required(genericNumberInputErrorMsg)\n .positive(genericNumberInputErrorMsg)\n .integer(genericNumberInputErrorMsg);\n \n const feedSyncIntervalMsInputMinValue = 500;\n const feedSyncIntervalMsInputMaxValue = 1000000000;\n const feedSyncIntervalMsInputErrorMsg = `Please enter an integer between ${feedSyncIntervalMsInputMinValue} and ${feedSyncIntervalMsInputMaxValue}.`\n const feedSyncIntervalMsInputValidationSchema = Yup\n .number()\n .transform((value) => isNaN(value) ? null : value)\n .nullable()\n .required(feedSyncIntervalMsInputErrorMsg)\n .positive(feedSyncIntervalMsInputErrorMsg)\n .integer(feedSyncIntervalMsInputErrorMsg)\n .min(feedSyncIntervalMsInputMinValue, feedSyncIntervalMsInputErrorMsg)\n .max(feedSyncIntervalMsInputMaxValue, feedSyncIntervalMsInputErrorMsg);\n\n const gridColumnsLargeName = 'gridColumnsLarge';\n const gridColumnsMediumName = 'gridColumnsMedium';\n const gridColumnsSmallName = 'gridColumnsSmall';\n const widthName = 'width';\n const feedSyncIntervalMsName = 'feedSyncIntervalMs';\n const cashieringPollingIntervalName = 'cashieringPollingInterval';\n const cashieringPendingReminderIntervalName = 'cashieringPendingReminderInterval';\n const cashieringPendingReminderMaxAttemptsName = 'cashieringPendingReminderMaxAttempts';\n\n return (\n \n {({ values, errors, handleSubmit }) => (\n toggleModal()} show={show}>\n \n Dashboard settings\n \n \n
{\n e.preventDefault()\n handleSubmit()\n }}>\n
Grid
\n \n \n \n \n \n \n
Trading
\n \n {!Config.isProduction && (\n \n )}\n \n
Data
\n \n \n \n \n {canViewCashieringAdmin && (\n <>\n \n \n \n \n )}\n \n
Search Banner Symbols
\n \n \n \n
Miscellaneous
\n \n \n \n
  • ALT+E - Toggle Dashboard lock
  • \n
  • ALT+S - Toggle Dashboard settings
  • \n
  • ALT+O - Create Order block
  • \n \n }\n type=\"light\"\n >\n \n \n
    \n \n
    \n \n
    \n
    \n {/* TODO: In order to keep the buttons in the footer in order to have the placement of the buttons fixed so they do not scroll */}\n {/* in the body of the modal and since we need the Formik context the invisible button below was added which hooks into */}\n {/* the Formik context. The ref from the button is then used to pass the click handler and the disabled state to the button in the footer. */}\n {/* The ref prop is using a function instead of useRef in order to get the latest ref state (node) to set the applicable items in the */}\n {/* component state in order to get the component to rerender so that it has the latest versions of the attributes of the node. */}\n {/* We should look into refactoring how we setup the forms using Formik in order to avoid this hack. */}\n {\n setSubmitBtnDisabled(!!(node && node.disabled));\n setSubmitBtnRef(node)\n }}\n disabled={Object.keys(errors).length > 0}\n />\n \n \n {!Config.isProduction && !isVirtualEnv && (\n \n )}\n \n
    \n \n \n submitBtnRef && submitBtnRef.click()}\n disabled={submitBtnDisabled}\n className=\"settings-submit-btn\"\n >\n Save\n \n \n
    \n )}\n \n );\n};\n","import { useEffect, useState, useCallback } from 'react';\nimport { LocalStorageProvider } from '@tradingblock/storage';\nimport { LocalStorageKey } from '../constants';\nimport { Config } from '../config';\n\nconst localStorageProvider = LocalStorageProvider({});\n\nexport const useReduxConfiguration = () => {\n const [loaded, setLoaded] = useState(false);\n const [enableRedux, setEnableRedux] = useState(Config.isProduction ? false : true);\n useEffect(() => {\n localStorageProvider.get(LocalStorageKey.enableRedux).then(res => {\n if (res !== undefined) {\n setEnableRedux(res);\n }\n setLoaded(true);\n });\n }, []);\n const set = useCallback((val: boolean) => {\n localStorageProvider.save(LocalStorageKey.enableRedux, val).then(() => {\n setEnableRedux(val);\n });\n }, []);\n return {\n enableRedux,\n loaded,\n set,\n };\n};\n","import React, { useState, useCallback, useMemo } from 'react';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport _ from 'lodash';\nimport { Modal, FormGroup, TextboxField, Hotkey, setLogLevel, CheckboxInput } from '@tradingblock/components';\nimport { useDashboardSettings } from '../hooks/useDashboardSettings';\nimport { useReduxConfiguration } from '../hooks/useReduxConfiguration';\nimport { useStateSelector, uiApiTokenAndVersion } from '../data/global/dataSelectors';\nimport { Actions } from '../data/global/actions';\nimport { useDebugLevel } from './useDebugSettings';\n\nexport const DebugSettings: React.FC<{}> = () => {\n const [debugLevel, setDebugLevel] = useDebugLevel();\n const [show, setShow] = useState(false);\n const { hotkeys } = useDashboardSettings();\n const dispatch = useDispatch();\n const clientVersion = useStateSelector(s => uiApiTokenAndVersion(s).version);\n const initialvalues = useMemo(() => ({ debuglevel: debugLevel, version: clientVersion || '' }), [\n debugLevel,\n clientVersion,\n ]);\n const { enableRedux, set } = useReduxConfiguration();\n\n const onDevToolsChange = useCallback(\n (e: React.ChangeEvent | undefined, value?: any) => {\n set(value && value === true ? true : false);\n },\n [set]\n );\n\n const onSubmit = useCallback(\n ({ debuglevel, version }: { debuglevel: string; version: string }) => {\n // setLogLevel(debuglevel);\n setDebugLevel(debuglevel);\n setShow(false);\n if (clientVersion !== version && clientVersion) {\n dispatch(Actions.clientVersionMismatch({ previous: clientVersion, current: version }));\n }\n },\n [clientVersion]\n );\n\n return (\n <>\n {hotkeys && (\n <>\n setShow(true)} />\n dispatch(Actions.refreshToken())} />\n \n )}\n\n setShow(isOpen)} show={show}>\n \n {({ handleSubmit }) => (\n <>\n \n Dashboard settings\n \n \n
    \n
    Debug
    \n \n \n \n\n \n \n \n\n \n \n \n
    \n
    \n \n \n \n \n \n )}\n
    \n
    \n \n );\n};\n","import { useStore } from '../context/Storage';\nimport { useEffect, useState, useCallback } from 'react';\nimport { objects, DebugSettings } from '@tradingblock/types';\nimport { setLogLevel } from '@tradingblock/components';\n\nexport const useDebugLevel = (): [string, (val: string) => void] => {\n const apiStore = useStore();\n const [debugLevel, setDebugLevel] = useState('');\n useEffect(() => {\n apiStore.get(objects.debugSettings).then(res => {\n if (res) {\n setDebugLevel(res.level || '');\n }\n });\n }, []);\n const setLevel = useCallback(\n (level?: string) => {\n const debugLvl = level || '';\n setLogLevel(debugLvl);\n setDebugLevel(debugLvl);\n apiStore.save(objects.debugSettings, { level: debugLvl });\n },\n [setDebugLevel]\n );\n return [debugLevel, setLevel];\n};\n","import _ from 'lodash';\r\nimport { AdminLink, UserRole, UserProfileLevel } from '@tradingblock/types';\r\nimport { canAccessAdminLink } from '../../utilities/admin';\r\n\r\nconst AdminLinks: AdminLink[] = [\r\n {\r\n text: 'Forms',\r\n url: 'https://tradingblock.com/admin-forms',\r\n secondaryUrl: 'https://moneyblock.com/admin-forms',\r\n icon: 'fal fa-file-contract',\r\n roles: undefined, // not specific to a user role, any admin/rep can access\r\n },\r\n {\r\n text: 'Cashiering review',\r\n url: '/admin/cashiering',\r\n icon: 'fal fa-cogs',\r\n roles: [UserRole.CashieringApproval],\r\n },\r\n];\r\n\r\nexport const getAdminLinks = (\r\n userLevel: UserProfileLevel | undefined,\r\n userRoles: UserRole[] | undefined\r\n): AdminLink[] => {\r\n return _.filter(AdminLinks, al => !al.hidden && canAccessAdminLink(al, userLevel, userRoles));\r\n};\r\n","import React from 'react';\nimport Config from '../../../config';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nconst getEnvironmentName = () => {\n switch (Config.TradingEnvironment) {\n case 'dev':\n return 'development';\n case 'beta':\n return 'beta';\n default:\n return 'production';\n }\n};\n\nexport const UsernameAndEnvironment = () => {\n const userName = useStateSelector(s => s.auth.userName);\n return (\n \n {userName} ({getEnvironmentName()})\n \n );\n};\n","import React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { GetLogoutUrl } from '@tradingblock/components';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { SessionActions } from '../../data/global/actions';\nimport { ExpiredTokenCode } from '@tradingblock/types';\n\nexport const LogoutLink: React.FC,\n HTMLAnchorElement\n>> = ({ children }) => {\n const accountNumber = useSelector(account.accountNumber);\n const dispatch = useDispatch();\n let timeout: NodeJS.Timeout | undefined;\n const expireToken = () => {\n dispatch(\n SessionActions.expired({\n code: ExpiredTokenCode.Logout,\n reason: 'You have successfully logged out. Now redirecting to login page',\n })\n );\n\n if (timeout) {\n clearTimeout(timeout);\n }\n\n timeout = setTimeout(() => {\n window.location.href = GetLogoutUrl(accountNumber);\n }, 3500);\n };\n return (\n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { ExternalLink, ExternalLinkProps } from '@tradingblock/components';\nimport { useVirtualTrading } from '../../../hooks/useVirtualTrading';\nimport { isLocalhost } from '../../../utilities/url';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport Config from '../../../config';\n\nexport const ToggleVirtualTradingButton: React.FC> = ({ className, onClick, children }) => {\n const { isVirtualEnv } = useVirtualTrading();\n\n const href = useMemo(() => (isVirtualEnv ? Config.liveTradingUrl : Config.virtualTradingUrl), [isVirtualEnv]);\n\n const { dispatcher } = useDispatcher();\n\n const onToggleClick = useCallback(\n (e: React.MouseEvent) => {\n if (isLocalhost() && href.includes(window.location.host)) {\n e.preventDefault();\n dispatcher.environment.toggleIsVirtual();\n }\n if (onClick) {\n onClick(e);\n }\n },\n [href, dispatcher, onClick]\n );\n\n return (\n \n {children}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useState, useCallback, useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport _ from 'lodash';\nimport { StorageGridPath, StorageBlocksPath, allTranslations } from '@tradingblock/types';\nimport { CountdownTimer, ExternalLink, Svg, ToggleButton } from '@tradingblock/components';\nimport { useStore } from '../../context/Storage';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useStateSelector,\n dashboardsSelectors,\n useShowSettings,\n useShowAccountSwitcher,\n} from '../../data/global/dataSelectors';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { DashboardSettings } from './DashboardSettings';\nimport { Config } from '../../config';\nimport { DebugSettings } from '../DebugSettings';\nimport { getAdminLinks } from '../admin/Links';\nimport { TradingBlockLink } from '../basic/TradingBlockLink';\nimport { UsernameAndEnvironment } from './menu/UserNameAndEnvironment';\nimport { SiteName } from '../basic/SiteName';\nimport { LogoutLink } from '../basic/LogoutLink';\nimport { useVirtualTrading } from '../../hooks/useVirtualTrading';\nimport { ToggleVirtualTradingButton } from './navigation/ToggleVirtualTradingButton';\nimport { LinkedAccountsActions } from '../../data/global/actions/LinkedAccountsActions';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\n\ninterface DashboardMenuProps {\n toggleMenu: (open?: boolean) => void;\n}\n\nconst MenuHeader: React.FC<{}> = ({ children, ...rest }) => (\n

    \n {children}\n

    \n);\n\nexport const DashboardMenu: React.FC = ({ toggleMenu }) => {\n const { dispatcher } = useDispatcher();\n\n const uiApiTokenExpiresAt = useStateSelector(s => s.auth.uiApiTokenExpiresAt);\n const untilTime = useMemo(() => uiApiTokenExpiresAt && new Date((uiApiTokenExpiresAt - 120) * 1000), [\n uiApiTokenExpiresAt,\n ]);\n\n const { isVirtualEnv } = useVirtualTrading();\n\n const userLevel = useSelector(account.userLevel);\n const userRoles = useSelector(account.userRoles);\n const firstAndLastName = useSelector(account.firstAndLastName);\n const accountNickname = useSelector(account.accountNickname);\n const origin = useStateSelector(s => s.auth.origin);\n const hasMultipleAccounts = useSelector(account.hasMultipleAccounts);\n const siteGroup = origin === 'tb' ? 'tradingblock' : 'moneyblock';\n const accountDetails = useStateSelector(s => s.account.accountDetails);\n const accountStatus = accountDetails && accountDetails.accountStatus ? accountDetails.accountStatus : '';\n const adminLinks = useMemo(() => getAdminLinks(userLevel, userRoles), [userLevel, userRoles]);\n\n const showSettings = useShowSettings();\n const toggleSettings = useCallback(() => dispatcher.settings.toggleSettings(), [dispatcher.settings]);\n\n const showAccountSwitcher = useShowAccountSwitcher();\n const toggleAccountSwitcher = useCallback(() => dispatcher.account.toggleAccountSwitcher(), [dispatcher.account]);\n\n const getAccountStatus = useCallback((status: string) => {\n // format status to place a space between words\n const formattedStatus = status.replace(/([A-Z])/g, ' $1').trim();\n switch (status) {\n case 'Active':\n return {formattedStatus};\n case 'Inactive':\n return {formattedStatus};\n case 'Closed':\n return {formattedStatus};\n case 'ActiveClosingTradesOnly':\n return {formattedStatus};\n default:\n return (\n \n {formattedStatus}\n \n );\n }\n }, []);\n\n useEffect(() => {\n if (!showAccountSwitcher) {\n toggleMenu(false);\n }\n }, [showAccountSwitcher]);\n\n return (\n <>\n \n {showSettings && }\n\n
    \n
    \n
    \n \n
    \n
    \n Log out\n
    \n
    \n
    \n\n
    \n
    \n
    \n
    Account
    \n {hasMultipleAccounts && (\n
    \n \n
    \n )}\n
    \n
    {firstAndLastName}
    \n
    \n {hasMultipleAccounts ? (\n \n ) : (\n \n {accountNickname} - {getAccountStatus(accountStatus)}\n \n )}\n
    \n
    \n\n
    \n
    \n
      \n
    • \n \n
    • \n
    \n
    \n
    \n\n
    \n {isVirtualEnv ? (\n
    \n

    \n \n You are in virtual trading\n \n

    \n toggleMenu()}>\n \n Log in to Live Trading Account \n \n \n
    \n ) : (\n
    \n

    Want to test new ideas with paper money?

    \n toggleMenu()}>\n \n Log in to Virtual Trading \n \n \n
    \n )}\n
    \n\n
    \n\n
    Training & Education
    \n
      \n
    • \n \n Take a Dashboard Video Tour\n \n
    • \n {siteGroup === 'tradingblock' && (\n
    • \n \n Trading Education Videos\n \n
    • \n )}\n
    \n\n
    \n
    Client Tools
    \n
      \n
    • \n \n Account History\n \n
    • \n
    • \n \n Risks & Disclosures\n \n
    • \n
    \n {!_.isEmpty(adminLinks) && (\n <>\n
    \n
    Admin Tools
    \n
      \n {adminLinks.map((al, key) => {\n if (al.text === 'Forms') {\n return (\n
      \n
    • \n \n {al.text}\n \n
    • \n
      \n );\n } else {\n return (\n
      \n
    • \n \n {al.text}\n \n
    • \n
    • \n \n Admin Video Guides\n \n
    • \n
      \n );\n }\n })}\n
    \n \n )}\n
    \n
      \n
    • \n \n Give us feedback\n \n
    • \n
    • \n \n Contact us\n \n
    • \n {/*TODO: Determine with Tom if this link will be coming back at any point */}\n {/*
    • \n \n About us\n \n
    • */}\n
    \n\n {!Config.isProduction && untilTime && (\n
    \n

    UI token will be refreshed in

    \n {\n const hours = _.max([parsed.hours, 0]) || 0;\n const minutes = _.max([parsed.minutes, 0]) || 0;\n const seconds = _.max([parsed.seconds, 0]) || 0;\n const formatted =\n hours > 0\n ? `${hours}:${minutes < 10 ? '0' : ''}${minutes}:${seconds < 10 ? '0' : ''}${seconds} HRS`\n : minutes <= 0\n ? `00:00:${seconds < 10 ? '0' : ''}${seconds} HRS`\n : `00:${minutes < 10 ? '0' : ''}${minutes}:${seconds < 10 ? '0' : ''}${seconds} HRS`;\n return ` ${formatted}`;\n }}\n until={untilTime}\n intervalTime={1000}\n className={'mute txt-sm'}\n >\n \n \n \n \n
    \n )}\n\n {Config.schemaVersion && (\n \n Version {Config.schemaVersion}\n \n )}\n \n );\n};\n","import React, { useRef } from 'react';\nimport useClickAway from 'react-use/lib/useClickAway';\n\nexport const NotificationWrapper: React.FunctionComponent<{ onClickAway: () => void }> = ({ children, onClickAway }) => {\n const popoverRef = useRef(null);\n useClickAway(popoverRef, onClickAway);\n return (\n
    \n {children}\n
    \n );\n};\n","import React, { useState, useCallback, useRef } from 'react';\nimport { Popover, Overlay } from 'react-bootstrap';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\n// import useClickAway from 'react-use/lib/useClickAway';\nimport { Notification } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { NotificationWrapper } from './NotificationWrapper';\n\ninterface DashboardNotificationProps {\n title: string;\n notificationClass: string;\n notifications: Notification[];\n disabled?: boolean;\n onClick?: () => void;\n}\n\nexport const DashboardNotification: React.FunctionComponent = ({ children, title, notificationClass, notifications, disabled, onClick }) => {\n const { dispatcher } = useDispatcher();\n const [, setClickedTarget] = useState();\n const [show, setShow] = useState(false);\n const handleClickAway = useCallback(() => {\n setShow(false);\n setClickedTarget(undefined);\n }, []);\n\n const handleClick = useCallback(\n (event: React.MouseEvent) => {\n setShow(!show);\n dispatcher.notifications.read(notifications);\n setClickedTarget(event.target);\n if (onClick) {\n onClick();\n }\n },\n [dispatcher.notifications, notifications, onClick, show]\n );\n // const handleClick = useCallback(\n // ({ target }) => {\n // setState({ show: !show, clickedTarget: target });\n\n // _.map(notifications, n => {\n // dispatcher.notifications.read(n);\n // });\n\n // if (onClick) {\n // onClick();\n // }\n // },\n // [show, dispatcher, notifications, onClick]\n // );\n\n const filterReadNotifications = notifications.filter(n => n.read === false);\n const filterHiddenNotifications = notifications.filter(n => n.hide === false).length !== 0;\n const sortedNotifications = _.chain(notifications)\n .filter(n => n.hide === false)\n .sortBy(n => n.time)\n .reverse()\n .value();\n const containerRef = useRef(null);\n const targetRef = useRef(null);\n return (\n
    \n \n
    \n {targetRef.current && containerRef.current && (\n \n \n \n {sortedNotifications.map(n => {\n return ;\n })}\n \n \n \n )}\n
    \n
    \n );\n};\n\nconst TradeOrderPopover: React.FunctionComponent<{ notification: Notification }> = ({ notification }) => {\n const { dispatcher } = useDispatcher();\n const hideNotification = useCallback(() => {\n dispatcher.notifications.read(notification);\n dispatcher.notifications.hide(notification);\n }, [dispatcher, notification]);\n\n return (\n \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { Svg } from '@tradingblock/components';\nimport { useStateSelector, getNotifications } from '../../data/global/dataSelectors';\nimport { DashboardNotification } from './DashboardNotification';\n\nexport const ClientNotifications: React.FunctionComponent = () => {\n const notifications = useStateSelector(getNotifications);\n\n // disable when no notifications to show\n const isDisabled = useMemo(() => _.isEmpty(notifications), [notifications]);\n\n return (\n \n \n \n );\n};\n","import dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { AssetType, OrderLeg, Order, OptionExpirationType, OptionType } from '@tradingblock/types';\nimport { OCCSymbolToOptionData, deriveOptionExpirationType } from '@tradingblock/api';\n\n/**\n * This type contains the majority of the data needed\n * to fill out the \"details\" section of the table in the\n * ActivityOrders and ActivityTrades tab of the activity block\n */\nexport interface OrderLegDetails {\n day?: string;\n month?: string;\n year?: string;\n strikePrice?: string;\n orderType?: string;\n symbol?: string;\n quantity?: string;\n}\n\nexport function optionToDetailString(leg: O, order: Pick) {\n const { Quantity, UnderlyingSymbol } = order;\n const { LegFillQuantity } = leg;\n const { month, day, strikePrice, orderType } = orderLegToDetails(leg, UnderlyingSymbol || '');\n const q = LegFillQuantity ? LegFillQuantity : Quantity;\n if (leg.AssetType === AssetType.Equity) {\n return `${q > 1 ? 'SHRS' : 'SHR'}`;\n }\n return `${month} ${day} $${strikePrice} ${orderType}`;\n}\n\n/** This function accepts a string in the\n * format \"Symbol DDMMMYY StrikePrice OrderType [quantity]\" and converts it to the format shown in the ActivityBlock documentation\n *\n * @param detail a string in the form \"Symbol DDMMMYY StrikePrice CALLorPUT [quantity]\"\n */\nexport function orderLegToDetails(leg: O, underlyingSymbol: string): OrderLegDetails {\n const occSymbol = leg.OccSymbol ? leg.OccSymbol : leg.Symbol;\n const { symbol, expiration, assetType, strike, option } = OCCSymbolToOptionData(occSymbol);\n if (assetType === AssetType.Equity) {\n return {\n symbol: symbol,\n };\n }\n\n const d = dayjs(expiration);\n const optionExpirationType = deriveOptionExpirationType(leg.Symbol, underlyingSymbol);\n const day = d.format('DD');\n const dayAndTimeInfo =\n optionExpirationType === OptionExpirationType.AM ? `${day} ${OptionExpirationType[optionExpirationType]}` : day;\n\n return {\n day: dayAndTimeInfo,\n month: d.format('MMM'),\n year: d.format('YY'),\n strikePrice: _.toString(strike),\n orderType: option ? OptionType[option] : undefined,\n quantity: _.toString(leg.LegFillQuantity),\n symbol: symbol,\n };\n}\n","import { OrderErrorActivity, OrderActivity, Order } from '@tradingblock/types';\r\nimport _ from 'lodash';\r\n\r\nexport function isErrorActivity(act: OrderActivity | OrderErrorActivity | Order): act is OrderErrorActivity {\r\n const orderApiStatus = _.get(act, 'orderApiStatus', undefined);\r\n return orderApiStatus === 'error';\r\n}\r\n","import dayjs from 'dayjs';\r\nimport _ from 'lodash';\r\nimport {\r\n OrderLeg,\r\n OrderAction,\r\n PositionEffect,\r\n AssetType,\r\n OrderType,\r\n Order,\r\n PnLItem,\r\n OrderStatuses,\r\n OptionType,\r\n Durations,\r\n DebitOrCredit,\r\n OptionExpirationType,\r\n OrderActivity,\r\n} from '@tradingblock/types';\r\nimport {\r\n TradingBlockAccountApi,\r\n PnLItemGetPnLItemRequest,\r\n OCCSymbolToOptionData,\r\n deriveOptionExpirationType,\r\n OrderStatusCategories,\r\n} from '@tradingblock/api';\r\nimport { formatNumber } from '@tradingblock/components';\r\nimport { TradingBlockDispatcher } from '../dispatcher';\r\nimport { optionToDetailString, orderLegToDetails } from './options';\r\nimport { isErrorActivity } from '../../../utilities/activity';\r\n\r\n/**\r\n * This type contains the majority of the data needed\r\n * to fill out the \"details\" section of the table in the\r\n * ActivityOrders and ActivityTrades tab of the activity block\r\n */\r\ninterface ActivityOrderDetailProps {\r\n day?: string;\r\n month?: string;\r\n year?: string;\r\n strikePrice?: string;\r\n orderType?: string;\r\n symbol?: string;\r\n quantity?: string;\r\n}\r\n\r\n/**\r\n * This function takes in an OrderType and returns a formatted\r\n * string corresponding to that type.\r\n *\r\n * @param orderType The enum value given to any order.\r\n */\r\nfunction orderTypeToString(orderType: OrderType): string {\r\n switch (orderType) {\r\n case OrderType.Market:\r\n return 'MKT';\r\n case OrderType.Limit:\r\n return 'LMT';\r\n case OrderType.Stop_Limit:\r\n return 'STOP LMT';\r\n case OrderType.Stop_Market:\r\n return 'STOP MKT';\r\n case OrderType.Market_On_Close:\r\n return 'MKT ON CLOSE';\r\n default:\r\n return 'MKT';\r\n }\r\n}\r\n\r\nexport function formatOrderPrice(order: Pick) {\r\n const { Price, Duration, DebitCredit, Stop } = order;\r\n const orderType = order.OrderType;\r\n if (_.isNil(Price)) {\r\n return '';\r\n }\r\n\r\n const priceValue = Math.abs(Price);\r\n const price = formatNumber(priceValue, { currency: true });\r\n const stopValue = Stop ? Math.abs(Stop) : undefined;\r\n const stop = stopValue ? formatNumber(stopValue, { currency: true }) : '';\r\n const prefix = DebitCredit ? (DebitCredit === DebitOrCredit.Debit ? 'DBT' : 'CRDT') : '';\r\n const orderTypeString = orderTypeToString(orderType);\r\n const duration = Duration === Durations.GTC ? ' GTC' : '';\r\n\r\n if (orderType === OrderType.Stop_Limit) {\r\n return `${stop} ${orderTypeString} ${price} ${prefix} ${duration}`;\r\n } else if (orderType === OrderType.Stop_Market) {\r\n return `${stop} ${orderTypeString} ${prefix} ${duration}`;\r\n } else if (orderType === OrderType.Market) {\r\n return `${orderTypeString} ${prefix} ${duration}`;\r\n } else {\r\n return `${price} ${orderTypeString} ${prefix} ${duration}`;\r\n }\r\n}\r\n\r\n/**\r\n * Gets the total number of filled orders\r\n * @param legs An array of orderlegs\r\n * @param backUpQuantity in the event the orderLegs don't exist, this value will be treated as the fallback\r\n * @returns the total number of filled orders\r\n */\r\nexport function getFilledQuantity(legs: OrderLeg[], backUpQuantity: number) {\r\n let filledQuantity = backUpQuantity;\r\n if (legs === null || legs === undefined) {\r\n filledQuantity = backUpQuantity;\r\n } else {\r\n filledQuantity = _.sum(_.map(legs, l => l.LegFillQuantity));\r\n }\r\n\r\n return filledQuantity;\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is either undefined, \"New\", \"Pending New\", or \"Initiated\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([undefined, OrderStatuses.New, OrderStatuses.PendingNew, OrderStatuses.Initiated], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Cancelled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isCancelledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.Cancelled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Partially Filled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isPartialOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.PartiallyFilled], orderStatus);\r\n}\r\n\r\nexport function isPartiallyCancelledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.PartiallyCancelled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is \"Filled\"\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isFilledOrderStatus(orderStatus: number | undefined) {\r\n return _.includes([OrderStatuses.Filled], orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is new or partially filled\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrPartialOrderStatus(orderStatus: number | undefined) {\r\n return isNewOrderStatus(orderStatus) || isPartialOrderStatus(orderStatus);\r\n}\r\n\r\n/**\r\n * Checks to see if the OrderStatus is new or cancelled\r\n * @param orderStatus The number of the enum value corresponding with the OrderStatus\r\n */\r\nexport function isNewOrCancelledOrderStatus(orderStatus: number | undefined) {\r\n //return isNewOrderStatus(orderStatus) || isCancelledOrderStatus(orderStatus);\r\n if (orderStatus === undefined) {\r\n return false;\r\n }\r\n return [OrderStatuses.New, OrderStatuses.Cancelled, OrderStatuses.Replaced].includes(orderStatus);\r\n}\r\n\r\n/**\r\n * This function calls the TradingBlock API and returns\r\n * an asynchronous function that allows you to get the\r\n * PnL items corresponding with the given account\r\n * @param _api the tradingblock api object\r\n * @param _dispatcher the dispatcher\r\n */\r\nexport function loadPnL(_api: TradingBlockAccountApi, _dispatcher: TradingBlockDispatcher) {\r\n return async (_accountId: number, request: PnLItemGetPnLItemRequest) => {\r\n _dispatcher.pnlHistory.request(_accountId);\r\n const _request = (await _api.pnl(request)).payload;\r\n\r\n const pnl = _request ? (_request.Items as PnLItem[]) : ([] as PnLItem[]);\r\n _dispatcher.pnlHistory.receive(_accountId, pnl);\r\n return pnl;\r\n };\r\n}\r\n\r\nexport function formatOrderLeg(\r\n leg: OrderLeg,\r\n details: ActivityOrderDetailProps,\r\n order: OrderActivity | Order,\r\n showSymbol = false\r\n) {\r\n const { Quantity, OrderStatus } = order;\r\n const { SpreadRatio } = leg;\r\n let orderAction = '';\r\n\r\n let isBuy = OrderAction[leg.Action] === 'Buy';\r\n if (isErrorActivity(order)) {\r\n orderAction = `Error ${isBuy ? 'buying' : 'selling'}`;\r\n } else if (_.isNil(OrderStatuses) || !OrderStatus) {\r\n orderAction = '';\r\n } else if (OrderStatusCategories.Filled.includes(OrderStatus)) {\r\n orderAction = isBuy ? 'Bought' : 'Sold';\r\n } else {\r\n orderAction = isBuy ? 'Buy' : 'Sell';\r\n }\r\n if (OrderStatus === OrderStatuses.Initiated) {\r\n orderAction = `Initiated ${_.toLower(orderAction)}`;\r\n }\r\n\r\n const e = PositionEffect[leg.PositionEffect];\r\n const s = leg.AssetType === AssetType.Equity ? leg.Symbol : details.symbol;\r\n const q = Quantity * (SpreadRatio || 1);\r\n\r\n const i = optionToDetailString(leg, order);\r\n return `${orderAction} to ${e} ${showSymbol ? s : ''} ${q}x ${i}`;\r\n}\r\n\r\n/** This function accepts a string in the\r\n * format \"Symbol DDMMMYY StrikePrice OrderType [quantity]\" and converts it to the format shown in the ActivityBlock documentation\r\n *\r\n * @param detail a string in the form \"Symbol DDMMMYY StrikePrice CALLorPUT [quantity]\"\r\n */\r\nexport function detailFormattor(leg: OrderLeg, underlyingSymbol: string): ActivityOrderDetailProps {\r\n return orderLegToDetails(leg, underlyingSymbol);\r\n}\r\n/**\r\n * Takes in an OrderStatus value (as a number) and returns\r\n * A formatted string corresponding to that value\r\n *\r\n * @param status an enum value of OrderStatus\r\n * @returns a string with the corresponding enum value\r\n */\r\nexport function OrderStatusToString(status?: number): string {\r\n switch (status) {\r\n case OrderStatuses.New:\r\n return 'New';\r\n case OrderStatuses.PartiallyFilled:\r\n return 'Partial';\r\n case OrderStatuses.Filled:\r\n return 'Filled';\r\n case OrderStatuses.Cancelled:\r\n return 'Cancelled';\r\n case OrderStatuses.Replaced:\r\n return 'Replaced';\r\n case OrderStatuses.PendingCancel:\r\n return 'Pending Cancel';\r\n case OrderStatuses.Rejected:\r\n return 'Rejected';\r\n case OrderStatuses.PendingNew:\r\n return 'Pending New';\r\n case OrderStatuses.Expired:\r\n return 'Expired';\r\n case OrderStatuses.PendingReplace:\r\n return 'Pending Replace';\r\n case OrderStatuses.Saved:\r\n return 'Saved';\r\n case OrderStatuses.Initiated:\r\n return 'Initiated';\r\n case OrderStatuses.ReplaceInitiated:\r\n return 'Replace Initiated';\r\n case OrderStatuses.CancelInitiated:\r\n return 'Cancel Initiated';\r\n case OrderStatuses.CancelRejected:\r\n return 'Cancel Rejected';\r\n case OrderStatuses.ReplaceRejected:\r\n return 'Replace Rejected';\r\n case OrderStatuses.DoneForDay:\r\n return 'Done For Day';\r\n case OrderStatuses.Acknowledged:\r\n return 'Acknowledged';\r\n case OrderStatuses.PartiallyCancelled:\r\n return 'Partially Cancelled';\r\n // case OrderStatuses.Stopped:\r\n // return 'Stopped';\r\n // case OrderStatuses.Suspended:\r\n // return 'Suspended';\r\n // case OrderStatuses.Calculated:\r\n // return 'Calculated';\r\n // case OrderStatuses.LiveUntriggered:\r\n // return 'Live Untriggered';\r\n // case OrderStatuses.Scheduled:\r\n // return 'Scheduled';\r\n // case OrderStatuses.OCO_Untriggered:\r\n // return 'OCO Untriggered';\r\n // case OrderStatuses.CancelledUntriggered:\r\n // return 'Cancelled Untriggered';\r\n // case OrderStatuses.Busted:\r\n // return 'Busted';\r\n // case OrderStatuses.PreAllocated:\r\n // return 'Preallocated';\r\n default:\r\n return '';\r\n }\r\n}\r\n\r\nexport const ActivityStatusMessage = (activity: OrderActivity) => {\r\n if (isErrorActivity(activity)) {\r\n if (activity.data.error) {\r\n return activity.data.error;\r\n }\r\n return activity.data.Response ? activity.data.Response.Message : undefined;\r\n }\r\n return undefined;\r\n};\r\n\r\n/**\r\n * This function converts a given Order object To a string array\r\n * to be used in the Messages tab of the activity block\r\n * @param order the Order you want to convert\r\n */\r\nexport function orderToMessage(order: Order) {\r\n const underlyingSymbol = order.UnderlyingSymbol;\r\n if (underlyingSymbol === undefined) {\r\n return [];\r\n }\r\n return _.map(order.Legs, val => {\r\n return formatOrderLeg(val, detailFormattor(val, underlyingSymbol), order, true);\r\n });\r\n}\r\n","import { AllNotificationType, OrderNotification } from '@tradingblock/types';\n\nexport function isOrderNotification(not: AllNotificationType): not is OrderNotification {\n return not.type === 'Order';\n}\n","import _ from 'lodash';\r\nimport dayjs from 'dayjs';\r\nimport { createSelector } from 'reselect';\r\nimport createCachedSelector from 're-reselect';\r\nimport { DataState } from '../state';\r\nimport { Order, OrderLeg, OrderMessage, OrderActivity, OrderNotification } from '@tradingblock/types';\r\nimport { accountIdValue, PositionSymbolsSelector } from '../dataSelectors';\r\nimport { OrderStatusToString, orderToMessage } from '../utilities/activity';\r\n\r\nimport { isOrderNotification } from '../utilities/notification';\r\nimport {\r\n toRawOccSymbol,\r\n OrderStatusCategories,\r\n orderutility,\r\n OrderLegWithMetadata,\r\n isSymbolExpired,\r\n} from '@tradingblock/api';\r\n\r\nexport const getOpenOrdersCount = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n orders => {\r\n return _.filter(orders, ({ OrderStatus }) =>\r\n OrderStatus ? OrderStatusCategories.Open.includes(OrderStatus) : false\r\n ).length;\r\n }\r\n);\r\n\r\nexport const getOrders = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n (state: DataState) => state.account.orderErrorEvents || [],\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n (orders, orderErrors, accountId, subAccountId): OrderActivity[] => {\r\n const orderAct: OrderActivity[] = _.map(orders, o => ({\r\n ...o,\r\n orderApiStatus: 'sent',\r\n activityDate: dayjs(o.Date).toDate(),\r\n }));\r\n const errorAct: OrderActivity[] = _.map(orderErrors, o => {\r\n const dateValue = o.order.Date || o.createdOn;\r\n return {\r\n ...o.order,\r\n activityDate: dayjs(dateValue).toDate(),\r\n AccountId: accountId,\r\n orderApiStatus: 'error',\r\n data: o,\r\n Date: dateValue,\r\n };\r\n });\r\n const activities: OrderActivity[] = _.orderBy(\r\n [...orderAct, ...errorAct],\r\n o => (o.activityDate ? o.activityDate.valueOf() : 0),\r\n 'desc'\r\n );\r\n\r\n let filtered_messages = activities;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.AccountId && o.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.SubaccountId && o.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n }\r\n);\r\n\r\nconst filterOrderMessages = (\r\n orders: Order[],\r\n notifications: OrderNotification[],\r\n accountId: number,\r\n subAccountId: number | undefined\r\n): OrderMessage[] => {\r\n // console.log('Filtering orders on account Id: ' + accountId);\r\n if (!orders || !notifications) {\r\n return [];\r\n }\r\n const messages: OrderMessage[] = _(\r\n orders.map(o => {\r\n return {\r\n id: o.OrderId || -1,\r\n status: `Order ${OrderStatusToString(o.OrderStatus)}`,\r\n message: orderToMessage(o),\r\n description: o.Description || '',\r\n received: dayjs(o.Date).toDate(),\r\n order: o,\r\n };\r\n })\r\n )\r\n .union(\r\n notifications.map(n => {\r\n const o = n.order;\r\n return {\r\n id: o.OrderId || -1,\r\n status: n.title,\r\n message: n.message ? [n.message] : orderToMessage(o),\r\n description: o.Description || '',\r\n received: dayjs(o.Date || n.time).toDate(),\r\n order: o,\r\n };\r\n })\r\n )\r\n // .uniqBy(v => v.status.toLocaleLowerCase() + v.message.toLocaleString())\r\n .orderBy(v => (v.received ? v.received.valueOf() : -1), ['desc'])\r\n .value();\r\n\r\n let filtered_messages = messages;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.order.AccountId && o.order.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.order.SubaccountId && o.order.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n};\r\n\r\nexport const getOrderMessages = (blockId: string) =>\r\n createSelector(\r\n (state: DataState) => (state.account.ordersUIState[blockId] && state.account.ordersUIState[blockId].orders) || [],\r\n (state: DataState) => state.notifications.filter(isOrderNotification),\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n filterOrderMessages\r\n );\r\nexport const getOrdersByBlockId = (blockId: string) =>\r\n createSelector(\r\n (state: DataState) => state.account.ordersUIState[blockId],\r\n (state: DataState) => state.account.orderErrorEvents || [],\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n (orderState, orderErrors, accountId, subAccountId): OrderActivity[] => {\r\n if (!orderState || !orderState.orders) {\r\n return [];\r\n }\r\n const orderAct: OrderActivity[] = _.map(orderState.orders, o => ({\r\n ...o,\r\n orderApiStatus: 'sent',\r\n activityDate: dayjs(o.Date).toDate(),\r\n }));\r\n const errorAct: OrderActivity[] = _.map(orderErrors, o => {\r\n const dateValue = o.order.Date || o.createdOn;\r\n return {\r\n ...o.order,\r\n activityDate: dayjs(dateValue).toDate(),\r\n orderApiStatus: 'error',\r\n data: o,\r\n Date: dateValue,\r\n };\r\n });\r\n const activities: OrderActivity[] = _.orderBy(\r\n [...orderAct, ...errorAct],\r\n o => (o.activityDate ? o.activityDate.valueOf() : 0),\r\n 'desc'\r\n );\r\n\r\n let filtered_messages = activities;\r\n if (accountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.AccountId && o.AccountId === accountId);\r\n }\r\n if (subAccountId !== undefined) {\r\n filtered_messages = filtered_messages.filter(o => o.SubaccountId && o.SubaccountId === subAccountId);\r\n }\r\n\r\n return filtered_messages;\r\n }\r\n );\r\n\r\nexport const getSpecificOrderMessages = (orderId?: number) =>\r\n createSelector(\r\n [\r\n state => state,\r\n (state: DataState) => state.account.orders || [],\r\n (state: DataState) => state.notifications.filter(isOrderNotification),\r\n (state: DataState) => state.account.accountId,\r\n (state: DataState) => state.account.subAccountId,\r\n ],\r\n (state, orders: Order[], notifications, accountId, subAccountId): OrderMessage[] => {\r\n const filterOrders = filterOrderMessages(orders, notifications, accountId, subAccountId);\r\n return filterOrders.filter(order => order.id === orderId);\r\n }\r\n );\r\n\r\nexport interface ActivityOrderProps {\r\n // Just the ticker. I.e. \"TWLO\"\r\n Symbol: string;\r\n\r\n // Ex: \"Buy to Open 100 SHRS @ MKT DAY\"\r\n OrderDetails: string;\r\n\r\n Price: number; // ex $1,380.00\r\n\r\n // Either \"Open\", \"filled \\n # filled / # total\"\r\n // or \"Partial \\n # filled / # total\"\r\n Status: string;\r\n\r\n // If not today the format is: 08/02/19 2:40 PM\r\n // If placed today the format is: 2:40 PM\r\n PlacedOn: Date;\r\n}\r\n\r\n/**\r\n * This builds out an object that will be easily digestable\r\n * by the ActivityOrders Page.\r\n *\r\n */\r\nexport const getActivityOrders = createSelector(\r\n (state: DataState) => state.account.orders || [],\r\n (orders: Order[]) => {\r\n return _.map(orders, order => {\r\n // const marketOrLimit = OrderType[order.OrderType];\r\n // const legs = order.Legs;\r\n\r\n return {\r\n Symbol: order.UnderlyingSymbol,\r\n OrderDetails: order.Description,\r\n Price: order.AverageFillPrice || order.Price,\r\n };\r\n });\r\n }\r\n);\r\nexport const isFetchingAccountOrders = createCachedSelector(\r\n (state: DataState) => state,\r\n (state: DataState) => {\r\n return state.account.isFetchingOrders;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\nexport const areOrdersLoaded = createCachedSelector(\r\n (state: DataState) => (state.account.orders && state.account.orders.length > 0 ? true : false),\r\n (state: DataState) => state.account.isFetchingOrders,\r\n (state: DataState) => state.blocks.isFetchingInitial,\r\n (ordersExist, accountIsFetching, blocksFetchingInitial) => {\r\n if (ordersExist) {\r\n return true;\r\n }\r\n const res = accountIsFetching === false && blocksFetchingInitial === false;\r\n return res;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\nexport const shouldLoadMoreOrders = createCachedSelector(\r\n (state: DataState) => state,\r\n (state: DataState) => {\r\n return state.account.orders && state.account.shouldLoadMoreOrders ? true : false;\r\n }\r\n)(\r\n // re-reselect keySelector\r\n // Use \"libraryId\" as cacheKey\r\n accountIdValue\r\n);\r\n\r\nexport const isOrderBeingPlacedOrChanged = false;\r\n\r\nexport const getActivityOrderSymbolsWithoutExpired = createSelector(\r\n (state: DataState) => orderutility.toOrderLegsWithMetaData(state.account.orders || []),\r\n (orderLegs: OrderLegWithMetadata[]): string[] => {\r\n const orderSymbols = _(orderLegs).reduce((acc: string[], l): string[] => {\r\n const symb = l.OccSymbol ? toRawOccSymbol(l.OccSymbol) : l.Symbol || l.UnderlyingSymbol;\r\n\r\n if (_.isNil(symb)) {\r\n return acc;\r\n }\r\n\r\n //not expired\r\n if (isSymbolExpired(symb)) {\r\n return acc;\r\n }\r\n return [...acc, symb];\r\n }, []);\r\n\r\n return _.uniq(orderSymbols);\r\n }\r\n);\r\n\r\nexport const getPositionAndOrderSymbols = createCachedSelector(\r\n (s: DataState) => PositionSymbolsSelector(s),\r\n getActivityOrderSymbolsWithoutExpired,\r\n (positionSymbols, orderSymbols) => {\r\n return _(positionSymbols || [])\r\n .union(orderSymbols || [])\r\n .uniq()\r\n .orderBy()\r\n .value();\r\n }\r\n)((s: DataState) => `positionorderselector`);\r\n","import React from 'react';\r\nimport _ from 'lodash';\r\nimport { Svg } from '@tradingblock/components';\r\nimport { DashboardNotification } from './DashboardNotification';\r\nimport { useStateSelector } from '../../data/global/dataSelectors';\r\nimport { getOpenOrdersCount } from '../../data/global/selectors/orderSelector';\r\n\r\ninterface TradeOrderNotificationsProps {\r\n onClick: () => void;\r\n}\r\n\r\nexport const TradeOrderNotifications: React.FunctionComponent = ({ onClick }) => {\r\n const orderCount = useStateSelector(s => getOpenOrdersCount(s));\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {_.isNumber(orderCount) && orderCount > 0 && {orderCount}}\r\n \r\n );\r\n};\r\n","import React, { useCallback, FC, useEffect, Dispatch, SetStateAction } from 'react';\nimport _ from 'lodash';\nimport { BlockType } from '@tradingblock/types';\nimport { CountdownTimer, Svg, GetTradingBlockSiteName } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useStateSelector,\n blocksSelectors,\n MarketCloseTimeSelector,\n isMarketOpenSelector,\n MarketOpenTimeSelector,\n} from '../../data/global/dataSelectors';\nimport dayjs from 'dayjs';\n\nconst TradingStatusIconButton: React.FC<{ cssClasses?: string; title?: string; icon: string }> = ({\n title,\n cssClasses,\n icon,\n}) => {\n return (\n \n );\n};\n\nexport const TradingStatusIcon: FC<{ onAddBlock: (type: BlockType) => void }> = ({ onAddBlock }) => {\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\n const blocks = useStateSelector(s => blocksSelectors.blocks(s));\n const feedInfo = useStateSelector(s => {\n const { status, message, isReconnecting } = s.feedProvider;\n const isClosed = status === 'closed';\n const isConnected = status === 'open';\n const isError = status === 'error' ? true : isClosed && isReconnecting === false ? true : false;\n\n return { status, message, isConnected, isError, isWarning: isClosed, isPending: status === undefined };\n });\n const { dispatcher } = useDispatcher();\n const onAddOrHighlightBlockType = useCallback(\n (blockType: BlockType) => {\n if (_.some(blocks, b => b.type === blockType)) {\n // highlight all blocks of same type\n dispatcher.block.highlightBlocks(blockType);\n } else {\n // add new block\n onAddBlock(blockType);\n }\n },\n [blocks, dispatcher.block, onAddBlock]\n );\n\n const cssClasses = feedInfo.isError ? 'neg' : feedInfo.isWarning ? 'warn' : feedInfo.isPending ? 'pending' : '';\n const title = feedInfo.message\n ? feedInfo.message\n : feedInfo.isPending\n ? 'Connecting...'\n : `Cannot connect to ${GetTradingBlockSiteName()} API`;\n return (\n <>\n {(feedInfo.isError || feedInfo.isWarning || feedInfo.isPending) && (\n \n )}\n {feedInfo.isConnected && (\n <>\n onAddOrHighlightBlockType(BlockType.Order)}\n >\n \n \n \n \n \n \n \n \n \n \n )}\n \n );\n};\n","import React, { Dispatch, FC, SetStateAction, useCallback, useEffect } from 'react';\nimport dayjs from 'dayjs';\nimport relativeTime from 'dayjs/plugin/relativeTime';\nimport _ from 'lodash';\nimport { CountdownTimer, Svg, ParsedMs } from '@tradingblock/components';\nimport {\n MarketCloseTimeSelector,\n MarketOpenTimeSelector,\n isMarketOpenSelector,\n useStateSelector,\n} from '../../../data/global/dataSelectors';\nimport { DisplayTimeTilClose } from '../../../utilities/date';\nimport { useDispatch } from 'react-redux';\nimport { AccountActions } from '../../../data/global/actions/AccountActions';\nimport { MarketDataEntitlementTypeId } from '@tradingblock/types';\nimport { InfoDataActions } from '../../../data/global/actions/InfoActions';\n\ndayjs.extend(relativeTime);\n\nexport const DashboardMarketClosedCountdown: FC<{}> = ({}) => {\n const dispatch = useDispatch();\n const latestReceivedDate = useStateSelector(s => s.quotes.quoteMetadata.latestReceivedTime);\n const entitlement = useStateSelector(s => s.account.dataEntitled);\n const isExpired = useStateSelector(s => s.auth.isExpired);\n\n const origin = useStateSelector(s => s.auth.origin);\n const siteConfigId = origin === 'mb' ? 4 : 2;\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\n const marketOpenTime = useStateSelector(s => MarketOpenTimeSelector(s));\n const marketCloseTime = useStateSelector(s => MarketCloseTimeSelector(s));\n\n const countdownTitle = useCallback(\n (parsed: ParsedMs) => {\n const marketClosed =\n parsed.hours <= 0 && parsed.minutes <= 0\n ? 'NYSE Market closed'\n : `NYSE Market closes in ${DisplayTimeTilClose(parsed)}`;\n\n const marketOpens = `NYSE Market opens in ${DisplayTimeTilClose(parsed)}`;\n let quoteDataAsOf = 'Data refresh time not available';\n if (!_.isNil(latestReceivedDate)) {\n const now = dayjs().valueOf();\n if (now <= latestReceivedDate) {\n quoteDataAsOf = 'Data as of a few seconds ago';\n } else {\n quoteDataAsOf = `Data as of ${dayjs(latestReceivedDate).fromNow()}`;\n }\n }\n if (marketOpen) {\n return `${marketClosed}. ${quoteDataAsOf}.`;\n } else {\n return `${marketOpens}. ${quoteDataAsOf}.`;\n }\n },\n [latestReceivedDate, marketOpen]\n );\n\n useEffect(() => {\n dispatch(AccountActions.requestAccountEntitlement({}));\n dispatch(InfoDataActions.requestAlertMessages({ siteConfigId }));\n }, []);\n\n useEffect(() => {\n let intervalId: NodeJS.Timeout | undefined = undefined;\n if (!isExpired) {\n intervalId = setInterval(function() {\n dispatch(InfoDataActions.requestAlertMessages({ siteConfigId }));\n }, 60 * 1000 * 5);\n }\n\n return () => {\n if (intervalId !== undefined) {\n clearInterval(intervalId);\n }\n };\n }, [isExpired, marketOpen]);\n\n return (\n <>\n {marketOpen && (\n \n parsed.hours > 0\n ? `${parsed.hours}:${parsed.minutes < 10 ? '0' : ''}${parsed.minutes} HRS`\n : parsed.minutes <= 0\n ? 'CLOSED'\n : `${parsed.minutes} MINS`\n }\n until={dayjs(marketCloseTime)\n .add(1, 'minutes')\n .toDate()}\n className={'dashboard-nav-tool dashboard-nav-time hide-mobile'}\n >\n {entitlement === MarketDataEntitlementTypeId.DelayedQuotesOnlyUser && (\n \n 20 MIN DELAYED DATA: QUOTE, BID, ASK, OR LAST PRICE\n \n )}\n \n \n \n \n )}\n {!marketOpen && (\n 'Closed'}\n until={dayjs(marketOpenTime)\n .add(1, 'minutes')\n .toDate()}\n className={'dashboard-nav-tool dashboard-nav-time hide-mobile'}\n >\n \n \n \n \n )}\n \n );\n};\n","import React from 'react';\nimport { Svg } from '@tradingblock/components';\n\nexport const Logo = () => {\n return ;\n};\n","import { useEffect, useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport { IBlockDataState } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { useDispatcher, TradingBlockDispatcher } from '../data/global/hooks';\nimport { useBlockData, useBlockState, useBlockSelector } from '../components/blocks/BlockState';\nimport { useStateSelector } from '../data/global/dataSelectors';\nimport { DataState } from '../data/global/state';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\n\ntype StringOrQuoteRequest =\n | string\n | string[]\n | {\n fetchAndSubscribe?: string[];\n subscribe: string[];\n };\n\nexport const setBlockQuotes = (blockId: string, dispatcher: TradingBlockDispatcher) => (symbolVal?: StringOrQuoteRequest) => {\n if (!symbolVal) {\n return;\n }\n let quotesToFetch: string[] = [];\n let allQuotes: string[] = [];\n if (isString(symbolVal)) {\n quotesToFetch = [symbolVal];\n allQuotes = [symbolVal];\n } else if (_.isArray(symbolVal)) {\n quotesToFetch = symbolVal;\n allQuotes = symbolVal;\n } else {\n quotesToFetch = symbolVal.fetchAndSubscribe || [];\n allQuotes = _.union(symbolVal.subscribe, symbolVal.fetchAndSubscribe || []);\n }\n if (quotesToFetch.length > 0) {\n // dispatcher.data.quote.request(_.uniq(quotesToFetch));\n }\n\n dispatcher.block.setQuoteSubscription(blockId, allQuotes);\n return;\n};\n\nexport const useQuoteActions = () => {\n const { dispatcher } = useDispatcher();\n const blockId = useBlockState('blockId');\n\n const addQuote = (symbolVal: string | string[]) => {\n const symbols = _.isArray(symbolVal) ? symbolVal : [symbolVal];\n // dispatcher.data.quote.request(symbolVal);\n dispatcher.block.addQuoteSubscription(blockId, symbols);\n return;\n };\n const setFeedQuotes = (symbolVal: string | string[]) => {\n const symbols = _.isArray(symbolVal) ? symbolVal : [symbolVal];\n dispatcher.block.setQuoteSubscription(blockId, symbols);\n };\n return {\n setQuotes: useCallback(setBlockQuotes(blockId, dispatcher), [dispatcher, blockId]),\n setFeedQuotes: useCallback(setFeedQuotes, [dispatcher]),\n addQuote: useCallback(addQuote, [dispatcher]),\n };\n};\n\nexport const useQuoteFeedSubscription = () => {\n const { setQuotes } = useQuoteActions();\n const setQuoteSubscriptions = useCallback(\n (symbolVal: string[] | string | undefined) => {\n const symbols = _.isString(symbolVal) ? [symbolVal] : _.isArray(symbolVal) ? symbolVal : [];\n const stringSymbols = _.filter(symbols, _.isString);\n if (stringSymbols.length > 0) {\n setQuotes(stringSymbols);\n }\n },\n [setQuotes]\n );\n return setQuoteSubscriptions;\n};\n\nconst useQuoteSubscription = (symbolVal: string[] | string | undefined) => {\n const setQuotes = useQuoteFeedSubscription();\n\n useEffect(() => {\n setQuotes(symbolVal);\n }, [symbolVal]);\n};\n\nexport const useQuoteSymbolSubscriptionFromGlobalState = (selector: (state: DataState) => string[] | string | undefined) => {\n const symbolVal = useStateSelector(selector);\n useQuoteSubscription(symbolVal);\n return symbolVal;\n};\nexport const useQuoteSymbolSubscription = (getSymbol: (state: T) => string[] | string | undefined) => {\n // const state = useBlockData();\n const symbolVal = useBlockSelector(getSymbol);\n // const symbolVal = useMemo(() => getSymbol(state), [state, getSymbol]);\n useQuoteSubscription(symbolVal);\n};\n","import { SymbolQuote } from '@tradingblock/api';\nimport { formatNumber, Loading } from '@tradingblock/components';\nimport React, { FC, useCallback, useEffect, useRef } from 'react';\nimport { getFavoriteSymbols, useStateSelector } from '../../data/global/dataSelectors';\nimport { getQuoteMetadata } from '../../data/global/selectors/quoteSelector';\nimport { QuoteDataActions } from '../../data/global/actions';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\nimport { useQuoteActions } from '../../hooks/useQuoteData';\nimport { AssetSymbol, AssetType } from '@tradingblock/types';\nimport { useFeedActions } from '../../data/feed/useFeedActions';\nexport interface DashboardSymbolWidgetProps {\n symbol?: string;\n}\nconst centeringStyle = { paddingLeft: '1rem', alignItems: 'center' };\nconst widgetSymbolsStyle = { color: 'ghostwhite', fontWeight: 'bold' } as object; //very strange necessary cast\n\nexport const DashboardSymbolWidget: FC = ({ symbol }): JSX.Element => {\n const quote: SymbolQuote = useStateSelector(s => getQuoteMetadata(s, symbol ? symbol : ''));\n const changePercentStyle = { color: quote && quote.NetChange > 0.0 ? 'var(--teal)' : 'var(--salmon)' };\n const { dispatch } = useDispatcher();\n const { dispatcher } = useDispatcher();\n const { showBannerSymbols, bannerSymbols } = useDashboardSettings();\n const { addQuote } = useQuoteActions();\n const widgetContainerStyle = {\n display: 'flex',\n flexDirection: 'row',\n fontSize: `0.75rem`,\n ...centeringStyle,\n } as object;\n\n const apiToken = useStateSelector(state => state.auth.apiToken);\n const accountId = useStateSelector(state => state.account.accountId);\n const { subscribeQuote } = useFeedActions(apiToken || '');\n\n useEffect(() => {\n dispatch(QuoteDataActions.requestQuote({ symbol: bannerSymbols }));\n addQuote(symbol ? symbol : '');\n subscribeQuote(accountId, { kind: 'Quote', symbols: [bannerSymbols] });\n }, [dispatch, bannerSymbols]);\n\n const change = useRef(0.0);\n\n if (quote && quote.NetChange) {\n change.current = quote.NetChange ? quote.NetChange : 0.0;\n }\n\n const widgetCells = quote ? (\n \n \n {symbol}\n  \n {formatNumber(quote.LastOrClosePrice, { currency: true }).replace('$', '')} \n \n {change.current && (\n \n )}\n {formatNumber(change.current)}\n \n \n \n ) : (\n
    \n \n
    \n );\n if (!showBannerSymbols) return <>;\n else return widgetCells;\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback, useEffect, useState, useMemo, useRef } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport useClickAway from 'react-use/lib/useClickAway';\nimport _ from 'lodash';\nimport {\n PageNav,\n AddBlockModal,\n PageNavTertiary,\n PageNavToggleButton,\n PageNavPrimary,\n isChildNodeOfElement,\n isChildNodeOfModal,\n} from '@tradingblock/components';\nimport { BlockType, AllBlockTypes, UserRole, UserProfileLevel } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useStateSelector,\n dashboardsSelectors,\n blocksSelectors,\n useAuthenticationSelector,\n} from '../../data/global/dataSelectors';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport { ClientNotifications } from '../notifications/ClientNotifications';\nimport { TradeOrderNotifications } from '../notifications/TradeOrderNotifications';\nimport { generateNewBlock } from '../../utilities/block';\nimport { TradingStatusIcon } from './TradingStatus';\nimport { DashboardMarketClosedCountdown } from './navigation/DashboardMarketClosedCountdown';\nimport { Logo } from '../basic/Logo';\nimport { isBlockTypeAllowed } from '../../utilities/dashboard';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\nimport Config from '../../config';\nimport { TradingEnvironment } from '../../constants';\nimport { NotificationActions, UIActions } from '../../data/global/actions';\nimport { DashboardSymbolWidget } from './DashboardSymbolWidget';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\n\nconst MenuToggleId = 'menu-toggle';\n\ninterface DashboardNavigationProps {\n menuOpen: boolean;\n drawerIsOpen: boolean;\n menuRef: React.MutableRefObject;\n toggleMenu: (nextValue?: any) => void;\n toggleDrawer: () => void;\n}\n\n//https://stackoverflow.com/questions/11715646/scroll-automatically-to-the-bottom-of-the-page\nexport const autoScrollToEnhanced = (element: any) => {\n let notChangedStepsCount = 0;\n const scrollInterval = setInterval(function() {\n if (element) {\n // element found\n clearInterval(scrollInterval);\n element.scrollIntoView({ behavior: 'smooth', block: 'end', inline: 'end' });\n } else if (document.documentElement.scrollTop + window.innerHeight !== document.documentElement.scrollHeight) {\n // no element -> scrolling\n notChangedStepsCount = 0;\n document.documentElement.scrollTop = document.documentElement.scrollHeight;\n } else if (notChangedStepsCount > 20) {\n // no more space to scroll\n clearInterval(scrollInterval);\n } else {\n // waiting for possible extension (autoload) of the page\n notChangedStepsCount++;\n }\n }, 50);\n};\n\nexport const DashboardNavigation: React.FC = ({\n menuRef,\n menuOpen,\n drawerIsOpen,\n toggleMenu,\n toggleDrawer,\n}) => {\n const { dispatcher } = useDispatcher();\n const { isAuthenticated, accountId } = useAuthenticationSelector();\n const accountNickname = useSelector(account.accountNickname);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const accountCanAccessCashiering = useSelector(account.accountCanAccessCashiering);\n const dashboard = useSelector(dashboardsSelectors.dashboard);\n const blocks = useStateSelector(s => blocksSelectors.blocks(s));\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n const userLevel = useSelector(account.userLevel);\n const accountRoles = useStateSelector(account.userRoles);\n const [showAddBlock, setShowAddBlock] = useState(false);\n const isIRA = useStateSelector(account.accountIsIRA);\n const isUGMA = useStateSelector(account.accountIsUGMA);\n const isPartnership = useStateSelector(account.accountIsPartnership);\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n const selectedLinkedAccountId = useStateSelector(\n state => state.account.selectedLinkedAccount && state.account.selectedLinkedAccount.accountId\n );\n const hasMultipleAccounts = useStateSelector(account.hasMultipleAccounts);\n const dispatch = useDispatch();\n const toggleAccountSwitcher = useCallback(() => dispatcher.account.toggleAccountSwitcher(), [dispatcher.account]);\n const { bannerSymbols } = useDashboardSettings();\n const subtitle = useMemo(() => {\n switch (Config.TradingEnvironment) {\n case TradingEnvironment.dev:\n return 'Dev';\n case TradingEnvironment.beta:\n return 'Beta';\n default:\n return undefined;\n }\n }, []);\n\n // all available block types, in custom order\n //const allBlockTypes = [BlockType.Order, BlockType.Activity, BlockType.Account, BlockType.PriceChart, BlockType.Quote, BlockType.OptionChain, BlockType.Positions, BlockType.Favorites, BlockType.AccountTransfer];\n\n const availableBlockTypes = useMemo(() => {\n let filteredBlockTypes = AllBlockTypes.filter(AllBlocksCategorized => {\n if (!isBlockTypeAllowed(AllBlocksCategorized, isVirtualEnv)) {\n return false;\n }\n if (AllBlocksCategorized === BlockType.AdminTools) {\n return userLevel !== UserProfileLevel.Account;\n }\n return true;\n });\n\n return filteredBlockTypes;\n }, [AllBlockTypes, accountCanAccessCashiering, isVirtualEnv, userLevel]);\n\n // load data needed for nav (balances, orders)\n useEffect(() => {\n if (isAuthenticated) {\n if (accountRoles !== undefined) {\n if (\n accountRoles.includes(UserRole.CashieringApproval) &&\n !isIRA &&\n !isUGMA &&\n !isPartnership &&\n !selectedLinkedAccountId\n ) {\n dispatcher.balances.requestPendingTransfers();\n }\n }\n dispatcher.balances.request();\n if (_.isNumber(accountId) && !selectedLinkedAccountId) {\n dispatcher.order.request(selectedLinkedAccountId ? selectedLinkedAccountId : accountId);\n\n // For the first time loading accountManagementDetails, dispatch to retrieve Flex type\n if (accountManagementDetails && !accountManagementDetails.flexibilityType) {\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n } else if (_.isNumber(selectedLinkedAccountId)) {\n dispatcher.order.request(selectedLinkedAccountId);\n }\n }\n }, [isAuthenticated, accountId, selectedLinkedAccountId, bannerSymbols]);\n\n const currentBlockLength = useRef(blocks.length);\n const onAddBlock = useCallback(\n (type: BlockType) => {\n currentBlockLength.current = blocks.length;\n const newBlock = generateNewBlock(type);\n dispatcher.block.addBlock(newBlock);\n setShowAddBlock(false);\n if (drawerIsOpen) {\n toggleDrawer();\n }\n },\n [dispatcher.block, drawerIsOpen, toggleDrawer, blocks, currentBlockLength.current]\n );\n\n useEffect(() => {\n const blockReference = document.querySelectorAll('div[id*=block-]')[currentBlockLength.current];\n blockReference && blockReference.classList.add('highlightBlockScroll');\n autoScrollToEnhanced(blockReference);\n }, [currentBlockLength.current]);\n\n const onAddOrHighlightBlockType = useCallback(\n (blockType: BlockType) => {\n if (_.some(blocks, b => b.type === blockType)) {\n // highlight all blocks of same type\n dispatcher.block.highlightBlocks(blockType);\n } else {\n // add new block\n onAddBlock(blockType);\n }\n },\n [blocks, dispatcher.block, onAddBlock]\n );\n\n useClickAway(menuRef, event => {\n const targetIsToggle =\n event && event.target && isChildNodeOfElement(event.target as Node, MenuToggleId) ? true : false;\n if (menuOpen && !targetIsToggle && !isChildNodeOfModal(event && event.target)) {\n toggleMenu();\n }\n });\n\n useEffect(() => {\n toggleMenu(false);\n }, [toggleMenu]);\n\n const onKeyDown = (e: KeyboardEvent) => {\n // pressed ESC...\n if (e.keyCode === 27) {\n if (showAddBlock) {\n e.preventDefault();\n e.stopPropagation();\n setShowAddBlock(false);\n }\n }\n };\n\n const toggleLockDashboard = useCallback(() => {\n dispatch(UIActions.toggleLockDashboard({}));\n }, [isDashboardLocked]);\n\n useEffect(() => {\n document.addEventListener('keydown', onKeyDown);\n return () => {\n document.removeEventListener('keydown', onKeyDown);\n };\n });\n\n const [dimensions, setDimensions] = useState({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n\n //Used to disabled / enable symbols when the viewport is small\n const viewPortResponse = useMemo(() => {\n return dimensions;\n }, [dimensions.width]);\n\n useEffect(() => {\n const handleResize = () => {\n setDimensions({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n };\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [window, setDimensions, dimensions]);\n\n const mobileBannerStyle = {\n overflow: 'auto',\n paddingRight: '3px',\n marginTop: '3px',\n marginBottom: '3px',\n overflowX: 'hidden',\n };\n\n // Space for static nav items\n const BASE_OFFSET = 250;\n // Space per symbol\n const SYMBOLS_OFFSET = 350;\n const elem = document.querySelector('body');\n const calculateElementOffset = useCallback(() => {\n return elem\n ? elem.getBoundingClientRect().x +\n (bannerSymbols.length === 0 ? 1 : bannerSymbols.length * SYMBOLS_OFFSET) +\n BASE_OFFSET\n : 0;\n }, [elem, viewPortResponse.width]);\n\n const bannerValidation = (bannerSymbols_: string[]) => {\n if (bannerSymbols_.length === 0 || viewPortResponse.width < 900) {\n return [];\n } else return bannerSymbols_;\n };\n\n if (userLevel !== 'Account') {\n return (\n \n \n \n \n \n
    \n {dashboard && dashboard.title}\n {(subtitle || isVirtualEnv) && (\n \n {subtitle ? `${subtitle} ` : ''}\n {isVirtualEnv && Virtual Trading}\n \n )}\n
    \n
    \n
    \n \n
    \n :\n
    \n \n onAddOrHighlightBlockType(BlockType.Activity)} />\n \n <>\n {bannerSymbols &&\n (viewPortResponse.width < calculateElementOffset() ? (\n \n {bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))}\n \n ) : (\n bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))\n ))}\n \n
    \n \n
    \n toggleLockDashboard()}\n title={isDashboardLocked ? 'Unlock dashboard' : 'Lock dashboard'}\n >\n {isDashboardLocked ? (\n \n ) : (\n \n )}\n \n {hasMultipleAccounts && (\n \n \n \n )}\n {!isDashboardLocked ? (\n setShowAddBlock(true)}\n title=\"Add block\"\n >\n \n \n ) : (\n \n \n \n )}\n {/* revisit in TBFE-459 */}\n \n
    \n
    \n\n setShowAddBlock(false)}\n />\n
    \n );\n }\n\n return (\n \n \n \n \n \n
    \n {dashboard && dashboard.title}\n {(subtitle || isVirtualEnv) && (\n \n {subtitle ? `${subtitle} ` : ''}\n {isVirtualEnv && Virtual Trading}\n \n )}\n
    \n
    \n
    \n \n
    \n :\n
    \n \n onAddOrHighlightBlockType(BlockType.Activity)} />\n \n <>\n {bannerSymbols &&\n (viewPortResponse.width < calculateElementOffset() ? (\n \n {bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))}\n \n ) : (\n bannerValidation(bannerSymbols).map((symbol, index) => (\n \n ))\n ))}\n \n
    \n\n \n
    \n toggleLockDashboard()}\n title={isDashboardLocked ? 'Unlock dashboard' : 'Lock dashboard'}\n >\n {isDashboardLocked ? (\n \n ) : (\n \n )}\n \n {hasMultipleAccounts && (\n \n \n \n )}\n {!isDashboardLocked ? (\n setShowAddBlock(true)}\n title=\"Add block\"\n >\n \n \n ) : (\n \n \n \n )}\n {/* revisit in TBFE-459 */}\n \n
    \n
    \n\n setShowAddBlock(false)}\n />\n
    \n );\n};\n","import React, { useCallback, useEffect, useRef } from 'react';\nimport { useStateSelector, blocksSelectors } from '../../data/global/dataSelectors';\nimport { DashboardContent, IDashboardContentProps } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { autoScrollToEnhanced } from './DashboardNavigation';\n\nexport const DashboardContentWrapper: React.FunctionComponent> = ({ children, ...props }) => {\n const locked = useStateSelector(s => s.blocks.locked);\n const linking = useStateSelector(s => s.blocks.linking);\n\n const highlightBlockIds = useStateSelector(blocksSelectors.highlightBlockIds);\n const highlightedAt = useStateSelector(blocksSelectors.highlightedAt);\n const timeoutMs = useStateSelector(blocksSelectors.highlightTimeoutMs);\n\n const { dispatcher } = useDispatcher();\n const clearHighlightedBlocks = useCallback(() => dispatcher.block.clearHighlightedBlocks(), [dispatcher.block]);\n\n const timeoutId = useRef();\n useEffect(() => {\n // if highlight set, restart timeout to clear highlight\n if (highlightBlockIds && highlightedAt) {\n const blockReference = document.querySelector(`div[id*=block-${highlightBlockIds[0]}]`);\n autoScrollToEnhanced(blockReference);\n window.clearTimeout(timeoutId.current);\n timeoutId.current = window.setTimeout(clearHighlightedBlocks, timeoutMs || 4000);\n }\n return () => {\n window.clearTimeout(timeoutId.current);\n };\n }, [timeoutId, highlightBlockIds, highlightedAt, timeoutMs, clearHighlightedBlocks]);\n\n return (\n \n {children}\n \n );\n};\n","import React, { useState, useRef, useEffect } from 'react';\nimport _ from 'lodash';\nimport { SizeType } from '@tradingblock/types';\nimport { useWhyDidYouUpdate, useWindowSizeContext } from '@tradingblock/components';\nimport { BlockDimensions } from '../../types';\n\nfunction useBbox(timeout?: number): [{ width: number; height: number } | undefined, React.MutableRefObject] {\n const ref = useRef(null);\n // const [bbox, setBbox] = useState();\n const [bbox, setBbox] = useState<{ width: number; height: number }>();\n\n useEffect(() => {\n const set = () => {\n if (ref.current) {\n const currBbox = ref.current.getBoundingClientRect();\n if (!_.isEqual(bbox, currBbox)) {\n return setBbox(ref && ref.current ? { width: currBbox.width, height: currBbox.height } : undefined);\n }\n }\n };\n set();\n let updateTimeout: NodeJS.Timeout | undefined = undefined;\n if (ref && ref.current) {\n const resizeObs = _.get(window, 'ResizeObserver', undefined);\n if (typeof resizeObs === 'function') {\n let resizeObserver: ResizeObserver | null = new resizeObs(() => {\n if (updateTimeout) {\n clearTimeout(updateTimeout);\n }\n updateTimeout = setTimeout(() => set(), timeout || 250);\n });\n resizeObserver.observe(ref.current);\n return () => {\n if (updateTimeout) {\n clearTimeout(updateTimeout);\n }\n if (!resizeObserver) {\n return;\n }\n\n resizeObserver.disconnect();\n resizeObserver = null;\n };\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [timeout]);\n\n return [bbox, ref];\n}\n\nconst defaultDimensions: BlockDimensions = {\n width: SizeType.lg,\n height: SizeType.lg,\n widthClassName: `block-width-lg`,\n heightClassName: `block-height-lg`,\n};\nexport function useBboxDimensions(timeout?: number): [BlockDimensions, React.MutableRefObject] {\n const [bbox, ref] = useBbox(timeout);\n // even though window size not used for dim calculation, still need to use as dep so we update size when window size changes\n const windowSize = useWindowSizeContext();\n const [dimensions, setDimensions] = useState(defaultDimensions);\n useEffect(() => {\n let width: SizeType = dimensions.width;\n let height: SizeType = dimensions.width;\n if (bbox && windowSize) {\n if (bbox.width && bbox.width < 670) {\n width = SizeType.sm;\n } else if (bbox.width && bbox.width < 850) {\n width = SizeType.md;\n } else {\n width = SizeType.lg;\n }\n if (bbox.height && bbox.height < 200) {\n height = SizeType.sm;\n } else if (bbox.width && bbox.height < 500) {\n height = SizeType.md;\n } else {\n height = SizeType.lg;\n }\n }\n const newDimensions = {\n width,\n height,\n bboxWidth: bbox && bbox.width,\n bboxHeight: bbox && bbox.height,\n widthClassName: `block-width-${width}`,\n heightClassName: `block-height-${height}`,\n };\n if (!_.isEqual(dimensions, newDimensions)) {\n setDimensions(newDimensions);\n }\n }, [bbox, dimensions, windowSize]);\n\n useWhyDidYouUpdate('useBboxDimensions', { bbox, windowSize, dimensions, ref });\n return [dimensions, ref];\n}\n\nexport function useBlockSize(dimensions: BlockDimensions, widthOrHeight: 'width' | 'height', values: [T, T, T]) {\n if (dimensions[widthOrHeight] === SizeType.sm) {\n return values[0];\n } else if (dimensions[widthOrHeight] === SizeType.md) {\n return values[1];\n } else {\n return values[2];\n }\n}\n","import { useBaseBlockActionDispatch, BlockStateContext } from '../../../components/blocks/BlockState';\nimport { IBlockDataState, IBlockState } from '@tradingblock/types';\nimport { BlockAndTableActions, BlockTableActions } from '../../../components/blocks/state/blockTable/BlockTableActions';\nimport { WithTables } from '../../../components/blocks/state/blockTable/BlockTableState';\nimport createCachedSelector from 're-reselect';\nimport _ from 'lodash';\nimport { useCallback, useContext } from 'react';\nimport { DataTableState } from '@tradingblock/components';\n\nconst defaultDataTableState: DataTableState = { sortBy: [], pageSize: 50, pageIndex: 0, columnOrder: [] };\nconst defaultAdminAccountManagementState: DataTableState = { sortBy: [], pageSize: 10, pageIndex: 0, columnOrder: [] };\nconst isAdminAccountManagementTable = (key: string) => {\n const adminTableKeys = [\n 'adminAccountManagmentTable',\n 'adminApplicationsTable',\n 'admin-entitlements-table',\n 'releaseNotes',\n 'adminAlertsTemplateTable',\n ];\n\n return adminTableKeys.includes(key);\n};\n\nconst blockTableStateSelector = createCachedSelector(\n (s: IBlockState>, key: string) => (s.data.tables ? s.data.tables[key] : undefined),\n (s: IBlockState>, key: string) => key,\n (tablesState, key): DataTableState => {\n if (_.isNil(tablesState) && !isAdminAccountManagementTable(key)) {\n return defaultDataTableState;\n }\n if (_.isNil(tablesState) && isAdminAccountManagementTable(key)) {\n return defaultAdminAccountManagementState;\n }\n\n if (!isAdminAccountManagementTable(key)) {\n return { ...defaultDataTableState, ...tablesState };\n } else {\n return { ...defaultAdminAccountManagementState, ...tablesState };\n }\n }\n)((s, key: string) => `block-table-${s.blockId}-${key}`);\n\nexport const useBlockTableActions = () => useBaseBlockActionDispatch();\n\nexport const useBlockTable = (key: string) => {\n const state: IBlockState> = useContext(BlockStateContext);\n const initialState = blockTableStateSelector(state, key);\n const dispatch = useBaseBlockActionDispatch();\n const setTable = useCallback(\n (table: Partial) => {\n dispatch(BlockTableActions.setTableState({ key: key, table }, { persist: true }));\n },\n [dispatch]\n );\n return { state: initialState, setTable };\n};\n","import React, { useEffect, useCallback, useMemo } from 'react';\nimport { SortingRule, Table, useWhyDidYouUpdate, useParentSizeContext, DataTableState } from '@tradingblock/components';\nimport { useBboxDimensions } from '../useBboxDimensions';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { useBlockTableSize } from './useBlockTableSize';\nimport { useBlockTable } from './useBlockTableActions';\nimport { BlockTableProps } from './BlockTableTypes';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nexport const BlockTableContent: React.FunctionComponent = ({\n onSizeChanged,\n onSort,\n tableKey,\n onPage,\n onPageSize,\n pageCount,\n getColumnOrder,\n expandRows,\n firstRowExpanded,\n ...props\n}) => {\n const b = useParentSizeContext();\n const [{ width }, ref] = useBboxDimensions(250);\n const size = useBlockTableSize(width);\n const blockTableState = useBlockTable(tableKey);\n const handleonSort = useCallback(\n (sorts: SortingRule[]) => {\n if (onSort) {\n onSort(sorts);\n }\n blockTableState.setTable({ sortBy: sorts });\n },\n [onSort, blockTableState.setTable]\n );\n const handleOnColumnOrderChanged = useCallback(\n (columnOrder: string[]) => {\n blockTableState.setTable({ columnOrder });\n },\n [blockTableState.setTable]\n );\n useEffect(() => {\n if (onSizeChanged) {\n onSizeChanged(size);\n }\n }, [size, onSizeChanged]);\n\n const blockId = useBlockId();\n useWhyDidYouUpdate(`${blockId}:BlockTable`, { size, ref, blockId, ...props });\n const initialState = useMemo((): DataTableState => {\n const tableState = blockTableState.state;\n return {\n ...(tableState || {}),\n ...(props.initialState || {}),\n columnOrder: tableState.columnOrder || (props.initialState && props.initialState.columnOrder),\n sortBy: tableState.sortBy || (props.initialState && props.initialState.sortBy),\n };\n }, [props.initialState, blockTableState.state]);\n\n useEffect(() => {\n if (getColumnOrder) {\n getColumnOrder(blockTableState.state.columnOrder);\n }\n }, [getColumnOrder, blockTableState.state.columnOrder]);\n\n // use the blockTableState to set the page index and page size if they differ from the initial state\n // this is to ensure that the table state is always in sync with the blockTableState\n // currently the activities block is not set up to persist tab or timeframe selections, so we cannot use the blockTableState to set the page index and page size\n // TODO: refactor the activities block to persist tab and timeframe selections\n useEffect(() => {\n if (\n initialState.pageIndex !== blockTableState.state.pageIndex &&\n onPage &&\n tableKey !== 'orders' &&\n tableKey !== 'accountsTable' &&\n tableKey !== 'adminApplicationsTable'\n ) {\n onPage(blockTableState.state.pageIndex);\n }\n if (\n initialState.pageSize !== blockTableState.state.pageSize &&\n onPageSize &&\n tableKey !== 'orders' &&\n tableKey !== 'accountsTable' &&\n tableKey !== 'adminApplicationsTable'\n ) {\n onPageSize(blockTableState.state.pageSize);\n }\n }, [blockTableState.state.pageIndex, blockTableState.state.pageSize]);\n\n const handleOnPage = useCallback(\n (pageIndex: number) => {\n if (onPage) {\n onPage(pageIndex);\n }\n blockTableState.setTable({ pageIndex });\n },\n [onPage, blockTableState.setTable]\n );\n\n const handleOnPageSize = useCallback(\n (pageSize: number) => {\n if (onPageSize) {\n onPageSize(pageSize);\n }\n blockTableState.setTable({ pageSize });\n },\n [onPageSize, blockTableState.setTable]\n );\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n return (\n
    \n \n
    \n );\n};\n","import { useMemo } from 'react';\nimport { SizeType } from '@tradingblock/types';\nimport { getTableSize, useWindowSizeContext } from '@tradingblock/components';\nexport function useBlockTableSize(tableWidth: SizeType): SizeType {\n const { width } = useWindowSizeContext();\n const size = useMemo(() => getTableSize(tableWidth, width), [width, tableWidth]);\n return size;\n}\n","import React from 'react';\nimport { TableProps, useParentSizeContext } from '@tradingblock/components';\nimport { BlockTableContent } from './table/BlockTableContent';\nimport { BlockTableProps } from './table/BlockTableTypes';\n\nexport const BlockTable: React.FunctionComponent = props => {\n return (\n \n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const useOrderBlockSettings = (blockId?: string) => {\n return useStateSelector(s => blockSettings.order(s, blockId));\n};\nexport const useOrderSettings = () => {\n const blockId = useBlockId();\n return useOrderBlockSettings(blockId);\n};\n","import { useOrderData, OrderState } from './OrderState';\nimport { useGroupState } from '../../useGroupState';\n\ntype fieldOf = keyof T;\ntype selectorOf = (val: T) => TT;\n\nexport function useOrderState(field: K) {\n // const blockId = useBlockId();\n // const selector = createCachedSelector((s: OrderState, blockId: string) => s[field], (val: OrderState[K]) => val)((_: OrderState, blockId: string) => blockId);\n // const value = useOrderData(s => selector(s, blockId));\n const value = useOrderData(s => s[field]);\n return value;\n}\nexport function useOrderStateAs(field: K, transform: (val: OrderState[K]) => T) {\n const value = useOrderData(s => s[field]);\n return transform(value);\n}\n\nexport const useOrderSymbol = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol.symbol : '';\n //return useOrderStateAs('symbol', s => (s ? s.symbol : ''));\n};\nexport const useOrderSymbolOrUndefined = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol.symbol : undefined;\n};\n\nexport const useOrderAssetSymbolOrUndefined = () => {\n const [symbol] = useGroupState('symbol');\n return symbol ? symbol : undefined;\n};\n","import _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { Legs, OrderAction } from '@tradingblock/types';\nimport { calculateOrderPrice, orderLegOccSymbol } from '@tradingblock/api';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { OrderState } from '../state/OrderState';\nimport { createDeepSelector, createDeepArraySelector } from '../../../data/selectors';\nimport { GCD } from '../../../utilities/data';\nimport { LegQuoteState, Quotebidask } from './orderTypes';\n\nexport const getOrderLegPrices = createCachedSelector(\n (state: LegQuoteState) => state.legs,\n (state: LegQuoteState) => state.quotes,\n ({ orderAction, strategy, legs }: LegQuoteState) =>\n OrderSelectors.actionForPrice({ strategy, action: orderAction, legs }),\n (state: LegQuoteState) => GCD(_.map(state.legs, l => l.SpreadRatio || 1)) || 1,\n (state: LegQuoteState) => state.strategy,\n (legs: Legs, quotes: Quotebidask, action: OrderAction, gcd: number, strategy) => {\n return calculateOrderPrice(legs, quotes, action, gcd, strategy);\n }\n)((s: LegQuoteState, blockId: string) => blockId || 'UNKNOWN', { selectorCreator: createDeepSelector });\n// export const orderLegPrices = getOrderLegPrices({ legs, quotes: quotes, orderType, orderAction, strategy });\n\nexport const getOrderQuotes = createCachedSelector(\n (s: OrderState, blockId: string) => _.values(s.quotes),\n quotes => quotes\n)((_, blockId: string) => `orderquotes-${blockId}`);\n\nconst orderLegSymbolSelector = createDeepArraySelector(\n (s: OrderState) => s.legs,\n (s: OrderState) => s.symbol,\n (legs, symbol) => {\n if (symbol === undefined) {\n return [];\n }\n\n const legSymbols = legs\n ? _.reduce(\n legs,\n (acc: string[], l) => {\n const legSymbol = orderLegOccSymbol(symbol, l);\n if (legSymbol === undefined) {\n return acc;\n }\n return _.uniq([...acc, legSymbol]).sort();\n },\n []\n )\n : [];\n return legSymbols;\n }\n);\n\nexport const orderBlockSymbols = createCachedSelector(\n (s: OrderState, blockId: string) => (s.symbol ? s.symbol.symbol : undefined),\n (s: OrderState) => (s.symbol ? s.symbol.underlyingSymbol : undefined),\n orderLegSymbolSelector,\n (symbol, underlyingSymbol, legSymbols) => {\n let symbolValues: string[] = [];\n if (symbol) {\n symbolValues = [...symbolValues, symbol];\n }\n if (underlyingSymbol) {\n symbolValues = [...symbolValues, underlyingSymbol];\n }\n if (legSymbols && legSymbols.length > 0) {\n symbolValues = [...symbolValues, ...legSymbols];\n }\n\n return _.uniq(symbolValues);\n }\n)((s, blockId: string) => `${blockId}-symbols`);\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData, useOrderDataSelector, OrderQuote, useOrderBlockData, OrderState } from '../state/OrderState';\nimport { LegSelector, OrderSymbolListValues } from '../state/OrderLegSelector';\nimport { OrderPriceData } from '../data/orderTypes';\nimport { getOrderLegPrices, getOrderQuotes } from '../data/orderSelectors';\nimport { useQuoteBidAskMetadata } from '../../../hooks/useFeedQuote';\nimport { areArraysEqual } from '../../../utilities/data';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { Strategies, getKnownStrategy } from '@tradingblock/api';\nimport { account } from '../../../data/global/selectors/accountSelectors';\nimport { useSelector } from 'react-redux';\nimport { AssetType, OptionType, OrderAction, OrderType } from '@tradingblock/types';\nimport { ClassificationOrderLeg, classifyStrategy } from '../../../data/global/utilities/strategyClassification';\n\nconst orderDataSelector = createCachedSelector(\n (s: OrderState, blockId: string) => s.strategy,\n (s: OrderState) => s.orderType,\n (s: OrderState) => s.action,\n (strategy, orderType, orderAction) => ({ strategy, orderType, orderAction })\n)((s: OrderState, blockId: string) => `orderDateSelector-${blockId}`);\n\nconst useOrderPriceRawValues = (quotes: OrderQuote[], isBuy?: boolean): OrderPriceData => {\n const blockId = useBlockId();\n const { price } = useOrderDataSelector(s => ({\n price: s.price,\n }));\n const isLimitOrder = useOrderDataSelector(s => s.orderType === OrderType.Limit);\n const isIRA = useSelector(account.accountIsIRA);\n const legs = useOrderData(s => LegSelector.LegsByOCC(s, blockId));\n const { strategy, orderType, orderAction } = useOrderData(s => orderDataSelector(s, blockId));\n const match = useOrderData(s => s.validation && s.validation.match);\n\n // const classifyOrderLegs: ClassificationOrderLeg[] = Object.values(legs).reduce((acc, leg) => {\n // if (leg.AssetType === AssetType.Equity) {\n // acc.push({\n // type: \"Shares\",\n // action: leg.Action === OrderAction.Buy ? \"BUY\" : \"SELL\",\n // strike: 0,\n // expiration: new Date(),\n // spreadRatio: leg.SpreadRatio ? leg.SpreadRatio : 0,\n // });\n // return acc;\n // }\n // if (leg.Strike === undefined || leg.Expiration === undefined || leg.SpreadRatio === undefined) {\n // return acc;\n // }\n\n // acc.push({\n // type: leg.OptionType === OptionType.Call ? \"CALL\" : \"PUT\",\n // action: leg.Action === OrderAction.Buy ? \"BUY\" : \"SELL\",\n // strike: leg.Strike,\n // expiration: typeof leg.Expiration.date === \"string\" ? new Date(leg.Expiration.date) : leg.Expiration.date,\n // spreadRatio: leg.SpreadRatio ? leg.SpreadRatio : 0,\n // });\n // return acc;\n // }, [] as ClassificationOrderLeg[]);\n\n // const classifiedStrategy = classifyStrategy(classifyOrderLegs.length === Object.values(legs).length ? classifyOrderLegs : []);\n // const match = Strategies.find(s => s.info.Name === classifiedStrategy.name);\n\n // if the strategy is custom but match is a call or put calendar, then we need to assign order action based on the action of the latest expiring option leg\n const isCustomStrategy = strategy === 'Custom';\n const isCallVerticalMatch = match && match.info.Name === 'Call Vertical';\n const isPutVerticalMatch = match && match.info.Name === 'Put Vertical';\n const isCoveredCallMatch = match && match.info.Name === 'Covered Call';\n const isCallButterflyMatch = match && match.info.Name === 'Call Butterfly';\n const isPutButterflyMatch = match && match.info.Name === 'Put Butterfly';\n const isIronButterflyMatch = match && match.info.Name === 'Iron Butterfly';\n const isIronCondorMatch = match && match.info.Name === 'Iron Condor';\n const isCallCondorMatch = match && match.info.Name === 'Call Condor';\n const isPutCondorMatch = match && match.info.Name === 'Put Condor';\n\n let orderActionValue = orderAction;\n\n if (isCustomStrategy && isCallVerticalMatch) {\n // for a call vertical spread the order is considered a buy if you are buying the lower strike and selling the higher strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutVerticalMatch) {\n // for a put vertical spread the order is considered a buy if you are selling the lower strike and buying the higher strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isCoveredCallMatch) {\n // covered call is considered a buy (bullish) if you are buying the stock and selling the call\n // covered call is considered a sell (bearish) if you are selling the stock and buying the call\n const shareLeg = Object.values(legs).find(l => l.AssetType === AssetType.Equity);\n if (shareLeg) {\n if (shareLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isCallButterflyMatch) {\n // for a call butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutButterflyMatch) {\n // for a put butterfly the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isIronButterflyMatch) {\n // for an iron butterfly the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isIronCondorMatch) {\n // for an iron condor the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Sell;\n } else {\n orderActionValue = OrderAction.Buy;\n }\n }\n }\n\n if (isCustomStrategy && isCallCondorMatch) {\n // for a call condor the order is considered a buy if you are buying the lower strike and higher strike and selling the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n if (isCustomStrategy && isPutCondorMatch) {\n // for a put condor the order is considered a buy if you are selling the lower strike and higher strike and buying the middle strike\n // find the leg with the lower strike\n const lowerStrikeLeg = _.minBy(Object.values(legs), l => l.Strike);\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderActionValue = OrderAction.Buy;\n } else {\n orderActionValue = OrderAction.Sell;\n }\n }\n }\n\n const orderLegPrices = getOrderLegPrices({\n legs,\n quotes: quotes,\n orderType,\n orderAction: orderActionValue,\n strategy,\n });\n let marginCost = 0;\n\n if (strategy !== undefined && strategy !== 'Custom' && getKnownStrategy(strategy)) {\n const tradingStrategy = getKnownStrategy(strategy);\n if (tradingStrategy && tradingStrategy.profile.MarginRequirements) {\n //TODO: When upgrading typescript then can simplify type check into if statement\n const marginCostFormula = tradingStrategy.profile.MarginRequirements[orderAction];\n\n if (marginCostFormula && Object.values(legs).length > 0 && quotes.length > 0) {\n //TODO: Need to think if 0 is really correct here for price if pice is not set...\n marginCost = marginCostFormula(legs, quotes, isLimitOrder, price ? price : 0, isIRA);\n }\n }\n }\n\n if (strategy !== undefined && strategy === 'Custom' && match && match.profile && match.profile.MarginRequirements) {\n const actionValue = isBuy ? OrderAction.Buy : OrderAction.Sell;\n const tradingStrategy = getKnownStrategy(match.info.Name);\n if (tradingStrategy && tradingStrategy.profile.MarginRequirements) {\n const marginCostFormula = tradingStrategy.profile.MarginRequirements[actionValue];\n\n if (marginCostFormula && Object.values(legs).length > 0 && quotes.length > 0) {\n marginCost = marginCostFormula(legs, quotes, isLimitOrder, price ? price : 0, isIRA);\n }\n }\n }\n\n if (orderLegPrices === undefined) {\n return {\n bid: 0,\n ask: 0,\n mid: 0,\n totalMultiple: 0,\n gcd: 0,\n marginCost: 0,\n };\n }\n const { bid, ask, mid, ...marketPrices } = orderLegPrices;\n return {\n ...marketPrices,\n mid,\n ask,\n bid,\n marginCost,\n };\n};\n\nexport const useOrderPrice = (isBuy?: boolean): OrderPriceData & { includesAllSymbols: boolean } => {\n const blockId = useBlockId();\n const orderSymbols = useOrderBlockData(OrderSymbolListValues);\n const quotes = useOrderData((s: OrderState) => getOrderQuotes(s, blockId));\n const uniqueQuoteSymbols = _.uniq(quotes.map(q => q.Symbol));\n const includesAllSymbols = areArraysEqual(uniqueQuoteSymbols, orderSymbols);\n const { bid, ask, mid, totalMultiple, gcd, marginCost } = useOrderPriceRawValues(quotes, isBuy);\n return { bid, ask, mid, totalMultiple, includesAllSymbols, gcd, marginCost };\n};\n\nexport const useOrderPriceValue = (field: keyof ReturnType) => {\n const quotes = useQuoteBidAskMetadata();\n useWhyDidYouUpdate('useOrderPriceValue', { field, quotes });\n const value = useOrderPriceRawValues(quotes)[field];\n return useMemo(() => value, [value]);\n};\n// export const useSymbolBidAsk = (occSymbol: string) => {\n// const quote = useStateSelector(s => getQuoteMetadata(s, occSymbol || ''));\n// const symbolQuote = useMemo(() => (quote ? { bid: quote.BidPrice, ask: quote.AskPrice } : { bid: undefined, ask: undefined }), [quote]);\n// return symbolQuote;\n// };\n","import { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { getType } from 'typesafe-actions';\nimport {\n AssetSymbol,\n SaveOptions,\n Legs,\n OrderLegDTO,\n TradingStrategyOrCustom,\n OrderAction,\n TradingStrategy,\n OptionType,\n PositionInfo,\n DebitOrCredit,\n BlockGroupOrderInfo,\n AssetSymbolInfo,\n Expiration,\n Order,\n OrderLeg,\n} from '@tradingblock/types';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useOrderBlockSettings } from '../hooks/useOrderSettings';\nimport { useBlockState, useBlockActionDispatchAndGenericActions } from '../../../components/blocks/BlockState';\nimport { DefaultLegs, useOrderDebug } from '../OrderUtilities';\nimport { OrderState, useOrderData } from './OrderState';\nimport { OrderActions, Actions } from './OrderActions';\nimport { useOrderSymbol } from './useOrderState';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\n\nexport function useOrderActions() {\n const log = useOrderDebug('useOrderSymbolData');\n // const assetSymbol = useOrderData(s => s.symbol);\n const assetSymbol = useGroupAssetSymbol();\n const symbol = useOrderSymbol();\n const { dispatcher } = useDispatcher();\n const blockId = useBlockState('blockId');\n const settings = useOrderBlockSettings(blockId);\n const legs = useOrderData((s: OrderState) => s.legs || {});\n\n const { mid } = useOrderPrice();\n\n // const action = useOrderData((s: OrderState) => s.action);\n const [{ updateData, setField }, dispatch] = useBlockActionDispatchAndGenericActions();\n const clearOrder = useCallback(() => {\n return dispatch(Actions.clear({ options: { persist: true } }, { persist: true }));\n }, [dispatch]);\n const setStrike = useCallback(\n (legId: string, strike: number) => {\n return dispatch(Actions.setStrike({ legId, strike, options: { persist: true } }, { persist: true }));\n },\n [dispatch]\n );\n const setSymbol = useCallback(\n (symbol?: AssetSymbol, defaultToEmptyCustomIfSymbolChanges?: boolean, options?: SaveOptions) => {\n return dispatch(\n Actions.setSymbol(\n { symbol, options: { defaultToEmptyCustomIfSymbolChanges, settings } },\n options || { persist: true }\n )\n );\n },\n [dispatch, settings]\n );\n // const addOrderLeg = useCallback(\n // (leg: GroupOrderLeg, strategy: TradingStrategyOrCustom) => {\n // const strat: TradingStrategyNameOrCustom = strategy.info.Name;\n // return dispatch(Actions.addOrderLeg({ leg, strategy: strat }, { persist: true }));\n // },\n // [dispatch]\n // );\n\n const handleOrderGroupChange = useCallback(\n (symbol: AssetSymbol, orderInfo: BlockGroupOrderInfo) => {\n return dispatch(Actions.handleOrderGroupChange({ ...orderInfo, symbol, options: { persist: true }, settings }));\n },\n [dispatch, settings]\n );\n const setLegAction = useCallback(\n (legId: string, action?: OrderAction, options?: SaveOptions) => {\n return dispatch(Actions.setLegAction({ legId, action, options }, { persist: true }));\n },\n [dispatch]\n );\n const setExpiration = useCallback(\n (legId: string, expiration?: Expiration) => {\n return dispatch(Actions.setExpiration({ legId, expiration }, { persist: true }));\n },\n [dispatch]\n );\n const setOptionType = useCallback(\n (legId: string, optionType: OptionType) => {\n return dispatch(Actions.setOptionType({ legId, optionType }, { persist: true }));\n },\n [dispatch]\n );\n const setLegQuantity = useCallback(\n (legId: string, quantity: number) => {\n return dispatch(Actions.setLegQuantity({ legId, quantity }, { persist: true }));\n },\n [dispatch]\n );\n const setIsDirty = useCallback(\n (dirty: boolean) => {\n updateData({ isDirty: dirty });\n },\n [updateData]\n );\n const setOrderAction = useCallback(\n (action: OrderAction) => {\n return dispatch(Actions.setOrderAction({ action }, { persist: true }));\n },\n [dispatch]\n );\n const updateStateData = useMemo(\n () => (value: Partial, options?: SaveOptions | undefined) => {\n log('updateState %o', value);\n return updateData({ ...value }, options);\n },\n [updateData, log]\n );\n\n const setStrategy = useCallback(\n (\n strat: TradingStrategyOrCustom,\n options?: SaveOptions & { action?: OrderAction; reverseLegs?: boolean; isDirty?: boolean }\n ) => {\n const { action, reverseLegs, isDirty } = options || {\n action: undefined,\n reverseLegs: undefined,\n isDirty: undefined,\n };\n // allow missing symbol for 'Custom' strategy\n if (assetSymbol || strat.info.Name === 'Custom') {\n dispatch(\n Actions.setStrategy(\n { action, reverseLegs, isDirty, strategy: strat, symbol: assetSymbol, settings },\n { persist: true }\n )\n );\n } else {\n console.error('asset symbol is empty!');\n }\n dispatch({ type: getType(Actions.setPrice), payload: { price: undefined, updateCreditOrDebit: true, mid: mid } });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n },\n [assetSymbol, dispatch, settings] // , updateStateData, symbol, legs\n );\n const setMatchingStrategies = useCallback(\n (strat: TradingStrategy[], options?: SaveOptions) => {\n if (symbol) {\n updateStateData({ matchingStrategy: strat }, options);\n }\n },\n [updateStateData, symbol]\n );\n const setAction = useCallback(\n (actionVal: OrderAction, options?: SaveOptions) => {\n const updatedLegs: Legs = _.reduce(\n legs,\n (acc: Legs, val: OrderLegDTO, key: string): Legs => ({\n ...acc,\n [val.Id || key]: { ...val, Action: val.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy },\n }),\n {}\n );\n updateStateData({ action: actionVal, legs: updatedLegs }, options);\n },\n [updateStateData, legs]\n );\n const startValidation = useCallback(\n (strategy?: TradingStrategy) => {\n dispatch({ type: 'startValidation', payload: { strategy } });\n },\n [dispatch]\n );\n const setPositionInfo = useCallback((info: PositionInfo) => dispatch(Actions.setPositionInfo({ info })), [dispatch]);\n\n const changeSymbol = useCallback(\n (symbol: AssetSymbolInfo, symbolValue: AssetSymbol, options?: SaveOptions) => {\n const baseLegs = _.keys(legs).length > 0 ? legs : DefaultLegs({}, symbol);\n\n dispatcher.block.setQuoteSubscription(blockId, [symbolValue.symbol]);\n\n const updatedData = {\n price: undefined,\n symbol: symbolValue,\n legs: _.reduce(\n baseLegs,\n (acc: Legs, leg: OrderLegDTO, id: string) => {\n return {\n ...acc,\n [id]: {\n ...leg,\n SymbolName: symbolValue.symbol,\n Symbol: symbolValue.symbol,\n UnderlyingSymbol: symbolValue.symbol,\n },\n };\n },\n {}\n )\n };\n updateStateData(updatedData, options);\n },\n [blockId, legs, updateStateData, dispatcher]\n );\n const updateField: typeof setField = useCallback(\n (field: K, value: OrderState[K], options?: SaveOptions) =>\n setField(field, value, options),\n [setField]\n );\n const setQuantity = useCallback(\n (quantity: number, options?: SaveOptions) => {\n return dispatch(Actions.setQuantity({ quantity }, { persist: true }));\n },\n [dispatch]\n );\n const orderPlaced = useCallback(() => dispatch({ type: getType(Actions.orderPlaced), payload: {} }), [dispatch]);\n const setPrice = useCallback(\n (price: number | undefined, updateCreditOrDebit: boolean, negativePrice?: boolean) =>\n dispatch({ type: getType(Actions.setPrice), payload: { price, updateCreditOrDebit, negativePrice } }),\n [dispatch]\n );\n const setStopPrice = useCallback(\n (price?: number) => dispatch({ type: getType(Actions.setStopPrice), payload: { price } }),\n [dispatch]\n );\n const setDebitCredit = useCallback(\n (debitCredit?: DebitOrCredit) => dispatch(Actions.setDebitCredit({ debitCredit }, { persist: true })),\n [dispatch]\n );\n\n const removeQuote = useCallback((key: string) => dispatch({ type: getType(Actions.removeQuote), payload: key }), [\n dispatch,\n ]);\n\n const setSubaccountId = useCallback((subAccountId) => {\n dispatch(Actions.setSubaccountId({ subaccountId: subAccountId }));\n }, [dispatch])\n\n const setOrder = useCallback((order: Order) => {\n dispatch(Actions.setOrder({ order }));\n }, [dispatch]);\n\n return {\n handleOrderGroupChange,\n removeQuote,\n setDebitCredit,\n setSubaccountId,\n setPrice,\n setStopPrice,\n orderPlaced,\n setQuantity,\n setPositionInfo,\n setOrderAction,\n clearOrder,\n startValidation,\n setSymbol,\n setOptionType,\n setLegQuantity,\n setExpiration,\n setStrike,\n setStrategy,\n updateField,\n setAction,\n changeSymbol,\n setIsDirty,\n setMatchingStrategies,\n setLegAction,\n setOrder,\n };\n}\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport _ from 'lodash';\n\nexport const IsWarningSymbol = createCachedSelector(\n (s: DataState, underlyingSymbol?: string) => s.symbols.warningSymbols,\n (s: DataState, underlyingSymbol?: string) => underlyingSymbol,\n (warningSymbols, symbol) => {\n if (symbol === undefined) {\n return false;\n }\n if (!warningSymbols) {\n return false;\n }\n return warningSymbols.map(s => s.toLocaleLowerCase()).find(s => s === symbol.toLocaleLowerCase()) ? true : false;\n }\n)((s, underlyingSymbol) => underlyingSymbol || 'UNKNOWN');\n","import useAudio from 'react-use/lib/useAudio';\n\nexport const audioSrc = {\n success: require('../assets/sounds/ok.mp3'),\n error: require('../assets/sounds/error.mp3'),\n updates: require('../assets/sounds/updates.mp3'),\n};\n\nexport const useSounds = () => {\n const [successAudio, , successControls] = useAudio({\n src: audioSrc.success,\n });\n const [errorAudio, , errorControls] = useAudio({\n src: audioSrc.error,\n });\n return {\n successAudio,\n successControls,\n errorAudio,\n errorControls,\n };\n};\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderType, OrderAction, TradingStrategyNameOrCustom, DebitOrCredit, AssetType } from '@tradingblock/types';\nimport { useOrderData, useOrderDataSelector } from '../state/OrderState';\nimport { useOrderPrice } from './useOrderPrice';\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { determineIsBuy } from '../OrderUtilities';\n\nconst calculateStrategyTotal = (\n isLimitOrder: boolean,\n orderType: OrderType,\n orderAction: OrderAction,\n ask: number,\n bid: number,\n quantity: number,\n totalMultiple: number,\n gcd: number,\n limitPrice: number | undefined,\n stopPrice: number | undefined,\n strategy: TradingStrategyNameOrCustom | undefined,\n debitOrCredit: DebitOrCredit,\n isBuy: boolean | undefined\n) => {\n let orderPrice: number | undefined = 0;\n let execDebitOrCredit: DebitOrCredit | undefined = undefined;\n\n if (orderType === OrderType.Stop_Market) {\n orderPrice = stopPrice;\n } else if (orderType === OrderType.Stop_Limit) {\n orderPrice = limitPrice;\n } else if (isLimitOrder && limitPrice !== undefined) {\n if (isBuy || isBuy === undefined) {\n if (debitOrCredit === DebitOrCredit.Debit) {\n orderPrice = Math.min(ask, limitPrice);\n } else {\n orderPrice = Math.min(ask, -limitPrice);\n }\n if (orderPrice >= 0.0) {\n execDebitOrCredit = DebitOrCredit.Debit;\n } else {\n execDebitOrCredit = DebitOrCredit.Credit;\n }\n } else {\n if (debitOrCredit === DebitOrCredit.Credit) {\n orderPrice = Math.max(bid, limitPrice);\n } else {\n orderPrice = Math.max(bid, -limitPrice);\n }\n if (orderPrice >= 0.0) {\n execDebitOrCredit = DebitOrCredit.Credit;\n } else {\n execDebitOrCredit = DebitOrCredit.Debit;\n }\n }\n } else if (isLimitOrder) {\n orderPrice = undefined;\n } else {\n orderPrice = isBuy ? ask : bid;\n }\n\n const total = orderPrice && _.isFinite(orderPrice) ? quantity * orderPrice * totalMultiple * gcd : 0;\n return {\n total: Math.abs(total),\n execDebitOrCredit,\n };\n};\n\nexport const useOrderTotal = () => {\n const orderAction = useOrderDataSelector(s => s.action);\n const orderType = useOrderDataSelector(s => s.orderType);\n const isLimitOrder = useOrderDataSelector(s => s.orderType === OrderType.Limit);\n const strategy = useOrderDataSelector(s => s.strategy);\n const legs = useOrderData(OrderSelectors.legs);\n const isCustomOrder = strategy === 'Custom';\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const isStrategyMatch = classifiedStrategy && classifiedStrategy.name !== 'Custom';\n const isClassifiedAsCalendar = _.includes(classifiedStrategy.name, 'Calendar');\n const isCustomWithoutClassifiedStrategy = isCustomOrder && !isStrategyMatch;\n\n const { quantity, debitCredit, price, stopPrice } = useOrderDataSelector(s => ({\n price: s.price,\n stopPrice: s.stopPrice,\n quantity: _.isFinite(s.quantity) ? s.quantity : 1,\n debitCredit: s.debitCredit,\n }));\n const isBuy = determineIsBuy(\n isCustomOrder,\n orderAction,\n isClassifiedAsCalendar,\n isStrategyMatch,\n classifiedStrategy,\n isCustomWithoutClassifiedStrategy,\n debitCredit,\n legs,\n price\n );\n\n const { ask, bid, totalMultiple, gcd, marginCost } = useOrderPrice(isBuy);\n\n return useMemo(() => {\n const totalResults = calculateStrategyTotal(\n isLimitOrder,\n orderType,\n orderAction,\n ask,\n bid,\n quantity,\n totalMultiple,\n gcd,\n price !== undefined ? Math.abs(price) : price,\n stopPrice !== undefined ? Math.abs(stopPrice) : stopPrice,\n strategy,\n debitCredit === undefined ? DebitOrCredit.Debit : debitCredit,\n isBuy\n );\n\n return { ...totalResults, debitCredit, marginCost: marginCost * quantity * totalMultiple * gcd };\n }, [\n isLimitOrder,\n orderAction,\n ask,\n bid,\n quantity,\n totalMultiple,\n gcd,\n price,\n isCustomOrder,\n debitCredit,\n stopPrice,\n isBuy,\n legs,\n strategy,\n ]);\n};\n","import { useState, useCallback, useMemo, useEffect } from 'react';\r\nimport _ from 'lodash';\r\nimport constate from 'constate';\r\nimport useAudio from 'react-use/lib/useAudio';\r\nimport {\r\n TradingblockOrder,\r\n DebitOrCredit,\r\n Order,\r\n OrderLeg,\r\n OrderClass,\r\n OrderType,\r\n Durations,\r\n UserLevelTypes,\r\n UserProfileLevel,\r\n OrderStrategyType,\r\n AssetType,\r\n} from '@tradingblock/types';\r\nimport { orderToReplaceOrder } from '@tradingblock/api';\r\nimport { useOrderActions } from '../../state/useOrderActions';\r\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\r\nimport { IsWarningSymbol } from '../../../../data/global/selectors/symbolSelector';\r\nimport { useDispatcher } from '../../../../data/global/hooks';\r\nimport { OrderActions } from '../../../../data/global/actions';\r\nimport { useOrderSettings } from '../../hooks/useOrderSettings';\r\nimport { useSounds } from '../../../../hooks/useSounds';\r\nimport { useOrderTotal } from '../../hooks/useOrderTotal';\r\nimport { PreviewResult } from './PreviewPopup';\r\nimport { legToDto } from '../../OrderUtilities';\r\nimport { useDashboardSettings } from '../../../../hooks/useDashboardSettings';\r\nimport { OrderState, useOrderBlockData } from '../../state/OrderState';\r\nimport { OrderSelectors } from '../../state/OrderSelector';\r\nimport { set } from 'numeral';\r\nimport { useBlockActions, useBlockId } from '../../../../components/blocks/BlockState';\r\n\r\nexport type PreviewActions = 'execute' | 'replace' | 'error';\r\n\r\nexport const useOrderPreview = () => {\r\n const [isPreview, setIsPreview] = useState(false);\r\n\r\n const { successControls, errorControls, successAudio, errorAudio } = useSounds();\r\n const { disableSounds } = useOrderSettings();\r\n const { orderPlaced } = useOrderActions();\r\n const { muteAllSounds } = useDashboardSettings();\r\n const togglePreview = useCallback(() => setIsPreview(!isPreview), [isPreview]);\r\n\r\n const previewClosed = useCallback(\r\n (result: PreviewResult) => {\r\n setIsPreview(false);\r\n if (disableSounds !== true && result.action === 'order-placed') {\r\n !muteAllSounds &&\r\n (() => {\r\n const play = successControls.play();\r\n if (play !== undefined) {\r\n play.catch(() => {\r\n // Do nothing\r\n //TODO: Determine if we want to warn the user that the sound failed to play\r\n });\r\n }\r\n })();\r\n orderPlaced();\r\n } else if (disableSounds !== true && result.action === 'error') {\r\n !muteAllSounds &&\r\n (() => {\r\n const play = errorControls.play();\r\n if (play !== undefined) {\r\n play.catch(() => {\r\n // Do nothing\r\n //TODO: Determine if we want to warn the user that the sound failed to play\r\n });\r\n }\r\n })();\r\n } else {\r\n //do nothing if popup is just closed\r\n }\r\n },\r\n [setIsPreview, successControls, errorControls, disableSounds]\r\n );\r\n\r\n return useMemo(() => ({ isPreview, togglePreview, previewClosed, audio: { successAudio, errorAudio } }), [\r\n isPreview,\r\n togglePreview,\r\n previewClosed,\r\n successAudio,\r\n errorAudio,\r\n ]);\r\n};\r\n\r\nexport const getOrderPreviewLegs = (order: TradingblockOrder | Order) => {\r\n const hasMultipleLegs = order.Legs && order.Legs.length > 1;\r\n\r\n return _(order.Legs)\r\n .filter(l => {\r\n if (_.isNil(l.Symbol)) {\r\n return false;\r\n }\r\n if (hasMultipleLegs) {\r\n return l.Symbol && l.SpreadRatio ? true : false;\r\n } else if (l.Symbol) {\r\n return true;\r\n }\r\n return false;\r\n })\r\n .map(legToDto)\r\n .value();\r\n};\r\n\r\nconst adjustOrderQuantitiesAndRatios = (order: Order) => {\r\n if (!order) {\r\n return [0, []];\r\n }\r\n // function to find greatest common divisor\r\n const gcd = (a: number, b: number): number => {\r\n return b === 0 ? a : gcd(b, a % b);\r\n };\r\n\r\n // function to find highest common factor\r\n const findHCF = (arr: number[]): number => {\r\n return arr.reduce((a, b) => gcd(a, b));\r\n };\r\n\r\n const hcf = findHCF(order.Legs.map(l => l.SpreadRatio || 1));\r\n\r\n const adjustedOverallQuantity = order.Quantity * hcf;\r\n\r\n const adjustedRatios = order.Legs.map(l => {\r\n const ratio = l.SpreadRatio || 1;\r\n const adjustedRatio = ratio / hcf;\r\n return {\r\n ...l,\r\n SpreadRatio: adjustedRatio,\r\n Quantity: adjustedOverallQuantity * adjustedRatio,\r\n };\r\n });\r\n\r\n return [adjustedOverallQuantity, adjustedRatios];\r\n};\r\n\r\nfunction finalizeOrder(\r\n order: T,\r\n accountId?: number,\r\n debitOrCredit?: DebitOrCredit,\r\n subaccountId?: number\r\n): T {\r\n // determine the strategy of the order\r\n const isCustom = order.StrategyType === 'Undefined';\r\n // determine if all legs are option legs\r\n const allOptionLegs = order.Legs.every(l => l.AssetType === AssetType.Option);\r\n if (isCustom && allOptionLegs && order && order.Legs && order.Legs.length > 1) {\r\n const [adjustedOverallQuantity, adjustedRatios] = adjustOrderQuantitiesAndRatios(order);\r\n\r\n return {\r\n ...order,\r\n AccountId: accountId,\r\n DebitCredit: debitOrCredit,\r\n SubaccountId: subaccountId,\r\n Quantity: adjustedOverallQuantity,\r\n Legs: adjustedRatios,\r\n };\r\n }\r\n\r\n return {\r\n ...order,\r\n AccountId: accountId,\r\n DebitCredit: debitOrCredit,\r\n SubaccountId: subaccountId,\r\n };\r\n}\r\n\r\nexport const useOrderPreviewOrder = (action: PreviewActions) => {\r\n const order = useOrderBlockData(OrderSelectors.order);\r\n const [initialPrice, setInitialPrice] = useState();\r\n const [replacePrice, setReplacePrice] = useState();\r\n const [initialStopPrice, setInitialStopPrice] = useState();\r\n const [replaceStopPrice, setReplaceStopPrice] = useState();\r\n const [orderId, setOrderId] = useState();\r\n const { setStopPrice, setPrice, setDebitCredit, setSubaccountId, setOrder: setOrderCallback } = useOrderActions();\r\n const accountId = useStateSelector(state => state.account.accountId);\r\n const profile = useStateSelector(state => state.account.profile);\r\n const userLevel = profile && profile.current && profile.current.level;\r\n const isAboveAccountLevel = userLevel && userLevel !== UserProfileLevel.Account;\r\n const subAccounts = useStateSelector(state => state.account.subaccounts.subaccounts);\r\n\r\n useEffect(() => {\r\n const orderPrice = order ? order.Price : undefined;\r\n const currId = order ? order.OrderId : undefined;\r\n if (order && (initialPrice === undefined || orderId !== currId) && orderPrice) {\r\n setInitialPrice(orderPrice);\r\n setOrderId(currId);\r\n if (order && order.OrderType === OrderType.Stop_Limit && initialStopPrice === undefined && order.Stop) {\r\n setInitialStopPrice(order.Stop);\r\n }\r\n }\r\n }, [order, initialPrice, orderId, initialStopPrice]);\r\n\r\n useEffect(() => {\r\n const subaccountId = order && order.SubaccountId;\r\n const isSubaccountDeleted = subaccountId && subAccounts && !subAccounts.find(sa => sa.Id === subaccountId);\r\n const hasNoSubAccounts = !subAccounts && subaccountId;\r\n\r\n // If the user has deleted the subaccount associated with the order,\r\n // or if there are no subaccounts but the order has a subaccountId, we need to remove the subaccount designation from the order object.\r\n if (subaccountId && (isSubaccountDeleted || hasNoSubAccounts)) {\r\n setSubaccountId(undefined);\r\n }\r\n }, [order, subAccounts]);\r\n\r\n // const orderlegs = useOrderData(orderLegsSelector);\r\n const legs = useMemo(() => {\r\n if (order) {\r\n return getOrderPreviewLegs(order);\r\n }\r\n return [];\r\n }, [order]);\r\n\r\n const totalResults = useOrderTotal();\r\n const isWarningSymbol = useStateSelector(s => IsWarningSymbol(s, order ? order.UnderlyingSymbol : ''));\r\n\r\n const isTradingblockOrder = useMemo(() => {\r\n if (order) {\r\n return (order as TradingblockOrder).kind === 'order';\r\n }\r\n return false;\r\n }, [order]);\r\n\r\n const finalOrder = useMemo(() => {\r\n if (_.isNil(order)) {\r\n return undefined;\r\n }\r\n const debitOrCredit = order.DebitCredit || totalResults.debitCredit;\r\n // if the order strategy type contains vertical, calendar, butterfly, or condor we need to set the strategy type accordingly\r\n // currently the backend does not differentiate between call and put verticals/calendars/butterflies/condors so we need to do it here\r\n return finalizeOrder(\r\n {\r\n ...order,\r\n BypassWarnings: isWarningSymbol,\r\n StrategyType:\r\n order.StrategyType && _.includes(order.StrategyType, 'Vertical')\r\n ? OrderStrategyType.Vertical\r\n : order.StrategyType && _.includes(order.StrategyType, 'Calendar')\r\n ? OrderStrategyType.Calendar\r\n : order.StrategyType && order.StrategyType === OrderStrategyType.Call\r\n ? OrderStrategyType.Single\r\n : order.StrategyType && order.StrategyType === OrderStrategyType.Put\r\n ? OrderStrategyType.Single\r\n : order.StrategyType && _.includes(order.StrategyType, 'Butterfly')\r\n ? OrderStrategyType.Butterfly\r\n : order.StrategyType && _.includes(order.StrategyType, 'Condor')\r\n ? OrderStrategyType.Condor\r\n : order.StrategyType,\r\n },\r\n order.AccountId || accountId,\r\n debitOrCredit,\r\n order.SubaccountId\r\n );\r\n }, [order]);\r\n\r\n const changeSubaccountId = useCallback(\r\n (id?: number) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n setSubaccountId(id);\r\n },\r\n [setSubaccountId, order]\r\n );\r\n\r\n const changeLimitPrice = useCallback(\r\n (price: number | null, isNegativePrice?: boolean) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setPrice(price, false, isNegativePrice);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const changeStopPrice = useCallback(\r\n (price: number | null) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setStopPrice(price);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const changeDebitCredit = useCallback(\r\n (val: DebitOrCredit | undefined) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n setDebitCredit(val);\r\n },\r\n [order]\r\n );\r\n\r\n const changeReplacePrice = useCallback(\r\n (price: number | null) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setReplacePrice(price);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const changeReplaceStopPrice = useCallback(\r\n (price: number | null) => {\r\n if (order === undefined) {\r\n return;\r\n }\r\n if (price !== null) {\r\n setReplaceStopPrice(price);\r\n }\r\n },\r\n [order]\r\n );\r\n\r\n const { dispatch } = useDispatcher();\r\n const onSave = useCallback(() => {\r\n if (finalOrder) {\r\n // If the user is an admin, representative, or advisor we can bypass warnings by default\r\n if (isAboveAccountLevel) {\r\n finalOrder.BypassWarnings = true;\r\n }\r\n // need to remove SpreadRatio from order leg of single legged orders prior to sending to the backend\r\n if (finalOrder.Legs && finalOrder.Legs.length === 1) {\r\n finalOrder.Legs[0].SpreadRatio = undefined;\r\n }\r\n if (action === 'execute' || action === undefined) {\r\n dispatch(OrderActions.requestPlaceOrder(finalOrder));\r\n } else if (action === 'replace') {\r\n dispatch(OrderActions.requestChange(orderToReplaceOrder(finalOrder)));\r\n }\r\n if (finalOrder.Price) {\r\n setInitialPrice(finalOrder.Price);\r\n }\r\n }\r\n }, [order, action, isWarningSymbol, totalResults, accountId, dispatch]);\r\n\r\n const setOrder = useCallback(\r\n (order: Order) => {\r\n setOrderCallback(order);\r\n },\r\n [order]\r\n );\r\n\r\n return {\r\n order,\r\n legs,\r\n action,\r\n initialPrice,\r\n replacePrice,\r\n initialStopPrice,\r\n replaceStopPrice,\r\n isWarningSymbol,\r\n isTradingblockOrder,\r\n setOrder,\r\n changeSubaccountId,\r\n changeDebitCredit,\r\n changeLimitPrice,\r\n changeStopPrice,\r\n changeReplacePrice,\r\n changeReplaceStopPrice,\r\n onSave,\r\n };\r\n};\r\n","import { createSelector } from 'reselect';\nimport createCachedSelector from 're-reselect';\nimport _ from 'lodash';\nimport { expirationValue } from '../../../utilities/date';\nimport { StrikeByExpirationSymbolMap, ExpirationStrike } from '../../../types';\nimport { DataState } from '../state';\nimport { Expiration } from '@tradingblock/types';\nexport const getExpirations = createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp;\n }\n)((_, symbol) => symbol);\nexport const ExpirationSelectors = {\n expirations: createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp.expirations ? symbolExp.expirations : undefined;\n }\n )((_, symbol) => symbol),\n isFetching: createCachedSelector(\n (state: DataState) => state.expirations,\n (_state: DataState, symbol: string) => symbol,\n (state, symbol) => {\n const symbolExp = state[symbol] || {\n isFetching: false,\n expirations: undefined,\n };\n return symbolExp.isFetching;\n }\n )((_, symbol) => symbol),\n};\nconst getStrikeState = (\n state: {\n [symbol: string]: StrikeByExpirationSymbolMap;\n },\n symbol: string,\n expiration: Expiration\n) => {\n const expKey = expirationValue(expiration);\n const symbolState = state[symbol] || {};\n return symbolState[expKey] || { isFetching: false, strikes: undefined, symbol, expiration };\n};\n\nexport const StrikeSelectors = {\n expirationsBySymbol: createSelector(\n (state: DataState) => state,\n (_state: DataState, symbol: string) => symbol,\n (state: DataState, symbol: string) => {\n const symbolStrikes: ExpirationStrike[] =\n state.strikes && state.strikes[symbol] ? _.values(state.strikes[symbol]) : [];\n return _.map(symbolStrikes, ss => ss.expiration);\n }\n ),\n strikesBySymbol: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbol: string) => symbol,\n (state: { [symbol: string]: StrikeByExpirationSymbolMap }, symbol: string): ExpirationStrike[] => {\n const symbolStrikes: ExpirationStrike[] = state && state[symbol] ? _.values(state[symbol]) : [];\n return symbolStrikes;\n }\n )((_, symbol) => symbol),\n strikes: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbolExp: { symbol: string; expiration: Expiration }) => symbolExp,\n (state, symbolExp) => {\n const { expiration, symbol } = symbolExp;\n return getStrikeState(state, symbol, expiration).strikes;\n }\n )((_, { symbol, expiration }) => `${symbol}-${expirationValue(expiration)}`),\n isFetching: createCachedSelector(\n (state: DataState) => state.strikes,\n (_state: DataState, symbolExp: { symbol: string; expiration: Expiration }) => symbolExp,\n (state, symbolExp) => {\n const { expiration, symbol } = symbolExp;\n return getStrikeState(state, symbol, expiration).isFetching;\n }\n )((_, { symbol, expiration }) => `${symbol}-${expirationValue(expiration)}`),\n anyFetching: createCachedSelector(\n (state: DataState) => state.strikes,\n (state: DataState, symbol: string) => symbol,\n (\n strState: {\n [symbol: string]: StrikeByExpirationSymbolMap;\n },\n symbol: string\n ) => {\n const strikeValues = strState[symbol] || {};\n return _.some(strikeValues, (v, k) => v.isFetching === true);\n }\n )((_, symbol) => symbol),\n};\n","import { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderSymbol } from '../state/useOrderState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { ExpirationSelectors, StrikeSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { DataState } from '../../../data/global/state';\n\nexport const useOrderStatus = () => {\n const isComplete = useOrderData(OrderSelectors.isComplete);\n const symbol = useOrderSymbol();\n const areFetchingExpirations = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol || ''));\n const areStrikesFetching = useStateSelector((state: DataState) => StrikeSelectors.anyFetching(state, symbol || ''));\n const isLoading = areStrikesFetching || areFetchingExpirations;\n return {\n complete: isComplete,\n loading: isLoading,\n };\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport InputNumber, { InputNumberProps } from 'rc-input-number';\nimport { useOrderData } from '../state/OrderState';\nimport { useOrderStatus } from '../data/useOrderStatus';\n\nexport interface DEPRECATED_PriceComponentProps\n extends Omit, 'formatter' | 'parser' | 'precision' | 'step'> {\n isCustomStrategyOrCalendar?: boolean;\n}\n\nexport function DEPRECATED_PriceComponent({ isCustomStrategyOrCalendar, ...props }: PriceComponentProps) {\n const priceInputNumberRef = useRef(null);\n\n // Odd hack, but basically InputNumber takes control over the input, and does not listen to reference updates as it\n // Alters it according to the source code. The issue is that when we clear the value, it does not update the input\n // So we have to manually update the input when the value changes\n useEffect(() => {\n if (priceInputNumberRef.current && props.value === undefined) {\n priceInputNumberRef.current.value = '';\n }\n }, [priceInputNumberRef, props.value]);\n\n const { price } = useOrderData(s => ({ price: s.price }));\n\n return (\n
    \n = 0 ? 0.01 : -0.01) : 0.01}\n formatter={(value: number | string | undefined, { userTyping, input }): string | undefined | null => {\n // Handle value and input slippage when the user is entering a value and the input is slipping behind\n if (value === '' && (input === '' || input === '$' || input === '0')) {\n return '';\n }\n\n // Handles when the user is typing and the input is slipping behind on deletion\n if (value === '' && userTyping !== true) {\n if (input === '$0.01') {\n return '$0.00';\n }\n return '';\n }\n\n // Handle when the user is entering input as it can be handled different\n if (userTyping) {\n // If the user is typing, return the value with a dollar sign and 2 decimal places\n return `${input !== '' &&\n input !== '$' &&\n input !== '.' &&\n input !== '0.' &&\n input !== '0' &&\n input !== '$0.00' &&\n input !== '-'\n ? input\n : value !== '0' && value !== ''\n ? isCustomStrategyOrCalendar // if isCustomStrategyOrCalendar is true, we allow negative\n ? typeof value === 'number'\n ? value\n : parseFloat(value === undefined || value === '' ? '0' : value)\n : Math.abs(\n typeof value === 'number' ? value : parseFloat(value === undefined || value === '' ? '0' : value)\n )\n : '$0.00'\n }`;\n }\n\n // If the user is not inputting anything\n if (value === undefined) {\n return '';\n }\n // Output the value of the value passed in with a dollar sign and 2 decimal places and removes ending two 00 if they exist on 4th decimal place\n // log the output prior to returning to see what is being returned\n return `$${Math.abs(typeof value === 'number' ? value : parseFloat(value === '' ? '0' : value))\n .toFixed(4)\n .replace(/(\\.\\d{2})(0*)$/, '$1')}`;\n }}\n parser={(displayValue: string | undefined): number => {\n return displayValue ? Number(displayValue.replace(/[$\\s,]/g, '')) : 0;\n }}\n {...props}\n />\n
    \n );\n}\n\n\n/**\n * Props for the PriceComponent.\n * @typedef {Object} PriceComponentProps\n * @property {string} [placeholder] - The placeholder text for the input field.\n * @property {(value: number | null) => void} onChange - Callback function that is called when the input value changes.\n * @property {boolean} [isCustomStrategyOrCalendar] - Flag indicating if custom strategy or calendar logic is applied.\n * @property {boolean} [disabled] - Flag indicating if the input should be disabled.\n * @property {number | null} [value] - The initial value of the input.\n */\nexport interface PriceComponentProps {\n placeholder?: string;\n onChange: (value: number | null) => void;\n isCustomStrategyOrCalendar?: boolean;\n disabled?: boolean;\n value?: number | null;\n}\n\n/**\n * A component for inputting price values.\n * @param {PriceComponentProps} props - The props for the component.\n */\nexport default function PriceComponent({\n placeholder,\n isCustomStrategyOrCalendar,\n onChange: valueFinalized,\n disabled,\n value,\n}: PriceComponentProps) {\n const [displayValue, setDisplayValue] = useState('');\n const [priceValue, setPriceValue] = useState(value || 0);\n const priceInputNumberRef = useRef(null);\n const { complete } = useOrderStatus();\n\n // When the value prop changes, format it and update state.\n useEffect(() => {\n if (value === null) {\n setDisplayValue('$0.00'); // Clear display if value is null or undefined\n setPriceValue(0);\n valueFinalized(0)\n } else if (value === undefined) {\n setDisplayValue(''); // Clear display if value is null or undefined\n setPriceValue(0);\n } else {\n // Format value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(value).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n setPriceValue(value); // Store the actual numeric value\n }\n }, [value]);\n\n /**\n * Handle input change events.\n * @param {React.ChangeEvent} e - The change event.\n */\n const onInputChanged = (e: React.ChangeEvent) => {\n const inputValue = e.target.value;\n // Define regex based on whether custom strategy or calendar is enabled\n const regex = new RegExp(/^\\$?\\d*(\\.\\d{0,4})?$/);\n \n // Check for multiple leading zeros and replace them with a single zero\n let sanitizedInputValue = inputValue.replace(/^\\$?0+/, (match) => match === '$0' || match === '$00' ? '$0' : '0');\n\n if (sanitizedInputValue.length > 20) {\n return;\n }\n\n // Update state if input value matches allowed format\n if (sanitizedInputValue === '$' || regex.test(sanitizedInputValue)) {\n const numericValue = parseFloat(inputValue.replace(/[^\\d.-]/g, '')) || 0;\n setDisplayValue(sanitizedInputValue);\n setPriceValue(numericValue);\n }\n };\n\n /**\n * Format the input value when the input field loses focus.\n * @param {React.FocusEvent} e - The focus event.\n */\n const formatOnBlur = (e: React.FocusEvent) => {\n let inputValue = e.target.value.replace(/[^\\d.-]/g, '');\n let numericValue = parseFloat(inputValue) || 0;\n\n // Format the numeric value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(numericValue).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n setPriceValue(numericValue);\n valueFinalized(numericValue); // Invoke the callback with the numeric value\n };\n\n /**\n * Adjust the current price value by a given amount.\n * @param {number} adjustment - The amount to adjust the price by.\n */\n const adjustPenny = (adjustment: number) => {\n if (priceValue === 0 && adjustment < 0) {\n return\n }\n // If the price is negative, then we need to invert the logic of the + and = button so that + still technically increase the value.\n if(priceValue < 0) {\n adjustment = adjustment * -1;\n }\n \n // Math.round is to handle precision, hate it but until we use a decimal format for USD it is what it is...\n let numericValue = Math.round((priceValue + adjustment) * 10000) / 10000;\n setPriceValue(numericValue); // Update the numeric value\n\n // Format the new price value for display, removing trailing \"00\" if present\n let formattedDisplayValue = `$${Math.abs(numericValue).toFixed(4)}`;\n if (formattedDisplayValue.endsWith(\"00\")) {\n formattedDisplayValue = formattedDisplayValue.slice(0, -2);\n }\n setDisplayValue(formattedDisplayValue);\n valueFinalized(numericValue); // Invoke the callback with the new numeric value\n };\n\n /**\n * Increase the price value by one penny (0.01).\n */\n const addPenny = () => adjustPenny(0.01);\n\n /**\n * Decrease the price value by one penny (0.01).\n */\n const subtractPenny = () => adjustPenny(-0.01);\n \n /**\n * Handle the 'Enter' key press event to blur the input field.\n * @param {React.KeyboardEvent} e - The keyboard event.\n */\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'Enter' && priceInputNumberRef.current) {\n priceInputNumberRef.current.blur();\n }\n };\n\n // Render the component UI\n return (\n
    \n
    \n
    \n \n \n \n \n \n \n
    \n
    \n \n
    \n
    \n
    \n );\n}","import React, { useEffect } from 'react';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport PriceComponent from '../PriceComponent';\nimport { orderLegsToClassifiedStrategy } from '../../../../data/global/utilities/strategyClassification';\nimport _ from 'lodash';\nimport { determineIsBuy } from '../../OrderUtilities';\nimport { DebitOrCredit, OrderAction } from '@tradingblock/types';\n\nexport const PreviewLimitPrice: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, legs, changeLimitPrice, changeReplacePrice, replacePrice } = useOrderPreviewOrder(action);\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const [isNegativePrice, setIsNegativePrice] = React.useState(false);\n const isStrategyMatch = classifiedStrategy.name !== 'Custom';\n const isCustomWithoutClassifiedStrategy = action === 'replace' && !isStrategyMatch;\n const isClassifiedAsCalendar = _.includes(classifiedStrategy.name, 'Calendar');\n const isCustomOrder = classifiedStrategy.name === 'Custom';\n const orderAction = order.Action || OrderAction.Buy;\n const debitCredit = order.DebitCredit || DebitOrCredit.Debit;\n const isDebit = debitCredit === DebitOrCredit.Debit;\n const price = order.Price || 0;\n\n const isBuy = determineIsBuy(\n isCustomOrder,\n orderAction,\n isClassifiedAsCalendar,\n isStrategyMatch,\n classifiedStrategy,\n isCustomWithoutClassifiedStrategy,\n debitCredit,\n legs,\n price\n );\n\n useEffect(() => {\n setIsNegativePrice((isBuy && !isDebit) || (!isBuy && isDebit));\n }, [isBuy, isDebit]);\n\n const handlePriceChange = (value: number | null) => {\n if (action === 'replace') {\n changeReplacePrice(value || 0);\n changeLimitPrice(value || 0, isNegativePrice);\n } else {\n changeLimitPrice(value || 0, isNegativePrice);\n }\n };\n\n const priceValue = action === 'replace' ? replacePrice || order.Price : order.Price || 0;\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React from 'react';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport PriceComponent from '../PriceComponent';\n\nexport const PreviewStopPrice: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, changeStopPrice, changeReplaceStopPrice, replaceStopPrice } = useOrderPreviewOrder(action);\n\n const handleChangeStopPrice = (value: number | null) => {\n if (action === 'replace') {\n changeReplaceStopPrice(value || 0);\n changeStopPrice(value || 0);\n } else {\n changeStopPrice(value || 0);\n }\n };\n\n const stopValue = action === 'replace' ? replaceStopPrice || order.Stop : order.Stop || 0;\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport { Order, DebitOrCredit } from '@tradingblock/types';\nimport { BoldNumber } from '@tradingblock/components';\nimport { useOrderTotal } from '../../hooks/useOrderTotal';\n\nexport const PreviewOrderTotal: React.FC<{ order?: Order }> = ({ order }) => {\n const totalResults = useOrderTotal();\n const orderTotal = useMemo(() => totalResults && totalResults.total, [totalResults]);\n\n return (\n <>\n {order && orderTotal && (\n
    \n {order.DebitCredit === DebitOrCredit.Debit ? 'Debit' : 'Credit'}\n
    \n )}\n \n );\n};\n","import React, { useCallback, useEffect } from 'react';\nimport { DebitOrCredit, OrderAction } from '@tradingblock/types';\nimport { ToggleButton } from '@tradingblock/components';\nimport { useOrderBlockData, useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { getOrderLegPrices } from '../data/orderSelectors';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\n\nexport const DebitCreditToggleButton: React.FC<{\n baseClass?: string;\n setDebitCredit: (debitCredit?: DebitOrCredit | undefined) => void;\n value: DebitOrCredit | undefined;\n enabled: boolean;\n action?: any;\n width?: string;\n}> = ({ value, setDebitCredit, enabled, baseClass, width, action }) => {\n const { setPrice } = useOrderActions();\n // if the strategy is a calendar spread and the price has been set already, flip the sign of the price on the toggle\n const isCalendarStrategy = useOrderData((s: any) => s.strategy === 'Call Calendar' || s.strategy === 'Put Calendar');\n const isCustomStrategy = useOrderData((s: any) => s.strategy === 'Custom');\n const match = useOrderData((s: any) => s.validation && s.validation.match);\n const isCalendarMatch =\n isCustomStrategy && match && (match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar');\n const price = useOrderData((s: any) => s.price);\n const { bid, mid, ask } = useOrderPrice();\n\n const handleOnClick = useCallback(\n (isActive: boolean) => {\n setDebitCredit(isActive ? DebitOrCredit.Credit : DebitOrCredit.Debit);\n if ((isCalendarStrategy || isCalendarMatch || isCustomStrategy) && price) {\n setPrice(-price, false, false);\n }\n },\n [setDebitCredit]\n );\n\n // If the price is not set, we need to determine the debit or credit based on the bid, mid, or ask and the action\n useEffect(() => {\n if (!price) {\n let decisionPrice = mid === null || mid === undefined ? 0 : mid; // Adjust based on how an unset mid is represented\n\n // Determine if bid, mid, and ask have mixed signs\n let sameSign = [bid, mid, ask].every(val => val >= 0) || [bid, mid, ask].every(val => val <= 0);\n\n if (!sameSign && (bid !== null && bid !== undefined) && (ask !== null && ask !== undefined)) {\n // If not all the same sign and bid/ask are set, choose based on action\n decisionPrice = action === OrderAction.Buy ? bid : ask;\n } else if (decisionPrice === 0 && (bid !== 0 || ask !== 0)) {\n // Fallback to bid or ask if mid is not set and at least one of bid or ask is non-zero\n decisionPrice = bid !== 0 ? bid : ask;\n }\n\n if (action === OrderAction.Buy) {\n // If decisionPrice is positive, it's a debit, otherwise, it's a credit.\n setDebitCredit(decisionPrice > 0 ? DebitOrCredit.Debit : DebitOrCredit.Credit);\n } else {\n // For sell, it's the opposite: if positive, it's a credit, otherwise, it's a debit.\n setDebitCredit(decisionPrice > 0 ? DebitOrCredit.Credit : DebitOrCredit.Debit);\n }\n }\n }, [price, bid, mid, ask, action]);\n\n return (\n \n );\n};\n\nexport const DebitCreditToggle = () => {\n const enabled = useOrderBlockData(OrderSelectors.canEditDebitOrCredit, false);\n const debitCredit = useOrderBlockData(OrderSelectors.debitOrCredit, DebitOrCredit.Debit);\n const { setDebitCredit } = useOrderActions();\n const { action } = useOrderData(s => s);\n return (\n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { OrderAction } from '@tradingblock/types';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport { DebitCreditToggleButton } from '../DebitCreditToggle';\n\nexport const PreviewDebitOrCredit: React.FC<{ action: PreviewActions }> = ({ action }) => {\n const { order, changeDebitCredit } = useOrderPreviewOrder(action);\n const debitOrCredit = order && order.DebitCredit ? order.DebitCredit : undefined;\n const enabled =\n order &&\n _.find(order.Legs, l => l.Action === OrderAction.Buy) &&\n _.find(order.Legs, l => l.Action === OrderAction.Sell)\n ? true\n : false;\n\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n","import React from 'react';\nimport { formatNumber, NumberValue } from \"@tradingblock/components\";\nimport { AccountDetails, AssetType, Order } from \"@tradingblock/types\";\nimport { useMemo } from \"react\";\nimport useSWR from \"swr\";\nimport { useApi } from \"../../../../context/Api\";\nimport { accountIdSelector, useStateSelector } from \"../../../../data/global/dataSelectors\";\n\nexport const DefaultCommissionDetails: AccountDetails['commissions'] = {\n commissionCodeId: 0,\n stocks: {\n minCharge: 5,\n ticketCharge: 0,\n percentOfTrade: 0,\n perShare: 0.001\n },\n options: {\n minCharge: 0,\n ticketCharge: 5,\n percentOfTrade: 0,\n perShare: 0.5\n },\n mutualFunds: {\n minCharge: 0,\n ticketCharge: 30,\n percentOfTrade: 0,\n perShare: 0\n }\n}\n\nexport interface OrderAssetQuantity {\n assetType: AssetType,\n quantity: number\n}\n\nexport function calculateEstCommission(orderAssetQuantities: OrderAssetQuantity[], commissionDetails?: AccountDetails['commissions']): number | undefined {\n if (commissionDetails === undefined || commissionDetails === null) {\n return undefined;\n }\n let commission = 0;\n let isStockTicket = false;\n let isOptionTicket = false;\n let isMutualFundTicket = false;\n const stockCommissionDetails = commissionDetails.stocks;\n const optionsCommissionDetails = commissionDetails.options;\n const mutualFundsCommissionDetails = commissionDetails.mutualFunds;\n\n let sharesCommission = 0;\n let optionsCommission = 0;\n let mutualFundsCommission = 0;\n\n for (let { assetType, quantity } of orderAssetQuantities) {\n if (assetType === AssetType.Equity && quantity && stockCommissionDetails) {\n isStockTicket = true;\n if (stockCommissionDetails.perShare !== undefined) {\n sharesCommission += quantity * stockCommissionDetails.perShare\n }\n }\n\n // Commission logic for Options\n if (assetType === AssetType.Option && quantity && optionsCommissionDetails && optionsCommissionDetails.perShare !== undefined) {\n isOptionTicket = true;\n optionsCommission += quantity * optionsCommissionDetails.perShare;\n }\n\n if (assetType === AssetType.MutualFund && quantity && mutualFundsCommissionDetails && mutualFundsCommissionDetails.perShare !== undefined) {\n isMutualFundTicket = true;\n mutualFundsCommission += quantity * mutualFundsCommissionDetails.perShare;\n }\n }\n\n let sharesMinCost = 0;\n if (stockCommissionDetails && stockCommissionDetails.minCharge !== undefined) {\n if (stockCommissionDetails.ticketCharge !== undefined && stockCommissionDetails.ticketCharge > stockCommissionDetails.minCharge) {\n sharesMinCost = stockCommissionDetails.ticketCharge;\n } else {\n sharesMinCost = stockCommissionDetails.minCharge;\n }\n if (isStockTicket && sharesCommission < sharesMinCost) {\n commission += sharesMinCost;\n } else {\n commission += sharesCommission;\n }\n }\n\n let optionsMinCost = 0;\n if (optionsCommissionDetails && optionsCommissionDetails.minCharge !== undefined) {\n if (optionsCommissionDetails.ticketCharge !== undefined && optionsCommissionDetails.ticketCharge > optionsCommissionDetails.minCharge) {\n optionsMinCost = optionsCommissionDetails.ticketCharge;\n } else {\n optionsMinCost = optionsCommissionDetails.minCharge;\n }\n if (isOptionTicket && optionsCommission < optionsMinCost) {\n commission += optionsMinCost;\n } else {\n commission += optionsCommission;\n }\n }\n\n let mutualFundsMinCost = 0;\n if (mutualFundsCommissionDetails && mutualFundsCommissionDetails.minCharge !== undefined) {\n if (mutualFundsCommissionDetails.ticketCharge !== undefined && mutualFundsCommissionDetails.ticketCharge > mutualFundsCommissionDetails.minCharge) {\n mutualFundsMinCost = mutualFundsCommissionDetails.ticketCharge;\n } else {\n mutualFundsMinCost = mutualFundsCommissionDetails.minCharge;\n }\n if (isMutualFundTicket && mutualFundsCommission < mutualFundsMinCost) {\n commission += mutualFundsMinCost;\n } else {\n commission += mutualFundsCommission;\n }\n }\n\n return commission;\n}\n\nexport interface EstCommissionPreviewProps {\n order?: Order\n}\n\nexport default function EstCommissionPreview({ order }: EstCommissionPreviewProps) {\n const api = useApi();\n const accountId = useStateSelector(accountIdSelector);\n const selectedAccount = useStateSelector(s => s.account.selectedLinkedAccount);\n // const subaccountId = useStateSelector(subAccountIdSelector);\n\n const { data, error } = useSWR(\n selectedAccount ? selectedAccount.accountId : accountId as any,\n api.accounts.details\n );\n\n //TODO: Need to see if we charge the exchange fee as the commission fee on here or not.\n\n const commissionValue = useMemo(() => {\n let commission: number = 0;\n\n if (data && order) {\n let orderAssetQuantities = order.Legs.map(l => ({ assetType: l.AssetType, quantity: l.Quantity ? l.Quantity : 0 }));\n let estCommission = undefined;\n if (data.payload.commissions === null || data.payload.commissions === undefined) {\n console.error('Commissions are not defined for the account');\n estCommission = calculateEstCommission(orderAssetQuantities, DefaultCommissionDetails);\n } else {\n estCommission = calculateEstCommission(orderAssetQuantities, data.payload.commissions);\n }\n commission = estCommission ? estCommission : 0;\n }\n return formatNumber(commission, { currency: true });\n }, [order, data]);\n\n if (order === undefined) {\n //TODO: Add in analytics logs for erros\n console.warn('Order is undefined for the commission preview');\n return (\n
    Order not passed
    \n );\n }\n\n return (\n \n )\n}\n\nexport interface EstCommissionPreviewRenderProps {\n commissionValue?: string,\n loading: boolean,\n error: boolean\n}\n\nexport function EstCommissionPreviewRender({ commissionValue }: EstCommissionPreviewRenderProps) {\n return (\n
    \n Commission: {commissionValue}\n
    \n );\n}","import React, { useMemo } from 'react';\nimport { Column } from 'react-table';\nimport _ from 'lodash';\nimport {\n OrderLegDTO,\n OrderAction,\n PositionEffect,\n AssetType,\n TradingblockOrder,\n Order,\n OrderType,\n Durations,\n} from '@tradingblock/types';\nimport { useDebug, formatNumber } from '@tradingblock/components';\nimport {\n useStateSelector,\n subAccountIdSelector,\n subAccountSelector,\n account as accountSel,\n} from '../../../../data/global/dataSelectors';\nimport { optionToDetailString } from '../../../../data/global/utilities/options';\nimport { BlockTable } from '../../../shared/BlockTable';\nimport { PreviewActions } from './useOrderPreview';\nimport { PreviewLimitPrice } from './PreviewLimitPrice';\nimport { PreviewStopPrice } from './PreviewStopPrice';\nimport { PreviewOrderTotal } from './PreviewOrderTotal';\nimport { PreviewDebitOrCredit } from './PreviewDebitOrCredit';\nimport EstCommissionPreview from './EstCommissionPreview';\nimport { useQuoteMetadata } from '../../../../hooks/useFeedQuote';\nimport { QuoteSymbolQuote } from '../../../../data/global/state';\nimport { parseOccSymbol } from '@tradingblock/api';\n\nexport type ColumnWithStyle = Column & {\n style?: object;\n};\n\nconst getColumns = (quantity: number, underlyingSymbol?: string): ColumnWithStyle[] => {\n return [\n {\n Header: 'Instrument',\n id: 'instrument',\n accessor: (leg: OrderLegDTO) => {\n if (leg.AssetType === AssetType.Equity) {\n return 'Shares';\n }\n return optionToDetailString(\n { ...leg, Symbol: leg.OccSymbol || underlyingSymbol || '' },\n { Quantity: quantity, UnderlyingSymbol: underlyingSymbol }\n );\n },\n },\n {\n Header: 'Underlying',\n accessor: (leg: OrderLegDTO) => {\n return leg.UnderlyingSymbol ? leg.UnderlyingSymbol : leg.OccSymbol ? leg.OccSymbol : '';\n },\n id: 'symbol',\n },\n {\n Header: 'Symbol',\n accessor: (leg: OrderLegDTO) => {\n return leg.OccSymbol ? leg.OccSymbol : '';\n },\n id: 'occsymbol',\n },\n {\n Header: 'Action',\n accessor: (leg: OrderLegDTO) => {\n return `${OrderAction[leg.Action]} (to ${PositionEffect[leg.PositionEffect]})`;\n },\n id: 'action',\n },\n {\n Header: 'Qty',\n id: 'qty',\n accessor: (leg: OrderLegDTO) => {\n // To handle the case where the quantity is NaN, we return the quantity as 1x\n if (Number.isNaN(quantity) || leg.Quantity === undefined) {\n const quant = (leg.SpreadRatio || 1) * quantity;\n return `${quant.toString()}x`;\n }\n // if spread ratio is present then we multiply the quantity by the spread ratio\n // else we just return the quantity\n if (leg.SpreadRatio) {\n const quant = quantity * leg.SpreadRatio;\n return `${quant.toString()}x`;\n }\n\n const quant = leg.Quantity;\n return `${quant.toString()}x`;\n },\n },\n {\n Header: 'Close',\n id: 'close',\n accessor: leg => {\n if (leg.ClosePrice === undefined) {\n return '';\n }\n return `${formatNumber(leg.ClosePrice, { currency: true })}`;\n },\n },\n {\n Header: 'Last',\n id: 'last',\n accessor: leg => {\n if (leg.LastOrClosePrice === undefined) {\n return '';\n }\n return `${formatNumber(leg.LastOrClosePrice, { currency: true })}`;\n },\n },\n {\n Header: 'Bid',\n id: 'bid',\n accessor: leg => {\n if (leg.BidPrice === undefined || leg.BidSize === undefined) {\n return '';\n }\n return `${formatNumber(leg.BidPrice, { currency: true })} x ${leg.BidSize}`;\n },\n },\n {\n Header: 'Ask',\n id: 'ask',\n accessor: leg => {\n if (leg.AskPrice === undefined || leg.AskSize === undefined) {\n return '';\n }\n return `${formatNumber(leg.AskPrice, { currency: true })} x ${leg.AskSize}`;\n },\n },\n ];\n};\n\nconst fields = (\n action: PreviewActions,\n initialPrice?: number,\n initialStopPrice?: number,\n accountName?: string,\n isCancelOrder?: boolean,\n orderType?: OrderType\n) => [\n {\n id: 'price',\n title: action === 'replace' && !isCancelOrder ? 'Price (before editing)' : 'Price',\n value: (ord?: Order) => {\n const orderPrice = action !== 'replace' && ord ? ord.Price : initialPrice;\n const stopPrice = action !== 'replace' && ord ? ord.Stop : initialStopPrice;\n if (ord === undefined) {\n return 'NA';\n }\n switch (ord.OrderType) {\n case OrderType.Limit:\n return `Limit: ${orderPrice && formatNumber(Math.abs(orderPrice), { currency: true })}`;\n case OrderType.Stop_Limit:\n return (\n
    \n
    {`Stop Price: ${stopPrice && formatNumber(Math.abs(stopPrice), { currency: true })}`}
    \n
    {`Limit Price: ${orderPrice && formatNumber(Math.abs(orderPrice), { currency: true })}`}
    \n
    \n );\n case OrderType.Market:\n return 'Market';\n case OrderType.Stop_Market:\n return `Stop Market: ${ord.Stop && formatNumber(Math.abs(ord.Stop), { currency: true })}`;\n case OrderType.Market_On_Close:\n return `Market on Close`;\n default:\n return 'NA';\n }\n },\n },\n {\n id: 'effect',\n title: 'In effect',\n value: (ord?: Order) => {\n if (ord === undefined) {\n return '?';\n }\n if (ord.Duration === Durations.Day) {\n return 'Day';\n }\n return `${Durations[ord.Duration]}`;\n },\n },\n {\n id: 'commission',\n actions: ['execute'],\n title: 'Est. commission',\n value: (ord?: Order) => ,\n },\n {\n id: 'account',\n title: 'Account',\n value: (ord?: Order) => accountName,\n },\n {\n id: 'total',\n actions: ['execute'],\n title: 'Est. total',\n value: (ord?: Order) => ,\n },\n\n {\n id: 'stopPrice',\n actions: ['replace'],\n title: !isCancelOrder && orderType === OrderType.Stop_Limit && 'Stop Price',\n value: (ord?: Order) => {\n return (\n !isCancelOrder &&\n ord !== undefined &&\n ord.OrderType === OrderType.Stop_Limit && \n );\n },\n },\n {\n id: 'price',\n actions: ['replace'],\n title: !isCancelOrder && 'Limit Price',\n value: (ord?: Order) => !isCancelOrder && ,\n },\n {\n id: 'debitOrCredit',\n actions: ['replace'],\n title: !isCancelOrder && 'Debit or Credit',\n value: (ord?: Order) => {\n return !isCancelOrder && ord !== undefined && ;\n },\n Cell: (props: any) => {\n return <>{!isCancelOrder && };\n },\n },\n];\n\nexport const PreviewContent: React.FC<{\n order: TradingblockOrder | Order;\n legs: OrderLegDTO[];\n action: PreviewActions;\n isCancelOrder: boolean;\n initialPrice?: number;\n initialStopPrice?: number;\n orderValue?: Order;\n}> = ({ order, legs, action, initialPrice, initialStopPrice, isCancelOrder, orderValue }) => {\n const { SubaccountId, Quantity, UnderlyingSymbol } = order;\n const quotes = useQuoteMetadata(legs.map((l: any) => (l.Symbol ? l.Symbol : '')));\n const tableColumns = useMemo(() => {\n let tmpCols;\n if (action === 'replace' && orderValue) {\n tmpCols = getColumns(orderValue.Quantity, orderValue.UnderlyingSymbol);\n } else {\n tmpCols = getColumns(Quantity, UnderlyingSymbol);\n }\n const widths = ['6%', '10%', '24%', '16%', '44%'];\n return tmpCols.map((c, ind) => {\n return {\n ...c,\n style: {\n ...(c.style || {}),\n width: widths[ind] || undefined,\n },\n };\n });\n }, [Quantity, UnderlyingSymbol, action, orderValue]);\n\n const firstAndLastName = useStateSelector(accountSel.firstAndLastName);\n const accountNickname = useStateSelector(accountSel.accountNickname);\n const subAccountId = useStateSelector(subAccountIdSelector);\n const subAccount = useStateSelector(subAccountSelector(SubaccountId || subAccountId));\n const formattedAccName = `${firstAndLastName} ${accountNickname}${subAccount ? ` - ${subAccount.AcctSuffix}` : ''}`;\n\n const previewFields = useMemo(\n () =>\n _.filter(\n fields(action, initialPrice, initialStopPrice, formattedAccName, isCancelOrder, order.OrderType),\n f => f.actions === undefined || f.actions.includes(action)\n ),\n [action, initialPrice, formattedAccName]\n );\n\n const quoteLegs = useMemo(\n () =>\n legs.map(leg => {\n return {\n ...leg,\n ...quotes.find(q => q.Symbol === (leg as any).Symbol),\n };\n }),\n [legs]\n );\n\n return (\n <>\n \n
      \n {_.map(previewFields, (field, ind) => {\n const fieldTitle = _.isFunction(field.title) ? field.title(order) : field.title;\n return (\n
    • \n {fieldTitle}\n {field.value(order)}\n
    • \n );\n })}\n
    \n \n );\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport _ from 'lodash';\nimport { BasicCheckboxInput, getClassNames, Modal } from '@tradingblock/components';\nimport { OrderNotification } from '@tradingblock/types';\nimport {\n useStateSelector,\n getGlobalErrorOrWarning,\n getGlobalMessage,\n getModalError,\n} from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { PreviewContent } from '../../blocks/Order/components/Preview/PreviewContent';\nimport { getOrderPreviewLegs } from '../../blocks/Order/components/Preview/useOrderPreview';\nimport { Config } from '../../config';\nimport { TradingEnvironment } from '../../constants';\nimport { IsVirtualEnvironment } from '../../data/global/selectors/environmentSelector';\nimport { useDispatch } from 'react-redux';\nimport { OrderActions } from '../../data/global/actions';\n\nconst envClass = () => {\n const env = Config.TradingEnvironment;\n switch (env) {\n case TradingEnvironment.dev:\n return 'env-dev';\n case TradingEnvironment.beta:\n return 'env-beta';\n default:\n return 'env-prod';\n }\n};\n\nconst Dashboard: React.FC<{ className: string }> = ({ className, children }) => {\n const globalErrorOrWarningNotifications = useStateSelector(getGlobalErrorOrWarning);\n const globalMessage = useStateSelector(getGlobalMessage);\n const isExpired = useStateSelector(s => s.auth.isExpired);\n\n const dashboardErrorClass = useMemo(() => {\n if (globalErrorOrWarningNotifications && !isExpired) {\n return `has-alert ${globalErrorOrWarningNotifications.overlay ? ' mask-on' : ''}`;\n } else if (globalMessage) {\n return `has-alert ${globalMessage.overlay ? ' mask-on' : ''}`;\n } else {\n return '';\n }\n }, [globalErrorOrWarningNotifications, globalMessage]);\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n const dashboardClasses = useMemo(() => {\n return getClassNames([\n 'dashboard',\n isVirtualEnv ? 'night' : 'day',\n className,\n dashboardErrorClass,\n envClass(),\n isVirtualEnv ? 'env-virtual' : '',\n ]);\n }, [className, dashboardErrorClass, isVirtualEnv]);\n return
    {children}
    ;\n};\n\nexport const DashboardWrapper: React.FC<{ className: string }> = ({ className, children }) => {\n const { dispatcher } = useDispatcher();\n\n const isExpired = useStateSelector(s => s.auth.isExpired);\n const [showErrorInfo, setShowErrorInfo] = useState(false);\n const globalErrorOrWarningNotifications = useStateSelector(getGlobalErrorOrWarning);\n const globalMessage = useStateSelector(getGlobalMessage);\n const [bypassWarnings, setBypassWarnings] = useState(false);\n const dispatch = useDispatch();\n\n const modalError = useStateSelector(getModalError);\n const failedOrder = useMemo(() => {\n const notificationError = modalError as OrderNotification | undefined;\n if (notificationError && notificationError.type === 'Order') {\n return notificationError.order;\n }\n return undefined;\n }, [modalError]);\n\n const onCloseModal = useCallback(() => {\n if (modalError) {\n dispatcher.notifications.view(modalError);\n if (modalError.code === 307) {\n setBypassWarnings(false);\n }\n }\n }, [modalError, dispatcher]);\n\n const alertClass = useMemo(() => {\n if (!_.isNil(globalErrorOrWarningNotifications) && globalErrorOrWarningNotifications) {\n if (globalErrorOrWarningNotifications.status === 'Error') {\n return `dashboard-alert error`;\n } else if (globalErrorOrWarningNotifications.status === 'Warn') {\n return `dashboard-alert warn`;\n } else {\n return `dashboard-alert`;\n }\n } else if (!_.isNil(globalMessage)) {\n return `dashboard-alert info`;\n } else {\n return '';\n }\n return '';\n }, [globalErrorOrWarningNotifications, globalMessage]);\n\n const handleCheck = useCallback(\n (event, value) => {\n setBypassWarnings(value);\n },\n [bypassWarnings]\n );\n\n const handleSendOrder = useCallback(() => {\n if (failedOrder) {\n const finalOrder = {\n ...failedOrder,\n BypassWarnings: bypassWarnings,\n };\n try {\n dispatch(OrderActions.requestPlaceOrder(finalOrder));\n setTimeout(() => {\n onCloseModal();\n }, 1000);\n } catch (placeOrderError) {\n dispatcher.order.errored(failedOrder, placeOrderError as any);\n console.error('error placing order', placeOrderError);\n }\n }\n\n onCloseModal();\n }, [failedOrder, bypassWarnings]);\n\n // don't display global errors if on logout page\n if (window.location.pathname === '/logout') {\n return null;\n }\n return (\n \n {globalErrorOrWarningNotifications && !isExpired && (\n
    \n {globalErrorOrWarningNotifications.title}\n {globalErrorOrWarningNotifications.message && (\n setShowErrorInfo(true)}\n >\n more info\n \n )}\n {globalErrorOrWarningNotifications.message && (\n \n \n {globalErrorOrWarningNotifications.title}\n \n \n
    \n \n \n )}\n
    \n )}\n {globalMessage && (\n
    \n {globalMessage.title || ''} {globalMessage.message}\n {globalMessage.message && (\n window.location.reload()}\n >\n Reload\n \n )}\n
    \n )}\n\n {modalError && failedOrder && (\n \n \n {modalError.title}\n \n \n

    The order below was NOT placed due to the following issue:

    \n

    \n \n {modalError.code === 307 && (\n \n Bypass Warnings\n \n )}\n
    \n \n {!bypassWarnings && (\n \n )}\n {bypassWarnings && (\n <>\n \n \n \n )}\n \n
    \n )}\n\n {children}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\nimport { BlockType } from '@tradingblock/types';\nimport { generateNewBlock } from '../../utilities/block';\n\nexport const BlockHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const createOrderBlock = useCallback(() => dispatcher.block.addBlock(generateNewBlock(BlockType.Order, { autoFocus: true })), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\n\nexport const DashboardHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const toggleSettings = useCallback(() => dispatcher.settings.toggleSettings(), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { Hotkey, HotkeyProps } from '@tradingblock/components';\n\nexport const GridHotkeys: React.FunctionComponent> = ({ modifier }) => {\n const { dispatcher } = useDispatcher();\n const toggleLocked = useCallback(() => dispatcher.grid.toggleLocked({ showTooltip: false }), [dispatcher]);\n return (\n <>\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect } from 'react';\nimport { useLog } from '@tradingblock/components';\nimport { StorageBlockPath, IStorageProvider, IBlockDataState } from '@tradingblock/types';\nimport { useBlockActions } from './BlockState';\n\nasync function tryLoadBlock(storage: IStorageProvider, key: string) {\n try {\n return storage.get(key);\n } catch (ex) {\n return Promise.resolve(undefined);\n }\n}\n\nexport const BlockDataLoader: React.FunctionComponent<{\n blockId: string;\n store: IStorageProvider;\n}> = ({ store, blockId, children }) => {\n const storeKey = StorageBlockPath(blockId);\n const { initializeData } = useBlockActions();\n\n const log = useLog('BlockDataLoader');\n useEffect(() => {\n let mounted = true;\n const loadBlock = async () => {\n const block = await tryLoadBlock(store, storeKey);\n if (!block) {\n log('tried loading block %o but nothing was found', blockId);\n }\n if (mounted) {\n initializeData(block || {});\n } else {\n console.warn('loaded block', blockId, 'but BlockDataLoader is no longer mounted!');\n }\n };\n\n loadBlock();\n\n return () => {\n // keep track of mounted state of component\n mounted = false;\n };\n }, []);\n return <>{children};\n};\n","import constate from 'constate';\nimport { BlockDimensions } from '../../types';\nimport { useState, useMemo, useEffect } from 'react';\n\nexport const useBlockDimensions = constate((dimensions: BlockDimensions) => {\n const [blockDimensions, setDimensions] = useState(dimensions);\n useEffect(() => setDimensions(dimensions), [dimensions]);\n return useMemo(() => blockDimensions, [blockDimensions]);\n});\n","import createCachedSelector from 're-reselect';\n\nimport { DataState } from '../state';\n\nimport { blockGroupId } from '../dataSelectors';\n\nimport { GroupState, BlockGroupState } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const groupIdByBlockId = blockGroupId;\nexport const groupSymbol = createCachedSelector(\n (state: DataState, groupId: string) => _.find(state.blocks.groups, g => g.groupId === groupId),\n (group: BlockGroupState | undefined) => (group ? group.symbol : undefined)\n)((_, id) => `blockgroupsymbol${id}`);\nexport const groupLinkedColor = createCachedSelector(\n (state: DataState, groupId: string) => _.find(state.blocks.groups, g => g.groupId === groupId),\n (group: BlockGroupState | undefined) => (group ? group.linkedColor : undefined)\n)((_, id) => `blockgroupcolor${id}`);\nexport const groupSymbolByBlockId = createCachedSelector(\n (state: DataState) => state.blocks.groups,\n blockGroupId,\n (groups, groupId) => {\n if (groupId === undefined) {\n return undefined;\n }\n const matchingGroup = _.find(groups, g => g.groupId === groupId);\n return matchingGroup ? matchingGroup.symbol : undefined;\n }\n)((_, id) => `groupSymbolByBlockId${id}`);\n","import React, { useMemo } from 'react';\nimport { BlockProps, useWhyDidYouUpdate, getClassNames } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { useBboxDimensions } from '../../../blocks/shared/useBboxDimensions';\nimport { useStateSelector, blocksSelectors } from '../../../data/global/dataSelectors';\nimport { useBlockGroupSync } from '../useBlockGroupSync';\nimport { useBlockDimensions } from '../../../blocks/shared/useBlockDimensions';\nimport { groupLinkedColor } from '../../../data/global/selectors/groupSelectors';\n\ntype BlockContentProps = Pick;\n\nexport const BlockContentWrapper: React.FunctionComponent = ({ className, children }) => {\n useBlockGroupSync();\n const { blockId, groupId } = useBlockMetadata();\n const [{ bboxWidth, bboxHeight, ...dimensions }, blockElement] = useBboxDimensions();\n\n const isBlockHighlighted = useStateSelector(s => blocksSelectors.isHighlighted(s)(blockId));\n const highlightedAt: Date | undefined = useStateSelector(s => blocksSelectors.highlightedAt(s));\n\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n const highlightGroupId = useStateSelector(s => s.blocks.highlightGroupId);\n const highlightGroupAt = useStateSelector(s => s.blocks.highlightGroupAt);\n\n const isGroupHighlighted = useMemo(() => groupId === highlightGroupId, [groupId, highlightGroupId]);\n const wasBlockTypeHighlighted = useMemo(() => highlightedAt && highlightGroupAt && highlightedAt > highlightGroupAt, [highlightedAt, highlightGroupAt]);\n\n const linkedColor = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n\n const cssClasses = useMemo(() => {\n return getClassNames([\n 'block',\n className,\n dimensions.heightClassName,\n dimensions.widthClassName,\n isLinked && isGroupHighlighted && !isBlockHighlighted ? \n `linked-block ${\n wasBlockTypeHighlighted ? '' : \n `animated ${linkedColor}`\n }` : \n undefined, \n isBlockHighlighted ? \n 'highlighted-block animated' : \n undefined\n ]);\n }, [className, dimensions.heightClassName, dimensions.widthClassName, isLinked, isGroupHighlighted, isBlockHighlighted, wasBlockTypeHighlighted, linkedColor]);\n\n useWhyDidYouUpdate(`${blockId}:BlockContentWrapper`, { cssClasses, isGroupHighlighted, blockId, className, isBlockHighlighted, isLinked, highlightGroupId, highlightGroupAt, dimensions });\n\n return (\n
    \n {children}\n
    \n );\n};\n","import { useBlockMetadata, useBlockActions } from './BlockState';\n\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\n\nimport { useEffect } from 'react';\n\nexport const useBlockGroupSync = () => {\n const { blockId, groupId } = useBlockMetadata();\n const { setGroup } = useBlockActions();\n const rootStateGroup = useStateSelector(s => blockGroupId(s, blockId));\n useEffect(() => {\n if (rootStateGroup && groupId !== rootStateGroup) {\n setGroup(rootStateGroup);\n }\n }, [groupId, rootStateGroup, setGroup]);\n};\n","import _ from 'lodash';\nimport { BlockGroupState, GroupLinkColors } from '@tradingblock/types';\nimport { SymbolQuote } from '@tradingblock/api';\n\nexport const groupHasData = (group: BlockGroupState) => !_.isNil(group.symbol) || !_.isNil(group.order);\n\nexport const getLastOrClosePrice = (\n feedQuote: Pick\n) => {\n const { ClosePrice, LastTradePrice, IsSettlementSet } = feedQuote;\n if (IsSettlementSet) {\n return ClosePrice;\n } else {\n return LastTradePrice > 0 ? LastTradePrice : ClosePrice;\n }\n};\n\nexport const LINK_COLORS_ARRAY: GroupLinkColors[] = ['GREEN', 'RED', 'WHITE', 'TEAL', 'YELLOW', 'ORANGE'];\nexport const getLinkColorMapping = (linkColor: GroupLinkColors | undefined): GroupLinkColors | string => {\n switch (linkColor) {\n case 'GREEN': {\n return 'rgb(114,255,131)';\n }\n case 'RED': {\n return '#ed6767';\n }\n case 'WHITE': {\n return 'ghostwhite';\n }\n case 'TEAL': {\n return '#02fff6';\n }\n case 'YELLOW': {\n return 'rgb(255,255,120)';\n }\n case 'ORANGE': {\n return '#FFAF19';\n }\n default: {\n // console.warn(`Could not map link color. Got ${linkColor}. Returning var(--teal) as default.`);\n return 'var(--teal)';\n }\n }\n};\n","import React, { useCallback, useContext, useEffect, useState } from 'react';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from './BlockState';\nimport { dashboardIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { getLinkColorMapping, LINK_COLORS_ARRAY } from '../../data/global/utilities';\nimport { BlockType, GroupLinkColors } from '@tradingblock/types';\nimport { groupLinkedColor } from '../../data/global/selectors/groupSelectors';\n\nexport const BlockLinkingDropdown: React.FunctionComponent<{ isLinked: boolean, disabled: boolean }> = ({ isLinked, disabled }) => {\n const { blockId, groupId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n const highlightGroupId = useStateSelector(s => s.blocks.highlightGroupId);\n const isHighlighted = (groupId === highlightGroupId);\n const getColor = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n const [linkColor, setLinkColor] = useState('TEAL');\n\n useEffect(() => {\n setLinkColor(getColor)\n }, [getColor])\n\n const onStartBlockLinking = useCallback(() => {\n dispatcher.grid.toggleLinking(true, { blockId, groupId });\n dispatcher.block.setLinkColor(linkColor, { groupId })\n saveLinkColors(linkColor);\n }, [blockId, groupId, dispatcher.grid, linkColor]);\n\n const onUnlinkBlock = useCallback(() => {\n dispatcher.block.unlinkBlock(blockId);\n\n }, [blockId, dispatcher.block, linkColor]);\n\n const onToggleHighlightGroup = useCallback(() => {\n dispatcher.block.highlightGroup(isHighlighted ? undefined : groupId);\n }, [isHighlighted, groupId, dispatcher.block, linkColor]);\n\n const onSelectLinkColor = (optionValue: GroupLinkColors): void => {\n dispatcher.block.setLinkColor(optionValue, { groupId })\n setLinkColor(optionValue)\n saveLinkColors(optionValue);\n }\n\n const createLinkColorOptions = (): JSX.Element => {\n return (\n <>\n {LINK_COLORS_ARRAY.map((optionValue: GroupLinkColors, index: number) =>\n ())}\n \n )\n }\n\n const dispatch = useContext(BlockActionContext);\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { type } = useBlockMetadata();\n const saveLinkColors = (linkColor: GroupLinkColors | undefined) => {\n //DISPATCH LINKED COLOR \n if (blockId && dashboardId) {\n const settingsSaveData = {\n dashboardId: dashboardId,\n blockId: blockId,\n blockType: type as BlockType,\n blockSettings: {},\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }\n };\n return (\n }\n >\n {!isLinked && (<>Link with&helllinkip;\n \n Color  \n {createLinkColorOptions()}\n )\n }\n {isLinked && (\n <>\n Link another…\n Unlink this…\n {isHighlighted ? 'Remove highlight' : 'Highlight linked'}\n \n Color  \n {createLinkColorOptions()}\n \n \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockMetadata } from './BlockState';\nimport { useStateSelector } from '../../data/global/dataSelectors';\n\ninterface BlockSettingsDropdownProps {\n toggleBlockSettings: () => void;\n hasSettings: boolean;\n}\n\nexport const BlockSettingsDropdown: React.FunctionComponent = ({ toggleBlockSettings, hasSettings }) => {\n const { blockId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n\n const removeBlock = dispatcher.block.removeBlock;\n const isDashboardLocked = useStateSelector(s => s.ui.dashboard.isLocked);\n const openSettings = useCallback(() => {\n toggleBlockSettings();\n }, [toggleBlockSettings]);\n\n const unlockGrid = useCallback(() => {\n dispatcher.grid.toggleLocked({ locked: false });\n }, [dispatcher.grid]);\n\n return (\n }\n >\n {hasSettings && Settings…}\n {!isDashboardLocked && Move block…}\n {!isDashboardLocked && removeBlock(blockId)}>Delete}\n {isDashboardLocked && Dashboard is locked  }\n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { Modal } from '@tradingblock/components';\nimport { ToggleVirtualTradingButton } from '../dashboard/navigation/ToggleVirtualTradingButton';\n\nexport interface VirtualTradingModalProps {\n show: boolean;\n onClose: () => void;\n}\n\nexport const VirtualTradingModal: React.FC = ({ show, onClose }) => {\n if (!show) {\n return null;\n }\n\n return (\n onClose} show>\n \n Virtual trading\n \n \n

    \n You are in virtual trading\n

    \n

    You are trading with paper money and your orders are not placed with a real exchange.

    \n

    Need to switch to live trading?

    \n
    \n \n \n onClose()}>\n Log in to live trading here\n \n \n
    \n );\n};\n","import { useBlockId } from '../../../components/blocks/BlockState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { DefaultOptionChainBlockSettings } from '../state/OptionChainSettings';\n\nexport const useOptionChainSettings = () => {\n const blockId = useBlockId();\n //@ts-ignore\n const current = useStateSelector(s => blockSettings.optionChain(s, blockId));\n return {\n current: current || {},\n definitions: DefaultOptionChainBlockSettings,\n };\n};\n","import React, { useCallback, useState, useMemo, useContext, useEffect } from 'react';\nimport _ from 'lodash';\nimport { BlockProps, useWhyDidYouUpdate, BlockHeader, BlockTitle, BasicSelect } from '@tradingblock/components';\nimport { SettingsRenderer, BlockSettingsModal } from '../settings/BlockSettings';\nimport { BlockAction, BlockActionContext, useBlockMetadata, useBlockSymbol } from '../BlockState';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector, blocksSelectors, dashboardIdSelector } from '../../../data/global/dataSelectors';\nimport { BlockLinkingDropdown } from '../BlockLinkingDropdown';\nimport { BlockSettingsDropdown } from '../BlockSettingsDropdown';\nimport { IsVirtualEnvironment } from '../../../data/global/selectors/environmentSelector';\nimport { VirtualTradingModal } from '../VirtualTradingModal';\nimport { BlockType } from '@tradingblock/types';\nimport { useOptionChainSettings } from '../../../blocks/OptionChain/data/useOptionChainSettings';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\n\ntype BlockContentHeaderProps = Pick &\n SettingsRenderer;\n\nexport const BlockContentHeader: React.FunctionComponent = ({\n isLinkable,\n settingFields,\n children,\n isRefreshable,\n onRefresh,\n}) => {\n const { blockId, groupId, type, data } = useBlockMetadata();\n const symbol = useBlockSymbol();\n const blockType = type;\n\n const symbolValue = useMemo(() => {\n return symbol ? { label: symbol.symbol, data: symbol } : '';\n }, [data]);\n\n const { dispatcher } = useDispatcher();\n\n // Option chain visible strike setting\n const dispatch = useContext(BlockActionContext);\n const dashboardId = useStateSelector(dashboardIdSelector);\n const isOptionChainBlock = blockType === BlockType.OptionChain;\n const { current } = useOptionChainSettings();\n const strikeOptions = [\n { label: '10', value: 10 },\n { label: '20', value: 20 },\n { label: '40', value: 40 },\n { label: '100', value: 100 },\n { label: 'All', value: 0 },\n ];\n\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n const linkingDisabled = useStateSelector(s => blocksSelectors.linkingDisabled(s, blockId));\n\n const onStartBlockLinking = useCallback(() => {\n dispatcher.grid.toggleLinking(true, { blockId, groupId });\n }, [blockId, groupId]);\n\n const [showSettings, setShowSettings] = useState(false);\n\n const toggleSettings = useCallback(() => {\n setShowSettings(!showSettings);\n }, [showSettings, setShowSettings]);\n\n const [virtualTradingModal, setVirtualTradingModal] = useState(false);\n const toggleVirtualTradingModal = useCallback(() => {\n setVirtualTradingModal(!virtualTradingModal);\n }, [virtualTradingModal, setVirtualTradingModal]);\n\n useWhyDidYouUpdate(`${blockId}:BlockContentHeader`, {\n showSettings,\n blockId,\n isLinkable,\n settingFields,\n isLinked,\n linkingDisabled,\n });\n\n // @params option: { label: string; value: number }\n // function to set the visible strike count for the block and save to db\n const handleSetStrikeCount = useCallback(\n (option: { label: string; value: number }) => {\n if (symbolValue) {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...current,\n bidUsesBuyOrderAction: current.bidUsesBuyOrderAction,\n ...blockSettings,\n strikeCount: option.value,\n },\n };\n\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }\n },\n [symbolValue, blockSettings, blockId, blockType, dashboardId, dispatch, dispatcher]\n );\n\n const hasSettings = useMemo(() => settingFields !== undefined && _.keys(settingFields).length > 0, [settingFields]);\n\n let refreshBtnTimeout: null | ReturnType = null;\n const [refreshBtnDisabled, setRefreshBtnDisabled] = useState(false);\n\n useEffect(() => {\n return () => {\n if (refreshBtnTimeout) {\n clearTimeout(refreshBtnTimeout)\n }\n }\n }, []);\n\n return (\n \n {children}\n \n \n
    \n
      \n {isOptionChainBlock && (\n <>\n
    • \n
      \n Strike count: \n handleSetStrikeCount(option)}\n value={current.strikeCount}\n placeholder={current.strikeCount === 0 ? 'All' : current.strikeCount}\n isSearchable={false}\n />\n
      \n
    • \n \n )}\n {isVirtualEnv && (\n
    • \n \n \n \n
    • \n )}\n {isLinkable && isLinked && (\n
    • \n \n
    • \n )}\n {(!isLinkable || !isLinked) && (\n
    • \n \n \n \n
    • \n )}\n {isRefreshable && (\n
    • \n {\n setRefreshBtnDisabled(true);\n refreshBtnTimeout = setTimeout(() => setRefreshBtnDisabled(false), 2000)\n onRefresh && onRefresh();\n }}\n type=\"button\"\n >\n \n \n
    • \n )}\n
    • \n \n
    • \n
    \n
    \n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { BlockProps } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useBlockMetadata } from './BlockState';\n\ntype BlockLinkingMaskProps = Pick & {\n isLinked: boolean;\n onClick: () => void;\n onCancelClick: () => void;\n};\n\nexport const BlockLinkingMask: React.FunctionComponent = ({ type, isLinkable, isLinked, onClick, onCancelClick }) => {\n const { blockId, groupId } = useBlockMetadata();\n const sourceBlock = useStateSelector(s => s.blocks.linkSourceBlock);\n const targetBlock = useStateSelector(s => s.blocks.linkTargetBlock);\n const linkingCurrentGroup = sourceBlock && groupId === sourceBlock.groupId;\n const isLinkableToGroup = isLinkable && !linkingCurrentGroup && (!targetBlock || type === targetBlock.type);\n const isCancellable = linkingCurrentGroup && sourceBlock && sourceBlock.blockId === blockId;\n const linkStateIndex = useMemo(() => {\n if (isLinkableToGroup) {\n return 0;\n }\n if (isCancellable) {\n return 1;\n }\n return 2;\n }, [isLinkableToGroup, isCancellable]);\n\n return (\n
    \n \n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { BlockLinkingMask } from '../BlockLinkingMask';\nimport { BlockProps } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector, blocksSelectors } from '../../../data/global/dataSelectors';\n\ntype BlockLinkProps = Pick;\n\nexport const BlockLink: React.FC = ({ type, isLinkable }) => {\n const { blockId, groupId } = useBlockMetadata();\n const { dispatcher } = useDispatcher();\n const onLinkBlock = useCallback(() => {\n // complete linking of this block\n dispatcher.block.linkBlock(blockId, groupId);\n }, [blockId, groupId]);\n const onCancelLinking = useCallback(() => {\n // cancel block linking\n dispatcher.grid.toggleLinking(false);\n }, []);\n const isLinked = useStateSelector(s => blocksSelectors.isLinked(s)(blockId));\n return (\n <>\n
    \n \n
    \n \n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate, BlockDragHandle } from '@tradingblock/components';\nimport { useBlockMetadata } from '../BlockState';\nimport { IBlockProps } from '../Block';\n\nexport const BlockContentHeaderTitle: React.FunctionComponent> = ({ header }) => {\n const { blockId } = useBlockMetadata();\n\n useWhyDidYouUpdate(`${blockId}:BlockContentHeaderTitle`, { blockId, header });\n\n if (!header) {\n return null;\n }\n return <>{_.isString(header) ? {header} : header};\n};\n","import React from 'react';\nimport { DataState } from '../../../data/global/state';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\n\nexport const BlockLoading: React.FC<{\n isFetchingSelector?: (state: DataState) => boolean;\n as: 'li' | 'div';\n}> = ({ isFetchingSelector, as }) => {\n const isRefreshing = useStateSelector(isFetchingSelector ? isFetchingSelector : (state: DataState) => false);\n return (\n <>\n {isRefreshing && as === 'li' && (\n
  • \n \n
  • \n )}\n {isRefreshing && as === 'div' && (\n
    \n \n
    \n )}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useState, useCallback, useEffect, useMemo } from 'react';\nimport useMount from 'react-use/lib/useMount';\nimport _ from 'lodash';\nimport { BlockProps, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { TabOptions, IBlockDataState, AssetSymbol } from '@tradingblock/types';\nimport { useBlockState, useBlockActions, useBlockData } from './BlockState';\nimport { useStore } from '../../context/Storage';\nimport { BlockDataLoader } from './BlockDataLoader';\nimport { BlockContentWrapper } from './content/BlockContentWrapper';\nimport { BlockContentHeader } from './content/BlockContentHeader';\nimport { BlockLink } from './content/BlockLink';\nimport { BlockContentHeaderTitle } from './content/BlockContentHeaderTitle';\nimport { BlockLoading } from './content/BlockLoadingHeaderIndicator';\nimport { DataState } from '../../data/global/state';\nimport { SettingsRenderer } from './settings/BlockSettingsTypes';\nimport { blockGroupId, useStateSelector } from '../../data/global/dataSelectors';\nimport { groupLinkedColor, groupSymbol } from '../../data/global/selectors/groupSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { BlockActions } from '../../data/global/actions';\n\nexport interface IBlockProps\n extends Pick {\n initialData?: D;\n header?: JSX.Element | React.Component | string;\n settings?: S;\n tabs?: TabOptions[];\n isFetchingSelector?: (state: DataState) => boolean;\n}\ntype BaseBlockProps = IBlockProps & SettingsRenderer;\nexport const Block: React.FC = ({\n children,\n initialData,\n tabs,\n settings,\n className,\n isLinkable,\n isRefreshable,\n onRefresh,\n header,\n isFetchingSelector,\n ...props\n}) => {\n const blockId = useBlockState('blockId');\n const { initialize, setField: set } = useBlockActions();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const symbolForGroup = useStateSelector(s => groupSymbol(s, groupId || ''));\n const colorForGroup = useStateSelector(s => groupLinkedColor(s, groupId || ''));\n const { symbol } = useBlockData<{\n symbol: AssetSymbol;\n isLoaded: boolean;\n blockType: string;\n }>();\n const allBlockData: {} = useBlockData();\n const { dispatch } = useDispatcher();\n const [initialDashboardId, setInitialDashboardId] = useState(undefined);\n const dashboardId = useStateSelector(s => s.dashboards.dashboard && s.dashboards.dashboard.dashboardId);\n\n useEffect(() => {\n if (!initialDashboardId && dashboardId) {\n setInitialDashboardId(dashboardId);\n }\n }, [dashboardId]);\n\n useEffect(() => {\n // if the symbol for the group is different than the symbol for the block, update the block symbol\n // only if the block is on the initial dashboard as the user may have changed the symbol on a different dashboard\n // and updating the block in that situation can lead to unexpected behavior on that new dashboard\n if (symbolForGroup && symbol && symbolForGroup.symbol !== symbol.symbol && dashboardId === initialDashboardId) {\n // set symbol for the block\n set('symbol', symbolForGroup, { persist: true });\n const blockData = {\n data: {\n ...allBlockData,\n symbol: symbolForGroup,\n },\n };\n // dispatch update block action to update block data within the db/store\n dispatch(BlockActions.updateBlock({ blockId, blockData }, { persist: true }));\n }\n }, [symbolForGroup, symbol]);\n useEffect(() => {\n if (colorForGroup) {\n set('linkedColor', colorForGroup, { persist: true });\n dispatch(\n BlockActions.updateBlock(\n { blockId, blockData: { data: { ...allBlockData, linkedColor: colorForGroup } } },\n { persist: true }\n )\n );\n }\n }, [colorForGroup]);\n const store = useStore();\n useMount(() => {\n const blockTabs = tabs ? tabs : [];\n if (initialData || tabs || settings) {\n const value = { data: initialData || {}, tabs: blockTabs, settings };\n initialize(value);\n }\n });\n\n useWhyDidYouUpdate(`${blockId}:Block`, { ...props });\n const [contentId, setContentId] = useState(_.uniqueId(blockId));\n const handleRefresh = useCallback(() => {\n setContentId(_.uniqueId(blockId));\n if (onRefresh) {\n onRefresh();\n }\n }, [onRefresh]);\n const headerProps = {\n isLinkable,\n onRefresh: handleRefresh,\n isRefreshable,\n };\n\n return (\n <>\n \n \n \n \n false} />\n \n {children}\n \n \n \n );\n};\n","import { createSelector } from 'reselect';\nimport { createDeepSelector } from '../../../data/global/dataSelectors';\nimport { PriceChartState } from './PriceChartState';\n\nconst rootSelector = (state: PriceChartState) => state;\nconst symbolSel = createSelector(\n rootSelector,\n v => v.symbol\n);\nconst quoteSel = createDeepSelector(rootSelector, v => v.quote);\nconst isFetchingSel = createDeepSelector(rootSelector, v => v.isFetching);\nconst isLoadedSel = createDeepSelector(rootSelector, v => v.isLoaded);\nexport const PriceChartSelectors = {\n symbol: symbolSel,\n symbolName: createDeepSelector(symbolSel, v => (v ? v.symbol : undefined)),\n quote: createDeepSelector(quoteSel, q => (q ? q : undefined)),\n isFetching: createDeepSelector(isFetchingSel, f => f),\n isLoaded: createDeepSelector(symbolSel, isLoadedSel, (s, i) => {\n return i === true && s !== undefined;\n }),\n};\n","import { OrderActions } from '../blocks/Order/state/OrderActions';\nimport { PriceChartActions } from '../blocks/PriceChart/state/PriceChartActions';\nimport _ from 'lodash';\n\ninterface GroupObserver {\n blockId: string;\n groupId: string;\n dispatch: React.Dispatch;\n}\ntype GroupAction = OrderActions | PriceChartActions;\nclass GroupActionManager {\n private observers: GroupObserver[] = [];\n private lastAction: { [groupId: string]: GroupAction } = {};\n public attach(observer: GroupObserver, runLastAction?: boolean) {\n this.observers = _.uniqBy([...this.observers, observer], o => o.blockId);\n const last = this.lastAction[observer.groupId];\n if (runLastAction && last) {\n observer.dispatch(last);\n }\n }\n public detach(blockId: string) {\n this.observers = _.filter(this.observers, o => o.blockId !== blockId);\n }\n public dispatch(groupId: string, action: GroupAction) {\n const obs = this.observers.filter(o => o.groupId === groupId);\n this.lastAction[groupId] = action;\n if (obs && obs.length > 0) {\n obs.forEach(o => {\n o.dispatch(action);\n });\n } else {\n console.log('no blocks found for action', action, 'in group', groupId);\n }\n }\n}\n\nexport const GroupManager = new GroupActionManager();\n","import { useStateSelector, isFavorite } from '../data/global/dataSelectors';\nimport { DataState } from '../data/global/state';\n\nimport { useDispatcher } from '../data/global/hooks';\nimport { useCallback } from 'react';\nimport { AssetSymbolInfo } from '@tradingblock/types';\n\ntype FavoriteSymbol = [boolean, () => void];\n\nexport const useFavorite = (symbol: AssetSymbolInfo): FavoriteSymbol => {\n const symbolIsFavorite = useStateSelector((s: DataState) => isFavorite(s, symbol.symbol));\n\n const { dispatcher } = useDispatcher();\n const addRemoveFavorite = useCallback(() => {\n if (symbol) {\n if (symbolIsFavorite) {\n dispatcher.favorites.remove(symbol.symbol);\n } else {\n dispatcher.favorites.add(symbol);\n }\n }\n }, [dispatcher, symbolIsFavorite, symbol]);\n return [symbolIsFavorite, addRemoveFavorite];\n};\n","import React from 'react';\nimport { AssetSymbolInfo } from '@tradingblock/types';\nimport { useFavorite } from '../../hooks/useFavorite';\n\nexport const FavoriteButton: React.FC<{ symbol: AssetSymbolInfo; className?: string }> = ({ symbol, className }) => {\n // const symbolIsFavorite = useStateSelector((s: DataState) => isFavorite(s, favSymbol ? favSymbol : ''));\n const [symbolIsFavorite, toggleFavorite] = useFavorite(symbol);\n // const { dispatcher } = useDispatcher();\n // const addRemoveFavorite = useCallback(() => {\n // console.log(favSymbol);\n // if (favSymbol ) {\n // if (symbolIsFavorite) {\n // dispatcher.favorites.remove(favSymbol);\n // } else {\n // dispatcher.favorites.add(favSymbol);\n // }\n // }\n // }, [dispatcher, symbolIsFavorite, favSymbol]);\n return (\n \n );\n};\n","import React, { useState, useMemo, useRef } from 'react';\nimport { Modal as BootstrapModal } from 'react-bootstrap';\nimport dayjs from 'dayjs';\nimport { getLocalDateFromTimezone, timeZone } from '@tradingblock/api';\nimport { isToday } from '../../utilities/date';\nimport { Modal } from '@tradingblock/components';\nimport { useQuoteTime } from '../../hooks/useFeedQuote';\nimport { findTimeZone } from 'timezone-support';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\n\nexport const QuoteTime: React.FC<{ symbol: string }> = ({ symbol }) => {\n const quoteTime = useQuoteTime(symbol);\n const [showQuoteTimeInfo, setShowQuoteTimeInfo] = useState(false);\n const time = useMemo(() => (quoteTime ? quoteTime : undefined), [quoteTime]);\n\n const date = dayjs(quoteTime, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n\n // force correct date format\n const timeValue = time && dayjs(time, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n const dateValue: Date = new Date(date);\n\n const tz: any = findTimeZone(timeZone);\n const { abbreviations } = tz;\n\n let zone = new Date().toLocaleTimeString('en-us', { timeZoneName: 'short' }).split(' ')[2];\n\n const timestampRef = useRef(null);\n\n return (\n <>\n {quoteTime && (\n
    \n
    \n \n
    \n
    \n )}\n {/* \n \n TEST\n \n */}\n \n \n About quote updates\n \n \n
    \n

    \n Quote was updated at the time displayed. Some or all intraday quotes may be delayed up to 20 minutes, and\n may not reflect current bid, ask or last sale.\n

    \n
    \n
    \n
    \n \n );\n};\n","import React, { useEffect, useRef, useState } from 'react';\nconst DirectionalTimeout = 1000;\n\nexport type DirectionalOptions = { upValue?: string; downValue?: string; disableFlash?: boolean };\n\nexport const useDirectionalClassValues = (options?: DirectionalOptions) => {\n const upValue = options && options.upValue ? options.upValue : 'pos bold';\n const downValue = options && options.downValue ? options.downValue : 'neg bold';\n return { upValue, downValue };\n};\n\nexport const useDirectionalClass = (direction: 'up' | 'down' | undefined, value: number | undefined, options?: DirectionalOptions) => {\n const { upValue, downValue } = useDirectionalClassValues(options);\n const disableFlash = options && options.disableFlash ? true : false;\n const [directionClass, setdirectionClass] = useState('');\n const resetTimeout = useRef();\n useEffect(() => {\n if (direction) {\n let dirClass = '';\n if (direction === undefined) {\n dirClass = '';\n } else if (direction === 'down') {\n dirClass = downValue;\n } else {\n dirClass = upValue;\n }\n setdirectionClass(dirClass);\n if (disableFlash !== true) {\n if (resetTimeout && resetTimeout.current) {\n clearTimeout(resetTimeout.current);\n }\n\n resetTimeout.current = setTimeout(function () {\n setdirectionClass(`flash`);\n }, DirectionalTimeout);\n }\n }\n\n return () => {\n if (resetTimeout && resetTimeout.current) {\n clearTimeout(resetTimeout.current);\n }\n };\n }, [direction, downValue, upValue, value]);\n\n return directionClass;\n};\nexport const useDirectionalValue = (value: number | undefined, options?: DirectionalOptions) => {\n const [currentValue, setCurrentValue] = useState();\n const [direction, setDirection] = useState();\n useEffect(() => {\n if (value && value !== currentValue) {\n if (currentValue === undefined) {\n setDirection(undefined);\n } else if (currentValue > value) {\n setDirection('down');\n } else if (currentValue < value) {\n setDirection('up');\n }\n setCurrentValue(value);\n }\n }, [value, currentValue]);\n return useDirectionalClass(direction, value, options);\n};\nexport const Directional: React.FunctionComponent<{ wrapperClass?: string; direction: 'up' | 'down' | undefined; value?: number; options?: DirectionalOptions }> = ({ value, direction, options, wrapperClass, children }) => {\n const directionClass = useDirectionalClass(direction, value || undefined, options);\n return
    {children}
    ;\n};\n\nexport interface DirectionalValueProps {\n value?: number;\n threshold?: number;\n options?: DirectionalOptions;\n wrapperClass?: string;\n precisionOverride?: boolean;\n prefix?: string;\n}\n\nexport const DirectionalValue: React.FunctionComponent = ({ value, children, options, wrapperClass, ...props }) => {\n const [threshold, setThreshold] = useState(props.threshold);\n const [direction, setDirection] = useState();\n useEffect(() => {\n if (value && value !== threshold) {\n if (threshold === undefined) {\n setDirection(undefined);\n } else if (threshold > value) {\n setDirection('down');\n } else if (threshold < value) {\n setDirection('up');\n }\n if (props.threshold === undefined) {\n setThreshold(value);\n }\n }\n }, [value, threshold]);\n\n return (\n \n {/* \n $\n \n */}\n {children}\n \n );\n};\n","import React from 'react';\nimport { useQuoteDirectionAndValue } from '../../hooks/useFeedQuote';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue } from '../../components/basic/Directional';\n\nexport const SymbolPrice: React.FunctionComponent<{ symbol: string }> = ({ symbol }) => {\n const { price } = useQuoteDirectionAndValue(symbol);\n\n return (\n \n \n $\n \n \n \n );\n};\n","import React, { useMemo, useRef } from 'react';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport {\n BlockDragHandle,\n HttpAutocomplete,\n OptionType,\n getBlockTypeName,\n SignedNumber,\n Pill,\n Loading,\n} from '@tradingblock/components';\nimport { SymbolToOption, useSymbolSearch } from '../../hooks/useSymbolSearch';\nimport { useQuote } from '../../hooks/useFeedQuote';\nimport { FavoriteButton } from '../../components/blocks/FavoriteButton';\nimport { QuoteTime } from './QuoteTime';\nimport { SymbolPrice } from './SymbolPrice';\n\ninterface SymbolPickerHeaderProps {\n blockType: BlockType;\n symbol: AssetSymbol | undefined;\n isLoaded: boolean | undefined;\n onSelect: (value: OptionType) => void;\n onClear?: () => void;\n placeholder?: string;\n clearOptionsOnSelect?: boolean;\n focus?: boolean;\n disableFavorite?: boolean;\n hidePrice?: boolean;\n hideTime?: boolean;\n hidePercent?: boolean;\n onSearch?: (value: string, limit?: number | undefined) => void;\n onBlur?: () => void;\n}\n\nexport const SymbolPickerHeader: React.FunctionComponent = ({\n hidePrice,\n blockType,\n symbol,\n isLoaded,\n onSelect,\n placeholder,\n clearOptionsOnSelect,\n focus,\n onClear,\n disableFavorite,\n hideTime,\n hidePercent,\n onSearch,\n onBlur,\n}) => {\n const search = useSymbolSearch();\n const symbolValue = symbol ? symbol.symbol : '';\n const symbolQuote = useQuote(symbolValue);\n const autoCompleteValue = useMemo(() => {\n return symbol ? SymbolToOption(symbol, true) : undefined;\n }, [symbol]);\n const rest = useMemo(() => {\n return { autoFocus: focus };\n }, [focus]);\n\n return (\n
    \n {getBlockTypeName(blockType)}\n
    \n \n {isLoaded && (\n {\n if (onSearch !== undefined) {\n onSearch(value, limit);\n }\n\n return search(value, limit);\n }}\n onBlur={onBlur}\n value={autoCompleteValue}\n onSelect={onSelect}\n clearOptionsOnSelect={clearOptionsOnSelect}\n placeholder={placeholder}\n symbol={symbolValue}\n charLimit={20}\n />\n )}\n \n
    \n {symbol && symbolQuote && (\n <>\n
    \n
    \n {symbol.symbol}\n
    \n
    \n {symbol.name}\n
    \n
    \n {hidePrice !== true && (\n
    \n \n
    \n
    \n \n
    \n {hidePercent !== true && (\n
    \n \n
    \n )}\n
    \n
    \n )}\n {!disableFavorite && (\n
    \n \n
    \n )}\n {hideTime !== true && }{' '}\n \n )}\n
    \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockMetadata, useBlockData, useBlockSymbol } from '../../components/blocks/BlockState';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\nimport { PriceChartState } from './state/PriceChartState';\nimport { useOptionChainActions } from '../OptionChain/state/useOptionChainActions';\nimport { ChartType } from './PriceChartGraph';\n\ninterface PriceChartHeaderProps {\n setSymbol: (symbol: AssetSymbol) => void;\n}\n\nexport const PriceChartHeader: React.FC = ({ setSymbol }) => {\n const { isLoaded } = useBlockData();\n const symbol = useBlockSymbol();\n const { blockId } = useBlockMetadata();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const { dispatcher } = useDispatcher();\n const setGroupSymbol = dispatcher.blockGroup.setSymbol;\n const updateSymbol = useCallback(\n (symbolName: string, symbolValue: AssetSymbol | undefined) => {\n if (groupId) {\n setGroupSymbol(groupId, symbolValue);\n }\n },\n [setGroupSymbol, groupId]\n );\n const onSelect = useCallback(\n (value: any) => {\n const symbolValue = value ? value.data : undefined;\n const symbolName = symbolValue && symbolValue.symbol;\n if (symbolName && symbolValue) {\n updateSymbol(symbolName, symbolValue);\n }\n },\n [updateSymbol]\n );\n const onClear = useCallback(() => {\n updateSymbol('', undefined);\n }, [updateSymbol]);\n return (\n \n );\n};\n","import _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction t(e, n) {\n var i = _objectSpread({}, e);\n\n for (var _o in n) {\n \"object\" != typeof e[_o] || null === e[_o] || Array.isArray(e[_o]) ? void 0 !== n[_o] && (i[_o] = n[_o]) : i[_o] = t(e[_o], n[_o]);\n }\n\n return i;\n}\n\nvar e = {\n mobile: {\n disabled_features: [\"left_toolbar\", \"header_widget\", \"timeframes_toolbar\", \"edit_buttons_in_legend\", \"context_menus\", \"control_bar\", \"border_around_the_chart\"],\n enabled_features: []\n }\n},\n n = {\n width: 800,\n height: 500,\n interval: \"1D\",\n timezone: \"Etc/UTC\",\n container: \"\",\n library_path: \"\",\n locale: \"en\",\n widgetbar: {\n details: !1,\n watchlist: !1,\n watchlist_settings: {\n default_symbols: []\n }\n },\n overrides: {\n \"mainSeriesProperties.showCountdown\": !1\n },\n studies_overrides: {},\n trading_customization: {\n position: {},\n order: {}\n },\n brokerConfig: {\n configFlags: {}\n },\n fullscreen: !1,\n autosize: !1,\n disabled_features: [],\n enabled_features: [],\n debug: !1,\n logo: {},\n time_frames: [{\n text: \"5y\",\n resolution: \"1W\"\n }, {\n text: \"1y\",\n resolution: \"1W\"\n }, {\n text: \"6m\",\n resolution: \"120\"\n }, {\n text: \"3m\",\n resolution: \"60\"\n }, {\n text: \"1m\",\n resolution: \"30\"\n }, {\n text: \"5d\",\n resolution: \"5\"\n }, {\n text: \"1d\",\n resolution: \"1\"\n }],\n client_id: \"0\",\n user_id: \"0\",\n charts_storage_api_version: \"1.0\",\n favorites: {\n intervals: [],\n chartTypes: []\n }\n};\nvar i = !1;\n\nfunction o(t) {\n var e;\n var n = /\\.woff(\\d*)/.exec(t);\n return \"\");\n}\n\nfunction s(t, e) {\n var n = new URL(\"\".concat(t || \"\"), location.href).href,\n i = JSON.parse('[\"bundles/runtime.6b7a1146863d7196d6d3.js\",\"bundles/5386.eb112967859403067d3d.css\",\"bundles/5386.eb112967859403067d3d.rtl.css\",\"bundles/1857.10c97feeb46d934b8a25.js\",\"bundles/library.a70ecf079f22e76a3ae6.js\",\"bundles/b1a63a011fd92dfb93db6db243bb036c.woff2\",\"bundles/40f9a03d174178efb12303caa9bc7cd8.woff2\",\"bundles/3293616ec0c605c7c2db25829a0a509e.woff\"]'),\n s = JSON.parse('[{\"iso\":\"ar\",\"dir\":\"rtl\",\"language\":\"ar\"},{\"iso\":\"pt\",\"dir\":\"ltr\",\"language\":\"pt\"},{\"iso\":\"cs\",\"dir\":\"ltr\",\"language\":\"cs\"},{\"iso\":\"de\",\"dir\":\"ltr\",\"language\":\"de\"},{\"iso\":\"en\",\"dir\":\"ltr\",\"language\":\"en\"},{\"iso\":\"es\",\"dir\":\"ltr\",\"language\":\"es\"},{\"iso\":\"fa\",\"dir\":\"rtl\",\"language\":\"fa\"},{\"iso\":\"fr\",\"dir\":\"ltr\",\"language\":\"fr\"},{\"iso\":\"he\",\"dir\":\"rtl\",\"language\":\"he_IL\"},{\"iso\":\"hu\",\"dir\":\"ltr\",\"language\":\"hu_HU\"},{\"iso\":\"id\",\"dir\":\"ltr\",\"language\":\"id_ID\"},{\"iso\":\"en\",\"dir\":\"ltr\",\"language\":\"en\"},{\"iso\":\"it\",\"dir\":\"ltr\",\"language\":\"it\"},{\"iso\":\"ja\",\"dir\":\"ltr\",\"language\":\"ja\"},{\"iso\":\"ko\",\"dir\":\"ltr\",\"language\":\"ko\"},{\"iso\":\"ms\",\"dir\":\"ltr\",\"language\":\"ms_MY\"},{\"iso\":\"pl\",\"dir\":\"ltr\",\"language\":\"pl\"},{\"iso\":\"ru\",\"dir\":\"ltr\",\"language\":\"ru\"},{\"iso\":\"sv\",\"dir\":\"ltr\",\"language\":\"sv\"},{\"iso\":\"th\",\"dir\":\"ltr\",\"language\":\"th\"},{\"iso\":\"tr\",\"dir\":\"ltr\",\"language\":\"tr\"},{\"iso\":\"vi\",\"dir\":\"ltr\",\"language\":\"vi\"},{\"iso\":\"zh-Hans\",\"dir\":\"ltr\",\"language\":\"zh\"},{\"iso\":\"zh-Hant\",\"dir\":\"ltr\",\"language\":\"zh_TW\"},{\"iso\":\"el\",\"dir\":\"ltr\",\"language\":\"el\"},{\"iso\":\"nl\",\"dir\":\"ltr\",\"language\":\"nl_NL\"},{\"iso\":\"ro\",\"dir\":\"ltr\",\"language\":\"ro\"}]'),\n r = encodeURIComponent(e),\n a = s.find(function (t) {\n return t.language === r;\n }),\n d = \"lang=\\\"\".concat(a.iso, \"\\\" dir=\\\"\").concat(a.dir, \"\\\"\"),\n l = \"\\n\".concat(function (t, e) {\n if (void 0 === t) return \"\";\n var n = [],\n i = [],\n s = [],\n r = /\\.css$/i,\n a = /\\.rtl\\.css$/i;\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = t[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _d = _step.value;\n _d.endsWith(\".js\") ? i.push(\"\")) : r.test(_d) && e === a.test(_d) ? s.push(\"\")) : /\\.woff\\d*/.test(_d) && n.push(o(_d));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return [].concat(n, i, s).join(\"\\n\");\n }(i, \"rtl\" === a.dir), \"\\n\");\n return \" \").concat(h.bundles, \"
    \");\n var h;\n}\n\nfunction r() {\n return \"CL v23.038 (internal id e012cb8f @ 2022-12-20T06:06:49.573Z)\";\n}\n\nvar a =\n/*#__PURE__*/\nfunction () {\n function a(o) {\n _classCallCheck(this, a);\n\n var s;\n if (this._id = \"tradingview_\".concat((1048576 * (1 + Math.random()) | 0).toString(16).substring(1)), this._ready = !1, this._readyHandlers = [], this._onWindowResize = this._autoResizeChart.bind(this), !o.datafeed) throw new Error(\"Datafeed is not defined\");\n\n if ((null === (s = o.overrides) || void 0 === s ? void 0 : s[\"mainSeriesProperties.priceAxisProperties.lockScale\"]) && (console.warn(\"mainSeriesProperties.priceAxisProperties.lockScale can not be set to true within the widget constructor\"), delete o.overrides[\"mainSeriesProperties.priceAxisProperties.lockScale\"]), this._options = t(n, o), o.preset) {\n var _t = e[o.preset];\n _t ? (void 0 !== this._options.disabled_features ? this._options.disabled_features = this._options.disabled_features.concat(_t.disabled_features) : this._options.disabled_features = _t.disabled_features, void 0 !== this._options.enabled_features ? this._options.enabled_features = this._options.enabled_features.concat(_t.enabled_features) : this._options.enabled_features = _t.enabled_features) : console.warn(\"Unknown preset: `\" + o.preset + \"`\");\n }\n\n \"Dark\" === this._options.theme && void 0 === this._options.loading_screen && (this._options.loading_screen = {\n backgroundColor: \"#131722\"\n }), this._options.debug && (i || (i = !0, console.log(\"Using CL v23.038 (internal id e012cb8f @ 2022-12-20T06:06:49.573Z)\"))), this._create();\n }\n\n _createClass(a, [{\n key: \"setDebugMode\",\n value: function setDebugMode(t) {\n this._innerAPI().setDebugMode(t);\n }\n }, {\n key: \"onChartReady\",\n value: function onChartReady(t) {\n this._ready ? t.call(this) : this._readyHandlers.push(t);\n }\n }, {\n key: \"headerReady\",\n value: function headerReady() {\n var _this = this;\n\n return this._innerWindowLoaded.then(function () {\n return _this._innerWindow().headerReady();\n });\n }\n }, {\n key: \"onGrayedObjectClicked\",\n value: function onGrayedObjectClicked(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.onGrayedObjectClicked(t);\n });\n }\n }, {\n key: \"onShortcut\",\n value: function onShortcut(t, e) {\n this._doWhenInnerWindowLoaded(function (n) {\n n.createShortcutAction(t, e);\n });\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(t, e) {\n this._doWhenInnerApiLoaded(function (n) {\n n.subscribe(t, e);\n });\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(t, e) {\n this._doWhenInnerApiLoaded(function (n) {\n n.unsubscribe(t, e);\n });\n }\n }, {\n key: \"chart\",\n value: function chart(t) {\n return this._innerAPI().chart(t);\n }\n }, {\n key: \"getLanguage\",\n value: function getLanguage() {\n return this._options.locale;\n }\n }, {\n key: \"setSymbol\",\n value: function setSymbol(t, e, n) {\n this._innerAPI().changeSymbol(t, e, n);\n }\n }, {\n key: \"remove\",\n value: function remove() {\n window.removeEventListener(\"resize\", this._onWindowResize), this._readyHandlers.splice(0, this._readyHandlers.length), delete window[this._id], this._iFrame.parentNode && this._iFrame.parentNode.removeChild(this._iFrame);\n }\n }, {\n key: \"closePopupsAndDialogs\",\n value: function closePopupsAndDialogs() {\n this._doWhenInnerApiLoaded(function (t) {\n t.closePopupsAndDialogs();\n });\n }\n }, {\n key: \"selectLineTool\",\n value: function selectLineTool(t, e) {\n this._innerAPI().selectLineTool(t, e);\n }\n }, {\n key: \"selectedLineTool\",\n value: function selectedLineTool() {\n return this._innerAPI().selectedLineTool();\n }\n }, {\n key: \"save\",\n value: function save(t) {\n this._innerAPI().saveChart(t);\n }\n }, {\n key: \"load\",\n value: function load(t, e) {\n this._innerAPI().loadChart({\n json: t,\n extendedData: e\n });\n }\n }, {\n key: \"getSavedCharts\",\n value: function getSavedCharts(t) {\n this._innerAPI().getSavedCharts(t);\n }\n }, {\n key: \"loadChartFromServer\",\n value: function loadChartFromServer(t) {\n this._innerAPI().loadChartFromServer(t);\n }\n }, {\n key: \"saveChartToServer\",\n value: function saveChartToServer(t, e, n) {\n this._innerAPI().saveChartToServer(t, e, n);\n }\n }, {\n key: \"removeChartFromServer\",\n value: function removeChartFromServer(t, e) {\n this._innerAPI().removeChartFromServer(t, e);\n }\n }, {\n key: \"onContextMenu\",\n value: function onContextMenu(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.onContextMenu(t);\n });\n }\n }, {\n key: \"createButton\",\n value: function createButton(t) {\n return this._innerWindow().createButton(t);\n }\n }, {\n key: \"createDropdown\",\n value: function createDropdown(t) {\n return this._innerWindow().createDropdown(t);\n }\n }, {\n key: \"showNoticeDialog\",\n value: function showNoticeDialog(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.showNoticeDialog(t);\n });\n }\n }, {\n key: \"showConfirmDialog\",\n value: function showConfirmDialog(t) {\n this._doWhenInnerApiLoaded(function (e) {\n e.showConfirmDialog(t);\n });\n }\n }, {\n key: \"showLoadChartDialog\",\n value: function showLoadChartDialog() {\n this._innerAPI().showLoadChartDialog();\n }\n }, {\n key: \"showSaveAsChartDialog\",\n value: function showSaveAsChartDialog() {\n this._innerAPI().showSaveAsChartDialog();\n }\n }, {\n key: \"symbolInterval\",\n value: function symbolInterval() {\n return this._innerAPI().getSymbolInterval();\n }\n }, {\n key: \"mainSeriesPriceFormatter\",\n value: function mainSeriesPriceFormatter() {\n return this._innerAPI().mainSeriesPriceFormatter();\n }\n }, {\n key: \"getIntervals\",\n value: function getIntervals() {\n return this._innerAPI().getIntervals();\n }\n }, {\n key: \"getStudiesList\",\n value: function getStudiesList() {\n return this._innerAPI().getStudiesList();\n }\n }, {\n key: \"getStudyInputs\",\n value: function getStudyInputs(t) {\n return this._innerAPI().getStudyInputs(t);\n }\n }, {\n key: \"getStudyStyles\",\n value: function getStudyStyles(t) {\n return this._innerAPI().getStudyStyles(t);\n }\n }, {\n key: \"addCustomCSSFile\",\n value: function addCustomCSSFile(t) {\n this._innerWindow().addCustomCSSFile(t);\n }\n }, {\n key: \"applyOverrides\",\n value: function applyOverrides(e) {\n this._options = t(this._options, {\n overrides: e\n }), this._doWhenInnerWindowLoaded(function (t) {\n t.applyOverrides(e);\n });\n }\n }, {\n key: \"applyStudiesOverrides\",\n value: function applyStudiesOverrides(t) {\n this._doWhenInnerWindowLoaded(function (e) {\n e.applyStudiesOverrides(t);\n });\n }\n }, {\n key: \"watchList\",\n value: function watchList() {\n return this._innerAPI().watchlist();\n }\n }, {\n key: \"news\",\n value: function news() {\n return this._innerAPI().news();\n }\n }, {\n key: \"widgetbar\",\n value: function widgetbar() {\n return this._innerAPI().widgetbar();\n }\n }, {\n key: \"activeChart\",\n value: function activeChart() {\n return this._innerAPI().activeChart();\n }\n }, {\n key: \"chartsCount\",\n value: function chartsCount() {\n return this._innerAPI().chartsCount();\n }\n }, {\n key: \"layout\",\n value: function layout() {\n return this._innerAPI().layout();\n }\n }, {\n key: \"setLayout\",\n value: function setLayout(t) {\n this._innerAPI().setLayout(t);\n }\n }, {\n key: \"layoutName\",\n value: function layoutName() {\n return this._innerAPI().layoutName();\n }\n }, {\n key: \"changeTheme\",\n value: function changeTheme(t, e) {\n return this._innerWindow().changeTheme(t, e);\n }\n }, {\n key: \"getTheme\",\n value: function getTheme() {\n return this._innerWindow().getTheme();\n }\n }, {\n key: \"takeScreenshot\",\n value: function takeScreenshot() {\n this._doWhenInnerApiLoaded(function (t) {\n t.takeScreenshot();\n });\n }\n }, {\n key: \"lockAllDrawingTools\",\n value: function lockAllDrawingTools() {\n return this._innerAPI().lockAllDrawingTools();\n }\n }, {\n key: \"hideAllDrawingTools\",\n value: function hideAllDrawingTools() {\n return this._innerAPI().hideAllDrawingTools();\n }\n }, {\n key: \"drawOnAllCharts\",\n value: function drawOnAllCharts(t) {\n this._innerAPI().drawOnAllCharts(t);\n }\n }, {\n key: \"magnetEnabled\",\n value: function magnetEnabled() {\n return this._innerAPI().magnetEnabled();\n }\n }, {\n key: \"magnetMode\",\n value: function magnetMode() {\n return this._innerAPI().magnetMode();\n }\n }, {\n key: \"undoRedoState\",\n value: function undoRedoState() {\n return this._innerAPI().undoRedoState();\n }\n }, {\n key: \"setIntervalLinkingEnabled\",\n value: function setIntervalLinkingEnabled(t) {\n this._innerAPI().setIntervalLinkingEnabled(t);\n }\n }, {\n key: \"setTimeFrame\",\n value: function setTimeFrame(t) {\n this._innerAPI().setTimeFrame(t);\n }\n }, {\n key: \"symbolSync\",\n value: function symbolSync() {\n return this._innerAPI().symbolSync();\n }\n }, {\n key: \"intervalSync\",\n value: function intervalSync() {\n return this._innerAPI().intervalSync();\n }\n }, {\n key: \"crosshairSync\",\n value: function crosshairSync() {\n return this._innerAPI().crosshairSync();\n }\n }, {\n key: \"timeSync\",\n value: function timeSync() {\n return this._innerAPI().timeSync();\n }\n }, {\n key: \"getAllFeatures\",\n value: function getAllFeatures() {\n return this._innerWindow().getAllFeatures();\n }\n }, {\n key: \"clearUndoHistory\",\n value: function clearUndoHistory() {\n return this._innerAPI().clearUndoHistory();\n }\n }, {\n key: \"undo\",\n value: function undo() {\n return this._innerAPI().undo();\n }\n }, {\n key: \"redo\",\n value: function redo() {\n return this._innerAPI().redo();\n }\n }, {\n key: \"startFullscreen\",\n value: function startFullscreen() {\n this._innerAPI().startFullscreen();\n }\n }, {\n key: \"exitFullscreen\",\n value: function exitFullscreen() {\n this._innerAPI().exitFullscreen();\n }\n }, {\n key: \"takeClientScreenshot\",\n value: function takeClientScreenshot(t) {\n return this._innerAPI().takeClientScreenshot(t);\n }\n }, {\n key: \"navigationButtonsVisibility\",\n value: function navigationButtonsVisibility() {\n return this._innerWindow().getNavigationButtonsVisibility();\n }\n }, {\n key: \"paneButtonsVisibility\",\n value: function paneButtonsVisibility() {\n return this._innerWindow().getPaneButtonsVisibility();\n }\n }, {\n key: \"dateFormat\",\n value: function dateFormat() {\n return this._innerWindow().getDateFormat();\n }\n }, {\n key: \"supportedChartTypes\",\n value: function supportedChartTypes() {\n return this._innerAPI().supportedChartTypes();\n }\n }, {\n key: \"_innerAPI\",\n value: function _innerAPI() {\n return this._innerWindow().tradingViewApi;\n }\n }, {\n key: \"_innerWindow\",\n value: function _innerWindow() {\n return this._iFrame.contentWindow;\n }\n }, {\n key: \"_doWhenInnerWindowLoaded\",\n value: function _doWhenInnerWindowLoaded(t) {\n var _this2 = this;\n\n this._ready ? t(this._innerWindow()) : this._innerWindowLoaded.then(function () {\n t(_this2._innerWindow());\n });\n }\n }, {\n key: \"_doWhenInnerApiLoaded\",\n value: function _doWhenInnerApiLoaded(t) {\n var _this3 = this;\n\n this._doWhenInnerWindowLoaded(function (e) {\n e.doWhenApiIsReady(function () {\n return t(_this3._innerAPI());\n });\n });\n }\n }, {\n key: \"_autoResizeChart\",\n value: function _autoResizeChart() {\n this._options.fullscreen && (this._iFrame.style.height = window.innerHeight + \"px\");\n }\n }, {\n key: \"_create\",\n value: function _create() {\n var _this4 = this;\n\n var t = this._render();\n\n this._options.container_id && console.warn(\"`container_id` is now deprecated. Please use `container` instead to either still pass a string or an `HTMLElement`.\");\n var e = this._options.container_id || this._options.container,\n n = \"string\" == typeof e ? document.getElementById(e) : e;\n if (null === n) throw new Error(\"There is no such element - #\".concat(this._options.container));\n n.innerHTML = t, this._iFrame = n.querySelector(\"#\".concat(this._id));\n var i = this._iFrame;\n (this._options.autosize || this._options.fullscreen) && (i.style.width = \"100%\", this._options.fullscreen || (i.style.height = \"100%\")), window.addEventListener(\"resize\", this._onWindowResize), this._onWindowResize(), this._innerWindowLoaded = new Promise(function (t) {\n var e = function e() {\n i.removeEventListener(\"load\", e, !1), t();\n };\n\n i.addEventListener(\"load\", e, !1);\n }), this._innerWindowLoaded.then(function () {\n _this4._innerWindow().widgetReady(function () {\n _this4._ready = !0;\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = _this4._readyHandlers[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var _t2 = _step2.value;\n\n try {\n _t2.call(_this4);\n } catch (t) {\n console.error(t);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n _this4._innerWindow().initializationFinished();\n });\n });\n }\n }, {\n key: \"_render\",\n value: function _render() {\n var t = window;\n if (t[this._id] = {\n datafeed: this._options.datafeed,\n customFormatters: this._options.custom_formatters || this._options.customFormatters,\n brokerFactory: this._options.broker_factory || this._options.brokerFactory,\n overrides: this._options.overrides,\n studiesOverrides: this._options.studies_overrides,\n tradingCustomization: this._options.trading_customization,\n disabledFeatures: this._options.disabled_features,\n enabledFeatures: this._options.enabled_features,\n brokerConfig: this._options.broker_config || this._options.brokerConfig,\n restConfig: this._options.restConfig,\n favorites: this._options.favorites,\n logo: this._options.logo,\n numeric_formatting: this._options.numeric_formatting,\n rss_news_feed: this._options.rss_news_feed,\n newsProvider: this._options.news_provider,\n loadLastChart: this._options.load_last_chart,\n saveLoadAdapter: this._options.save_load_adapter,\n loading_screen: this._options.loading_screen,\n settingsAdapter: this._options.settings_adapter,\n getCustomIndicators: this._options.custom_indicators_getter,\n additionalSymbolInfoFields: this._options.additional_symbol_info_fields,\n headerWidgetButtonsMode: this._options.header_widget_buttons_mode,\n customTranslateFunction: this._options.custom_translate_function,\n symbolSearchComplete: this._options.symbol_search_complete,\n contextMenu: this._options.context_menu,\n settingsOverrides: this._options.settings_overrides,\n timeframe: this._options.timeframe\n }, this._options.saved_data) t[this._id].chartContent = {\n json: this._options.saved_data\n }, this._options.saved_data_meta_info && (t[this._id].chartContentExtendedData = this._options.saved_data_meta_info);else if (!this._options.load_last_chart && !this._options.symbol) throw new Error(\"Symbol is not defined: either 'symbol' or 'load_last_chart' option must be set\");\n this._options.library_path && !this._options.library_path.endsWith(\"/\") && console.warn(\"library_path option should contain a trailing forward slash\");\n var e = s(this._options.library_path || \"\", this._options.locale),\n n = new Blob([e], {\n type: \"text/html\"\n }),\n i = URL.createObjectURL(n),\n o = new URL(i),\n r = \"symbol=\" + encodeURIComponent(this._options.symbol || \"\") + \"&interval=\" + encodeURIComponent(this._options.interval) + (this._options.toolbar_bg ? \"&toolbarbg=\" + encodeURIComponent(this._options.toolbar_bg.replace(\"#\", \"\")) : \"\") + (this._options.studies_access ? \"&studiesAccess=\" + encodeURIComponent(JSON.stringify(this._options.studies_access)) : \"\") + \"&widgetbar=\" + encodeURIComponent(JSON.stringify(this._options.widgetbar)) + (this._options.drawings_access ? \"&drawingsAccess=\" + encodeURIComponent(JSON.stringify(this._options.drawings_access)) : \"\") + \"&timeFrames=\" + encodeURIComponent(JSON.stringify(this._options.time_frames)) + \"&locale=\" + encodeURIComponent(this._options.locale) + \"&uid=\" + encodeURIComponent(this._id) + \"&clientId=\" + encodeURIComponent(String(this._options.client_id)) + \"&userId=\" + encodeURIComponent(String(this._options.user_id)) + (this._options.charts_storage_url ? \"&chartsStorageUrl=\" + encodeURIComponent(this._options.charts_storage_url) : \"\") + (this._options.charts_storage_api_version ? \"&chartsStorageVer=\" + encodeURIComponent(this._options.charts_storage_api_version) : \"\") + (this._options.custom_css_url ? \"&customCSS=\" + encodeURIComponent(this._options.custom_css_url) : \"\") + (this._options.custom_font_family ? \"&customFontFamily=\" + encodeURIComponent(this._options.custom_font_family) : \"\") + (this._options.auto_save_delay ? \"&autoSaveDelay=\" + encodeURIComponent(String(this._options.auto_save_delay)) : \"\") + \"&debug=\" + encodeURIComponent(String(this._options.debug)) + (this._options.snapshot_url ? \"&snapshotUrl=\" + encodeURIComponent(this._options.snapshot_url) : \"\") + (this._options.timezone ? \"&timezone=\" + encodeURIComponent(this._options.timezone) : \"\") + (this._options.study_count_limit ? \"&studyCountLimit=\" + encodeURIComponent(String(this._options.study_count_limit)) : \"\") + (this._options.symbol_search_request_delay ? \"&ssreqdelay=\" + encodeURIComponent(String(this._options.symbol_search_request_delay)) : \"\") + (this._options.compare_symbols ? \"&compareSymbols=\" + encodeURIComponent(JSON.stringify(this._options.compare_symbols)) : \"\") + (this._options.theme ? \"&theme=\" + encodeURIComponent(String(this._options.theme)) : \"\") + (this._options.header_widget_buttons_mode ? \"&header_widget_buttons_mode=\" + encodeURIComponent(String(this._options.header_widget_buttons_mode)) : \"\") + (this._options.time_scale ? \"&time_scale=\" + encodeURIComponent(JSON.stringify(this._options.time_scale)) : \"\");\n return o.hash = r, \"\");\n }\n }]);\n\n return a;\n}();\n\nwindow.TradingView = window.TradingView || {}, window.TradingView.version = r;\nexport { r as version, a as widget };","import { widget } from '@tradingblock/tradingview/dist/charting_library';\nexport var createTradingViewChart = function createTradingViewChart(props, onAutoSave) {\n var containerId = props.containerId,\n container = props.container,\n datafeed = props.datafeed,\n symbol = props.symbol,\n interval = props.interval,\n savedData = props.savedData,\n autoSaveDelay = props.autoSaveDelay,\n fullscreen = props.fullscreen,\n autosize = props.autosize,\n libraryPath = props.libraryPath,\n chartsStorageUrl = props.chartsStorageUrl,\n chartsStorageApiVersion = props.chartsStorageApiVersion,\n clientId = props.clientId,\n userId = props.userId,\n studiesOverrides = props.studiesOverrides;\n var widgetOptions = Object.assign({}, props, {\n symbol: symbol,\n // BEWARE: no trailing slash is expected in feed URL\n datafeed: datafeed,\n interval: interval,\n saved_data: savedData,\n auto_save_delay: autoSaveDelay,\n fullscreen: fullscreen,\n autosize: autosize,\n container: containerId,\n library_path: libraryPath,\n // locale: getLanguageFromURL() || 'en',\n locale: 'en',\n charts_storage_url: chartsStorageUrl,\n charts_storage_api_version: chartsStorageApiVersion,\n client_id: clientId,\n user_id: userId,\n studies_overrides: studiesOverrides\n });\n var tvWidget = new widget(widgetOptions);\n tvWidget.onChartReady(function () {\n tvWidget.subscribe('onAutoSaveNeeded', function () {\n tvWidget.save(function (data) {\n return onAutoSave('savedData', data);\n });\n });\n var activeChart = tvWidget.activeChart();\n\n if (activeChart) {\n activeChart.onIntervalChanged().subscribe(null, function (interval) {\n onAutoSave('interval', interval);\n });\n activeChart.onChartTypeChanged().subscribe(null, function (chartType) {\n onAutoSave('chartType', chartType);\n });\n } // _.each(tvWidget.activeChart().getPanes(), pane => {\n // pane.getMainSourcePriceScale().setMode(PriceScaleMode.IndexedTo100);\n // });\n\n\n tvWidget.subscribe('toggle_sidebar', function (hidden) {\n onAutoSave('showLeftToolbar', !hidden);\n }); // onAutoSave chartType when chart is ready\n\n if (activeChart) {\n onAutoSave('chartType', activeChart.chartType());\n onAutoSave('interval', activeChart.resolution());\n }\n });\n return tvWidget;\n};","import dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\nvar channelToSubscription = new Map();\nexport var subscribeOnStream = function subscribeOnStream(symbolInfo, resolution, onRealtimeCallback, subscribeUID, onResetCacheNeededCallback, lastDailyBar) {\n var handler = {\n id: subscribeUID,\n callback: onRealtimeCallback\n };\n var channelString = \"0~\".concat(symbolInfo.exchange, \"~\").concat(symbolInfo.name, \"~\").concat(symbolInfo.name, \"~\").concat(resolution);\n var subscriptionItem = channelToSubscription.get(channelString);\n\n if (subscriptionItem) {\n subscriptionItem.handlers.push(handler);\n return;\n }\n\n subscriptionItem = {\n subscribeUID: subscribeUID,\n resolution: resolution,\n lastDailyBar: lastDailyBar,\n handlers: [handler]\n };\n channelToSubscription.set(channelString, subscriptionItem);\n};\nexport var handleUpdates = function handleUpdates(symbolInfo, resolution, onRealtimeCallback, subscribeUID, onResetCacheNeededCallback, quote, isHeikinAshi) {\n var LastTradePrice = quote.LastTradePrice,\n ReceivedTime = quote.ReceivedTime;\n var channelString = \"0~\".concat(symbolInfo.exchange, \"~\").concat(symbolInfo.name, \"~\").concat(symbolInfo.name, \"~\").concat(resolution);\n var subscriptionItem = channelToSubscription.get(channelString);\n\n if (subscriptionItem === undefined) {\n return;\n }\n\n var barTime = dayjs(ReceivedTime, 'MM/DD/YYYY HH:mm:ss').format('YYYY-MM-DDTHH:mm:ss') + 'Z';\n var date = new Date(barTime);\n var dateValue = dayjs(date);\n var latestExistingBarTime = dayjs(subscriptionItem.lastDailyBar.time);\n var time = latestExistingBarTime.unix() > dateValue.unix() ? latestExistingBarTime : dateValue;\n var lastDailyBar = subscriptionItem.lastDailyBar;\n var isNextBar = dateValue.unix() >= latestExistingBarTime.unix();\n var bar; // heikin ashi calculations\n\n var haOpen = (lastDailyBar.open + lastDailyBar.close) / 2;\n var haClose = (quote.LastTradePrice + quote.LastTradePrice + quote.LastTradePrice + quote.LastTradePrice) / 4;\n var haHigh = Math.max(quote.LastTradePrice, lastDailyBar.open, lastDailyBar.close);\n var haLow = Math.min(quote.LastTradePrice, lastDailyBar.open, lastDailyBar.close);\n\n if (isNextBar) {\n bar = {\n time: time.valueOf(),\n open: resolution === '1D' ? lastDailyBar.open : isHeikinAshi ? haOpen : LastTradePrice,\n high: resolution === '1D' ? lastDailyBar.high : isHeikinAshi ? haHigh : LastTradePrice,\n low: resolution === '1D' ? lastDailyBar.low : isHeikinAshi ? haLow : LastTradePrice,\n close: isHeikinAshi ? haClose : LastTradePrice,\n volume: resolution === '1D' ? lastDailyBar.volume : isHeikinAshi ? quote.LastTradeVolume + lastDailyBar.volume : quote.LastTradeVolume\n };\n } else {\n bar = Object.assign({}, lastDailyBar, {\n high: Math.max(lastDailyBar.high, LastTradePrice),\n low: Math.min(lastDailyBar.low, LastTradePrice),\n close: LastTradePrice,\n time: time.valueOf(),\n volume: lastDailyBar.volume + quote.LastTradeVolume\n });\n }\n\n subscriptionItem.lastDailyBar = bar;\n subscriptionItem.handlers.forEach(function (handler) {\n handler.callback(bar);\n });\n};\nexport var unsubscribeFromStream = function unsubscribeFromStream(subscribeUID) {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = channelToSubscription.keys()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var channelString = _step.value;\n var subscriptionItem = channelToSubscription.get(channelString);\n var handlerIndex = subscriptionItem.handlers.findIndex(function (handler) {\n return handler.id === subscribeUID;\n });\n\n if (handlerIndex !== -1) {\n subscriptionItem.handlers.splice(handlerIndex, 1);\n\n if (subscriptionItem.handlers.length === 0) {\n channelToSubscription.delete(channelString);\n break;\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n};","import _toConsumableArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray\";\nimport _regeneratorRuntime from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _asyncToGenerator from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _classCallCheck from \"/var/lib/jenkins/jobs/workspace/tradingblock_prod/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport { getLocalDateFromTimezone, logger, isToday } from '@tradingblock/api';\nimport dayjs from 'dayjs';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport _ from 'lodash';\nimport { DEFAULT_TRADINGSESSION } from './constants';\nimport { handleUpdates, subscribeOnStream, unsubscribeFromStream } from './streaming';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\ndayjs.extend(customParseFormat);\ndayjs.extend(LocalizedFormat);\ndayjs.extend(utc);\nvar AllSupportedResolutions = ['1', '5', '15', '30', '60', '1D'];\nvar lastBarsCache = new Map();\nvar symbolInfoCache = new Map();\nvar listenerGUIDCache = new Map();\nexport var TradingViewDataFeed = function TradingViewDataFeed(api) {\n var _this = this;\n\n _classCallCheck(this, TradingViewDataFeed);\n\n this.onReady = function (callback) {\n var config = {\n supports_marks: false,\n supports_timescale_marks: false,\n supports_time: true,\n supported_resolutions: AllSupportedResolutions\n };\n setTimeout(function () {\n return callback(config);\n });\n };\n\n this.searchSymbols =\n /*#__PURE__*/\n function () {\n var _ref = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee(userInput, exchange, symbolType, onResult) {\n var query, symbols, newSymbols, data;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n query = userInput ? userInput.trim() : '';\n _context.next = 3;\n return _this.api.getSymbols({\n query: query\n }, 200);\n\n case 3:\n symbols = _context.sent;\n newSymbols = symbols.filter(function (symbol) {\n var isExchangeValid = exchange === '' || symbol.PrimaryExchange === exchange;\n var isFullSymbolContainsInput = symbol.Symbol.indexOf(query.toUpperCase()) !== -1;\n return isExchangeValid && isFullSymbolContainsInput;\n });\n data = newSymbols.map(function (symbol) {\n return {\n symbol: symbol.Symbol,\n full_name: symbol.Symbol,\n description: symbol.Description,\n exchange: symbol.PrimaryExchange,\n ticker: symbol.Symbol,\n type: symbol.Type\n };\n });\n onResult(data);\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function (_x, _x2, _x3, _x4) {\n return _ref.apply(this, arguments);\n };\n }();\n\n this.resolveSymbol = function (symbol, onResolve, onError) {\n var _$split = _.split(symbol, ':'),\n _$split2 = _slicedToArray(_$split, 2),\n exchange = _$split2[0],\n symbolName = _$split2[1]; // fallback to symbol passed in if no value after colon\n\n\n var symbolValue = symbolName || symbol;\n\n _this.api.getSymbols({\n query: symbolValue\n }, 1).then(function (symbolRes) {\n var match = _.find(symbolRes, function (s) {\n return s.Symbol && symbolValue && s.Symbol.trim().toLowerCase() === symbolValue.trim().toLowerCase();\n });\n\n var symbol = match || _.first(symbolRes);\n\n if (symbol) {\n _this.symbol = symbol.Symbol;\n var res = {\n format: 'price',\n name: symbol.Symbol,\n full_name: symbol.Symbol,\n description: symbol.Description,\n ticker: symbol.Symbol,\n exchange: symbol.PrimaryExchange,\n listed_exchange: symbol.PrimaryExchange,\n supported_resolutions: AllSupportedResolutions,\n type: symbol.Type,\n session: DEFAULT_TRADINGSESSION,\n minmov: 1,\n minmove2: 0,\n pricescale: 100,\n timezone: 'America/New_York',\n has_intraday: true,\n has_daily: true,\n has_weekly_and_monthly: false,\n currency_code: '$',\n data_status: 'streaming'\n };\n onResolve(res);\n } else {\n onError('couldnt find symbol');\n }\n });\n };\n\n this.getPeriodForResolution = function (res) {\n if (['1', '5', '15', '30'].includes(res)) {\n return \"M\".concat(res);\n } else if (res === '60') {\n return 'H1';\n } else {\n return 'Day';\n }\n };\n\n this.getBars =\n /*#__PURE__*/\n function () {\n var _ref2 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee2(symbolInfo, resolution, periodParams, onResult, onError) {\n var rangeStartDate, rangeEndDate, firstDataRequest, period, starttime, endtime, maxDate, minDate, data, bars;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n rangeStartDate = periodParams.from, rangeEndDate = periodParams.to, firstDataRequest = periodParams.firstDataRequest;\n period = _this.getPeriodForResolution(resolution);\n starttime = getLocalDateFromTimezone(dayjs.unix(rangeStartDate)).toDate();\n endtime = getLocalDateFromTimezone(dayjs.unix(rangeEndDate)).toDate();\n\n if (endtime.valueOf() > _this.api.marketClose.valueOf()) {\n endtime = _this.api.marketClose;\n }\n\n maxDate = undefined;\n minDate = undefined;\n _context2.prev = 7;\n _context2.next = 10;\n return _this.api.getBars({\n symbol: symbolInfo.name,\n period: period,\n starttime: starttime,\n endtime: endtime\n });\n\n case 10:\n data = _context2.sent;\n\n // nextTime should be equal to 2 weeks before the first bar in the response\n if (data.length === 0) {\n onResult([], {\n noData: true,\n nextTime: rangeStartDate - 1209600\n });\n }\n\n bars = [];\n data.forEach(function (bar) {\n var bdate;\n var dateString = bar.D.toString();\n\n if (isToday(bar.D)) {\n bdate = getLocalDateFromTimezone(dayjs(dateString));\n } else {\n bdate = getLocalDateFromTimezone(dayjs(bar.D));\n }\n\n maxDate = maxDate === undefined ? bdate : bdate > maxDate ? bdate : maxDate;\n minDate = minDate === undefined || bdate < minDate ? bdate : minDate;\n bars = [].concat(_toConsumableArray(bars), [{\n time: bdate.utc().valueOf(),\n low: bar.L,\n high: bar.H,\n open: bar.O,\n close: bar.C,\n volume: bar.V\n }]);\n _this.bars = bars;\n });\n\n if (firstDataRequest) {\n // set lastBarsCache equal to the last bar in the response that is within the range\n if (bars[bars.length - 1] !== undefined) {\n lastBarsCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), bars[bars.length - 1]);\n }\n }\n\n onResult(bars, {\n noData: false\n });\n _context2.next = 21;\n break;\n\n case 18:\n _context2.prev = 18;\n _context2.t0 = _context2[\"catch\"](7);\n onError(_context2.t0);\n\n case 21:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, null, [[7, 18]]);\n }));\n\n return function (_x5, _x6, _x7, _x8, _x9) {\n return _ref2.apply(this, arguments);\n };\n }();\n\n this.subscribeBars =\n /*#__PURE__*/\n function () {\n var _ref3 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee3(symbolInfo, resolution, onTick, listenerGuid, onResetCacheNeededCallback) {\n return _regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _this.subscribeBarsCallback = onTick;\n _this.resetCacheCallback = onResetCacheNeededCallback;\n _this.resolution = resolution;\n _this.listenToQuotes = true;\n symbolInfoCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), symbolInfo);\n listenerGUIDCache.set(\"\".concat(symbolInfo.name, \"~\").concat(resolution), listenerGuid);\n\n _this.symbols.push(symbolInfo.name);\n\n subscribeOnStream(symbolInfo, resolution, onTick, listenerGuid, onResetCacheNeededCallback, lastBarsCache.get(\"\".concat(symbolInfo.name, \"~\").concat(resolution)));\n\n case 8:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n return function (_x10, _x11, _x12, _x13, _x14) {\n return _ref3.apply(this, arguments);\n };\n }();\n\n this.unsubscribeBars = function (listenerGuid) {\n _this.listenToQuotes = false;\n _this.bars = [];\n unsubscribeFromStream(listenerGuid);\n };\n\n this.isNextBar = function (latestExistingDate, nextDate, resolution) {\n return latestExistingDate.unix() < nextDate.unix();\n };\n\n this.resetCache = function () {\n if (_this.resetCacheCallback) {\n _this.resetCacheCallback();\n }\n };\n\n this.onQuoteChange =\n /*#__PURE__*/\n function () {\n var _ref4 = _asyncToGenerator(\n /*#__PURE__*/\n _regeneratorRuntime.mark(function _callee4(quotes, interval, isHeikinAshi) {\n var quotesArray;\n return _regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n // convert quotes object to array\n quotesArray = Object.keys(quotes).map(function (key) {\n return quotes[key];\n });\n quotesArray.forEach(function (quote) {\n if (!quote || !quote.Symbol) {\n return;\n }\n\n var symbol = quote.Symbol;\n var symbolInfo = symbolInfoCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n var listenerGuid = listenerGUIDCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n var lastBarsCacheValue = lastBarsCache.get(\"\".concat(symbol, \"~\").concat(_this.resolution));\n\n if (!symbolInfo || !listenerGuid || !lastBarsCacheValue) {\n console.log('ignoring quote %O', {\n quote: quote,\n symbolInfo: symbolInfo,\n listenerGuid: listenerGuid,\n lastBarsCacheValue: lastBarsCacheValue,\n resolution: _this.resolution,\n symbolInfoCache: symbolInfoCache,\n listenerGUIDCache: listenerGUIDCache,\n lastBarsCache: lastBarsCache\n });\n console.debug(\"ignoring \".concat(symbol, \"-\").concat(_this.resolution, \" because either bars havent loaded yet or symbolInfoCache is missing\"));\n return;\n }\n\n handleUpdates(symbolInfo, interval, _this.subscribeBarsCallback, listenerGuid, _this.resetCacheCallback, quote, isHeikinAshi);\n });\n\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n\n return function (_x15, _x16, _x17) {\n return _ref4.apply(this, arguments);\n };\n }();\n\n this.api = api;\n this.bars = [];\n this.listenToQuotes = false;\n this.log = logger('DataFeed');\n this.emptyResponses = 0;\n this.symbols = [];\n}; // calculateHistoryDepth?(resolution: ResolutionString, resolutionBack: ResolutionBackValues, intervalBack: number): HistoryDepth | undefined;\n// getMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void;\n// getTimescaleMarks?(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback, resolution: ResolutionString): void;\n\n/**\n * This function is called if configuration flag supports_time is set to true when chart needs to know the server time.\n * The charting library expects callback to be called once.\n * The time is provided without milliseconds. Example: 1445324591. It is used to display Countdown on the price scale.\n */\n// getServerTime?(callback: ServerTimeCallback): void;\n// subscribeDepth?(symbolInfo: LibrarySymbolInfo, callback: DomeCallback): string;\n// unsubscribeDepth?(subscriberUID: string): void;","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo, useRef, useEffect, useLayoutEffect, useCallback } from 'react';\nimport _ from 'lodash';\nimport { AssetSymbol } from '@tradingblock/types';\nimport { TradingViewChartOptions, createTradingViewChart } from '@tradingblock/tradingview';\nimport { IChartingLibraryWidget, TimeFrameItem } from '@tradingblock/tradingview/dist/charting_library';\nimport { useBlockActions, useBlockData } from '../../components/blocks/BlockState';\nimport { useLastTradePricesOrUndefined } from '../../hooks/useFeedQuote';\nimport { Colors } from '../../constants';\nimport { PriceChartState } from './state/PriceChartState';\nimport { PriceChartSettingsKey, usePriceChartSettings } from './state/PriceChartSettings';\nimport { useTradingviewDatafeed } from './hooks/useTradingviewDatafeed';\nimport { getDrawingOverrides } from './options/drawingOverrides';\nimport { getOverrides } from './options/overrides';\nimport { timeZone } from '@tradingblock/api';\nimport { EntityInfo, ResolutionString } from '@tradingblock/tradingview/src/charting_library';\nimport { useDispatch } from 'react-redux';\nimport { QuoteDataActions } from '../../data/global/actions';\nimport { useQuoteActions } from '../../hooks/useQuoteData';\nimport { isMarketOpenSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { Loading } from '@tradingblock/components';\n\ninterface PriceChartGraphProps {\n symbol: AssetSymbol;\n containerId: string;\n}\n\nconst DefaultInterval = '5' as ResolutionString;\n\n// chartType enum\nexport enum ChartType {\n Bar = 0,\n Candle = 1,\n Line = 2,\n Area = 3,\n Renko = 4,\n Kagi = 5,\n PnF = 6,\n LineBreak = 7,\n HeikinAshi = 8,\n HollowCandle = 9,\n Baseline = 10,\n HiLo = 12,\n Column = 13,\n}\n\n// function to determine if chart type is heikin ashi\nconst isHeikinAshi = (chartType: ChartType) => {\n return chartType === ChartType.HeikinAshi;\n};\n\nexport const PriceChartGraph: React.FC = props => {\n const { isLoaded, savedData, interval, showLeftToolbar, chartType, symbol } = useBlockData();\n const { setField: set } = useBlockActions();\n\n const saveChartData = useCallback((key: PriceChartSettingsKey, data: any) => {\n set(key, data, { persist: true });\n }, []);\n const blockSymbol = symbol && symbol.rootSymbol;\n\n // don't render chart until block data has loaded\n if (!savedData && !isLoaded) {\n console.error('not rendering chart because data doesnt exist OR isLoaded is false', { isLoaded, savedData });\n return null;\n }\n\n return (\n \n );\n};\n\ninterface PriceChartGraphComponentProps\n extends PriceChartGraphProps,\n Pick {\n saveData: (key: PriceChartSettingsKey, data: any) => void;\n blockSymbol?: string;\n}\n\nconst PriceChartGraphComponent: React.FC = props => {\n const { containerId, savedData, interval, showLeftToolbar, chartType, saveData, blockSymbol } = props;\n const { symbol, provider } = props.symbol;\n\n const chartRef = useRef();\n const datafeed = useTradingviewDatafeed();\n const { debug } = usePriceChartSettings();\n const symbols = _.uniq(datafeed.symbols);\n const dispatch = useDispatch();\n const { addQuote } = useQuoteActions();\n const [chartTypeValue, setChartTypeValue] = React.useState(chartType || ChartType.Candle);\n const [chartInterval, setChartInterval] = React.useState(interval || DefaultInterval);\n const state = useStateSelector(state => state);\n const [studies, setStudies] = React.useState([]);\n\n useEffect(() => {\n if (symbols.length > 0) {\n dispatch(QuoteDataActions.requestQuote({ symbol: symbols }));\n addQuote(symbols);\n }\n }, [datafeed, symbols.length, dispatch]);\n\n const visibilityChartSync = function() {\n if (document.visibilityState === 'visible') {\n if (chartRef && chartRef.current) {\n if (datafeed && chartRef && chartRef.current !== undefined) {\n datafeed.resetCache();\n if (!chartRef || chartRef.current === undefined) {\n return;\n } else if (chartRef && chartRef.current !== undefined && chartRef.current.activeChart() !== undefined) {\n chartRef.current.activeChart().resetData();\n }\n }\n }\n }\n };\n\n useEffect(() => {\n document.addEventListener('visibilitychange', visibilityChartSync);\n return () => {\n document.removeEventListener('visibilitychange', visibilityChartSync);\n };\n }, [chartRef, datafeed]);\n\n const timeFrames: TimeFrameItem[] = [\n { text: '3m', resolution: '60' as ResolutionString, description: '3 Months' },\n { text: '1m', resolution: '30' as ResolutionString, description: '1 Month' },\n { text: '5d', resolution: '5' as ResolutionString, description: '5 Days' },\n { text: '1d', resolution: '1' as ResolutionString, description: '1 Day' },\n ];\n\n const graphSettings = useMemo(() => {\n return {\n locale: 'en',\n libraryPath: '/charting_library/',\n // chartsStorageUrl: 'https://saveload.tradingview.com',\n // chartsStorageApiVersion: '1.1',\n clientId: 'tradingview.com',\n userId: 'public_user_id',\n disabled_features: [\n 'use_localstorage_for_settings',\n 'adaptive_logo',\n 'header_screenshot',\n 'header_symbol_search',\n 'widget_logo',\n 'go_to_date',\n 'popup_hints',\n ],\n create_volume_indicator_by_default: false,\n enabled_features: ['move_logo_to_main_pane', 'hide_left_toolbar_by_default'],\n fullscreen: false,\n studiesOverrides: {},\n datafeed,\n debug: false,\n autosize: true,\n symbol: `${provider}:${symbol}`,\n savedData,\n // autoSaveDelay: 1000,\n interval: (interval as ResolutionString) || (DefaultInterval as ResolutionString),\n timezone: timeZone,\n theme: 'Dark',\n style: '1',\n custom_css_url: `${process.env.PUBLIC_URL}/styles/tradingview.css`,\n enable_publishing: false,\n allow_symbol_change: false,\n hide_top_toolbar: true,\n save_image: false,\n containerId,\n container: 'tv_chart_container',\n overrides: {\n ...getOverrides({ primaryColor: Colors.primary }),\n ...getDrawingOverrides(),\n },\n time_frames: timeFrames,\n };\n // note: chartData and symbol have been left out of deps purposefully, to avoid regenerating chart\n }, [datafeed, debug, containerId]);\n\n // useLayoutEffect(() => {\n // if (chartRef.current) {\n // chartRef.current.changeTheme(theme);\n // }\n // }, [theme]);\n\n useLayoutEffect(() => {\n if (chartRef && chartRef.current) {\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.hideAllDrawingTools().setValue(!showLeftToolbar);\n }\n });\n }\n }, [showLeftToolbar]);\n\n // sync chart type on change\n useEffect(() => {\n if (chartType && chartType !== chartTypeValue && chartRef && chartRef.current !== undefined) {\n chartRef.current.onChartReady(() => {\n visibilityChartSync();\n setChartTypeValue(chartType);\n });\n }\n }, [chartType, chartTypeValue, chartRef.current]);\n\n const [disableChart, setDisableChart] = React.useState(false);\n\n // sync chart interval on change\n useEffect(() => {\n const chart = document.querySelectorAll('.block-price-chart');\n if (interval && chartRef && chartRef.current !== undefined && chart.length > 0) {\n chartRef.current.onChartReady(() => {\n visibilityChartSync();\n setChartInterval(interval);\n setDisableChart(true);\n // disable clicking on chart element for 3 seconds\n chart.forEach((element: any) => {\n element.classList.add('chart-disabled');\n const timer = setTimeout(() => {\n setDisableChart(false);\n element.classList.remove('chart-disabled');\n }, 3000);\n\n return () => clearTimeout(timer);\n });\n });\n }\n }, [interval, chartInterval, chartRef.current, chartTypeValue, chartType, chartRef]);\n\n useEffect(() => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined && symbol && provider !== undefined) {\n chartRef.current.setSymbol(`${provider}:${symbol}`, (interval as any) || DefaultInterval, () => {});\n }\n if (chartRef && chartRef.current !== undefined && _.includes(symbol, '$')) {\n chartRef.current.setSymbol(`${provider}:${symbol}`, (interval as any) || DefaultInterval, () => {});\n }\n });\n }\n }, [symbol, provider, interval]);\n\n useEffect(() => {\n if (chartRef && chartRef.current === undefined) {\n console.warn('PriceChartGraph :: creating', symbol, 'chart with data ', graphSettings.savedData);\n chartRef.current = createTradingViewChart(graphSettings, saveData);\n }\n\n return () => {\n if (chartRef && chartRef.current !== undefined) {\n chartRef.current.remove();\n chartRef.current = undefined;\n }\n };\n }, [graphSettings, saveData, chartRef]);\n\n useEffect(() => {\n // if charting symbol and block symbol are different, then we need to update the chart to utilize the block symbol\n if (chartRef && chartRef.current !== undefined && blockSymbol !== undefined && blockSymbol !== symbol) {\n console.warn('PriceChartGraph :: Block/Chart Symbol Desync - updating chart symbol to ', blockSymbol);\n chartRef.current.onChartReady(() => {\n if (chartRef && chartRef.current !== undefined && blockSymbol !== undefined) {\n chartRef.current.setSymbol(`${provider}:${blockSymbol}`, (interval as any) || DefaultInterval, () => {});\n }\n });\n }\n }, [blockSymbol, interval, provider, symbol]);\n\n // Fetch last trade prices of all symbols involved in the chart and update the datafeed\n // If the chart is a heikin ashi chart, TimeReceived will not include seconds only hour and minutes\n const lastPrices = useLastTradePricesOrUndefined(symbols, isHeikinAshi(chartType || 1), interval || DefaultInterval);\n\n const intervalCheck = interval === ('1D' as ResolutionString);\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\n // if day interval return true\n // otherwise afterhours the current day's bar will not build\n // TODO: need to determine if a bar has been built for after hours 1D interval, if so return false otherwise we will return all quotes received after hours\n const marketIsOpen = intervalCheck ? intervalCheck : marketOpen;\n\n useEffect(() => {\n if (lastPrices && marketIsOpen) {\n datafeed.onQuoteChange(lastPrices, interval, isHeikinAshi(chartType || 1));\n }\n }, [lastPrices, datafeed, interval, marketIsOpen]);\n\n // Need to save the chart data whenever a study is created or removed from the chart\n // previously, these updates were delayed by up to 5 seconds, which was causing some confusion as to why removed studies were still showing up\n // or why newly created studies were not showing up after a refresh or page navigation\n useEffect(() => {\n // We're checking if `chartRef` is defined and if it points to a current chart.\n if (chartRef && chartRef.current !== undefined) {\n // If `chartRef.current` is defined, we then wait for the chart to be ready.\n chartRef.current.onChartReady(() => {\n // Once the chart is ready, we check again if `chartRef.current` is still defined.\n // This check is necessary because the reference may have changed while we were waiting for the chart to be ready.\n if (chartRef && chartRef.current !== undefined && chartRef.current.activeChart() !== undefined) {\n // If `chartRef.current` is still defined, we retrieve all studies from the active chart.\n const currentStudies = chartRef.current.activeChart().getAllStudies();\n // We then store these studies in the state.\n setStudies(currentStudies);\n // We compare the new list of studies with the old list.\n // If they are not equal, it means the studies have changed.\n if (!_.isEqual(currentStudies, studies)) {\n // If the studies have changed, we update the state with the new studies,\n // and then we save the chart's current state.\n setStudies(currentStudies);\n chartRef.current.save((savedData: any) => {\n // The `save` method's callback receives the chart's saved state,\n // which we then store in our mongo database.\n saveData('savedData', savedData);\n });\n }\n }\n });\n }\n }, [chartRef.current, lastPrices]); // The effect depends on `chartRef.current` and `lastPrices`.\n\n return (\n <>\n
    \n
    \n {/* */}\n
    \n
    \n
    \n
    {disableChart && }
    \n \n );\n};\n","export var DEFAULT_TRADINGSESSION = '0930-1600';","import dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { DataFeedDataProvider } from '@tradingblock/tradingview';\nimport { ApiFactory, GetBarsOptions, Bar, ITradingBlockApi } from '@tradingblock/api';\nimport { stringOrQuery } from '@tradingblock/types';\nimport { MarketCloseTime } from '../../utilities/date';\n\nexport type ApiType = ReturnType;\n\ninterface PeriodBar {\n from: Date;\n to: Date;\n bars: Bar[];\n}\ninterface PeriodBars {\n [period: string]: PeriodBar;\n}\ninterface CachedBars {\n [symbol: string]: PeriodBars;\n}\nconst getError = (reason: string) => ({ reason });\n\nconst getAllBarsForPeriod = async (\n api: ITradingBlockApi,\n symbol: string,\n options: Omit, 'symbol'>\n) => {\n const { starttime, endtime, period, bars } = options;\n const start = dayjs(starttime || new Date());\n const end = endtime ? dayjs(endtime) : undefined;\n\n const tryGetBars = (from: dayjs.Dayjs, to: dayjs.Dayjs) => {\n return api.getBars({\n symbol,\n period,\n bars,\n starttime: from.toDate(),\n endtime: to.toDate(),\n });\n };\n const { payload } = await tryGetBars(start, end || dayjs(new Date()));\n let barResult: Bar[] = payload ? [...payload] : [];\n // let minDateValue = _(barResult)\n // .map(b => dayjs(b.D).valueOf())\n // .min();\n // let requestCount = 1;\n // while (minDateValue !== undefined && minDateValue > start.valueOf() && requestCount < 5) {\n // requestCount++;\n // const currEnd = dayjs(minDateValue);\n // const moreBarResults = await tryGetBars(start.add(-1, 'day'), currEnd);\n // barResult.concat(moreBarResults.Payload);\n // minDateValue = _(barResult)\n // .map(b => dayjs(b.D).valueOf())\n // .min();\n // }\n return barResult;\n};\n\nexport class CachedApi implements DataFeedDataProvider {\n private api: ITradingBlockApi;\n private cache: CachedBars;\n public constructor(tbapi: ITradingBlockApi) {\n this.api = tbapi;\n if (!tbapi) {\n throw getError('API cannot be undefined');\n }\n this.cache = {};\n }\n public marketClose = MarketCloseTime().toDate();\n public getSymbols = (query: stringOrQuery, limit: number = 10) => this.api.getSymbols(query, limit);\n public getBars = async (options: GetBarsOptions) => {\n const { symbol, starttime, endtime, period } = options;\n const symbolVal = _.isString(symbol) ? symbol : _.first(symbol);\n if (symbolVal === undefined) {\n throw getError('symbol must be set');\n } else if (typeof symbol !== 'string') {\n console.warn('symbol isnt a string', symbol);\n }\n const cacheKey = `${symbolVal}-${period}`;\n const symbolData = this.cache[cacheKey];\n\n const start = dayjs(starttime || new Date());\n if (starttime === undefined) {\n throw getError('starttime must be set');\n }\n const end = dayjs(endtime || new Date());\n const symbolPeriodData = symbolData ? _.get(symbolData, period, undefined) : undefined;\n if (symbolPeriodData && dayjs(symbolPeriodData.from).valueOf() <= start.valueOf()) {\n const cachedResults =\n starttime === undefined\n ? symbolPeriodData.bars\n : _.filter(symbolPeriodData.bars, b => dayjs(b.D) >= start && dayjs(b.D) <= end);\n if (cachedResults !== undefined && cachedResults.length !== 0) {\n console.info(\n `cached data for ${symbol} - ${period} exists, but refetching anyway. CachedData: `,\n cachedResults\n );\n //return cachedResults;\n }\n }\n const bars = await getAllBarsForPeriod(this.api, symbolVal, options).then(barResults => {\n return _.map(barResults, b => {\n return {\n ...b,\n //open\n O: _.round(b.O, 2),\n //high\n H: _.round(b.H, 2),\n //low\n L: _.round(b.L, 2),\n //close\n C: _.round(b.C, 2),\n //volume\n V: _.round(b.V, 2),\n };\n });\n });\n this.cache = {\n ...this.cache,\n [cacheKey]: {\n ...symbolData,\n [period]: {\n from: start.toDate(),\n to: end.toDate(),\n bars,\n },\n },\n };\n return bars;\n };\n public getQuotes = async (symbols: string[]) => {\n const { payload } = await this.api.quotes.getChartingFeed(symbols);\n return payload;\n };\n}\n","import { useMemo } from 'react';\nimport { TradingViewDataFeed } from '@tradingblock/tradingview';\nimport { CachedApi } from '../../../data/charts/CachedApi';\nimport { useApi } from '../../../context/Api';\n\nexport const useTradingviewDatafeed = () => {\n const api = useApi();\n\n const feed = useMemo(() => new TradingViewDataFeed(new CachedApi(api)), [api]);\n return feed;\n};\n","export interface OverrideValues {\n primaryColor: string;\n}\nexport const getOverrides = ({ primaryColor }: OverrideValues) => {\n // const LINESTYLE_SOLID = 0;\n // const LINESTYLE_DOTTED = 1;\n // const LINESTYLE_DASHED = 2;\n // const LINESTYLE_LARGE_DASHED = 3;\n return {\n 'paneProperties.background': primaryColor,\n 'paneProperties.backgroundType': 'solid',\n 'paneProperties.axisProperties.alignLabels': true,\n // 'paneProperties.axisProperties.indexedTo100': 'false',\n // supported values: large, medium, small, tiny\n // volumePaneSize: 'large',\n // fonts available in text editors (i.e., in `Text` drawing tool properties dialog)\n // editorFontsList: ['Verdana', 'Courier New', 'Times New Roman', 'Arial']\n // paneProperties.background: \"#ffffff\"\n // paneProperties.vertGridProperties.color: \"#E6E6E6\"\n // paneProperties.vertGridProperties.style: LINESTYLE_SOLID\n // paneProperties.horzGridProperties.color: \"#E6E6E6\"\n // paneProperties.horzGridProperties.style: LINESTYLE_SOLID\n // paneProperties.crossHairProperties.color: \"#989898\"\n // paneProperties.crossHairProperties.width: 1\n // paneProperties.crossHairProperties.style: LINESTYLE_DASHED\n // // Margins (percentage). Used for auto scaling.\n // paneProperties.topMargin: 10\n // paneProperties.bottomMargin: 8\n // paneProperties.axisProperties.autoScale: true\n // paneProperties.axisProperties.lockScale: false\n // paneProperties.axisProperties.percentage: false\n // paneProperties.axisProperties.indexedTo100: false\n // paneProperties.axisProperties.log: false\n\n // paneProperties.axisProperties.isInverted: false\n // paneProperties.legendProperties.showStudyArguments: true\n // paneProperties.legendProperties.showStudyTitles: true\n // paneProperties.legendProperties.showStudyValues: true\n // paneProperties.legendProperties.showSeriesTitle: true\n // paneProperties.legendProperties.showSeriesOHLC: true\n // paneProperties.legendProperties.showLegend: true\n // paneProperties.legendProperties.showBarChange: true\n // paneProperties.legendProperties.showOnlyPriceSource: true\n // scalesProperties.backgroundColor : \"#ffffff\"\n // scalesProperties.fontSize: 11\n // scalesProperties.lineColor : \"#555\"\n // scalesProperties.textColor : \"#555\"\n // scalesProperties.scaleSeriesOnly : false\n // scalesProperties.showSeriesLastValue: true\n // scalesProperties.showSeriesPrevCloseValue: false\n // scalesProperties.showStudyLastValue: false\n // scalesProperties.showStudyPlotLabels: false\n // scalesProperties.showSymbolLabels: false\n // timeScale.rightOffset: 5\n // timezone: \"Etc/UTC\" # See supported timezones list (at Symbology#timezone page) for available values\n // // Series style. See the supported values below\n // // Bars = 0\n // // Candles = 1\n // // Line = 2\n // // Area = 3\n // // Heikin Ashi = 8\n // // Hollow Candles = 9\n // // Renko = 4\n // // Kagi = 5\n // // Point&Figure = 6\n // // Line Break = 7\n // // Baseline = 10\n // mainSeriesProperties.style: 1\n // mainSeriesProperties.showCountdown: true\n // mainSeriesProperties.visible:true\n // mainSeriesProperties.showPriceLine: true\n // mainSeriesProperties.priceLineWidth: 1\n // mainSeriesProperties.priceLineColor: ''\n // mainSeriesProperties.showPrevClosePriceLine: false\n // mainSeriesProperties.prevClosePriceLineWidth: 1\n // mainSeriesProperties.prevClosePriceLineColor: 'rgba( 85, 85, 85, 1)'\n // mainSeriesProperties.lockScale: false\n // mainSeriesProperties.minTick: \"default\"\n // mainSeriesProperties.priceAxisProperties.autoScale:true (see #749)\n // mainSeriesProperties.priceAxisProperties.autoScaleDisabled:false (see #749)\n // mainSeriesProperties.priceAxisProperties.percentage:false\n // mainSeriesProperties.priceAxisProperties.percentageDisabled:false\n // mainSeriesProperties.priceAxisProperties.log:false\n // mainSeriesProperties.priceAxisProperties.logDisabled:false\n // // possible values are: description, ticker.\n // mainSeriesProperties.statusViewStyle.symbolTextSource: 'description'\n // symbolWatermarkProperties.color : \"rgba(0, 0, 0, 0.00)\"\n // // Different chart types defaults\n // // Candles styles\n // mainSeriesProperties.candleStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.drawWick: true\n // mainSeriesProperties.candleStyle.drawBorder: true\n // mainSeriesProperties.candleStyle.borderColor: \"#378658\"\n // mainSeriesProperties.candleStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.wickUpColor: \"#26a69a\"\n // mainSeriesProperties.candleStyle.wickDownColor: \"#ef5350\"\n // mainSeriesProperties.candleStyle.barColorsOnPrevClose: false\n // // Hollow Candles styles\n // mainSeriesProperties.hollowCandleStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.hollowCandleStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.hollowCandleStyle.drawWick: true\n // mainSeriesProperties.hollowCandleStyle.drawBorder: true\n // mainSeriesProperties.hollowCandleStyle.borderColor: \"#378658\"\n // mainSeriesProperties.hollowCandleStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.hollowCandleStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.hollowCandleStyle.wickColor: \"#737375\"\n // // Heikin Ashi styles\n // mainSeriesProperties.haStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.haStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.haStyle.drawWick: true\n // mainSeriesProperties.haStyle.drawBorder: true\n // mainSeriesProperties.haStyle.borderColor: \"#378658\"\n // mainSeriesProperties.haStyle.borderUpColor: \"#26a69a\"\n // mainSeriesProperties.haStyle.borderDownColor: \"#ef5350\"\n // mainSeriesProperties.haStyle.wickColor: \"#737375\"\n // mainSeriesProperties.haStyle.barColorsOnPrevClose: false\n // // Bar styles\n // mainSeriesProperties.barStyle.upColor: \"#26a69a\"\n // mainSeriesProperties.barStyle.downColor: \"#ef5350\"\n // mainSeriesProperties.barStyle.barColorsOnPrevClose: false\n // mainSeriesProperties.barStyle.dontDrawOpen: false\n // // Line styles\n // mainSeriesProperties.lineStyle.color: \"#2196f3\"\n // mainSeriesProperties.lineStyle.linestyle: LINESTYLE_SOLID\n // mainSeriesProperties.lineStyle.linewidth: 3\n // mainSeriesProperties.lineStyle.priceSource: \"close\"\n // // Area styles\n // mainSeriesProperties.areaStyle.color1: \"#2196f3\"\n // mainSeriesProperties.areaStyle.color2: \"#2196f3\"\n // mainSeriesProperties.areaStyle.linecolor: \"#2196f3\"\n // mainSeriesProperties.areaStyle.linestyle: LINESTYLE_SOLID\n // mainSeriesProperties.areaStyle.linewidth: 1\n // mainSeriesProperties.areaStyle.priceSource: \"close\"\n // // Baseline styles\n // mainSeriesProperties.baselineStyle.baselineColor: \"rgba( 117, 134, 150, 1)\"\n // mainSeriesProperties.baselineStyle.topFillColor1: \"rgba( 38, 166, 154, 0.05)\"\n // mainSeriesProperties.baselineStyle.topFillColor2: \"rgba( 38, 166, 154, 0.05)\"\n // mainSeriesProperties.baselineStyle.bottomFillColor1: \"rgba( 239, 83, 80, 0.05)\"\n // mainSeriesProperties.baselineStyle.bottomFillColor2: \"rgba( 239, 83, 80, 0.05)\"\n // mainSeriesProperties.baselineStyle.topLineColor: \"rgba( 38, 166, 154, 1)\"\n // mainSeriesProperties.baselineStyle.bottomLineColor: \"rgba( 239, 83, 80, 1)\"\n // mainSeriesProperties.baselineStyle.topLineWidth: 3\n // mainSeriesProperties.baselineStyle.bottomLineWidth: 3\n // mainSeriesProperties.baselineStyle.priceSource: \"close\"\n // mainSeriesProperties.baselineStyle.transparency: 50\n // mainSeriesProperties.baselineStyle.baseLevelPercentage: 50\n // // Hi-Lo style\n // mainSeriesProperties.hiloStyle.color: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.showBorders: true\n // mainSeriesProperties.hiloStyle.borderColor: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.showLabels: true\n // mainSeriesProperties.hiloStyle.labelColor: \"#2196f3\"\n // mainSeriesProperties.hiloStyle.fontFamily: 'Trebuchet MS'\n // mainSeriesProperties.hiloStyle.fontSize: 7\n };\n};\n","// LINESTYLE_SOLID = 0;\n// LINESTYLE_DOTTED = 1;\n// LINESTYLE_DASHED = 2;\n// LINESTYLE_LARGE_DASHED = 3;\n\n// LINEEND_NORMAL = 0;\n// LINEEND_ARROW = 1;\n// LINEEND_CIRCLE = 2;\n\n// BARS_MODE = 0;\n// LINE_MODE = 1;\n// OPENCLOSE_MODE = 2;\n// LINEOPEN_MODE = 3;\n// LINEHIGH_MODE = 4;\n// LINELOW_MODE = 5;\n// LINEHL2_MODE = 6;\n\n// PITCHFORK_STYLE_ORIGINAL = 0;\n// PITCHFORK_STYLE_SCHIFF = 1;\n// PITCHFORK_STYLE_SCHIFF2 = 2;\n// PITCHFORK_STYLE_INSIDE = 3;\n\n// LEVELS_TYPE_A = {\n// color: color,\n// visible: visible\n// };\n\n// LEVELS_TYPE_B = {\n// coeff: coeff,\n// color: color,\n// visible: visible\n// };\n\n// LEVELS_TYPE_C = {\n// coeff: coeff,\n// color: color,\n// visible: visible,\n// linestyle: linestyle,\n// linewidth: linewidth\n// };\n\n// LEVELS_TYPE_D = {\n// color: color,\n// width: width,\n// visible: visible\n// };\n\n// LEVELS_TYPE_E = {\n// color: color,\n// visible: visible,\n// width: width,\n// x: x,\n// y: y\n// };\n\n// LEVELS_TYPE_F = {\n// coeff1: coeff1,\n// coeff2: coeff2,\n// color: color,\n// visible: visible,\n// linestyle: linestyle,\n// linewidth: linewidth\n// };\n\nexport const getDrawingOverrides = () => {\n return {\n // linetoolicon: {\n // singleChartOnly: true,\n // color: 'rgba( 61, 133, 198, 1)',\n // snapTo45Degrees:true,\n // size: 40,\n // icon: 0x263A,\n // angle: Math.PI * 0.5,\n // scale: 1.0\n // },\n // linetoolbezierquadro: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetoolbeziercubic: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetooltrendline: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // snapTo45Degrees:true,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolinfoline: {\n // clonable: true,\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: CanvasEx.LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LineEnd.Normal,\n // rightEnd: LineEnd.Normal,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold: false,\n // italic: false,\n // snapTo45Degrees: true,\n // alwaysShowStats: true,\n // showMiddlePoint: false,\n // showPriceRange: true,\n // showBarsRange: true,\n // showDateTimeRange: true,\n // showDistance: true,\n // showAngle: true,\n // statsPosition: 1,\n // },\n // linetooltimecycles: {\n // linecolor: 'rgba(21, 153, 128, 1)',\n // linewidth: 1.0,\n // fillBackground: true,\n // backgroundColor: 'rgba(106, 168, 79, 0.5)',\n // transparency: 50,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetoolsineline: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetooltrendangle: {\n // singleChartOnly: true,\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // snapTo45Degrees:true,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:true,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // extendRight: false,\n // extendLeft: false\n // },\n // linetooldisjointangle: {\n // linecolor: 'rgba( 18, 159, 92, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 106, 168, 79, 0.5)',\n // transparency: 50,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 18, 159, 92, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // showPrices: false,\n // showPriceRange: false,\n // showDateTimeRange: false,\n // showBarsRange: false\n // },\n // linetoolflatbottom: {\n // linecolor: 'rgba( 73, 133, 231, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 73, 133, 231, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // showPrices: false,\n // showPriceRange: false,\n // showDateTimeRange: false,\n // showBarsRange: false\n // },\n // linetoolfibspiral: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetooldaterange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolpricerange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetooldateandpricerange: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // labelBackgroundTransparency: 30,\n // fillBackground: true,\n // backgroundColor: 'rgba( 186, 218, 255, 0.4)',\n // backgroundTransparency: 60,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolriskrewardshort: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba(255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 88, 88, 88, 1)',\n // labelBackgroundTransparency: 0,\n // fillBackground: true,\n // stopBackground: 'rgba( 255, 0, 0, 0.2)',\n // profitBackground: 'rgba( 0, 160, 0, 0.2)',\n // stopBackgroundTransparency: 80,\n // profitBackgroundTransparency: 80,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolriskrewardlong: {\n // linecolor: 'rgba( 88, 88, 88, 1)',\n // linewidth: 1.0,\n // font: 'Verdana',\n // textcolor: 'rgba(255, 255, 255, 1)',\n // fontsize: 12,\n // fillLabelBackground: true,\n // labelBackgroundColor: 'rgba( 88, 88, 88, 1)',\n // labelBackgroundTransparency: 0,\n // fillBackground: true,\n // stopBackground: 'rgba( 255, 0, 0, 0.2)',\n // profitBackground: 'rgba( 0, 160, 0, 0.2)',\n // stopBackgroundTransparency: 80,\n // profitBackgroundTransparency: 80,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)'\n // },\n // linetoolarrow: {\n // linecolor: 'rgba( 111, 136, 198, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_ARROW,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolray: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: true,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolextended: {\n // linecolor: 'rgba( 21, 153, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: true,\n // extendRight: true,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL,\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // alwaysShowStats: false,\n // showPriceRange: false,\n // showBarsRange: false,\n // showDateTimeRange: false,\n // showDistance:false,\n // showAngle: false\n // },\n // linetoolhorzline: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showPrice: true,\n // showLabel: false,\n // text: '',\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // horzLabelsAlign: 'center',\n // vertLabelsAlign: 'top'\n // },\n // linetoolhorzray: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showPrice: true,\n // showLabel: false,\n // text: '',\n // font: 'Verdana',\n // textcolor: 'rgba( 21, 119, 96, 1)',\n // fontsize: 12,\n // bold:false,\n // italic:false,\n // horzLabelsAlign: 'center',\n // vertLabelsAlign: 'top'\n // },\n // linetoolvertline: {\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showTime: true\n // },\n // linetoolcrossline: {\n // clonable: true,\n // linecolor: 'rgba(6, 160, 227, 1)',\n // linewidth: 1.0,\n // linestyle: CanvasEx.LINESTYLE_SOLID,\n // showPrice: true,\n // showTime: true\n // },\n // linetoolcirclelines: {\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // linecolor: 'rgba( 128, 204, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // linetoolfibtimezone: {\n // horzLabelsAlign: 'right',\n // vertLabelsAlign: 'bottom',\n // baselinecolor: 'rgba( 128, 128, 128, 1)',\n // linecolor: 'rgba( 0, 85, 219, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // showLabels: true,\n // font: 'Verdana',\n // fillBackground:false,\n // transparency:80,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetooltext: {\n // color: 'rgba( 102, 123, 139, 1)',\n // text: $.t('Text'),\n // font: 'Verdana',\n // fontsize: 20,\n // fillBackground: false,\n // backgroundColor: 'rgba( 91, 133, 191, 0.9)',\n // backgroundTransparency: 70,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)',\n // bold:false,\n // italic:false,\n // locked: false,\n // fixedSize: true,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetooltextabsolute: {\n // singleChartOnly: true,\n // color: 'rgba( 102, 123, 139, 1)',\n // text: $.t('Text'),\n // font: 'Verdana',\n // fontsize: 20,\n // fillBackground: false,\n // backgroundColor: 'rgba( 155, 190, 213, 0.3)',\n // backgroundTransparency: 70,\n // drawBorder: false,\n // borderColor: 'rgba( 102, 123, 139, 1)',\n // bold: false,\n // italic: false,\n // locked: true,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetoolballoon: {\n // color: 'rgba( 102, 123, 139, 1)',\n // backgroundColor: 'rgba( 255, 254, 206, 0.7)',\n // borderColor: 'rgba( 140, 140, 140, 1)',\n // fontWeight: 'bold',\n // fontsize: 12,\n // font: 'Arial',\n // transparency: 30,\n // text: $.t('Comment')\n // },\n // linetoolbrush: {\n // linecolor: 'rgba( 53, 53, 53, 1)',\n // linewidth: 2.0,\n // smooth:5,\n // fillBackground: false,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // leftEnd: LINEEND_NORMAL,\n // rightEnd: LINEEND_NORMAL\n // },\n // linetoolpolyline: {\n // linecolor: 'rgba( 53, 53, 53, 1)',\n // linewidth: 2.0,\n // linestyle: LINESTYLE_SOLID,\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // transparency: 50,\n // filled: false\n // },\n // linetoolarrowmark: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkleft: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkup: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkright: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolarrowmarkdown: {\n // color: 'rgba( 120, 120, 120, 1)',\n // text: '',\n // fontsize: 20,\n // font: 'Verdana'\n // },\n // linetoolflagmark: {\n // color: 'rgba( 255, 0, 0, 1)'\n // },\n // linetoolnote: {\n // markerColor: 'rgba( 46, 102, 255, 1)',\n // textColor: 'rgba( 0, 0, 0, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 1)',\n // backgroundTransparency: 0,\n // text: 'Text',\n // font: 'Arial',\n // fontSize: 12,\n // bold: false,\n // italic: false,\n // locked: false,\n // fixedSize: true\n // },\n // linetoolnoteabsolute: {\n // singleChartOnly: true,\n // markerColor: 'rgba( 46, 102, 255, 1)',\n // textColor: 'rgba( 0, 0, 0, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 1)',\n // backgroundTransparency: 0,\n // text: 'Text',\n // font: 'Arial',\n // fontSize: 12,\n // bold: false,\n // italic: false,\n // locked: true,\n // fixedSize: true\n // },\n // linetoolthumbup: {\n // color: 'rgba( 0, 128, 0, 1)'\n // },\n // linetoolthumbdown: {\n // color: 'rgba( 255, 0, 0, 1)'\n // },\n // linetoolpricelabel: {\n // color: 'rgba( 102, 123, 139, 1)',\n // backgroundColor: 'rgba( 255, 255, 255, 0.7)',\n // borderColor: 'rgba( 140, 140, 140, 1)',\n // fontWeight: 'bold',\n // fontsize: 11,\n // font: 'Arial',\n // transparency: 30\n // },\n // linetoolrectangle: {\n // color: 'rgba( 21, 56, 153, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 21, 56, 153, 0.5)',\n // linewidth: 1.0,\n // snapTo45Degrees:true,\n // transparency: 50\n // },\n // linetoolrotatedrectangle: {\n // color: 'rgba( 152, 0, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 142, 124, 195, 0.5)',\n // transparency: 50,\n // linewidth: 1.0,\n // snapTo45Degrees:true\n // },\n // linetoolellipse: {\n // color: 'rgba( 153, 153, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 153, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolarc: {\n // color: 'rgba( 153, 153, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 153, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolprediction: {\n // singleChartOnly: true,\n // linecolor: 'rgba( 28, 115, 219, 1)',\n // linewidth: 2.0,\n // sourceBackColor: 'rgba( 241, 241, 241, 1)',\n // sourceTextColor: 'rgba( 110, 110, 110, 1)',\n // sourceStrokeColor: 'rgba( 110, 110, 110, 1)',\n // targetStrokeColor:'rgba( 47, 168, 255, 1)',\n // targetBackColor:'rgba( 11, 111, 222, 1)',\n // targetTextColor: 'rgba( 255, 255, 255, 1)',\n // successBackground: 'rgba( 54, 160, 42, 0.9)',\n // successTextColor: 'rgba( 255, 255, 255, 1)',\n // failureBackground: 'rgba( 231, 69, 69, 0.5)',\n // failureTextColor: 'rgba( 255, 255, 255, 1)',\n // intermediateBackColor: 'rgba( 234, 210, 137, 1)',\n // intermediateTextColor: 'rgba( 109, 77, 34, 1)',\n // transparency: 10,\n // centersColor: 'rgba( 32, 32, 32, 1)'\n // },\n // linetooltriangle: {\n // color: 'rgba( 153, 21, 21, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 153, 21, 21, 0.5)',\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolcallout: {\n // color: 'rgba( 255, 255, 255, 1)',\n // backgroundColor: 'rgba( 153, 21, 21, 0.5)',\n // transparency: 50,\n // linewidth: 2.0,\n // fontsize: 12,\n // font:'Verdana',\n // text: 'Text',\n // bordercolor: 'rgba( 153, 21, 21, 1)',\n // bold: false,\n // italic: false,\n // wordWrap: false,\n // wordWrapWidth: 400\n // },\n // linetoolparallelchannel: {\n // linecolor: 'rgba( 119, 52, 153, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // extendLeft: false,\n // extendRight: false,\n // fillBackground: true,\n // backgroundColor: 'rgba( 180, 167, 214, 0.5)',\n // transparency: 50,\n // showMidline: false,\n // midlinecolor: 'rgba( 119, 52, 153, 1)',\n // midlinewidth: 1.0,\n // midlinestyle: LINESTYLE_DASHED\n // },\n // linetoolelliottimpulse: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 61, 133, 198, 1)',\n // linewidth: 1\n // },\n // linetoolelliotttriangle: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 255, 152, 0, 1)',\n // linewidth: 1\n // },\n // linetoolelliotttriplecombo: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 106, 168, 79, 1)',\n // linewidth: 1\n // },\n // linetoolelliottcorrection: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 61, 133, 198, 1)',\n // linewidth: 1\n // },\n // linetoolelliottdoublecombo: {\n // degree: 7,\n // showWave:true,\n // color: 'rgba( 106, 168, 79, 1)',\n // linewidth: 1\n // },\n // linetoolbarspattern: {\n // singleChartOnly: true,\n // color:'rgba( 80, 145, 204, 1)',\n // mode:BARS_MODE,\n // mirrored:false,\n // flipped:false\n // },\n // linetoolghostfeed: {\n // singleChartOnly: true,\n // averageHL: 20,\n // variance: 50,\n // candleStyle: {\n // upColor: '#6ba583',\n // downColor: '#d75442',\n // drawWick: true,\n // drawBorder: true,\n // borderColor: '#378658',\n // borderUpColor: '#225437',\n // borderDownColor: '#5b1a13',\n // wickColor: '#737375'\n // },\n // transparency: 50\n // },\n // linetoolpitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_ORIGINAL,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolpitchfan: {\n // fillBackground:true,\n // transparency:80,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolgannfan: {\n // showLabels: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // level1-9: LEVELS_TYPE_F\n // },\n // linetoolganncomplex: {\n // fillBackground:false,\n // arcsBackground: {\n // fillBackground: true,\n // transparency: 80\n // },\n // levels: [/* 6 LEVELS_TYPE_D */],\n // fanlines: [/* 11 LEVELS_TYPE_E */],\n // arcs: [/* 11 LEVELS_TYPE_E */]\n // },\n // linetoolgannsquare: {\n // color: 'rgba( 21, 56, 153, 0.8)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // font: 'Verdana',\n // showTopLabels:true,\n // showBottomLabels:true,\n // showLeftLabels:true,\n // showRightLabels:true,\n // fillHorzBackground:true,\n // horzTransparency:80,\n // fillVertBackground:true,\n // vertTransparency:80,\n // hlevel1-7: LEVELS_TYPE_B,\n // vlevel1-7: LEVELS_TYPE_B\n // },\n // linetoolfibspeedresistancefan: {\n // fillBackground:true,\n // transparency:80,\n // grid: {\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // visible:true\n // },\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID,\n // font: 'Verdana',\n // showTopLabels:true,\n // showBottomLabels:true,\n // showLeftLabels:true,\n // showRightLabels:true,\n // snapTo45Degrees:true,\n // hlevel1-7: LEVELS_TYPE_B,\n // vlevel1-7: LEVELS_TYPE_B\n // },\n // linetoolfibretracement: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLines:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // reverse:false,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetoolfibchannel: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLeft:false,\n // extendRight:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // coeffsAsPercents:false,\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetoolprojection: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // color1: 'rgba( 0, 128, 0, 0.2)',\n // color2: 'rgba( 255, 0, 0, 0.2)',\n // linewidth: 1.0,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linestyle: LINESTYLE_SOLID\n // },\n // level1: LEVELS_TYPE_C\n // },\n // linetool5pointspattern: {\n // color: 'rgba( 204, 40, 149, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 204, 40, 149, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolcypherpattern: {\n // color: '#CC2895',\n // textcolor: '#FFFFFF',\n // fillBackground: true,\n // backgroundColor: '#CC2895',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetooltrianglepattern: {\n // color: 'rgba( 149, 40, 255, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 149, 40, 204, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 1.0\n // },\n // linetoolabcd: {\n // color: 'rgba( 0, 155, 0, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // linewidth: 2.0\n // },\n // linetoolthreedrivers: {\n // color: 'rgba( 149, 40, 255, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 149, 40, 204, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 2.0\n // },\n // linetoolheadandshoulders: {\n // color: 'rgba( 69, 104, 47, 1)',\n // textcolor: 'rgba( 255, 255, 255, 1)',\n // fillBackground: true,\n // backgroundColor: 'rgba( 69, 168, 47, 0.5)',\n // font: 'Verdana',\n // fontsize:12,\n // bold:false,\n // italic:false,\n // transparency: 50,\n // linewidth: 2.0\n // },\n // linetoolfibwedge: {\n // singleChartOnly: true,\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolfibcircles: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // snapTo45Degrees:true,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolfibspeedresistancearcs: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // fullCircles: false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetooltrendbasedfibextension: {\n // showCoeffs: true,\n // showPrices: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // extendLines:false,\n // horzLabelsAlign: 'left',\n // vertLabelsAlign: 'middle',\n // reverse:false,\n // coeffsAsPercents:false,\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // levelsStyle: {\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level1-24: LEVELS_TYPE_B\n // },\n // linetooltrendbasedfibtime: {\n // showCoeffs: true,\n // font: 'Verdana',\n // fillBackground:true,\n // transparency:80,\n // horzLabelsAlign: 'right',\n // vertLabelsAlign: 'bottom',\n // trendline: {\n // visible: true,\n // color: 'rgba( 128, 128, 128, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_DASHED\n // },\n // level1-11: LEVELS_TYPE_C\n // },\n // linetoolschiffpitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_SCHIFF,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolschiffpitchfork2: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_SCHIFF2,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolinsidepitchfork: {\n // fillBackground:true,\n // transparency:80,\n // style:PITCHFORK_STYLE_INSIDE,\n // median: {\n // visible: true,\n // color: 'rgba( 165, 0, 0, 1)',\n // linewidth: 1.0,\n // linestyle: LINESTYLE_SOLID\n // },\n // level0-8: LEVELS_TYPE_C\n // },\n // linetoolvisibilities: {\n // intervalsVisibilities: {\n // seconds:true,\n // secondsFrom:1,\n // secondsTo:59,\n // minutes:true,\n // minutesFrom:1,\n // minutesTo:59,\n // hours:true,\n // hoursFrom:1,\n // hoursTo:24,\n // days:true,\n // daysFrom:1,\n // daysTo:366,\n // weeks:true,\n // months:true\n // }\n // }\n };\n};\n","import React, { useMemo } from 'react';\nimport { AssetSymbol } from '@tradingblock/types';\nimport { useBlockState } from '../../components/blocks/BlockState';\nimport { useBboxDimensions, useBlockSize } from '../shared/useBboxDimensions';\nimport { useGroupState } from '../useGroupState';\nimport { PriceChartGraph } from './PriceChartGraph';\n\nexport const PriceChartContent: React.FC<{ symbol?: AssetSymbol }> = ({ symbol }) => {\n const blockId = useBlockState('blockId');\n const [dimensions, tableElement] = useBboxDimensions();\n const chartHeight = useBlockSize(dimensions, 'height', [100, 200, 500]);\n const chartwidth = useBlockSize(dimensions, 'width', [100, 200, 500]);\n const containerId = useMemo(() => `tradingview_59d9e#${blockId}`, [blockId]);\n\n //const [symbol] = useGroupState('symbol');\n\n return (\n <>\n
    \n
    \n {symbol && (\n \n )}\n
    \n
    \n \n );\n};\n","import React, { useMemo, useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { BlockBody } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useApi } from '../../context/Api';\nimport { useAuthenticationSelector } from '../../data/global/dataSelectors';\nimport { Block } from '../../components/blocks/Block';\nimport { useBlockData, useBlockActions } from '../../components/blocks/BlockState';\nimport { getBlockProps } from '../../utilities/block';\nimport { useQuoteSymbolSubscription } from '../../hooks/useQuoteData';\nimport { Config } from '../../config';\nimport { PriceChartState } from './state/PriceChartState';\nimport { PriceChartSelectors as selectors } from './state/PriceChartSelectors';\nimport { DefaultPriceChartSettings, PriceChartSettingsFields, usePriceChartSettings } from './state/PriceChartSettings';\nimport { usePriceChartGroupHandler } from './hooks/usePriceChartGroupHandler';\nimport { PriceChartHeader } from './PriceChartHeader';\nimport { PriceChartContent } from './PriceChartContent';\n\nexport const PriceChartBlock: React.FC<{}> = () => {\n const state = useBlockData();\n\n const symbol = selectors.symbol(state);\n const { setField: set } = useBlockActions();\n const { isAuthenticated } = useAuthenticationSelector();\n const [loadedSymbol, setLoadedSymbol] = useState();\n const api = useApi();\n usePriceChartGroupHandler();\n const symbolTicker = useMemo(() => (symbol ? symbol.symbol : undefined), [symbol]);\n // useQuoteValue();\n useEffect(() => {\n const getQuote = async (symbolName: string) => {\n set('isFetching', true);\n const [quoteRequest] = api.quotes.get(symbolName);\n const res = await quoteRequest;\n if (res && res.payload && res.payload[0]) {\n const firstQuote = res.payload[0];\n set('quote', firstQuote);\n }\n set('isFetching', false);\n };\n if (symbolTicker && isAuthenticated && loadedSymbol !== symbolTicker) {\n setLoadedSymbol(symbolTicker);\n getQuote(symbolTicker);\n }\n }, [symbolTicker, set, isAuthenticated, api, loadedSymbol]);\n\n // only settings available are for dev/debug\n const settings = usePriceChartSettings();\n const priceSettings = !Config.isProduction ? { ...DefaultPriceChartSettings, ...settings } : undefined;\n useQuoteSymbolSubscription((blockState: PriceChartState) =>\n blockState.symbol ? blockState.symbol.symbol : undefined\n );\n\n return (\n set('symbol', sym, { persist: true })} />\n )}\n >\n \n \n \n \n );\n};\n","import { useEffect, useCallback } from 'react';\nimport { AssetSymbol } from '@tradingblock/types';\nimport { useBlockData, useBlockActions, useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { GenericBlockActionTypes } from '../../../components/blocks/state/BlockState';\nimport { GroupManager } from '../../../context/GroupManager';\nimport { useBlockGroupField, useBlockGroupInfo, useGroupStateHandler } from '../../useGroupState';\nimport { PriceChartState } from '../state/PriceChartState';\nimport { PriceChartActions } from '../state/PriceChartActions';\n\nexport const usePriceChartGroupHandler = () => {\n const { blockId, groupId } = useBlockGroupInfo();\n const dispatch = useBlockActionDispatch>();\n const { symbol } = useBlockData();\n const { setField: set } = useBlockActions();\n\n const setSymbol = useCallback((sym: AssetSymbol) => set('symbol', sym, { persist: true }), [set]);\n\n useEffect(() => {\n if (groupId) {\n GroupManager.attach({ blockId, groupId, dispatch }, true);\n if (symbol) {\n setSymbol(symbol);\n }\n }\n\n return () => {\n GroupManager.detach(blockId);\n };\n }, [groupId]);\n\n const onSymbolChange = useCallback(\n (incomingSymbol: AssetSymbol | undefined) => {\n if (incomingSymbol && (!symbol || symbol.symbol !== incomingSymbol.symbol)) {\n setSymbol(incomingSymbol);\n }\n },\n [symbol, setSymbol]\n );\n\n useGroupStateHandler('symbol', onSymbolChange, { fireOnGroupChange: true });\n};\n","import { useCallback, useEffect } from 'react';\nimport _ from 'lodash';\nimport { useStateSelector, blocksSelectors } from './../../data/global/dataSelectors';\nimport { IBlockDataState } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useBlockState, useBlockSelector } from './BlockState';\nimport { DataState } from '../../data/global/state';\nimport { areArraysEqual } from '../../utilities/data';\n\nexport function useBlockSubscriptions() {\n const { dispatcher } = useDispatcher();\n\n const blockId = useBlockState('blockId');\n\n const setQuotes = useCallback(\n (symbols: string | string[]) => {\n const symbolValues = _.isArray(symbols) ? symbols : [symbols];\n dispatcher.block.setQuoteSubscription(blockId, symbolValues);\n },\n [blockId, dispatcher]\n );\n return {\n setQuotes,\n };\n}\n\nexport function useQuoteListener(symbols: string | string[] | undefined) {\n const blockId = useBlockState('blockId');\n const { setQuotes } = useBlockSubscriptions();\n const blockSymbols = useStateSelector(s => blocksSelectors.getBlockQuoteSubscriptions(s, blockId));\n useEffect(() => {\n const symbolVals = symbols ? (_.isArray(symbols) ? symbols : [symbols]) : undefined;\n if (symbolVals && !areArraysEqual(symbolVals, blockSymbols)) {\n setQuotes(symbolVals);\n }\n }, [symbols, blockSymbols, setQuotes]);\n return { local: symbols, global: blockSymbols };\n}\n\nexport function useBlockQuoteListener(selector: (state: T) => string | string[] | undefined) {\n const symbols = useBlockSelector(selector);\n return useQuoteListener(symbols);\n}\n\nexport function useGlobalStateQuoteListener(selector: (state: DataState) => string | string[] | undefined) {\n const symbols = useStateSelector(selector);\n return useQuoteListener(symbols);\n}\n","import { createSelector } from 'reselect';\r\nimport _ from 'lodash';\r\nimport { AssetType, PositionPerformanceInfo } from '@tradingblock/types';\r\nimport { PositionDTO } from '@tradingblock/api';\r\nimport { DataState, PositionPerformanceWithPnL } from '../state';\r\nimport { SymbolPositions, SymbolPosition } from '../../../types';\r\nimport { QuoteDataToPartialQuote, aggregatedSymbolPosition } from './transforms';\r\nimport { positionToInfo } from '../../../utilities/position';\r\n\r\nconst positionRootSelector = (state: DataState) => state.positions.positions;\r\n/**\r\n * Returns a list of current positions corresponding to the given symbol.\r\n */\r\nexport const getPositionsFromSymbol = createSelector(\r\n (state: DataState) => positionRootSelector(state),\r\n (positions: PositionDTO[]) => {\r\n return _.reduce(\r\n positions,\r\n (acc: SymbolPositions, pos: PositionDTO): SymbolPositions => {\r\n // To make sure that options and common stock fall under the same category, group it buy the underlying symbol,\r\n // otherwise, if grouped by symbol, the symbols wont match (options have an id in the symbol name while common stock don't)\r\n const underlyingSymbol = pos.UnderlyingSymbol;\r\n const DEFAULTVALUE = { shares: 0, value: 0, positions: [], symbol: underlyingSymbol, options: 0 };\r\n let symbolValue = acc[underlyingSymbol] || DEFAULTVALUE;\r\n // If the accumulated object doesn't have a symbol, assign it default values.\r\n // if (!acc.hasOwnProperty(sym)) Object.assign({ [sym]: [pos], symbol: sym }, acc);\r\n // If the AssetType is common stock\r\n const isEquity = pos.AssetType === AssetType.Equity;\r\n // Aggregate the shares and values of the stock\r\n return {\r\n ...acc,\r\n [underlyingSymbol]: {\r\n ...symbolValue,\r\n shares: isEquity ? symbolValue.shares + pos.OpenQuantity : symbolValue.shares,\r\n options: isEquity ? symbolValue.options : symbolValue.options + pos.OpenQuantity,\r\n // value: symbolValue.value + pos.OpenPrice,\r\n positions: [...symbolValue.positions, pos],\r\n },\r\n };\r\n },\r\n {}\r\n );\r\n }\r\n);\r\nconst uniquePositionQuotesSelector = createSelector(\r\n positionRootSelector,\r\n positions => {\r\n return _(positions)\r\n .map(p => [p.Symbol, p.UnderlyingSymbol])\r\n .flatMap()\r\n .uniq()\r\n .value();\r\n }\r\n);\r\nexport const getPositionQuotes = createSelector(\r\n (s: DataState) => s.quotes.quoteMetadata.data,\r\n uniquePositionQuotesSelector,\r\n (quotes, symbols) => {\r\n const quotesData = _.filter(quotes, (v, k: string) => symbols.includes(k));\r\n return QuoteDataToPartialQuote(quotesData);\r\n }\r\n);\r\n\r\nexport const getAllPositionInfo = createSelector(\r\n getPositionsFromSymbol,\r\n getPositionQuotes,\r\n (s: DataState) => s.performance.positions,\r\n (positions, quotes, positionperformances) => {\r\n const positionsWithPerformance = _.reduce(\r\n positions,\r\n (res, symPosition: SymbolPosition, key: string) => {\r\n const commission = _.reduce(\r\n symPosition.positions,\r\n (acc, p) => {\r\n return acc + p.Commission;\r\n },\r\n 0\r\n );\r\n const posIds = _.map(symPosition.positions, sp => sp.PositionId);\r\n const aggregatedPnl = _.reduce(\r\n positionperformances,\r\n (acc, pp, key) => {\r\n if (!posIds.includes(_.toString(key))) {\r\n return acc;\r\n }\r\n\r\n return {\r\n pnl: acc.pnl + pp.pnl,\r\n };\r\n },\r\n { pnl: 0 }\r\n );\r\n const curr: PositionPerformanceWithPnL = {\r\n ...aggregatedSymbolPosition(symPosition.positions, quotes, key),\r\n pnl: aggregatedPnl.pnl,\r\n commission,\r\n };\r\n return {\r\n ...res,\r\n [key]: curr,\r\n };\r\n },\r\n {}\r\n );\r\n return _.map(positionsWithPerformance, (v, k) => {\r\n return positionToInfo(v);\r\n });\r\n }\r\n);\r\nexport const getPositionValue = createSelector(\r\n getAllPositionInfo,\r\n pos => {\r\n return _(pos)\r\n .map((p: PositionPerformanceInfo) => p.value)\r\n .sum();\r\n }\r\n);\r\n\r\nexport const initialPositionsAreLoading = createSelector(\r\n (state: DataState) => state.positions.positions.length,\r\n (state: DataState) => state.positions.isFetching,\r\n (state: DataState) => state.positions.loaded,\r\n (positionCount, isFetching, loaded) => {\r\n const positionsExist = positionCount > 0 ? true : loaded ? false : undefined;\r\n return {\r\n positions: { existing: positionsExist, isFetching },\r\n loading: positionsExist === undefined || isFetching === true,\r\n };\r\n }\r\n);\r\n\r\nexport const getPositionsForSymbol = createSelector(\r\n [getPositionsFromSymbol, (state: DataState, symbol: string) => symbol],\r\n (symbPos: SymbolPositions, symbol: string) => symbPos[symbol]\r\n);\r\nexport const PositionSelectors = {\r\n loaded: createSelector(\r\n (state: DataState) => state.positions.loaded,\r\n loaded => loaded\r\n ),\r\n initialPositionsAreLoading,\r\n};\r\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport { createSelector } from 'reselect';\nimport { ProfitLossInfo } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const PerformanceSelectors = {\n todayTradingPnl: createSelector(\n (s: DataState) => s.performance.bySymbol,\n perfState =>\n _(perfState)\n .values()\n .map(v => v.trading)\n .sum() || 0\n ),\n aggregatePositionPerformances: createCachedSelector(\n (s: DataState, positionIds: string[]) => _.filter(s.performance.positions, (v, k) => positionIds.includes(k)),\n perfs => {\n return perfs.reduce(\n (acc, s) => {\n return {\n ...acc,\n pnl: acc.pnl + s.pnl,\n };\n },\n { pnl: 0 }\n );\n }\n )((s: DataState, positionIds: string[]) => `agg-pos-perf-${positionIds.sort().join(',')}`),\n bySymbol: createCachedSelector(\n (state: DataState, symbol: string) => state.performance.bySymbol[symbol],\n (state: DataState, symbol: string) => symbol,\n (pnl, symbol) => {\n const val = pnl || { symbol };\n return val;\n }\n )((state: DataState, symbol: string) => `pnl-${symbol}`),\n totals: {\n all: createSelector(\n (state: DataState) => state.performance.totals,\n totals => {\n return totals.all;\n }\n ),\n tradedToday: createSelector(\n (state: DataState) => state.performance.totals,\n totals => totals.tradedToday\n ),\n },\n};\n","import createCachedSelector from 're-reselect';\nimport { DataState } from '../state';\nimport _ from 'lodash';\nimport { accountIdValue, OrderSymbols, PositionSymbolsSelector } from '../dataSelectors';\nimport { OrderAction, OrderActionDirection } from '@tradingblock/types';\nimport { getBestPrice, FilterOrderByDate, isSymbolExpired } from '@tradingblock/api';\n\nimport { createSelector } from 'reselect';\nimport dayjs from 'dayjs';\nimport { calculateEstCommission } from '../../../blocks/Order/components/Preview/EstCommissionPreview';\n\nexport const getAccountPnL = createCachedSelector(\n (state: DataState) => state.account.pnl,\n pnl => {\n const m = _.flatMap(pnl, pnlRange => pnlRange.pnlHistory);\n\n return m;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nexport const isFetchingAccountPnL = createCachedSelector(\n (state: DataState) => state.account.pnl,\n pnl => {\n // This sums up the truth values of each pnl.isFetching\n // If every truth value in range is false it returns false,\n // Otherwise it returns true\n return _.reduce(\n pnl || [],\n (prev, curr) => {\n return { ...curr, isFetching: prev.isFetching || curr.isFetching };\n },\n { isFetching: false }\n ).isFetching;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nexport const isPnLLoaded = createCachedSelector(\n (state: DataState) => state,\n (_state: DataState) => _state,\n state => {\n return state.account.pnl !== undefined;\n }\n)(\n // re-reselect keySelector\n accountIdValue\n);\n\nconst timeframeOrdersSelector = (state: DataState, options: { startDate: Date; endDate: Date }) => {\n const orders = state.account.orders || [];\n const subAccountId = state.account.subAccountId;\n const filtered = subAccountId ? orders.filter(o => o.SubaccountId && o.SubaccountId === subAccountId) : orders;\n return FilterOrderByDate(filtered, options.startDate, options.endDate);\n};\n\nexport interface PnLBySymbol {\n symbol: string;\n lastTradePrice: number;\n bestTradePrice: number;\n previousSettle: number;\n positionOnOpen: number;\n quantityBought: number;\n quantitySold: number;\n netQuantityChange: number;\n currentPosition: number;\n avgBoughtPrice: number;\n avgSoldPrice: number;\n buyPrices: number[];\n sellPrices: number[];\n tradingPnL: number;\n positionPnL: number;\n totalPnL: number;\n estCommission?: number;\n}\n\nconst orderSymbolsOrUndefined = (s: DataState) =>\n s.account.isFetchingOrders || s.account.orders === undefined\n ? []\n : s.account.orders.flatMap(o => o.Legs.flatMap(ol => ol.Symbol));\n\n// const allOrderSymbols = (s: DataState) => (s.account.orders || []).flatMap(o => o.Legs.flatMap(ol => ol.Symbol));\n// const allPositionSymbols = (s: DataState) => s.positions.positions.flatMap(p => p.Symbol);\nexport const pnlSelectors = {\n pnlDataLoaded: createSelector(\n (s: DataState) =>\n s.account.isFetchingOrders === false && s.positions.isFetching === false && s.positions.loaded === true,\n OrderSymbols,\n PositionSymbolsSelector,\n (state: DataState) => state.quotes.quoteMetadata.data,\n (ordersAndPositionsLoaded, ordSymbols, positionSymbols, quotes) => {\n if (ordersAndPositionsLoaded === false) {\n return { isLoaded: false, reason: 'ordersAndPositionsLoaded=false' };\n }\n const symbolsWithoutQuotes = _(ordSymbols)\n .union(positionSymbols)\n .uniq()\n .filter(s => !isSymbolExpired(s))\n .filter(s => {\n const quote = _.find(quotes, q => q.Symbol === s);\n return quote === undefined;\n })\n .value();\n const symbolsWithoutQuotesExist = symbolsWithoutQuotes.length !== 0;\n if (symbolsWithoutQuotesExist) {\n // console.debug('symbols without quotes exist', symbolsWithoutQuotes);\n return { isLoaded: false, reason: 'symbolsWithoutQuotesExist=true', symbolsWithoutQuotes };\n }\n return { isLoaded: true };\n }\n ),\n trading: createCachedSelector(\n (state: DataState, options: { startDate: Date; endDate: Date }) => timeframeOrdersSelector(state, options),\n (state: DataState) => state.quotes.quoteMetadata.data,\n (state: DataState) => state.positions.info,\n (state: DataState) => state.performance,\n (state: DataState) => state.account.accountDetails,\n (orders, quotes, positions, performance, accountDetails): PnLBySymbol[] =>\n _.flatMap(orders, o => o.Legs.map(leg => ({ ...leg, parentOrder: o }))).reduce(\n (acc: PnLBySymbol[], currLeg): PnLBySymbol[] => {\n console.log({ orders, parentOrder: currLeg.parentOrder });\n const isBuy = currLeg.Action === OrderAction.Buy;\n const isSingleLegOrder = currLeg.parentOrder.Legs.length === 1;\n // custom share orders will not have a legFillQuantity and will instead have the quantity filled on the order\n // need to handle this case\n const fillQuantity =\n currLeg.LegFillQuantity != null\n ? currLeg.LegFillQuantity\n : currLeg.parentOrder.FillQuantity != null && isSingleLegOrder\n ? currLeg.parentOrder.FillQuantity\n : 0;\n\n if (fillQuantity === 0) {\n return acc;\n }\n const quote = quotes[currLeg.Symbol] || undefined;\n const { AskPrice, BidPrice, LastOrClosePrice, Multiplier } = quote || {\n AskPrice: 0,\n BidPrice: 0,\n LastOrClosePrice: 0,\n Multiplier: 1,\n };\n const closePrice =\n quote && quote.ClosePrice ? quote.ClosePrice : quote && quote.LastOrClosePrice ? quote.LastOrClosePrice : 0;\n\n const existing = _.find(acc, v => v.symbol === currLeg.Symbol) || {\n buyPrices: [],\n sellPrices: [],\n avgBoughtPrice: 0,\n avgSoldPrice: 0,\n symbol: currLeg.Symbol,\n positionOnOpen: 0,\n quantityBought: 0,\n quantitySold: 0,\n currentPosition: 0,\n estCommission: undefined,\n };\n\n const quantityBought = isBuy ? existing.quantityBought + fillQuantity : existing.quantityBought;\n const quantitySold = !isBuy ? existing.quantitySold + Math.abs(fillQuantity) : existing.quantitySold;\n const netQuantityChange = quantityBought - quantitySold;\n const currentPositionValue = positions[currLeg.Symbol];\n let currentPosition = 0;\n if (currentPositionValue) {\n currentPosition = currentPositionValue.quantity;\n }\n\n const bestPrice = getBestPrice({\n last: LastOrClosePrice || 0,\n ask: AskPrice,\n bid: BidPrice,\n defaultValue: 'avgBidAsk',\n });\n const others = _.filter(acc, v => v.symbol !== currLeg.Symbol);\n const positionOnOpen = currentPosition - netQuantityChange;\n const buyPrices: number[] = isBuy\n ? [...existing.buyPrices, ..._.times(fillQuantity, () => currLeg.AverageLegFillPrice || 0)]\n : existing.buyPrices;\n const sellPrices: number[] = !isBuy\n ? [...existing.sellPrices, ..._.times(fillQuantity, () => currLeg.AverageLegFillPrice || 0)]\n : existing.sellPrices;\n const avgBoughtPrice = quantityBought > 0 ? _.sum(buyPrices) / quantityBought : 0;\n const avgSoldPrice = quantitySold > 0 ? _.sum(sellPrices) / quantitySold : 0;\n\n const tradingPnL =\n (quantityBought * (bestPrice - avgBoughtPrice) - quantitySold * (bestPrice - avgSoldPrice)) * Multiplier;\n const positionPnL = positionOnOpen * (bestPrice - closePrice) * Multiplier;\n const totalPnL = tradingPnL + positionPnL;\n\n let commission = undefined;\n if (accountDetails !== undefined) {\n commission = calculateEstCommission(\n [\n {\n assetType: currLeg.AssetType,\n quantity: Math.abs(netQuantityChange),\n },\n ],\n accountDetails.commissions\n );\n }\n\n if (existing.estCommission !== undefined) {\n if (commission === undefined) {\n console.warn(\n `Could not calculate commission for position ${currLeg.Symbol} but have previous commission`\n );\n } else {\n commission = existing.estCommission + commission;\n }\n }\n\n return [\n ...others,\n {\n buyPrices,\n sellPrices,\n symbol: currLeg.Symbol,\n bestTradePrice: bestPrice,\n lastTradePrice: quote.LastTradePrice,\n previousSettle: closePrice,\n positionOnOpen,\n quantityBought,\n quantitySold,\n netQuantityChange,\n currentPosition,\n avgBoughtPrice,\n avgSoldPrice,\n tradingPnL,\n positionPnL,\n totalPnL,\n estCommission: commission,\n },\n ];\n },\n []\n )\n )((state: DataState, options: { startDate: Date; endDate: Date }) => {\n const start = dayjs(options.startDate).format('l');\n const end = dayjs(options.endDate).format('l');\n return `pnl-trading-${start}-${end}`;\n }),\n};\n\nexport const isSummaryDataLoaded = createSelector(\n (state: DataState) => state.orders.isFetching,\n (state: DataState) => state.positions.isFetching,\n (ordersFetching, positionsFetching) => {\n return ordersFetching || positionsFetching ? false : true;\n }\n);\n","import React, { FC } from 'react';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue, DirectionalOptions } from '../../components/basic/Directional';\n\nexport const DirectionalCurrency: FC<{ value: number; options?: DirectionalOptions }> = ({ value, options }) => {\n const currencyLabel = value === 0 ? '$' : value >= 0 ? '+$' : '-$';\n return (\n \n \n {currencyLabel}\n \n \n \n );\n};\n","import React, { useMemo, FC, useContext, useEffect } from 'react';\nimport _ from 'lodash';\nimport { BasicCheckboxInput, BlockDragHandle, getBlockTypeName, Loading } from '@tradingblock/components';\nimport { AssetType, BlockType } from '@tradingblock/types';\nimport { dashboardIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { getAllPositionInfo } from '../../data/global/selectors/positionSelector';\nimport { sumNumbers } from '../../utilities/data';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { pnlSelectors } from '../../data/global/selectors/PnLSelectors';\nimport { DirectionalCurrency } from '../shared/DirectionalCurrency';\nimport { useBlockLog } from '../../components/blocks/hooks/useBlockLog';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { blockSettings } from '../../data/global/selectors/settingSelectors';\n\nconst NavPrice: FC<{ value: number | null | undefined; title: string; isLoaded: boolean }> = ({\n title,\n isLoaded,\n value,\n}) => {\n const isValid = !_.isNil(value) && !_.isNaN(value) ? true : false;\n const log = useBlockLog('DailyPL');\n log('%o', { value });\n return (\n <>\n
    \n
    {title}
    \n
    \n
    \n {isValid && isLoaded && _.isNumber(value) ? (\n \n ) : (\n \n \n \n )}\n
    \n \n );\n};\n\nexport const PositionHeader: FC<{\n totalGain?: number;\n dailyPnl?: number;\n expandRows?: boolean;\n}> = ({ totalGain, dailyPnl, expandRows }) => {\n const { total } = useStateSelector(PerformanceSelectors.totals.all);\n const symbolAggregateList = useStateSelector(getAllPositionInfo);\n const totalGainValue = useMemo(\n () =>\n symbolAggregateList &&\n sumNumbers(\n _.map(symbolAggregateList, p => {\n if (p.symbol.assetType === AssetType.MoneyMarket) {\n return 0;\n }\n if (p.IsSettlementSet === true || p.useCalculatedPnL === true) {\n return p.overallPnl;\n }\n return p.commission ? p.totalGain + p.commission : p.totalGain;\n })\n ),\n [symbolAggregateList]\n );\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const loaded = useStateSelector(pnlSelectors.pnlDataLoaded);\n const isLoaded = loaded.isLoaded;\n const dispatch = useContext(BlockActionContext);\n const { dispatcher } = useDispatcher();\n\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { blockId, type } = useBlockMetadata();\n const blockType = type;\n const settings = useStateSelector(s => blockSettings.position(s, blockId));\n\n const handleExpandRowsClick = () => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...settings,\n expandRows: !expandRows,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n };\n\n // Reset expand\n useEffect(() => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...settings,\n expandRows: false,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n }, [selectedLinkedAccountId, subAccountFilterId]);\n\n return (\n
    \n {getBlockTypeName(BlockType.Positions)}\n \n \n {\n handleExpandRowsClick();\n }}\n type=\"checkbox\"\n >\n Expand Positions\n \n
    \n );\n};\n","import { useLog } from '@tradingblock/components';\nimport { useBlockState, useBlockStateSelector } from '../useBlockState';\nimport { useBlockData } from '../BlockState';\n\nexport const useBlockLog = (subname?: string) => {\n const { blockId, type } = useBlockStateSelector(s => ({ blockId: s.blockId, type: s.type }));\n const subnames = subname ? [type, subname, blockId] : [type, blockId];\n const log = useLog(subnames);\n return log;\n};\n","import React, { useEffect } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useWhyDidYouUpdate } from 'use-hooks';\n\nexport const PositionSync: React.FunctionComponent<{}> = () => {\n const shouldReload = useStateSelector(s => s.positions.isDirty === true && s.positions.isFetching === false);\n const { dispatcher } = useDispatcher();\n useWhyDidYouUpdate('PositionSync', { shouldReload });\n useEffect(() => {\n dispatcher.data.positions.request();\n }, [dispatcher.data.positions]);\n return <>;\n};\n","import React from 'react';\nimport { Number } from '@tradingblock/components';\nimport { DirectionalValue, DirectionalValueProps } from '../basic/Directional';\n\nexport const DirectionalPrice: React.FunctionComponent = ({ value, precisionOverride, ...directionProps }) => {\n return (\n \n \n \n );\n};\n","import { useCallback, useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport {\n AssetSymbol,\n BlockType,\n TradingStrategyOrCustom,\n AssetType,\n OptionType,\n Order,\n OrderAction,\n OrderLeg,\n OrderStatuses,\n TradingStrategyNameOrCustom,\n TradingStrategy,\n StrikeRules,\n} from '@tradingblock/types';\nimport {\n CustomStrategy,\n OrderBuilderType,\n OrderBuilder,\n parseOccSymbol,\n Put,\n Call,\n Shares,\n getDefaultOrderQuantity,\n} from '@tradingblock/api';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { generateNewBlock } from '../../../utilities/block';\nimport { useFeedQuoteWithMetadata } from '../../../hooks/useFeedQuote';\nimport { OrderState } from '../../../blocks/Order/state/OrderState';\nimport { DefaultLegs, defaultStrategyForSymbol } from '../../../blocks/Order/OrderUtilities';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { globalSettings } from '../../../data/global/selectors/settingSelectors';\nimport { BlockActions } from '../../../data/global/actions';\nimport { getType } from 'typesafe-actions';\nimport { Actions, OrderActions } from '../../../blocks/Order/state/OrderActions';\nimport { useBlockActionDispatchAndGenericActions } from '../BlockState';\n\ninterface UseTradeActionsProps {\n occSymbol: string | undefined;\n addBlockToGroupId?: string;\n data?: Partial;\n baseAssetSymbol: AssetSymbol;\n isUnderlyingSymbol?: boolean;\n}\nexport const useOrderBlock = ({\n occSymbol,\n addBlockToGroupId,\n data,\n baseAssetSymbol,\n isUnderlyingSymbol,\n}: UseTradeActionsProps) => {\n const { dispatcher } = useDispatcher();\n const globalOrderSettings = useStateSelector(globalSettings.order);\n\n const symbolQuote = useFeedQuoteWithMetadata(occSymbol || '');\n const symbol: AssetSymbol | undefined = useMemo(() => {\n if (symbolQuote) {\n // const { Symbol, Description, Exchange, UnderlyingSymbol, AssetClass } = symbolQuote;\n return baseAssetSymbol;\n }\n return baseAssetSymbol;\n }, [symbolQuote, baseAssetSymbol]);\n\n const createOrUpdateOrderBlock = useCallback(\n (addBlockAsNew?: boolean) => {\n const initialBlockData = data || {\n legs: DefaultLegs({}, symbol, { optionType: undefined, strike: undefined, expiration: undefined }),\n };\n // const optionType = _.get(_.first(_.values(initialBlockData && initialBlockData.legs)), 'OptionType');\n // let strategy: TradingStrategyOrCustom = optionType ? (optionType === OptionType.Call ? Call : Put) : CustomStrategy;\n let strategy: TradingStrategyNameOrCustom = CustomStrategy.info.Name;\n const underlying = symbol.underlyingSymbol;\n if (isUnderlyingSymbol && underlying) {\n strategy = defaultStrategyForSymbol(underlying, undefined, globalOrderSettings);\n }\n // const quantity = _([defaultOrderQuantity, initialBlockData ? initialBlockData.quantity : undefined])\n // .filter(v => v !== undefined)\n // .min();\n const newBlock = generateNewBlock(BlockType.Order, {\n ...initialBlockData,\n symbol,\n strategy: strategy,\n quantity: getDefaultOrderQuantity(strategy, globalOrderSettings),\n });\n newBlock.groupId = addBlockToGroupId || '';\n // if adding block as new, don't pass \"replace first match\" options\n\n dispatcher.block.addOrUpdateBlock(\n newBlock,\n false,\n addBlockAsNew ? undefined : { blockType: BlockType.Order, groupId: addBlockToGroupId }\n );\n },\n [data, symbol, addBlockToGroupId, dispatcher.block, globalOrderSettings]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return { createOrUpdateOrderBlock };\n};\n\nexport interface ReplaceFirstMatchOptions {\n blockType: BlockType;\n groupId?: string;\n}\nexport const useOrderBlockWithOrder = (\n build: (builder: OrderBuilderType) => OrderBuilderType,\n replaceFirstMatch?: ReplaceFirstMatchOptions\n) => {\n const { dispatcher, dispatch } = useDispatcher();\n const globalOrderSettings = useStateSelector(globalSettings.order);\n const [{}, orderBlockDispatcher] = useBlockActionDispatchAndGenericActions();\n const orderBlockBuilder = useCallback(\n (addBlockAsNew?: boolean) => {\n const orderBlockData = build(new OrderBuilder(globalOrderSettings).quantity(1)).order();\n const newBlock = generateNewBlock(BlockType.Order, orderBlockData);\n //dispatcher.block.addOrUpdateBlock(newBlock, false, addBlockAsNew === true ? undefined : replaceFirstMatch);\n\n dispatch(\n BlockActions.addOrUpdateBlock(\n {\n block: newBlock,\n addedAt: dayjs().toDate(),\n preserveGroupOrderData: false,\n replaceFirstMatch: addBlockAsNew === true ? undefined : replaceFirstMatch,\n },\n { persist: true }\n )\n );\n\n orderBlockDispatcher({ type: getType(Actions.asyncValidateOrder), payload: {} });\n },\n [replaceFirstMatch, dispatcher.block, orderBlockDispatcher, dispatch]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return orderBlockBuilder;\n};\n\nexport const getStrategyForLegs = (legs: OrderLeg[]) => {\n const firstLeg = _.first(legs);\n if (legs.length === 1 && firstLeg) {\n const sinfo = parseOccSymbol(firstLeg.OccSymbol || firstLeg.Symbol);\n if (sinfo.assetType === AssetType.Option) {\n return sinfo.option === OptionType.Put ? Put : Call;\n } else {\n return Shares;\n }\n }\n return CustomStrategy;\n};\n\nexport const useCloseOrderAction = (\n order: Pick,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick,\n subaccountId?: number\n) => {\n const { Quantity, Legs } = order;\n const strategy: TradingStrategyOrCustom = getStrategyForLegs(Legs);\n const isCustom = strategy === CustomStrategy;\n const isSingleLeggedOrder = Legs.length === 1;\n const firstLeg = _.first(Legs);\n\n const buildCloseOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n\n let baseBuilder = builder;\n let orderQuantity = isCustom ? 1 : Math.abs(Quantity);\n let orderAction: OrderAction = OrderAction.Buy;\n\n if (strategy.info.Name === 'Shares') {\n if (orderQuantity < 1) {\n orderQuantity = Math.ceil(orderQuantity);\n } else {\n orderQuantity = Math.floor(orderQuantity);\n }\n }\n\n if (isSingleLeggedOrder && firstLeg) {\n orderAction = firstLeg.Action;\n }\n\n baseBuilder = builder\n .symbol(symbol)\n .strategy(strategy)\n .action(orderAction)\n .quantity(orderQuantity)\n .subaccountId(subaccountId ? subaccountId : -1);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const legQuantity = isCustom ? Math.abs(Quantity) : 1;\n\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action)\n .quantity(legQuantity)\n .subaccountId(subaccountId);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike)\n .subaccountId(subaccountId);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleCloseOrder = useOrderBlockWithOrder(buildCloseOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleCloseOrder, [order, symbol]);\n};\n\nexport const useTradeSymbolAction = (\n symbol: AssetSymbol,\n fn: (builder: OrderBuilderType) => OrderBuilderType,\n blockSelectionOptions?: Pick\n) => {\n const buildTradeOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n const baseBuilder = builder\n .symbol(symbol)\n .strategy(CustomStrategy)\n .quantity(1);\n return fn(baseBuilder);\n };\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrder = useOrderBlockWithOrder(buildTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n\n return useMemo(() => handleTradeOrder, [fn, symbol]);\n};\n\nexport const useOrderCopyTradeAction = (\n order: Pick,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick\n) => {\n const { Quantity, Legs, OrderStatus } = order;\n const strategy = getStrategyForLegs(Legs);\n const isCustom = strategy.info.Name === CustomStrategy.info.Name;\n const isSingleLeggedStrategyOrder = !isCustom && Legs.length === 1;\n const firstLeg = _.first(Legs);\n const orderCancelled = OrderStatus === OrderStatuses.Cancelled;\n\n const handleTradeOrder = (builder: OrderBuilderType) => {\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\n\n let baseBuilder = builder;\n let quantity = 1;\n let orderAction = OrderAction.Buy;\n\n // if (firstLeg && (isSingleLeggedStrategyOrder || orderCancelled)) {\n // quantity = Quantity;\n // orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n // } else if (!isCustom && firstLeg) {\n // quantity = Math.abs(firstLeg.LegFillQuantity || 1);\n // orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n // }\n if (isSingleLeggedStrategyOrder && firstLeg) {\n quantity = Quantity;\n orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy;\n }\n\n baseBuilder = baseBuilder\n .symbol(symbol)\n .action(orderAction)\n .strategy(strategy)\n .quantity(quantity);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const { LegFillQuantity, SpreadRatio } = l;\n // const legQuantity = isCustom ? LegFillQuantity : 1;\n const legQuantity = isCustom ? (SpreadRatio || 1) * Quantity : 1;\n\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy)\n .quantity(legQuantity);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrderBuilder = useOrderBlockWithOrder(handleTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleTradeOrderBuilder, [order, symbol]);\n};\n\nexport const useOrderCopyAction = (\n order: Order,\n symbol: AssetSymbol,\n blockSelectionOptions?: Pick,\n matchingStrategy?: TradingStrategy,\n setCustom?: boolean,\n duplicateOrder?: boolean\n) => {\n const { Quantity, Legs, OrderType, Action } = order;\n let strategy = setCustom ? CustomStrategy : getStrategyForLegs(Legs);\n const isCustom = strategy.info.Name === CustomStrategy.info.Name;\n const isSingleLeggedStrategyOrder = !isCustom && Legs.length === 1;\n const isSingleLeggedCustomOrder = isCustom && Legs.length === 1;\n const firstLeg = Legs[0];\n\n if (isCustom && matchingStrategy && matchingStrategy.info.Name) {\n strategy = matchingStrategy;\n }\n\n /**\n * Adjusts the order of legs in a strategy based on the defined strike rules.\n *\n * This function is designed to work with two-legged options strategies where\n * the order of strikes (increasing or decreasing) matters, such as in put/call\n * vertical spreads. It checks the strategy's strike rules and reorders the\n * legs of the strategy if they are not in the correct order according to the\n * rules.\n *\n * @param {Object[]} Legs - An array of leg objects in the strategy. Each leg object\n * should have a 'Strike' property.\n * @param {Object} strategyProfile - The profile object of the strategy, which should\n * contain the 'Rules' related to strike ordering.\n *\n * @example\n * For a call vertical buy, Legs should be ordered with lower strike first:\n * If Legs are [{Strike: 110}, {Strike: 100}], they will be reordered to\n * [{Strike: 100}, {Strike: 110}]\n * adjustLegOrderForStrikeRules(Legs, matchingStrategy.profile);\n *\n * Notes:\n * - The function directly modifies the 'Legs' array.\n * - It only applies adjustments for strategies with exactly two legs.\n * - The function assumes 'strategyProfile' has a structure where 'Rules' is an object\n * that contains a 'Strike' property with values like 'IncreasingOrder' or\n * 'DecreasingOrder'.\n * - If the 'Rules' object or 'Strike' property is not defined, or if the strategy\n * does not conform to the expected structure (e.g., not a two-legged strategy),\n * the function does nothing.\n */\n const adjustLegOrderForStrikeRules = (Legs: any[], strategyProfile: TradingStrategy['profile']) => {\n if (Legs.length !== 2) {\n return; // Only adjust for two-legged strategies\n }\n\n const strikeRule = strategyProfile && strategyProfile.Rules && strategyProfile.Rules.Strike;\n if (!strikeRule) {\n return; // No strike rule defined, exit early\n }\n\n const firstLegHigher = Legs[0].Strike > Legs[1].Strike;\n\n // Reverse Legs if the order is not aligned with the strike rule\n if (\n (strikeRule === StrikeRules.IncreasingOrder && firstLegHigher) ||\n (strikeRule === StrikeRules.DecreasingOrder && !firstLegHigher)\n ) {\n Legs.reverse();\n }\n };\n\n const handleTradeOrder = (builder: OrderBuilderType) => {\n let baseBuilder = builder;\n let orderAction = Action ? Action : OrderAction.Buy;\n\n if (isSingleLeggedStrategyOrder && firstLeg) {\n orderAction = firstLeg.Action === OrderAction.Buy ? OrderAction.Buy : OrderAction.Sell;\n }\n\n if ('profile' in strategy) {\n adjustLegOrderForStrikeRules(Legs, strategy.profile);\n }\n\n let calculatedQuantity = setCustom ? (isSingleLeggedCustomOrder ? Quantity : 1) : Quantity;\n\n baseBuilder = baseBuilder\n .symbol(symbol)\n .orderType(OrderType)\n .action(orderAction)\n .strategy(strategy)\n .quantity(calculatedQuantity);\n\n return _.reduce(\n Legs,\n (b, l) => {\n const { LegFillQuantity, SpreadRatio } = l;\n // let legQuantity = isCustom ? LegFillQuantity : 1;\n // if (orderCancelled && LegFillQuantity === 0) {\n // legQuantity = (SpreadRatio || 1) * Quantity;\n // }\n // if the order is being built from the duplicate order action button, then we need to multiply spread ratio by the quantity to determine the leg quantity\n const legQuantity =\n isCustom && !duplicateOrder\n ? isSingleLeggedCustomOrder\n ? Quantity\n : SpreadRatio || 1\n : isCustom && duplicateOrder\n ? (SpreadRatio || 1) * Quantity\n : 1;\n return b.leg(ll => {\n const symbolInfo = parseOccSymbol(l.Symbol);\n const buildRes = ll\n .assetType(symbolInfo.assetType)\n .action(l.Action)\n .quantity(legQuantity);\n\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n },\n baseBuilder\n );\n };\n\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 trade options in dropdown\n const handleTradeOrderBuilder = useOrderBlockWithOrder(handleTradeOrder, {\n blockType: BlockType.Order,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleTradeOrderBuilder, [order, symbol]);\n};\n","import { useCallback, useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport { PersistablePriceChartState, AssetSymbol, BlockType } from '@tradingblock/types';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useFeedQuoteWithMetadata } from '../../../hooks/useFeedQuote';\nimport { PriceChartState } from '../../../blocks/PriceChart/state/PriceChartState';\nimport { BlockActions } from '../../../data/global/actions';\nimport { generateNewBlock } from '../../../utilities/block';\nimport { ReplaceFirstMatchOptions } from './useOrderBlock';\n\nexport interface PriceChartBuilderType {\n symbol: (symbol: AssetSymbol) => PriceChartBuilderType;\n priceChart: () => Partial;\n}\n\nexport class PriceChartBuilder implements PriceChartBuilderType {\n private priceChartState: Partial;\n private dirty: Partial<{ [K in keyof PersistablePriceChartState]: boolean }>;\n constructor() {\n this.priceChartState = {};\n this.dirty = {};\n }\n set(k: K, value: PersistablePriceChartState[K]) {\n this.dirty[k] = true;\n this.priceChartState = {\n ...this.priceChartState,\n [k]: value,\n };\n return this;\n }\n symbol(symbol: AssetSymbol) {\n return this.set('symbol', symbol);\n }\n priceChart() {\n return this.priceChartState;\n }\n}\n\ninterface UseChartActionsProps {\n occSymbol: string | undefined;\n addBlockToGroupId?: string;\n data?: Partial;\n baseAssetSymbol: AssetSymbol;\n isUnderlyingSymbol?: boolean;\n}\nexport const usePriceChartBlock = ({\n occSymbol,\n addBlockToGroupId,\n data,\n baseAssetSymbol,\n isUnderlyingSymbol,\n}: UseChartActionsProps) => {\n const { dispatcher } = useDispatcher();\n const symbolQuote = useFeedQuoteWithMetadata(occSymbol || '');\n const symbol: AssetSymbol | undefined = useMemo(() => {\n if (symbolQuote) {\n // const { Symbol, Description, Exchange, UnderlyingSymbol, AssetClass } = symbolQuote;\n return baseAssetSymbol;\n }\n return baseAssetSymbol;\n }, [symbolQuote, baseAssetSymbol]);\n\n const createOrUpdatePriceChartBlock = useCallback(\n (addBlockAsNew?: boolean) => {\n const initialBlockData = data || { symbol };\n const underlying = symbol.underlyingSymbol;\n if (isUnderlyingSymbol && underlying) {\n }\n const newBlock = generateNewBlock(BlockType.PriceChart, {\n ...initialBlockData,\n symbol,\n });\n newBlock.groupId = addBlockToGroupId || '';\n // if adding block as new, don't pass \"replace first match\" options\n\n dispatcher.block.addOrUpdateBlock(\n newBlock,\n false,\n addBlockAsNew ? undefined : { blockType: BlockType.PriceChart, groupId: addBlockToGroupId }\n );\n },\n [data, symbol, addBlockToGroupId, dispatcher.block]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return { createOrUpdatePriceChartBlock };\n};\n\nexport const useChartBlockWithOrder = (\n build: (builder: PriceChartBuilderType) => PriceChartBuilderType,\n replaceFirstMatch?: ReplaceFirstMatchOptions\n) => {\n const { dispatcher, dispatch } = useDispatcher();\n const priceChartBlockBuilder = useCallback(\n (addBlockAsNew?: boolean) => {\n const priceChartBlockData = build(new PriceChartBuilder()).priceChart();\n const newBlock = generateNewBlock(BlockType.PriceChart, priceChartBlockData);\n dispatch(\n BlockActions.addOrUpdateBlock(\n {\n block: newBlock,\n addedAt: dayjs().toDate(),\n preserveGroupOrderData: false,\n replaceFirstMatch: addBlockAsNew === true ? undefined : replaceFirstMatch,\n },\n { persist: true }\n )\n );\n },\n [replaceFirstMatch, dispatcher.block]\n );\n\n // if linkable block exists, show 2 trade options in dropdown\n return priceChartBlockBuilder;\n};\n\nexport const useChartSymbolAction = (\n symbol: AssetSymbol,\n fn: (builder: PriceChartBuilderType) => PriceChartBuilderType,\n blockSelectionOptions?: Pick\n) => {\n const buildChartOrder = (builder: PriceChartBuilderType) => {\n const baseBuilder = builder.symbol(symbol);\n return fn(baseBuilder);\n };\n const blockSelectionOpts = blockSelectionOptions || {};\n // if linkable block exists, show 2 chart options in dropdown\n const handleChartOrder = useChartBlockWithOrder(buildChartOrder, {\n blockType: BlockType.PriceChart,\n ...blockSelectionOpts,\n });\n return useMemo(() => handleChartOrder, [fn, symbol]);\n};\n","import React from 'react';\nimport _ from 'lodash';\n\nexport interface OrderActionButtonProps\n extends React.DetailedHTMLProps, HTMLAnchorElement> {\n onClick: () => void;\n title: string;\n icon: string;\n}\n\nexport const OrderActionButton: React.FC = ({ onClick, icon, title }) => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport type OrderButtonProps = Omit;\nexport const CancelOrderButton: React.FC = props => (\n \n);\nexport const ReplaceOrderButton: React.FC = props => (\n \n);\nexport const TradeOrderButton: React.FC = props => (\n \n);\nexport const CloseOrderButton: React.FC = props => (\n \n);\nexport const RollOrderButton: React.FC = props => (\n \n);\nexport const FakeOrderButton: React.FC<{}> = props => (\n alert('you clicked a fake button!')}\n title=\"Test order action\"\n icon={\n _.sample(['fa-wine-glass', 'fa-wine-bottle', 'fa-beer', 'fa-baseball', 'fa-grin', 'fa-grin-squint-tears']) ||\n 'fa-question'\n }\n {...props}\n />\n);\nexport const ChartButton: React.FC = props => (\n \n);\n","import React, { FC, useMemo } from 'react';\nimport _ from 'lodash';\nimport { Dropdown, DropdownItem } from '@tradingblock/components';\nimport { OrderAction, OrderLegDTO } from '@tradingblock/types';\nimport { PositionDTO, AggregatedPositionDTO } from '@tradingblock/api';\nimport { OrderActionButtonProps, OrderActionButton } from '../../components/blocks/actions/OrderActionButtons';\n\nexport interface PositionActionsProps {\n tradeData: {\n legs: {\n [x: string]: OrderLegDTO;\n };\n action: OrderAction;\n quantity: number;\n };\n position: AggregatedPositionDTO;\n maxVisibleActions: number;\n}\n\nexport const PositionActions: FC<{\n actions: OrderActionButtonProps[];\n identity: string;\n maxVisibleActions: number;\n}> = ({ actions, identity, maxVisibleActions }) => {\n const hasOverflowActions = useMemo(() => actions.length > maxVisibleActions, [actions, maxVisibleActions]);\n\n const primaryActions = useMemo(() => {\n return hasOverflowActions ? _.take(actions, maxVisibleActions) : actions;\n }, [actions, hasOverflowActions, maxVisibleActions]);\n\n const secondaryActions = useMemo(() => {\n return hasOverflowActions ? _.drop(actions, maxVisibleActions) : [];\n }, [actions, hasOverflowActions, maxVisibleActions]);\n\n return (\n
      \n {primaryActions.map((action, ind) => (\n
    • \n \n
    • \n ))}\n {secondaryActions.length > 0 && (\n
    • \n }\n direction=\"right\"\n buttonOptions={{ toggleButtonClassName: 'btn btn-blend dropdown-toggle no-caret' }}\n >\n {secondaryActions.map((sa, ind) => (\n \n \n \n \n \n {sa.title}\n \n ))}\n \n
    • \n )}\n
    \n );\n};\n","import { OCCSymbolToOptionData } from '@tradingblock/api';\nimport { AssetType, OptionType } from '@tradingblock/types';\n\n/**\n * Gives the expiration date corresponding to a given option\n * @param occ an option (as a string) to be parsed\n * @returns the expiration date (as a string) corresponding to the given option\n */\nexport function ParseOCCExpiration(occ: string): Date | undefined {\n const x = OCCSymbolToOptionData(occ);\n if (x.expiration === undefined) return undefined;\n else return x.expiration;\n}\n\n/**\n * Gives the symbol corresponding to the given option\n * @param occ an option (as a string) to be parsed\n * @returns the ticker (as a string) corresponding to the given option\n */\nexport function ParseOCCSymbol(occ: string): string | undefined {\n const x = OCCSymbolToOptionData(occ).symbol;\n return x;\n}\n\n/**\n * Gives the type of option a given OCC string is. I.e. \"call\" or \"put\"\n * @param occ the OCC option to be parsed\n * @returns the type of option corresponding to the given string. I.e \"call\" or \"put\".\n * @returns undefined if the given string is not an option\n */\nexport function ParseOCCOption(occ: string): string | undefined {\n const x = OCCSymbolToOptionData(occ).option;\n if (x === OptionType.Call) return 'Call';\n else if (x === OptionType.Put) return 'Put';\n else return undefined;\n}\n/**\n * Gives the strike price of a given option\n * @param occ the OCC option to be parsed\n * @returns the strike price of the given option as a string\n * @returns undefined if the given string doesn't have a strike price\n */\nexport function ParseOCCStrike(occ: string): string | undefined {\n const x = OCCSymbolToOptionData(occ).strike;\n if (x === undefined) return undefined;\n else return `${x}`;\n}\n\nexport const sortColumnsByOrder = (columns: JSX.Element[], columnOrder: string[]) => {\n columns.sort((a, b) => {\n const aIndex = columnOrder.indexOf(a.props.id);\n const bIndex = columnOrder.indexOf(b.props.id);\n return aIndex - bIndex;\n });\n return columns;\n};\n\n/**\n * Calculates the position cost value based on the average price, the number of contracts and the multiplier (100 - option | 1 - share).\n * @param avgPrice - number | the average price\n * @param numOfContracts - number | the number of contracts\n * @param assetType - AssetType | the asset type\n * @param multiplier - number (optional) | the multiplier\n * @returns - number | the position cost value\n */\nexport const calculatePositionCostValue = (\n avgPrice: number,\n numOfContracts: number,\n assetType: AssetType,\n multiplier?: number\n): number => {\n // We are setting another multiplier based on the asset type to create a fallback in the case the multiplier is not available from the backend.\n let multiplierFromAssetType = 1;\n\n if (assetType === AssetType.Option) {\n multiplierFromAssetType = 100;\n }\n\n return avgPrice * numOfContracts * (multiplier || multiplierFromAssetType);\n};\n","import React, { useMemo } from 'react';\r\nimport dayjs from 'dayjs';\r\nimport _ from 'lodash';\r\nimport { OptionExpirationType, AssetType } from '@tradingblock/types';\r\nimport { OCCSymbolToOptionData } from '@tradingblock/api';\r\nimport { ParseOCCStrike, ParseOCCOption } from '../../../blocks/Positions/util';\r\n\r\nexport const PrettySymbolCondenscedView: React.FC<{ symbol: string; expirationToString: string }> = ({\r\n symbol,\r\n expirationToString,\r\n}) => {\r\n const info = OCCSymbolToOptionData(symbol);\r\n return (\r\n <>\r\n {info.symbol}\r\n
    \r\n {info.assetType === AssetType.Option && (\r\n <>\r\n {expirationToString} {ParseOCCStrike(symbol)} {ParseOCCOption(symbol)}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const PrettySymbolDefaultView: React.FC<{ symbol: string; expirationToString: string }> = ({\r\n symbol,\r\n expirationToString,\r\n}) => {\r\n return (\r\n <>\r\n {expirationToString}\r\n
    \r\n {ParseOCCStrike(symbol)} {ParseOCCOption(symbol)}\r\n \r\n );\r\n};\r\n\r\nexport const usePositionSymbolName = (\r\n symbolValue: string,\r\n expirationType?: OptionExpirationType,\r\n dateOpened?: Date\r\n) => {\r\n return useMemo(() => {\r\n const expirationTime = expirationType && expirationType === OptionExpirationType.AM ? 'AM' : undefined;\r\n const { expiration, symbol } = OCCSymbolToOptionData(symbolValue);\r\n const expirationDateValue = dayjs(expiration || dateOpened).format('MMM DD YYYY');\r\n return _([expirationDateValue, expirationTime])\r\n .filter(v => v !== undefined)\r\n .join(' ');\r\n }, [dateOpened, expirationType, symbolValue]);\r\n};\r\n\r\nexport const PrettySymbol: React.FC<{\r\n condensced?: boolean;\r\n symbol: string;\r\n expirationType?: OptionExpirationType;\r\n dateOpened?: Date;\r\n}> = ({ condensced, expirationType, dateOpened, ...props }) => {\r\n const symbolValue = props.symbol;\r\n const expirationToString = usePositionSymbolName(symbolValue, expirationType, dateOpened);\r\n return (\r\n <>\r\n {condensced && }\r\n {!condensced && }\r\n \r\n );\r\n};\r\n","import React, { FC, useMemo, useCallback } from 'react';\r\nimport _ from 'lodash';\r\nimport { BlockType, OrderAction, AssetType, OptionType } from '@tradingblock/types';\r\nimport {\r\n parseOccSymbol,\r\n toAssetSymbol,\r\n AssetTypeToSymbolType,\r\n OrderBuilderType,\r\n OCCSymbolToOptionData,\r\n} from '@tradingblock/api';\r\nimport { DtoToOrderleg } from '../Order/OrderUtilities';\r\nimport {\r\n useOrderBlockWithOrder,\r\n getStrategyForLegs,\r\n useCloseOrderAction,\r\n} from '../../components/blocks/hooks/useOrderBlock';\r\nimport { useBlockGroupInfo } from '../useGroupState';\r\nimport { PositionActionsProps, PositionActions } from './PositionActions';\r\nexport const PositionLegActions: FC = ({ tradeData, position, maxVisibleActions }) => {\r\n const { groupId } = useBlockGroupInfo();\r\n const [symbol, underlyingSymbol, assetType] = [position.Symbol, position.UnderlyingSymbol, position.AssetType];\r\n const assetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(position.Symbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const baseAssetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(underlyingSymbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const orderLegs = _.map(tradeData.legs, l => DtoToOrderleg(l, assetSymbol));\r\n const canRoll =\r\n _.keys(tradeData.legs).length === 1 && _.some(tradeData.legs, (v, k) => v.AssetType === AssetType.Option);\r\n const openQuantity = Math.abs(position.OpenQuantity);\r\n const optionData = useMemo(() => OCCSymbolToOptionData(symbol), [symbol]);\r\n const isShort = position.OpenQuantity < 0;\r\n const subaccountId = position.SubaccountId;\r\n\r\n const buildRollOrder = useCallback(\r\n (builder: OrderBuilderType) => {\r\n const optionType = optionData.option;\r\n const strike = optionData.strike;\r\n const expiration = optionData.expiration;\r\n // for custom strategy, quantity is stored in spreadRatio\r\n // const legs = DefaultLegs({}, assetSymbol, { assetType, optionType, orderAction: action, strike, expiration: });\r\n if (optionType) {\r\n return builder\r\n .symbol(baseAssetSymbol)\r\n .strategy('Custom')\r\n .quantity(1)\r\n .action(OrderAction.Buy)\r\n .leg(l =>\r\n l\r\n .assetType(AssetType.Option)\r\n .action(isShort ? OrderAction.Buy : OrderAction.Sell)\r\n .quantity(openQuantity)\r\n .expiration(expiration)\r\n .optionType(optionType)\r\n .strike(strike)\r\n )\r\n .leg(l =>\r\n l\r\n .assetType(AssetType.Option)\r\n .action(isShort ? OrderAction.Sell : OrderAction.Buy)\r\n .quantity(openQuantity)\r\n .optionType(optionType)\r\n );\r\n }\r\n return builder;\r\n },\r\n [position, optionData]\r\n );\r\n const handleRollClick = useOrderBlockWithOrder(buildRollOrder, { blockType: BlockType.Order, groupId });\r\n\r\n const tradeOrderBuilder = useCallback(\r\n (builder: OrderBuilderType) => {\r\n const orderAction = isShort ? OrderAction.Sell : OrderAction.Buy;\r\n const quantity = Math.abs(openQuantity);\r\n const baseBuilder = builder\r\n .symbol(baseAssetSymbol)\r\n .strategy(getStrategyForLegs(orderLegs))\r\n .action(orderAction)\r\n .quantity(quantity);\r\n return _.reduce(\r\n orderLegs,\r\n (b, l) => {\r\n return b.leg(ll => {\r\n const symbolInfo = parseOccSymbol(l.Symbol);\r\n const buildRes = ll.assetType(symbolInfo.assetType).action(orderAction);\r\n if (symbolInfo.assetType !== AssetType.Equity) {\r\n return buildRes\r\n .optionType(symbolInfo.option || OptionType.Call)\r\n .expiration(symbolInfo.expiration)\r\n .quantity(1)\r\n .strike(symbolInfo.strike);\r\n }\r\n return buildRes;\r\n });\r\n },\r\n baseBuilder\r\n );\r\n },\r\n [openQuantity, orderLegs, isShort, baseAssetSymbol]\r\n );\r\n\r\n const handleTradeClick = useOrderBlockWithOrder(tradeOrderBuilder, { blockType: BlockType.Order, groupId });\r\n const handleCloseOrder = useCloseOrderAction(\r\n { Quantity: openQuantity, Legs: orderLegs },\r\n baseAssetSymbol,\r\n {\r\n groupId,\r\n },\r\n subaccountId\r\n );\r\n const actions = useMemo(() => {\r\n let res = [{ title: 'Close position', onClick: () => handleCloseOrder(), icon: '' }];\r\n if (canRoll) {\r\n res = [...res, { title: 'Roll position', onClick: () => handleRollClick(), icon: 'fa-redo' }];\r\n }\r\n res = [...res, { title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' }];\r\n return res;\r\n }, [handleCloseOrder, canRoll, handleRollClick, handleTradeClick]);\r\n return (\r\n <>\r\n \r\n \r\n );\r\n};\r\n","import React, { FC } from 'react';\nimport { SignedNumber } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { PerformanceSelectors } from '../../../data/global/selectors/performanceSelectors';\nimport _ from 'lodash';\n\nexport const PositionLegDailyPL: FC<{ positionIds: string[] }> = ({ positionIds }) => {\n const pnl = useStateSelector(s => PerformanceSelectors.aggregatePositionPerformances(s, positionIds));\n return <>{!_.isNaN(pnl.pnl) && };\n};\n","import { AggregatedPositionDTO, calculateOrderPrice, parseOccSymbol, Strategies } from '@tradingblock/api';\nimport {\n AssetType,\n ExpirationType,\n Legs,\n OptionType,\n OrderAction,\n OrderActionDirection,\n OrderType,\n PositionEffect,\n TradingStrategyNameOrCustom,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { QuoteSymbolQuote } from '../../../data/global/state';\nimport { useQuoteMetadata } from '../../../hooks/useFeedQuote';\nimport { GCD } from '../../../utilities/data';\nimport { changeCalculation } from '../../../utilities/position';\nimport { StrategyName, validatePositionLegs } from '../PositionLeg';\n\nconst RatioForPrice = {\n [AssetType.Equity.toFixed()]: 0.01,\n [AssetType.Option.toFixed()]: 1,\n};\nconst getLegMarketValueTotalForPrice = (leg: AggregatedPositionDTO, price: number) => {\n const at = leg.AssetType;\n const priceRatio = RatioForPrice[at.toFixed()];\n const quantity = leg.OptionMultiplier === 100 ? 1 : 100 || 1;\n return priceRatio * price * quantity;\n};\nconst getAggregatedQuotes = (legs: { ask: number; bid: number; last: number; close: number; prevClose: number }[]) => {\n return _.reduce(\n legs,\n (acc, l) => {\n return {\n ...acc,\n bid: acc.bid + l.bid,\n ask: acc.ask + l.ask,\n last: acc.last + l.last,\n close: acc.close + l.close,\n prevClose: acc.prevClose + l.prevClose,\n };\n },\n { bid: 0, ask: 0, last: 0, close: 0, prevClose: 0 }\n );\n};\nconst minOrZero = (vals: number[]) => _.min(vals) || 0;\nconst maxOrZero = (vals: number[]) => _.max(vals) || 0;\nconst getPositionLeg = (positions: AggregatedPositionDTO[], quotes: QuoteSymbolQuote[]) => {\n return positions.reduce(\n (acc, position) => {\n const legQuote = _.find(quotes, q => q.Symbol === position.Symbol);\n if (legQuote && position && position.Symbol) {\n // const isBuy = leg.Action === OrderAction.Buy;\n // const marketBidPrice = isBuy ? legQuote.BidPrice : legQuote.AskPrice;\n // const marketAskPrice = isBuy ? legQuote.AskPrice : legQuote.BidPrice;\n const legbid = getLegMarketValueTotalForPrice(position, legQuote.BidPrice);\n const legask = getLegMarketValueTotalForPrice(position, legQuote.AskPrice);\n const legLast = getLegMarketValueTotalForPrice(position, legQuote.LastTradePrice);\n const legClose = getLegMarketValueTotalForPrice(position, legQuote.ClosePrice);\n const prevClose = getLegMarketValueTotalForPrice(position, legQuote.ClosePriceTMinus2);\n return [\n ...acc,\n {\n position,\n bid: legbid,\n ask: legask,\n last: legLast,\n close: legClose,\n prevClose: prevClose,\n action: position.OpenQuantity < 0 ? OrderAction.Buy : OrderAction.Sell,\n },\n ];\n } else {\n return acc;\n }\n },\n [] as any\n );\n};\n\nfunction determineLongOrShort(positions: AggregatedPositionDTO[]) {\n if (positions.length === 1) {\n return positions[0].OpenQuantity > 0 ? OrderAction.Buy : OrderAction.Sell;\n }\n\n const stratName = StrategyName(positions);\n if (stratName === 'Custom') {\n return OrderAction.Buy;\n }\n const strategy = Strategies.find(s => s.info.Name === stratName);\n\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\n return OrderAction.Buy;\n }\n\n //Sort order, Equities, CALLS, PUTS on strategy legs and position legs\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const sortedPositionsLegs = positions.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : a.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : a.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : a.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : b.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : b.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : b.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n\n //Lowest common denominator of position quantities\n // const lcd = 1;\n\n const longStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n\n //By default if not bidirectional strategy is not selected, the short side is true;\n let shortStrategyValid = true;\n if (strategy.profile.Bidirectional) {\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\n sortedStrategyLegs = sortedStrategyLegs.map(leg => ({\n ...leg,\n Direction: leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\n }));\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n if (shortStrategyValid) {\n return OrderAction.Sell;\n }\n }\n if (longStrategyValid) {\n return OrderAction.Buy;\n }\n return OrderAction.Sell;\n}\n\nconst useOrderPriceRawValues = (positions: AggregatedPositionDTO[], quotes: QuoteSymbolQuote[]) => {\n const onlyShares = positions.filter(position => position.AssetType === AssetType.Option).length <= 0;\n const commission = positions.reduce((acc, p) => (acc += p.Commission), 0);\n if (onlyShares && positions.length > 0 && quotes.length > 0) {\n // Since we are only working with shares, then we do not need to aggregate the positions quote, and just use the first one.\n const quote = quotes[0];\n const { change, changePercent } = changeCalculation(\n quote.LastTradePrice,\n quote.ClosePrice,\n quote.ClosePriceTMinus2,\n quote.BidPrice,\n quote.AskPrice,\n quote.Symbol,\n quote.IsSettlementSet\n );\n\n return {\n ask: quote.AskPrice,\n bid: quote.BidPrice,\n last: quote.LastTradePrice,\n close: quote.ClosePrice,\n change: quote.NetChange,\n changePercent: quote.ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n isSettlementSet: quote.IsSettlementSet,\n prevClose: quote.ClosePriceTMinus2,\n commission: commission,\n };\n }\n\n const quote = quotes[0];\n\n const maxRatio = _.max(_.map(positions, l => RatioForPrice[l.AssetType.toFixed()])) || 1;\n const legPrices = getPositionLeg(positions, quotes);\n const shortLegs = _.filter(legPrices, l => l.action === OrderAction.Sell);\n const longLegs = _.filter(legPrices, l => l.action === OrderAction.Buy);\n const shorts = getAggregatedQuotes(shortLegs);\n const longs = getAggregatedQuotes(longLegs);\n const longOrShort = determineLongOrShort(positions);\n\n const gcd = GCD(_.map(positions, l => l.OptionMultiplier || 1)) || 1;\n\n const bidValue = longOrShort === OrderAction.Sell ? longs.bid - shorts.ask : shorts.bid - longs.ask;\n const askValue = longOrShort === OrderAction.Sell ? longs.ask - shorts.bid : shorts.ask - longs.bid;\n const lastValue =\n (longOrShort === OrderAction.Sell ? (longs.last - shorts.last) * -1 : shorts.last - longs.last) / maxRatio;\n const closeValue =\n (longOrShort === OrderAction.Sell ? (longs.close - shorts.close) * -1 : shorts.close - longs.close) / maxRatio;\n const prevClose =\n (longOrShort === OrderAction.Sell\n ? (longs.prevClose - shorts.prevClose) * -1\n : shorts.prevClose - longs.prevClose) / maxRatio;\n const bid = minOrZero([bidValue, askValue]) / gcd / maxRatio;\n const ask = maxOrZero([bidValue, askValue]) / gcd / maxRatio;\n const { change, changePercent } = changeCalculation(\n lastValue,\n closeValue,\n prevClose,\n bid,\n ask,\n positions[0].Symbol,\n quote.IsSettlementSet\n );\n\n return {\n ask: _.round(ask, 2),\n bid: _.round(bid, 2),\n last: lastValue,\n close: closeValue,\n change: quote.NetChange,\n changePercent: quote.ChangePercentage,\n calculatedChange: change,\n calculatedChangePercent: changePercent * 100,\n isSettlementSet: quote.IsSettlementSet,\n prevClose: quote.ClosePriceTMinus2,\n commission: commission,\n };\n};\n\nexport const usePositionInfo = (positions: AggregatedPositionDTO[]) => {\n const quotes = useQuoteMetadata(positions.map(p => p.Symbol));\n const sharesCount = positions.reduce((acc, p) => (acc += p.AssetType === AssetType.Equity ? p.OpenQuantity : 0), 0);\n const usesOptions = positions.some(p => p.AssetType === AssetType.Option);\n\n return {\n sharesCount,\n usesOptions,\n ...useOrderPriceRawValues(positions, quotes),\n };\n};\n","import React, { FC, useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport {\n BlockType,\n OrderAction,\n AssetType,\n OptionType,\n DirectionRules,\n OrderActionDirection,\n OrderLegDTO,\n OrderStrategyTypeId,\n} from '@tradingblock/types';\nimport {\n parseOccSymbol,\n toAssetSymbol,\n AssetTypeToSymbolType,\n OrderBuilderType,\n OCCSymbolToOptionData,\n AggregatedPositionDTO,\n deriveOptionExpirationType,\n toExpiration,\n Strategies,\n CustomStrategy,\n} from '@tradingblock/api';\nimport { DefaultLegs, DtoToOrderleg } from '../Order/OrderUtilities';\nimport {\n useOrderBlockWithOrder,\n getStrategyForLegs,\n useCloseOrderAction,\n} from '../../components/blocks/hooks/useOrderBlock';\nimport { useBlockGroupInfo } from '../useGroupState';\nimport { PositionActionsProps, PositionActions } from './PositionActions';\nimport { StrategyName, validatePositionLegs } from './PositionLeg';\n\nexport interface GroupedPositionLegActionsProps {\n position: AggregatedPositionDTO[];\n}\n\nexport function GroupedPositionLegActions({ position }: GroupedPositionLegActionsProps) {\n const { UnderlyingSymbol, AssetType: assetType, Symbol } = position[0];\n const { groupId } = useBlockGroupInfo();\n const baseAssetSymbol = useMemo(\n () =>\n toAssetSymbol(UnderlyingSymbol, assetType, AssetTypeToSymbolType(assetType), {\n name: UnderlyingSymbol,\n underlyingSymbol: UnderlyingSymbol,\n rootSymbol: UnderlyingSymbol,\n }),\n [Symbol, AssetType, UnderlyingSymbol]\n );\n\n const stratName = StrategyName(position);\n let strategy = Strategies.find(s => s.info.Name === stratName);\n\n // Handle different directions for calendars\n if (strategy && strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\n }\n\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\n let sortedStrategyLegs =\n strategy &&\n strategy.profile.Legs.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\n ? 1\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\n ? 2\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\n ? 3\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const sortedPositionsLegs = position.sort((a, b) => {\n let aWeight =\n a.AssetType === AssetType.Equity\n ? 0\n : a.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : a.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : a.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : a.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n let bWeight =\n b.AssetType === AssetType.Equity\n ? 0\n : b.Description.includes('CALL') && a.OpenQuantity > 0\n ? 1\n : b.Description.includes('CALL') && a.OpenQuantity < 0\n ? 2\n : b.Description.includes('PUT') && a.OpenQuantity > 0\n ? 3\n : b.Description.includes('PUT') && a.OpenQuantity < 0\n ? 4\n : 5;\n return aWeight - bWeight;\n });\n const spreadRatioQuantities = sortedStrategyLegs\n ? sortedStrategyLegs.map((strategyLeg, legIndex) =>\n Math.floor(\n (sortedPositionsLegs[legIndex] && sortedPositionsLegs[legIndex].OpenQuantity) ||\n 1 / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1)\n )\n )\n : [];\n //Lowest common denominator of position quantities\n let lowest_common_denominator = Math.min(...spreadRatioQuantities);\n //Highest denominator\n let highest_denominator = Math.max(...spreadRatioQuantities);\n\n let shortStrategyValid = false;\n if (strategy !== undefined && strategy.profile.Bidirectional) {\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\n sortedStrategyLegs = sortedStrategyLegs\n ? sortedStrategyLegs.map(leg => ({\n ...leg,\n Direction:\n leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\n }))\n : [];\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\n });\n }\n\n const pureOrderLegs = useMemo(() => {\n const processedLegs = position.reduce(\n (acc, pos) => {\n const optionData = OCCSymbolToOptionData(pos.Symbol);\n const optionType = optionData.option;\n const strike = optionData.strike;\n const expiration = optionData.expiration;\n // for custom strategy, quantity is stored in spreadRatio\n const openQuantity = Math.abs(pos.OpenQuantity);\n const assetType = optionType ? AssetType.Option : AssetType.Equity;\n const action = pos.OpenQuantity > 0 ? OrderAction.Sell : OrderAction.Buy;\n const optionExpirationType = deriveOptionExpirationType(\n baseAssetSymbol.symbol,\n baseAssetSymbol.underlyingSymbol || ''\n );\n const legs = DefaultLegs({}, baseAssetSymbol, {\n assetType,\n optionType,\n orderAction: action,\n strike,\n expiration: expiration ? toExpiration(expiration, baseAssetSymbol.symbol, optionExpirationType) : undefined,\n });\n\n return {\n ...acc,\n ...legs,\n };\n },\n {} as { [x: string]: OrderLegDTO }\n );\n return processedLegs;\n }, [position]);\n\n const handleCloseOrder = useOrderBlockWithOrder(\n (orderBuilder: OrderBuilderType) => {\n orderBuilder.symbol(baseAssetSymbol);\n orderBuilder.strategy(strategy !== undefined ? strategy : CustomStrategy);\n\n if (strategy !== undefined) {\n if (stratName !== 'Shares') {\n // We set these for share specific strats\n if (stratName === 'Call Calendar' || stratName === 'Put Calendar') {\n orderBuilder.action(shortStrategyValid ? OrderAction.Sell : OrderAction.Buy);\n } else {\n orderBuilder.action(shortStrategyValid ? OrderAction.Buy : OrderAction.Sell);\n }\n orderBuilder.quantity(Math.abs(lowest_common_denominator));\n }\n }\n if (stratName === 'Shares') {\n const shares_quantity = position.reduce(\n (shares_quantity, share_leg) => shares_quantity + share_leg.OpenQuantity,\n 0\n );\n const sharesQuantityAbsoluteValue = Math.abs(shares_quantity);\n orderBuilder.quantity(sharesQuantityAbsoluteValue < 1 ? Math.ceil(sharesQuantityAbsoluteValue) : Math.floor(sharesQuantityAbsoluteValue));\n orderBuilder.action(\n shares_quantity > 0 ? OrderAction.Sell : OrderAction.Buy ? OrderAction.Buy : OrderAction.Sell\n );\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[0].Symbol);\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(shares_quantity > 0 ? OrderAction.Sell : OrderAction.Buy);\n return buildRes;\n });\n } else {\n Object.values(pureOrderLegs).forEach((leg, index) => {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[index].Symbol);\n const quantity =\n strategy !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio\n : 1\n : position[index].OpenQuantity;\n\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(leg.Action)\n .quantity(quantity ? Math.abs(quantity) : 1);\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n });\n }\n\n return orderBuilder;\n },\n {\n blockType: BlockType.Order,\n groupId,\n }\n );\n\n const handleTradeOrder = useOrderBlockWithOrder(\n (orderBuilder: OrderBuilderType) => {\n orderBuilder.symbol(baseAssetSymbol);\n orderBuilder.strategy(strategy !== undefined ? strategy : CustomStrategy);\n if (strategy !== undefined) {\n orderBuilder.action(OrderAction.Buy);\n orderBuilder.quantity(1);\n }\n // If the strategy is shares, we need to only add one leg no matter how many pureOrderLegs there are\n if (stratName === 'Shares') {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[0].Symbol);\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(OrderAction.Buy)\n .quantity(Math.abs(position[0].OpenQuantity));\n return buildRes;\n });\n return orderBuilder;\n }\n\n Object.values(pureOrderLegs).forEach((leg, index) => {\n orderBuilder.leg(legBuilder => {\n const symbolInfo = parseOccSymbol(position[index].Symbol);\n const quantity =\n strategy !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio !== undefined\n ? strategy.profile.Legs[index] && strategy.profile.Legs[index].SpreadRatio\n : 1\n : position[index].OpenQuantity;\n const buildRes = legBuilder\n .assetType(symbolInfo.assetType)\n .action(leg.Action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy)\n .quantity(Math.abs(quantity ? Math.abs(quantity) : 1));\n if (symbolInfo.assetType === AssetType.Equity) {\n return buildRes;\n }\n return buildRes\n .optionType(symbolInfo.option || OptionType.Call)\n .expiration(symbolInfo.expiration)\n .strike(symbolInfo.strike);\n });\n });\n return orderBuilder;\n },\n {\n blockType: BlockType.Order,\n groupId,\n }\n );\n\n return (\n <>\n handleCloseOrder(), icon: '' },\n { title: 'Trade', onClick: () => handleTradeOrder(), icon: 'fa-clone' },\n ]}\n identity={position.map(p => p.Symbol + '-' + p.OpenQuantity).join('.')}\n maxVisibleActions={3}\n />\n \n );\n}\n","import { AggregatedPositionDTO, parseOccSymbol, PositionDTO } from '@tradingblock/api';\nimport { AssetType, OptionType } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { useMemo } from 'react';\nimport { SymbolPositions } from '../../../types';\n\nexport default function useAggregatedPositions(\n underlyingSymbol: string,\n symbolPositions: SymbolPositions,\n combineSameSymbols: boolean = true,\n groupPositionsByStrategy: boolean = true,\n subAccountId?: number\n) {\n const shouldGroupByStrategy = !groupPositionsByStrategy;\n return useMemo(() => {\n const positionValues = symbolPositions[underlyingSymbol] ? symbolPositions[underlyingSymbol].positions : [];\n // Filtering for selected sub-account\n const subIdsFromPositions = _.uniq(positionValues.map(p => p.SubaccountId));\n const isMaster = subAccountId && !subIdsFromPositions.includes(subAccountId);\n const isAll = subAccountId === -1;\n const filteredPositionValues = !isMaster\n ? positionValues.filter(p => p.SubaccountId === subAccountId)\n : positionValues.filter(p => p.SubaccountId === -1);\n const currentPositions =\n !subAccountId || isAll\n ? _.filter(positionValues, p => p.UnderlyingSymbol === underlyingSymbol)\n : _.filter(filteredPositionValues, p => p.UnderlyingSymbol === underlyingSymbol);\n const groupedPositions = _.groupBy(currentPositions, p => p.OrderId);\n\n // This reduce will convert all the PositionDTO into AggregatedPositionDTO with their correct block settings\n const agg_positions: AggregatedPositionDTO[] = currentPositions\n .reduce((alteredPositions: AggregatedPositionDTO[], position: PositionDTO) => {\n // Check if in current alteredPositions we have a symbol that matches. This is only used for combining settings logic\n const inAlteredPositions =\n alteredPositions.findIndex(\n alteredPosition =>\n alteredPosition.Symbol === position.Symbol &&\n (shouldGroupByStrategy ? groupedPositions[alteredPosition.OrderId].length === 1 : true)\n ) === -1\n ? false\n : true;\n const positionValueBasis = position.OpenQuantity * position.OptionMultiplier;\n\n // Logic for combining positions\n if (combineSameSymbols && inAlteredPositions) {\n // If we are grouping positions by strategy but our current position is not a single leg, we add it as is to avoid combining and breaking\n // the logic for grouping by strategy\n if (shouldGroupByStrategy && groupedPositions[position.OrderId].length > 1) {\n return [\n ...alteredPositions,\n {\n ...position,\n ValueBasis: positionValueBasis,\n PositionIds: [position.PositionId],\n },\n ];\n }\n // Get the current combinable position if it exists in the altered positions\n const currentCombinedPositionIndex = alteredPositions.findIndex(\n combinedPosition =>\n combinedPosition.Symbol === position.Symbol &&\n (shouldGroupByStrategy ? groupedPositions[combinedPosition.OrderId].length === 1 : true) //This just makes sure we do not combine on a multi leg strategy\n );\n // If we have a currentCombinedPositionIndex, we combined positions values with the existing combinable position\n if (currentCombinedPositionIndex !== -1) {\n // If the positions are held in different sub accounts, do not combine and instead reflect each position on its own row\n if (alteredPositions[currentCombinedPositionIndex].SubaccountId !== position.SubaccountId) {\n return [\n ...alteredPositions,\n { ...position, ValueBasis: positionValueBasis, PositionIds: [position.PositionId] },\n ];\n }\n\n //If we are on the first item, then we need to alter the OpenPrice first before computing the rest. to accurately calculate the OpenPrice Avg.\n if (alteredPositions[currentCombinedPositionIndex].PositionIds.length <= 1) {\n alteredPositions[currentCombinedPositionIndex] = {\n ...alteredPositions[currentCombinedPositionIndex],\n OpenPrice:\n alteredPositions[currentCombinedPositionIndex].OpenPrice *\n alteredPositions[currentCombinedPositionIndex].OpenQuantity,\n };\n }\n alteredPositions[currentCombinedPositionIndex] = {\n ...alteredPositions[currentCombinedPositionIndex],\n OpenQuantity: alteredPositions[currentCombinedPositionIndex].OpenQuantity + position.OpenQuantity,\n CostBasis: alteredPositions[currentCombinedPositionIndex].CostBasis + position.CostBasis,\n ValueBasis: alteredPositions[currentCombinedPositionIndex].ValueBasis + positionValueBasis,\n OpenPrice:\n alteredPositions[currentCombinedPositionIndex].OpenPrice + position.OpenPrice * position.OpenQuantity,\n PositionIds: [...alteredPositions[currentCombinedPositionIndex].PositionIds, position.PositionId],\n Commission: alteredPositions[currentCombinedPositionIndex].Commission + position.Commission,\n };\n return alteredPositions;\n }\n }\n\n //If we are not combining or we are not already in alteredPositions, convert to AggregatedPositionDTO\n return [\n ...alteredPositions,\n {\n ...position,\n ValueBasis: positionValueBasis,\n PositionIds: [position.PositionId],\n },\n ];\n }, [])\n .map(positions => {\n // If we are combining positions we need to go through all our combine positions and avg out the OpenPrice.\n if (combineSameSymbols && positions.PositionIds.length > 1) {\n return {\n ...positions,\n OpenPrice: positions.OpenPrice / positions.OpenQuantity,\n };\n }\n return positions;\n });\n\n return agg_positions;\n }, [symbolPositions, underlyingSymbol, combineSameSymbols, groupPositionsByStrategy, subAccountId]);\n}\n\nexport function sortedCustomOptionsFunction(position_1: AggregatedPositionDTO, position_2: AggregatedPositionDTO) {\n if (position_1.AssetType === AssetType.Equity) {\n return -1;\n }\n if (position_2.AssetType === AssetType.Equity) {\n return 1;\n }\n\n if (position_1.AssetType === AssetType.Option && position_2.AssetType === AssetType.Option) {\n const option_1_details = parseOccSymbol(position_1.Symbol);\n const option_2_details = parseOccSymbol(position_2.Symbol);\n\n // if we working with options in the same expiration\n if (\n option_1_details.expiration &&\n option_2_details.expiration &&\n option_1_details.expiration.valueOf() === option_2_details.expiration.valueOf()\n ) {\n // Then we need to sort Call options descending\n if (\n option_1_details.option === OptionType.Call &&\n option_2_details.option === OptionType.Call &&\n option_1_details.strike &&\n option_2_details.strike\n ) {\n return option_1_details.strike - option_2_details.strike;\n }\n\n // Then we need to sort Put options ascending\n if (\n option_1_details.option === OptionType.Put &&\n option_2_details.option === OptionType.Put &&\n option_1_details.strike &&\n option_2_details.strike\n ) {\n return option_2_details.strike - option_1_details.strike;\n }\n\n // If we are not comparing same contracts, then Calls need to go over puts\n if (option_1_details.option === OptionType.Call && option_2_details.option === OptionType.Put) {\n return -1;\n } else {\n return 1;\n }\n // Otherwise we need to sort by exp\n } else if (option_1_details.expiration && option_2_details.expiration) {\n return option_1_details.expiration.valueOf() - option_2_details.expiration.valueOf();\n }\n }\n return -1;\n}\n","import React, { useEffect, useMemo, useState } from 'react';\r\nimport _ from 'lodash';\r\nimport {\r\n SizeType,\r\n OrderAction,\r\n AssetType,\r\n OrderStrategyTypeId,\r\n OptionType,\r\n OrderActionDirection,\r\n TradingStrategyLeg,\r\n DirectionRules,\r\n} from '@tradingblock/types';\r\nimport {\r\n ResponsiveTd,\r\n getTableTdClass,\r\n Number,\r\n SignedNumber,\r\n Loading,\r\n TradingBlockLink,\r\n} from '@tradingblock/components';\r\nimport {\r\n OCCSymbolToOptionData,\r\n AssetTypeToSymbolType,\r\n toExpiration,\r\n toAssetSymbol,\r\n deriveOptionExpirationType,\r\n isOCCSymbol,\r\n AggregatedPositionDTO,\r\n parseOccSymbol,\r\n Strategies,\r\n} from '@tradingblock/api';\r\nimport { SymbolPositions } from '../../types';\r\nimport { useStateSelector } from '../../data/global/dataSelectors';\r\nimport { getPositionsFromSymbol } from '../../data/global/selectors/positionSelector';\r\nimport { useFeedQuoteWithMetadata, useQuoteMetadata } from '../../hooks/useFeedQuote';\r\nimport { FavoriteButton } from '../../components/blocks/FavoriteButton';\r\nimport { DefaultLegs } from '../Order/OrderUtilities';\r\nimport { DirectionalPrice } from '../../components/trading/DirectionalPrice';\r\nimport { PrettySymbol } from '../../components/blocks/content/PrettySymbol';\r\nimport { PositionLegActions } from './PositionLegActions';\r\nimport { usePositionSettingsValue } from './usePositionSettings';\r\nimport { PositionLegDailyPL } from './components/PositionLegDailyPL';\r\nimport {\r\n aggregatedSymbolPosition,\r\n positionToPerformance,\r\n QuoteDataToPartialQuote,\r\n} from '../../data/global/selectors/transforms';\r\nimport dayjs from 'dayjs';\r\nimport { usePositionInfo } from './hooks/usePositionInfo';\r\nimport { GroupedPositionLegActions } from './GroupedPositionLegActions';\r\nimport { sortColumnsByOrder } from './util';\r\nimport useAggregatedPositions, { sortedCustomOptionsFunction } from './hooks/useAggregatedPositions';\r\n\r\nexport function avgPositionStrat(positions: AggregatedPositionDTO[]) {\r\n if (positions === undefined || positions.length <= 0) {\r\n return 0;\r\n }\r\n let openCost = positions\r\n .map(position => position.OpenPrice * position.OpenQuantity * position.OptionMultiplier)\r\n .reduce((a, v) => a + v);\r\n\r\n let combined_by_net_quantities_positions: AggregatedPositionDTO[] = [];\r\n for (let position of positions) {\r\n let position_index = combined_by_net_quantities_positions.findIndex(\r\n combined_by_net_quantities_position => combined_by_net_quantities_position.Symbol === position.Symbol\r\n );\r\n if (position_index === -1) {\r\n combined_by_net_quantities_positions.push({ ...position, OpenQuantity: Math.abs(position.OpenQuantity) });\r\n } else {\r\n combined_by_net_quantities_positions[position_index].OpenQuantity += Math.abs(position.OpenQuantity);\r\n }\r\n }\r\n\r\n const option_positions = combined_by_net_quantities_positions.filter(\r\n position => position.AssetType === AssetType.Option\r\n );\r\n let lowest_net_quantity_options = option_positions.reduce(\r\n (current_net, position) => {\r\n if (position.OpenQuantity * position.OptionMultiplier > current_net) {\r\n return Math.abs(current_net);\r\n }\r\n return position.OpenQuantity * position.OptionMultiplier;\r\n },\r\n option_positions.length > 0 ? option_positions[0].OpenQuantity * option_positions[0].OptionMultiplier : 0\r\n );\r\n\r\n const stock_positions = combined_by_net_quantities_positions.filter(\r\n position => position.AssetType !== AssetType.Option\r\n );\r\n let lowest_net_quantity_stock = stock_positions.reduce(\r\n (current_net, position) => {\r\n if (position.OpenQuantity * position.OptionMultiplier > current_net) {\r\n return Math.abs(current_net);\r\n }\r\n return position.OpenQuantity * position.OptionMultiplier;\r\n },\r\n stock_positions.length > 0 ? stock_positions[0].OpenQuantity * stock_positions[0].OptionMultiplier : 0\r\n );\r\n\r\n return lowest_net_quantity_options !== 0\r\n ? Math.abs(openCost / Math.abs(lowest_net_quantity_options))\r\n : lowest_net_quantity_stock !== 0\r\n ? Math.abs(openCost / Math.abs(lowest_net_quantity_stock))\r\n : 0;\r\n}\r\n\r\n/**\r\n * TODO: This file needs to be refactored a bit when the backend can better support strategies classification\r\n */\r\nexport const PositionLeg: React.FunctionComponent<{\r\n underlyingSymbol: string;\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n subAccountId?: number;\r\n columnOrder?: string[];\r\n}> = ({ underlyingSymbol, size, maxVisibleActions, subAccountId, columnOrder }) => {\r\n const { combineSameSymbols, groupPositionsByStrategy, expandRows } = usePositionSettingsValue();\r\n const settings = {\r\n combineSameSymbols: combineSameSymbols || false,\r\n groupPositionsByStrategy: groupPositionsByStrategy || false,\r\n expandRows: expandRows || false,\r\n columnOrder: [],\r\n };\r\n const shouldGroupByStrategy = !settings.groupPositionsByStrategy; //Need to invert this due to how default works.\r\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\r\n\r\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\r\n underlyingSymbol,\r\n symbolPositions,\r\n settings.combineSameSymbols,\r\n settings.groupPositionsByStrategy,\r\n subAccountId\r\n );\r\n\r\n const groupedPositions = _.groupBy(positions, p => p.OrderId);\r\n const customPositions = _.groupBy(groupedPositions, gp => gp.length === 1);\r\n if (customPositions['true'] !== undefined && customPositions['true'][0] !== undefined) {\r\n customPositions['true'][0][0].StrategyTypeId = OrderStrategyTypeId.Undefined;\r\n }\r\n\r\n let sortedPositions = useMemo(() => {\r\n return positions.sort(sortedCustomOptionsFunction);\r\n }, [positions]);\r\n\r\n const sortedCustomOptions: AggregatedPositionDTO[] = useMemo(() => {\r\n if (customPositions['true'] !== undefined) {\r\n const agg_positions: AggregatedPositionDTO[] = customPositions['true']\r\n .flat()\r\n .filter(pos => pos.AssetType !== AssetType.Equity);\r\n return agg_positions.sort(sortedCustomOptionsFunction);\r\n }\r\n return [];\r\n }, [customPositions['true']]);\r\n\r\n if (shouldGroupByStrategy) {\r\n return (\r\n <>\r\n {customPositions['true'] !== undefined &&\r\n customPositions['true'].flat().filter(pos => pos.AssetType === AssetType.Equity).length > 0 && (\r\n pos.AssetType === AssetType.Equity)\r\n .map(pos => ({ ...pos, StrategyTypeId: OrderStrategyTypeId.Stock }))}\r\n size={size}\r\n maxVisibleActions={maxVisibleActions}\r\n columnOrder={columnOrder}\r\n key={'shares positions'}\r\n expandRows={expandRows}\r\n subAccountId={subAccountId}\r\n />\r\n )}\r\n {customPositions['false'] !== undefined &&\r\n customPositions['false'].flat().length > 0 &&\r\n Object.values(customPositions['false']).map((gPos, i) => (\r\n \r\n ))}\r\n {sortedCustomOptions !== undefined &&\r\n sortedCustomOptions.length > 0 &&\r\n sortedCustomOptions.map((position, i) => (\r\n \r\n ))}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n {sortedPositions.map((p, i) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nfunction StrategySymbology(groupedPosition: AggregatedPositionDTO[]) {\r\n const { StrategyTypeId } = groupedPosition[0];\r\n let strategy = 'Custom';\r\n switch (StrategyTypeId) {\r\n case OrderStrategyTypeId.Stock:\r\n strategy = 'Shares';\r\n return (\r\n
    \r\n
    {strategy}
    \r\n
    \r\n );\r\n case OrderStrategyTypeId.Single:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'}`;\r\n break;\r\n case OrderStrategyTypeId.CoveredCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.CoveredPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.Vertical:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Vertical`;\r\n break;\r\n case OrderStrategyTypeId.Calendar: //Need a Call Calendar:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Calendar`;\r\n break;\r\n case OrderStrategyTypeId.Straddle:\r\n strategy = 'Straddle';\r\n break;\r\n case OrderStrategyTypeId.Strangle:\r\n strategy = 'Strangle';\r\n break;\r\n case OrderStrategyTypeId.Butterfly: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Butterfly`;\r\n break;\r\n case OrderStrategyTypeId.Condor: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Condor`;\r\n break;\r\n case OrderStrategyTypeId.IronButterfly:\r\n strategy = 'Iron Butterfly';\r\n break;\r\n case OrderStrategyTypeId.IronCondor:\r\n strategy = 'Iron Condor';\r\n break;\r\n case OrderStrategyTypeId.Conversion:\r\n strategy = 'Conversion';\r\n break;\r\n case OrderStrategyTypeId.Undefined:\r\n strategy = 'Reversal';\r\n break;\r\n case OrderStrategyTypeId.Box:\r\n strategy = 'Box Spread';\r\n break;\r\n }\r\n\r\n return (\r\n
    \r\n \r\n {`${_.uniq(\r\n groupedPosition.map(p =>\r\n dayjs(parseOccSymbol(p.Symbol).expiration ? parseOccSymbol(p.Symbol).expiration : p.DateOpened).format(\r\n 'MMM DD'\r\n )\r\n )\r\n ).join(', ')}`}\r\n \r\n
    {strategy}
    \r\n \r\n {`${groupedPosition\r\n .map(p => (parseOccSymbol(p.Symbol).strike ? parseOccSymbol(p.Symbol).strike : `${p.OpenQuantity} Shares`))\r\n .join(', ')}`}\r\n \r\n
    \r\n );\r\n}\r\n\r\nexport function StrategyName(groupedPosition: AggregatedPositionDTO[]) {\r\n const { Symbol, StrategyTypeId } = groupedPosition[0];\r\n let strategy = 'Custom';\r\n switch (StrategyTypeId) {\r\n case OrderStrategyTypeId.Stock:\r\n strategy = 'Shares';\r\n break;\r\n case OrderStrategyTypeId.Single:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'}`;\r\n break;\r\n case OrderStrategyTypeId.CoveredCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedCall:\r\n strategy = 'Covered Call';\r\n break;\r\n case OrderStrategyTypeId.MarriedPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.CoveredPut:\r\n strategy = 'Married Put';\r\n break;\r\n case OrderStrategyTypeId.Vertical:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Vertical`;\r\n break;\r\n case OrderStrategyTypeId.Calendar: //Need a Call Calendar:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Calendar`;\r\n break;\r\n case OrderStrategyTypeId.Straddle:\r\n strategy = 'Straddle';\r\n break;\r\n case OrderStrategyTypeId.Strangle:\r\n strategy = 'Strangle';\r\n break;\r\n case OrderStrategyTypeId.Butterfly: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Butterfly`;\r\n break;\r\n case OrderStrategyTypeId.Condor: //Need Call:\r\n strategy = `${groupedPosition.map(p => p.Description.includes('PUT')).includes(true) ? 'Put' : 'Call'} Condor`;\r\n break;\r\n case OrderStrategyTypeId.IronButterfly:\r\n strategy = 'Iron Butterfly';\r\n break;\r\n case OrderStrategyTypeId.IronCondor:\r\n strategy = 'Iron Condor';\r\n break;\r\n case OrderStrategyTypeId.Conversion:\r\n strategy = 'Conversion';\r\n break;\r\n case OrderStrategyTypeId.Undefined:\r\n strategy = 'Reversal';\r\n break;\r\n case OrderStrategyTypeId.Box:\r\n strategy = 'Box Spread';\r\n break;\r\n }\r\n return strategy;\r\n}\r\n\r\nconst isValidPositionStrategy = (positions: AggregatedPositionDTO[]) => {\r\n const stratName = StrategyName(positions);\r\n if (stratName === 'Shares') {\r\n return true;\r\n }\r\n if (stratName === 'Custom') {\r\n return false;\r\n }\r\n let strategy = Strategies.find(s => s.info.Name === stratName);\r\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\r\n return false;\r\n }\r\n\r\n // Handle different directions for calendars\r\n if (strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\r\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\r\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\r\n }\r\n\r\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\r\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n const sortedPositionsLegs = positions.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : a.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : a.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : a.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : b.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : b.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : b.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n\r\n //Lowest common denominator of position quantities\r\n const spreadRatioQuantities = sortedStrategyLegs.map((strategyLeg, legIndex) =>\r\n Math.floor(sortedPositionsLegs[legIndex].OpenQuantity / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1))\r\n );\r\n //Lowest common denominator of position quantities\r\n let lowest_common_denominator = Math.abs(Math.min(...spreadRatioQuantities));\r\n //Highest denominator\r\n let highest_denominator = Math.abs(Math.max(...spreadRatioQuantities));\r\n\r\n const longStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\r\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\r\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\r\n });\r\n\r\n //By default if not bidirectional strategy is not selected, the short side is true;\r\n let shortStrategyValid = true;\r\n if (strategy.profile.Bidirectional) {\r\n //Invert Strategy Legs to see if we are short for a bidirectional type of strategy\r\n sortedStrategyLegs = sortedStrategyLegs.map(leg => ({\r\n ...leg,\r\n Direction: leg.Direction === OrderActionDirection.Long ? OrderActionDirection.Short : OrderActionDirection.Long,\r\n }));\r\n shortStrategyValid = sortedStrategyLegs.every((strategyLeg, legIndex) => {\r\n //If any of our legs are not within the spread radio, then the user broke away from the strategy\r\n return validatePositionLegs(strategyLeg, sortedPositionsLegs[legIndex]);\r\n });\r\n }\r\n\r\n return (longStrategyValid || shortStrategyValid) && lowest_common_denominator === highest_denominator;\r\n};\r\n\r\nexport function countValidStrategyPositions(positions: AggregatedPositionDTO[]) {\r\n const stratName = StrategyName(positions);\r\n if (stratName === 'Shares') {\r\n return 0;\r\n }\r\n if (stratName === 'Custom') {\r\n return 0;\r\n }\r\n let strategy = Strategies.find(s => s.info.Name === stratName);\r\n if (strategy === undefined || positions.length !== strategy.profile.Legs.length) {\r\n return 0;\r\n }\r\n\r\n // Handle different directions for calendars\r\n if (strategy.profile.Rules.Direction === DirectionRules.DifferentDirections) {\r\n strategy.profile.Legs[0].Direction = OrderActionDirection.Long;\r\n strategy.profile.Legs[1].Direction = OrderActionDirection.Short;\r\n }\r\n\r\n //Sort order, Equities, CALLS, Short CALLS, PUTS, Short PUTS, on strategy legs and position legs\r\n let sortedStrategyLegs = strategy.profile.Legs.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : a.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : a.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Long\r\n ? 1\r\n : b.OptionType === OptionType.Call && a.Direction === OrderActionDirection.Short\r\n ? 2\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Long\r\n ? 3\r\n : b.OptionType === OptionType.Put && a.Direction === OrderActionDirection.Short\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n const sortedPositionsLegs = positions.sort((a, b) => {\r\n let aWeight =\r\n a.AssetType === AssetType.Equity\r\n ? 0\r\n : a.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : a.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : a.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : a.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n let bWeight =\r\n b.AssetType === AssetType.Equity\r\n ? 0\r\n : b.Description.includes('CALL') && a.OpenQuantity > 0\r\n ? 1\r\n : b.Description.includes('CALL') && a.OpenQuantity < 0\r\n ? 2\r\n : b.Description.includes('PUT') && a.OpenQuantity > 0\r\n ? 3\r\n : b.Description.includes('PUT') && a.OpenQuantity < 0\r\n ? 4\r\n : 5;\r\n return aWeight - bWeight;\r\n });\r\n\r\n //Lowest common denominator of position quantities\r\n const spreadRatioQuantities = sortedStrategyLegs.map((strategyLeg, legIndex) =>\r\n Math.floor(sortedPositionsLegs[legIndex].OpenQuantity / (strategyLeg.SpreadRatio ? strategyLeg.SpreadRatio : 1))\r\n );\r\n //Lowest common denominator of position quantities\r\n let lowest_common_denominator = Math.abs(Math.min(...spreadRatioQuantities));\r\n\r\n return lowest_common_denominator;\r\n}\r\n\r\nexport function validatePositionLegs(strategyLeg: TradingStrategyLeg, legPosition: AggregatedPositionDTO) {\r\n if (strategyLeg.SpreadRatio && legPosition.OpenQuantity % strategyLeg.SpreadRatio !== 0) {\r\n return false;\r\n }\r\n //Equities are valid legs, no need to validate them.\r\n if (strategyLeg.AssetType === AssetType.Equity && legPosition.AssetType === AssetType.Equity) {\r\n return true;\r\n }\r\n\r\n const positionOptionType: OptionType = legPosition.Description.includes('CALL') ? OptionType.Call : OptionType.Put;\r\n const positionDirection: OrderActionDirection =\r\n legPosition.OpenQuantity > 0 ? OrderActionDirection.Long : OrderActionDirection.Short;\r\n return (\r\n strategyLeg.AssetType === legPosition.AssetType &&\r\n strategyLeg.OptionType === positionOptionType &&\r\n strategyLeg.Direction === positionDirection\r\n );\r\n}\r\n\r\nconst GroupedStrategyPosition = ({\r\n groupedPosition,\r\n size,\r\n maxVisibleActions,\r\n columnOrder,\r\n expandRows,\r\n subAccountId,\r\n}: {\r\n groupedPosition: AggregatedPositionDTO[];\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n columnOrder?: string[];\r\n expandRows?: boolean;\r\n subAccountId?: number;\r\n}) => {\r\n const [expandStratPosition, setExpandStratPosition] = useState(false);\r\n const feedQuotes = useQuoteMetadata(groupedPosition.map(p => p.Symbol));\r\n const performance = useMemo(\r\n () =>\r\n aggregatedSymbolPosition(\r\n groupedPosition,\r\n QuoteDataToPartialQuote(feedQuotes as any),\r\n groupedPosition[0].UnderlyingSymbol\r\n ),\r\n [groupedPosition, feedQuotes]\r\n );\r\n const posInfo = usePositionInfo(groupedPosition);\r\n const {\r\n Change,\r\n Description,\r\n Last,\r\n PrevClose,\r\n Ask,\r\n Close,\r\n Bid,\r\n Gain,\r\n Options,\r\n Cost,\r\n Percent,\r\n Value,\r\n Shares,\r\n PNL,\r\n AvgPrice,\r\n } = usePositionSettingsValue();\r\n if (groupedPosition.length === 1) {\r\n if (!groupedPosition[0].Description) {\r\n groupedPosition[0].Description = 'Stock';\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Stock;\r\n }\r\n if (groupedPosition[0].Description.includes('CALL')) {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Single;\r\n } else if (groupedPosition[0].Description.includes('PUT')) {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Single;\r\n } else {\r\n groupedPosition[0].StrategyTypeId = OrderStrategyTypeId.Stock;\r\n }\r\n }\r\n\r\n const isValidStrategy = useMemo(() => {\r\n return isValidPositionStrategy(groupedPosition);\r\n }, [groupedPosition]);\r\n const strategyCount = useMemo(() => {\r\n return countValidStrategyPositions(groupedPosition);\r\n }, [groupedPosition]);\r\n useEffect(() => {\r\n if (expandRows) {\r\n setExpandStratPosition(true);\r\n } else {\r\n setExpandStratPosition(false);\r\n }\r\n }, [expandRows]);\r\n\r\n const subRowColumns = useMemo(() => {\r\n const columns = [\r\n {\r\n setExpandStratPosition(!expandStratPosition);\r\n }}\r\n >\r\n \r\n
    \r\n {isValidStrategy ? (\r\n StrategySymbology(groupedPosition)\r\n ) : (\r\n
    \r\n \r\n {`${_.uniq(\r\n groupedPosition.map(p =>\r\n dayjs(\r\n parseOccSymbol(p.Symbol).expiration ? parseOccSymbol(p.Symbol).expiration : p.DateOpened\r\n ).format('MMM DD')\r\n )\r\n ).join(', ')}`}\r\n \r\n
    {'Custom'}
    \r\n \r\n {`${groupedPosition\r\n .map(p =>\r\n parseOccSymbol(p.Symbol).strike ? parseOccSymbol(p.Symbol).strike : `${p.OpenQuantity} Shares`\r\n )\r\n .join(', ')}`}\r\n \r\n
    \r\n )}\r\n
    \r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n \r\n p.PositionIds).join('-')}`}\r\n position={groupedPosition}\r\n />\r\n ,\r\n ];\r\n\r\n sortColumnsByOrder(columns, columnOrder ? columnOrder : []);\r\n return columns;\r\n }, [groupedPosition, posInfo, performance, expandStratPosition, columnOrder]);\r\n\r\n return (\r\n <>\r\n \r\n {subRowColumns.map((col, i) => (\r\n {col}\r\n ))}\r\n \r\n {expandStratPosition &&\r\n groupedPosition.map((p: any, i: any) => (\r\n \r\n ))}\r\n \r\n );\r\n};\r\n\r\nconst PositionLegRow: React.FunctionComponent<{\r\n position: AggregatedPositionDTO;\r\n size: SizeType;\r\n maxVisibleActions: number;\r\n color?: string;\r\n indentMargin?: number;\r\n columnOrder?: string[];\r\n subAccountId?: number;\r\n}> = ({ position, size, maxVisibleActions, color, indentMargin, columnOrder, subAccountId }) => {\r\n const [symbol, underlyingSymbol, assetType] = [position.Symbol, position.UnderlyingSymbol, position.AssetType];\r\n const feedQuote = useFeedQuoteWithMetadata(symbol.replace(';', ''));\r\n const {\r\n Change,\r\n Description,\r\n Last,\r\n Ask,\r\n PrevClose,\r\n Close,\r\n Bid,\r\n Gain,\r\n Options,\r\n Cost,\r\n Percent,\r\n Value,\r\n Shares,\r\n PNL,\r\n AvgPrice,\r\n } = usePositionSettingsValue();\r\n const assetSymbol = useMemo(\r\n () =>\r\n toAssetSymbol(position.Symbol, assetType, AssetTypeToSymbolType(assetType), {\r\n name: underlyingSymbol,\r\n underlyingSymbol,\r\n rootSymbol: underlyingSymbol,\r\n }),\r\n [position.Symbol, assetType, underlyingSymbol]\r\n );\r\n const performance = useMemo(() => positionToPerformance(position, feedQuote), [position, feedQuote]);\r\n const optionData = useMemo(() => OCCSymbolToOptionData(symbol), [symbol]);\r\n\r\n const tradeData = useMemo(() => {\r\n const optionType = optionData.option;\r\n const strike = optionData.strike;\r\n const expiration = optionData.expiration;\r\n // for custom strategy, quantity is stored in spreadRatio\r\n const openQuantity = Math.abs(position.OpenQuantity);\r\n const assetType = optionType ? AssetType.Option : AssetType.Equity;\r\n const action = position.OpenQuantity > 0 ? OrderAction.Sell : OrderAction.Buy;\r\n const optionExpirationType = deriveOptionExpirationType(assetSymbol.symbol, assetSymbol.underlyingSymbol || '');\r\n const legs = DefaultLegs({}, assetSymbol, {\r\n assetType,\r\n optionType,\r\n orderAction: action,\r\n strike,\r\n expiration: expiration ? toExpiration(expiration, assetSymbol.symbol, optionExpirationType) : undefined,\r\n });\r\n return { legs, action, quantity: openQuantity };\r\n }, [assetSymbol, position, optionData]);\r\n\r\n const tdClass = getTableTdClass(size);\r\n const { combineSameSymbols } = usePositionSettingsValue();\r\n\r\n const isShare = useMemo(() => _.isNil(position.meta.OptionExpirationType), [position]);\r\n const combinedShares = combineSameSymbols && isShare;\r\n\r\n const subRowColumns = useMemo(() => {\r\n const columns = [\r\n \r\n {combinedShares && <>{position.Symbol}}\r\n {!combinedShares && (\r\n \r\n )}\r\n {isOCCSymbol(symbol) && }\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n ,\r\n \r\n {position.AssetType === AssetType.MoneyMarket || position.AssetType === AssetType.MutualFund ? (\r\n
    \r\n \r\n Legacy Support Only\r\n \r\n
    \r\n ) : (\r\n \r\n )}\r\n
    ,\r\n ];\r\n sortColumnsByOrder(columns, columnOrder ? columnOrder : []);\r\n return columns;\r\n }, [\r\n position,\r\n tradeData,\r\n optionData,\r\n combinedShares,\r\n size,\r\n indentMargin,\r\n performance,\r\n maxVisibleActions,\r\n columnOrder,\r\n combineSameSymbols,\r\n ]);\r\n return (\r\n \r\n {subRowColumns.map((column, i) => (\r\n {column}\r\n ))}\r\n \r\n );\r\n};\r\n","import React, { FC, useState, useCallback } from 'react';\n\ninterface PositionDropdownProps {\n expandRow?: boolean;\n children?: React.ReactNode;\n}\n\n/**\n * This is the dropdown that shows each individual position for the top-level position\n */\nexport const PositionDropdown: FC = ({ expandRow, children }) => {\n const [arrow, setArrow] = useState(expandRow ? 'down' : 'right');\n const toggle = useCallback(() => {\n setArrow(arrow === 'right' ? 'down' : 'right');\n }, [arrow, setArrow]);\n\n return (\n <>\n \n \n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport _ from 'lodash';\nimport { BasicSelect, OptionType } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { UIActions } from '../../data/global/actions';\n\nexport const SubAccountFilter: React.FunctionComponent<{\n setSubAccountId: (subAccountId: number) => void;\n className?: string;\n}> = ({ setSubAccountId, className }) => {\n const subAccounts = useStateSelector(s => s.account.subaccounts.subaccounts) || [];\n const subAccountIds = subAccounts.map(s => {\n const { Id, Nickname } = s;\n return {\n label: Nickname,\n id: Id.toString(),\n data: Id.toString(),\n };\n });\n const accountOptions: OptionType[] = subAccountIds\n .map((s: any) => ({\n value: s.id,\n label: s.label,\n data: s.data,\n }))\n .reverse()\n .concat([{ value: 'All', label: 'All', data: '-1' }])\n .reverse();\n\n const currentAccount = useMemo(() => {\n const firstAccount = _.first(accountOptions);\n if (firstAccount) {\n return firstAccount.label;\n }\n const defaultAccount = { value: 'All', label: 'All', data: '-1' };\n return defaultAccount;\n }, [accountOptions]);\n\n const dispatch = useDispatch();\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n const subAccountFilterIdAccount = subAccountFilterId\n ? accountOptions.find(a => a.value === subAccountFilterId.toString()) || { value: 'All', label: 'All', data: '-1' }\n : null;\n\n const onSubAccountChange = useCallback(\n (val: OptionType | null | undefined) => {\n const subAccountId = _.isNil(val) ? undefined : parseInt(val.data);\n if (subAccountId) {\n setSubAccountId(subAccountId);\n dispatch(UIActions.setSubAccountFilterId({ id: subAccountId }));\n }\n },\n [setSubAccountId]\n );\n\n useEffect(() => {\n if (subAccountFilterId) {\n setSubAccountId(subAccountFilterId);\n }\n }, [subAccountFilterId]);\n\n return (\n
    \n
    \n \n
    \n
    \n );\n};\n","import _ from 'lodash';\n\nimport { OrderAction, ProfitLossInfoMap, SymbolProfitLossInfo, Order } from '@tradingblock/types';\n\nimport { QuotesState } from '../../state';\n\nimport { PositionDTO } from '@tradingblock/api';\nimport { OrderLegWithOrderData } from './types';\n\nexport const utilities = {\n getNetQuantityChange: (legs: OrderLegWithOrderData[]) =>\n _(legs)\n .map(l => (l.Action === OrderAction.Buy ? l.LegFillQuantity || 0 : -1 * (l.LegFillQuantity || 0)))\n .sum() || 0,\n toArray: (arg: ProfitLossInfoMap | SymbolProfitLossInfo[], type: string) => (_.isArray(arg) ? arg : _.map(arg, (v, k) => ({ ...v, id: k, pnlType: type }))),\n getQuoteForSymbol: (state: QuotesState) => (symbol: string) => _.find(state.quoteMetadata.data, q => q.Symbol === symbol),\n ordersToExecutedOrderLegs: (orders: Order[]) => _.flatMap(orders, o => o.Legs.map(l => ({ ...l, UnderlyingSymbol: o.UnderlyingSymbol, OrderId: o.OrderId, Date: o.Date }))).filter(ol => !_.isNil(ol.LegFillQuantity) && ol.LegFillQuantity !== 0),\n totalQuantityBySymbol: (positions: PositionDTO[], symbol: string) =>\n _(positions)\n .filter(p => p.Symbol === symbol)\n .map(p => p.OpenQuantity)\n .sum() || 0,\n};\n","import { QuotesState } from '../../state';\nimport { Order, ProfitLossInfoMap } from '@tradingblock/types';\nimport { PositionDTO, pnlByPrice, getBestPrice, orderLegTradingPnL, isOptionSymbol } from '@tradingblock/api';\nimport _ from 'lodash';\nimport { utilities } from './utilities';\n\nexport const SymbolPnLReducer = (\n quoteState: QuotesState,\n orders: Order[],\n allPositions: PositionDTO[]\n): ProfitLossInfoMap => {\n const quo = utilities.getQuoteForSymbol(quoteState);\n const orderLegs = utilities.ordersToExecutedOrderLegs(orders);\n const symbolsWithPositions = allPositions.map(p => p.Symbol);\n const symbolsWithOrders = _.map(orderLegs, o => o.Symbol);\n\n const allSymbols = _(symbolsWithPositions)\n .union(symbolsWithOrders)\n .uniq()\n .value();\n const symbolPnls: ProfitLossInfoMap = _(allSymbols).reduce((acc: ProfitLossInfoMap, symbol: string) => {\n const positions = allPositions.filter(p => p.Symbol === symbol);\n const legs = _.filter(orderLegs, o => o.Symbol === symbol);\n const underlyingSymbol =\n positions.length > 0 ? positions[0].UnderlyingSymbol : legs.length > 0 ? legs[0].UnderlyingSymbol : symbol;\n const netQuantityChange = utilities.getNetQuantityChange(legs);\n const positionQuantityNow = _.sum(positions.map(p => p.OpenQuantity)) || 0;\n const positionOnOpen = positionQuantityNow - netQuantityChange;\n const quote = quo(symbol);\n const optionMultiplier = quote && quote.Multiplier ? quote.Multiplier : 1;\n const closePrice =\n quote && quote.IsSettlementSet ? quote.ClosePriceTMinus2 : quote && quote.ClosePrice ? quote.ClosePrice : quote && quote.LastOrClosePrice ? quote.LastOrClosePrice : 0;\n if (_.isNil(quote)) {\n // console.warn(symbol, 'quote not loaded. Defaulting symbol pnl');\n return acc;\n }\n if (positions.length === 0 && legs.length === 0) {\n return acc;\n }\n\n const quoteInfo = {\n AskPrice: quote.AskPrice,\n BidPrice: quote.BidPrice,\n LastOrClosePrice: quote.LastOrClosePrice,\n Multiplier: quote.Multiplier,\n isSettlementSet: quote.IsSettlementSet,\n };\n let positionPnl = pnlByPrice(\n {\n ...quoteInfo,\n PositionOnOpen: positionOnOpen,\n Symbol: symbol,\n },\n closePrice\n );\n\n const tradingPnlInfo = orderLegTradingPnL(quote, legs);\n const trading = tradingPnlInfo.pnl;\n\n const total = trading + positionPnl;\n if (_.isNaN(positionPnl)) {\n // console.warn(symbol, 'invalid symbol pnl', positionPnl, {\n // legs,\n // positions,\n // calculated: {\n // trading: trading,\n // tradingFromPositions: positionTradingPnL,\n // },\n // quote: {\n // AskPrice: quote.AskPrice,\n // BidPrice: quote.BidPrice,\n // LastOrClosePrice: quote.LastOrClosePrice,\n // },\n // PositionOnOpen: positionOnOpen,\n // closePrice,\n // });\n }\n return {\n ...acc,\n [symbol]: { trading, position: positionPnl, total, symbol: symbol, underlyingSymbol },\n };\n }, {});\n // const orderLegsForSymbolsWithoutPositions = orderLegs.filter(o => !symbolsWithPositions.includes(o.Symbol));\n // const orderPnls = tradingPnlReducer(quoteState, orderLegs, positions);\n\n // const positionsBySymbol = _.reduce(\n // { ...positionPnls, ...orderPnls },\n // (acc: ProfitLossInfoMap, v: BasicSymbolProfitLossInfo): ProfitLossInfoMap => {\n // const existing = acc[v.symbol] || { trading: 0, position: 0, total: 0, symbol: v.symbol, underlyingSymbol: v.underlyingSymbol };\n // // const trading = existing.trading + v.trading;\n // const trading = orderPnls[v.symbol] ? orderPnls[v.symbol].trading : 0;\n // const position = existing.position + v.position;\n // return {\n // ...acc,\n // [v.symbol]: {\n // ...existing,\n // trading,\n // position,\n // total: trading + position,\n // },\n // };\n // },\n // {}\n // );\n return symbolPnls;\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Row, Cell } from 'react-table';\nimport _ from 'lodash';\nimport {\n PositionPerformanceInfo,\n SizeType,\n OrderAction,\n AssetType,\n BlockType,\n ProfitLossInfoMap,\n AggregatedProfitLossInfo,\n BasicSymbolProfitLossInfo,\n} from '@tradingblock/types';\nimport {\n Number,\n CellWithExpandedToggleProps,\n SignedNumber,\n useTableColumnWidths,\n Loading,\n EmptyBlockContent,\n TradingBlockLink,\n} from '@tradingblock/components';\nimport {\n OrderBuilderType,\n Shares,\n CustomStrategy,\n AssetTypeToSymbolType,\n toAssetSymbol,\n isOCCSymbol,\n PositionDTO,\n PartialQuote,\n TodaysFilledOrders,\n AggregatedPositionDTO,\n} from '@tradingblock/api';\nimport { DirectionalPrice } from '../../../components/trading/DirectionalPrice';\nimport { useOrderBlockWithOrder } from '../../../components/blocks/hooks/useOrderBlock';\nimport { useChartSymbolAction, PriceChartBuilderType } from '../../../components/blocks/hooks/usePriceChartBlock';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { getAllPositionInfo, getPositionsFromSymbol } from '../../../data/global/selectors/positionSelector';\nimport { BlockTable } from '../../shared/BlockTable';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { PositionActions } from '../PositionActions';\nimport { avgPositionStrat, PositionLeg } from '../PositionLeg';\nimport { PositionDropdown } from './PositionDropdown';\nimport { SubAccountFilter } from '../../shared/SubAccountFilter';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { account } from '../../../data/global/selectors/accountSelectors';\nimport { Config } from '../../../config';\nimport { AccountApiFactory } from '@tradingblock/api';\nimport { SymbolPosition, SymbolPositions } from '../../../types';\nimport { PositionPerformanceWithPnL, QuoteSymbolQuotes } from '../../../data/global/state';\nimport { aggregatedSymbolPosition, QuoteDataToPartialQuote } from '../../../data/global/selectors/transforms';\nimport { positionToInfo } from '../../../utilities/position';\nimport { SymbolPnLReducer } from '../../../data/global/sliceReducers/performance/performanceBySymbolReducer';\nimport { sumNumbers } from '../../../utilities/data';\nimport { usePositionSettingsValue } from '../usePositionSettings';\nimport useAggregatedPositions from '../hooks/useAggregatedPositions';\nimport { calculatePositionCostValue } from '../util';\nimport { UIActions } from '../../../data/global/actions';\n\nexport const PositionTable: React.FC<{\n setTotalGain: (totalGain: number | undefined) => void;\n setDailyPnl: (dailyPnl: number | undefined) => void;\n}> = ({ setDailyPnl, setTotalGain }) => {\n const { groupId } = useBlockGroupInfo();\n const data = useStateSelector(getAllPositionInfo);\n const [tableSize, setTableSize] = useState();\n const wideTable = useMemo(() => tableSize === SizeType.lg, [tableSize]);\n const maxVisibleActions = useMemo(() => (wideTable ? 3 : 0), [wideTable]);\n\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n // redux states\n const quotes = useStateSelector(state => state.quotes.quoteMetadata.data);\n const performance = useStateSelector(state => state.performance.positions);\n const hasSubAccounts = useStateSelector(\n s => s.account.subaccounts.subaccounts && s.account.subaccounts.subaccounts.length > 0\n );\n const subId = useStateSelector(state => state.account.subAccountId);\n const orders = useStateSelector(state => state.account.orders);\n const quoteState = useStateSelector(state => state.quotes);\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n\n // useStates for handling sub account filter\n const [selectedSubAccountId, setSelectedSubAccountId] = useState(undefined);\n const [selectedSubAccountPositions, setSelectedSubAccountPositions] = useState([]);\n const [selectedSubAccountData, setSelectedSubAccountData] = useState([]);\n const [positionsRequested, setPositionsRequested] = useState(false);\n const positions = useStateSelector(state => state.positions.positions);\n const subAccountBalances = useStateSelector(s => s.accountData.subAccountsBalances);\n const masterSubAccount = useStateSelector(\n state => state.account.subaccounts.subaccounts && state.account.subaccounts.subaccounts.find(s => s.IsMaster)\n );\n const dispatch = useDispatch();\n\n // if a sub account is selected, use the sub account positions and data\n const tableData = !selectedSubAccountId ? data : selectedSubAccountData;\n const accountApi = useMemo(() => {\n if (accountId && token && !selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && apiRootUrl && token && selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId, selectedSubAccountId);\n }\n }, [selectedSubAccountId]);\n\n const positionSettingsValueObject = usePositionSettingsValue();\n const columnSettingsChange = useMemo(\n () => positionSettingsValueObject && Object.entries(positionSettingsValueObject).flat(1),\n [positionSettingsValueObject]\n );\n const initialState = useMemo(() => {\n return {\n pageIndex: 0,\n sortBy: ['expander'],\n hiddenColumns: [\n !positionSettingsValueObject.Description && 'description',\n !positionSettingsValueObject.Last && 'last',\n !positionSettingsValueObject.Change && 'change',\n !positionSettingsValueObject.Percent && '%',\n !positionSettingsValueObject.PNL && 'Daily P/L',\n !positionSettingsValueObject.Gain && 'Gain',\n !positionSettingsValueObject.Value && 'Value',\n !positionSettingsValueObject.Cost && 'Cost',\n !positionSettingsValueObject.Options && 'options',\n !positionSettingsValueObject.Shares && 'shares',\n !positionSettingsValueObject.AvgPrice && 'avg_price',\n !positionSettingsValueObject.Close && 'Settlement',\n !positionSettingsValueObject.PrevClose && 'close',\n !positionSettingsValueObject.Ask && 'ask',\n !positionSettingsValueObject.Bid && 'bid',\n ],\n } as any;\n }, [columnSettingsChange]);\n\n // This is put into place to refresh the Position block when there is a change to the subaccount positions.\n useEffect(() => {\n // This only needs to refresh when there is a selectedSubAccountId\n if (selectedSubAccountId) {\n const tempSubId = selectedSubAccountId;\n if (positions) {\n // Checking if positions have been journaled into/away from the selected subaccount\n const fetchedSelectedSubPos = positions.filter(p => p.SubaccountId && p.SubaccountId === tempSubId);\n if (fetchedSelectedSubPos.length !== selectedSubAccountPositions.length) {\n setSubAccountId(-1);\n setTimeout(() => setSubAccountId(tempSubId), 500);\n }\n }\n }\n }, [subAccountBalances, positions]);\n\n useEffect(() => {\n if (!hasSubAccounts && subAccountFilterId) {\n dispatch(UIActions.setSubAccountFilterId({ id: -1 }));\n setSubAccountId(-1);\n }\n }, [hasSubAccounts]);\n\n useEffect(() => {\n if (!subAccountFilterId) {\n setSelectedSubAccountId(undefined);\n setTotalGain(undefined);\n setDailyPnl(undefined);\n setSelectedSubAccountPositions([]);\n setPositionsRequested(false);\n }\n }, [subAccountFilterId]);\n\n // functions to transform sub account position data into table data\n const setSubAccountId = async (subAccountId: number) => {\n if (subAccountId) {\n if (subAccountId === -1) {\n setSelectedSubAccountId(undefined);\n setTotalGain(undefined);\n setDailyPnl(undefined);\n } else {\n setSelectedSubAccountId(subAccountId);\n }\n setSelectedSubAccountPositions([]);\n setPositionsRequested(false);\n }\n };\n\n const setSubAccountData = async (data: PositionPerformanceInfo[]) => {\n if (data) {\n setSelectedSubAccountData(data);\n }\n };\n\n const getSubAccountPositions = async () => {\n if (accountApi && selectedSubAccountId && selectedSubAccountPositions.length === 0 && !positionsRequested) {\n const positions = await accountApi.positions();\n setSelectedSubAccountPositions(positions.payload);\n setPositionsRequested(true);\n return positions.payload;\n }\n };\n\n const getSubAccountPositionsFromSymbol = async (positions: PositionDTO[]) => {\n const subPositions = _.reduce(\n positions,\n (acc: SymbolPositions, pos: PositionDTO): SymbolPositions => {\n // To make sure that options and common stock fall under the same category, group it buy the underlying symbol,\n // otherwise, if grouped by symbol, the symbols wont match (options have an id in the symbol name while common stock don't)\n const underlyingSymbol = pos.UnderlyingSymbol;\n const DEFAULTVALUE = { shares: 0, value: 0, positions: [], symbol: underlyingSymbol, options: 0 };\n let symbolValue = acc[underlyingSymbol] || DEFAULTVALUE;\n // If the accumulated object doesn't have a symbol, assign it default values.\n // if (!acc.hasOwnProperty(sym)) Object.assign({ [sym]: [pos], symbol: sym }, acc);\n // If the AssetType is common stock\n const isEquity = pos.AssetType === AssetType.Equity;\n // Aggregate the shares and values of the stock\n return {\n ...acc,\n [underlyingSymbol]: {\n ...symbolValue,\n shares: isEquity ? symbolValue.shares + pos.OpenQuantity : symbolValue.shares,\n options: isEquity ? symbolValue.options : symbolValue.options + pos.OpenQuantity,\n // value: symbolValue.value + pos.OpenPrice,\n positions: [...symbolValue.positions, pos],\n },\n };\n },\n {}\n );\n return subPositions;\n };\n\n const getSubAccountPositionQuotes = async (quotes: QuoteSymbolQuotes, positions: PositionDTO[]) => {\n const uniquePositions = _(positions)\n .map(p => [p.Symbol, p.UnderlyingSymbol])\n .flatMap()\n .uniq()\n .value();\n const quotesData = _.filter(quotes, (v, k: string) => uniquePositions.includes(k));\n const partialQuote = QuoteDataToPartialQuote(quotesData);\n return partialQuote;\n };\n\n const getSubAccountPositionsAndQuotes = async () => {\n if (accountApi && selectedSubAccountId) {\n const positionResponse =\n selectedSubAccountPositions && selectedSubAccountPositions.length > 0\n ? selectedSubAccountPositions\n : await getSubAccountPositions();\n\n if (positionResponse) {\n const subPositions = await getSubAccountPositionsFromSymbol(positionResponse);\n const subQuotes = await getSubAccountPositionQuotes(quotes, positionResponse);\n const subData = await getSubAccountPositionsWithPerformance(subPositions, subQuotes);\n\n const todaysOrders =\n orders &&\n TodaysFilledOrders(orders).filter(o =>\n selectedSubAccountId !== -1 ? o.SubaccountId === selectedSubAccountId : o\n );\n\n const bySymbol = todaysOrders && SymbolPnLReducer(quoteState, todaysOrders, positionResponse);\n\n const all = bySymbol && (await getAggregatedTotals(bySymbol));\n\n if (all) {\n const { total } = all;\n setDailyPnl(total);\n }\n return subData;\n }\n }\n };\n\n const getAggregatedTotals = async (pnlMap: ProfitLossInfoMap) =>\n _.reduce(\n pnlMap,\n (acc: AggregatedProfitLossInfo, v: BasicSymbolProfitLossInfo): AggregatedProfitLossInfo => {\n const trading = acc.trading + v.trading;\n const position = acc.position + v.position;\n const total = trading + position;\n return {\n pnls: [...acc.pnls, v],\n trading,\n position,\n total,\n };\n },\n { trading: 0, position: 0, total: 0, pnls: [] }\n );\n\n const getSubAccountPositionsWithPerformance = async (subPositions: SymbolPositions, subQuotes: PartialQuote[]) => {\n const positionsWithPerformance = _.reduce(\n subPositions,\n (res, pos: SymbolPosition, key: string): SymbolPositions => {\n const posIds = _.map(pos.positions, p => p.PositionId);\n const aggregatedPnl = _.reduce(\n performance,\n (acc, pp, key) => {\n if (!posIds.includes(_.toString(key))) {\n return acc;\n }\n\n return {\n pnl: acc.pnl + pp.pnl,\n };\n },\n { pnl: 0 }\n );\n const curr: PositionPerformanceWithPnL = {\n ...aggregatedSymbolPosition(pos.positions, subQuotes, key),\n pnl: aggregatedPnl.pnl,\n };\n return {\n ...res,\n [key]: curr,\n };\n },\n {}\n );\n const data = _.map(positionsWithPerformance, (v, k) => {\n return positionToInfo(v);\n });\n await setSubAccountData(data);\n\n const totalGain =\n data &&\n sumNumbers(\n _.map(data, d => {\n if (d.symbol.assetType === AssetType.MoneyMarket) {\n return 0;\n }\n return d.totalGain;\n })\n );\n setTotalGain(totalGain);\n return data;\n };\n\n const [tableStateColumnOrder, setTableStateColumnOrder] = useState([]);\n const getColumnOrder = useCallback(\n (columnOrder: string[]) => {\n setTableStateColumnOrder(columnOrder);\n },\n [setTableStateColumnOrder, positionSettingsValueObject]\n );\n\n const columns: any[] = useMemo(\n () => [\n {\n Header: 'Symbol',\n accessor: (a: PositionPerformanceInfo) => a.underlyingSymbol,\n id: 'expander',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: CellWithExpandedToggleProps) => {\n return (\n \n \n {row.original.underlyingSymbol}\n \n \n );\n },\n },\n {\n Header: 'Description',\n accessor: (a: PositionPerformanceInfo) => a.description,\n id: 'description',\n width: 2,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return <>{row.original.description};\n },\n },\n {\n Header: 'Last',\n accessor: (a: PositionPerformanceInfo) => a.lastTradePrice,\n id: 'last',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => (\n \n ),\n },\n {\n Header: 'Change',\n accessor: (a: PositionPerformanceInfo) => a.change,\n id: 'change',\n Cell: ({ row }: Cell) => {\n if (isNaN(row.original.change)) return ;\n return ;\n },\n },\n {\n Header: '(%)',\n accessor: (a: PositionPerformanceInfo) => a.changePerc,\n id: '%',\n width: 0.7,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (isNaN(row.original.changePerc)) return ;\n return ;\n },\n },\n {\n Header: 'Bid',\n accessor: (a: PositionPerformanceInfo) => a.bid,\n id: 'bid',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return <>;\n }\n return ;\n },\n },\n {\n Header: 'Ask',\n accessor: (a: PositionPerformanceInfo) => a.ask,\n id: 'ask',\n width: 0.7,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return <>;\n }\n return ;\n },\n },\n {\n Header: 'Prev. Close',\n accessor: (a: PositionPerformanceInfo) => a.close,\n id: 'close',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (row.original.IsSettlementSet) {\n return ;\n } else return ;\n },\n },\n {\n Header: 'Close',\n accessor: (a: PositionPerformanceInfo) => a.IsSettlementSet,\n id: 'Settlement',\n canSort: true,\n Cell: ({ row }: Cell) => {\n const isSettled = row.original.IsSettlementSet;\n return isSettled ? (\n \n ) : (\n \n );\n },\n },\n {\n Header: 'Avg Price',\n accessor: (a: PositionPerformanceInfo) => a.bid,\n id: 'avg_price',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const symbolPositions: SymbolPositions = useStateSelector(getPositionsFromSymbol);\n const positions: AggregatedPositionDTO[] = useAggregatedPositions(\n row.original.underlyingSymbol,\n symbolPositions,\n true,\n false,\n selectedSubAccountId\n );\n\n if (positions.length > 1) {\n return <>;\n }\n\n return ;\n },\n },\n\n {\n Header: () => {\n return
    Shares
    ;\n },\n accessor: (a: PositionPerformanceInfo) => a.quantity,\n id: 'shares',\n width: 0.4,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return (\n
    \n {!_.isUndefined(row.original.sharesSum) && }\n
    \n );\n }\n\n return (\n
    \n {!_.isUndefined(row.original.sharesSum) && }\n
    \n );\n },\n },\n {\n Header: wideTable ? 'Options' : 'Opts',\n accessor: (a: PositionPerformanceInfo) => a.optionsCount,\n id: 'options',\n width: 0.5,\n canSort: true,\n sortType: 'alphanumeric',\n className: 'text-center',\n Cell: ({ row }: Cell) => (\n
    {row.original.optionsCount > 0 && }
    \n ),\n },\n {\n Header: 'Cost',\n accessor: (a: PositionPerformanceInfo) => a.cost,\n id: 'Cost',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const positionCostValue = row.original.commission\n ? row.original.cost - row.original.commission\n : row.original.cost;\n\n return ;\n },\n },\n {\n Header: 'Value',\n accessor: (a: PositionPerformanceInfo) => a.value,\n id: 'Value',\n width: 1.1,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Gain',\n accessor: (a: PositionPerformanceInfo) => a.totalGain,\n id: 'Gain',\n width: 1.1,\n Cell: ({ row }: Cell) => {\n if (row.original.symbol.assetType === AssetType.MoneyMarket) {\n return ;\n }\n const gain =\n row.original.commission && !row.original.IsSettlementSet\n ? row.original.totalGain + row.original.commission\n : row.original.totalGain;\n\n return ;\n },\n },\n {\n Header: 'Daily P/L',\n accessor: (a: PositionPerformanceInfo) => a.pnl,\n id: 'Daily P/L',\n Cell: ({ row }: Cell) => {\n if (row.original.symbol.assetType === AssetType.MoneyMarket) {\n return ;\n }\n const pnl = row.original.pnl;\n return _.isNaN(pnl) ? <> : ;\n },\n },\n {\n Header: 'Actions',\n accessor: 'action',\n width: wideTable ? 1.2 : 0.6,\n id: 'Actions',\n Cell: ({ row }: Cell) => {\n const { symbol, sharesSum } = row.original;\n const noShareLegs = sharesSum === undefined || sharesSum === 0;\n const rawQuantity = sharesSum || 1;\n const isShort = rawQuantity < 0;\n const orderAndLegAction = isShort || noShareLegs ? OrderAction.Buy : OrderAction.Sell;\n const assetSymbol = row.original.symbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: underlyingSymbol, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const isOCC = isOCCSymbol(assetSymbol.symbol);\n const priceChartBuilder = useCallback((builder: PriceChartBuilderType) => {\n return builder;\n }, []);\n\n const handleCloseClick = useOrderBlockWithOrder(\n (builder: OrderBuilderType) => {\n let quantity = Math.abs(rawQuantity);\n\n if (quantity < 1) {\n quantity = Math.ceil(quantity);\n } else {\n quantity = Math.floor(quantity);\n }\n\n return builder\n .symbol(symbol)\n .strategy(Shares)\n .quantity(quantity)\n .action(orderAndLegAction)\n .leg(l => l.assetType(AssetType.Equity).action(orderAndLegAction));\n },\n { blockType: BlockType.Order, groupId }\n );\n\n const handleTradeClick = useOrderBlockWithOrder(\n (builder: OrderBuilderType) => {\n return builder\n .symbol(symbol)\n .strategy(CustomStrategy)\n .quantity(1)\n .action(OrderAction.Buy);\n },\n { blockType: BlockType.Order, groupId }\n );\n\n const handleChartClick = useChartSymbolAction(baseAssetSymbol, priceChartBuilder, { groupId });\n\n const positionActions = useMemo(() => {\n if (isOCC) {\n const actions = [{ title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' }];\n return actions;\n } else {\n const actions = [\n { title: 'Close position', onClick: () => handleCloseClick(), icon: '' },\n { title: 'Trade', onClick: () => handleTradeClick(), icon: 'fa-clone' },\n { title: 'Chart', onClick: () => handleChartClick(), icon: 'fa-chart-line' },\n ];\n return actions;\n }\n }, [handleCloseClick, handleTradeClick, handleChartClick]);\n\n if (\n row.original.symbol.assetType === AssetType.MoneyMarket ||\n row.original.symbol.assetType === AssetType.MutualFund\n ) {\n return (\n
    \n \n Legacy Support Only\n \n
    \n );\n }\n\n return (\n \n );\n },\n },\n ],\n [groupId, wideTable, maxVisibleActions, tableStateColumnOrder, positionSettingsValueObject]\n );\n\n const renderSubRow = useCallback(\n (row: Row, tableOptions: { size: SizeType }) => {\n return (\n <>\n \n \n );\n },\n [maxVisibleActions, selectedSubAccountId, tableStateColumnOrder, positionSettingsValueObject]\n );\n\n const getRowKey = useCallback((data: PositionPerformanceInfo) => `${data.symbol}`, []);\n\n useEffect(() => {\n if (accountApi && selectedSubAccountId && !subId) {\n getSubAccountPositionsAndQuotes();\n }\n }, [accountApi, selectedSubAccountId, quotes, subId]);\n\n const columnWidths = useTableColumnWidths(columns);\n // prettier-ignore\n return (\n <>\n {hasSubAccounts && !subId && (\n \n )}\n {tableData && tableData.length > 0 && (\n \n )}\n {!tableData || tableData.length === 0 && (\n \n You have no positions.\n \n )}\n \n );\n};\n","import React, { FC } from 'react';\nimport _ from 'lodash';\nimport { BlockBody, EmptyBlockContent, Loading } from '@tradingblock/components';\nimport { PositionSync } from '../shared/PositionSync';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\n\nimport { PositionTable } from './components/PositionTable';\nexport const PositionBlockContent: FC<{\n setTotalGain: (totalGain: number | undefined) => void;\n setDailyPnl: (dailyPnl: number | undefined) => void;\n}> = ({ setTotalGain, setDailyPnl }) => {\n const { loading, positions } = useStateSelector(initialPositionsAreLoading);\n const blockisEmptyOrLoading = positions.existing !== true;\n return (\n \n \n <>\n {blockisEmptyOrLoading === false ? (\n \n ) : (\n {loading ? : 'You have no positions.'}\n )}\n \n \n );\n};\n","import React, { useCallback, useState } from 'react';\r\nimport useMount from 'react-use/lib/useMount';\r\nimport _ from 'lodash';\r\nimport { BlockType } from '@tradingblock/types';\r\nimport { useDispatcher } from '../../data/global/hooks';\r\nimport { Block } from '../../components/blocks/Block';\r\nimport { GetPositionAndOrderSymbols } from '../../data/global/dataSelectors';\r\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\r\nimport { getBlockProps } from '../../utilities/block';\r\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\r\nimport { DataState } from '../../data/global/state';\r\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\r\n\r\nimport { usePositionSettings } from './usePositionSettings';\r\nimport { PositionHeader } from './PositionHeader';\r\nimport { PositionBlockContent } from './PositionBlockContent';\r\n\r\nexport const PositionBlock: React.FunctionComponent<{}> = () => {\r\n const { dispatcher } = useDispatcher();\r\n useMount(() => dispatcher.data.positions.request());\r\n useQuoteSymbolSubscriptionFromGlobalState(GetPositionAndOrderSymbols);\r\n useGlobalStateQuoteListener(GetPositionAndOrderSymbols);\r\n const isFetchingSelector = useCallback((state: DataState) => {\r\n const { loading } = initialPositionsAreLoading(state);\r\n return loading;\r\n }, []);\r\n const { current, definitions } = usePositionSettings();\r\n const { expandRows } = current;\r\n\r\n // Selected SubAccount States\r\n const [totalGain, setTotalGain] = useState(undefined);\r\n const [dailyPnl, setDailyPnl] = useState(undefined);\r\n\r\n const setSelectedSubAccountTotalGain = async (totalGain: number | undefined) => {\r\n setTotalGain(totalGain);\r\n };\r\n\r\n const setSelectedSubAccountDailyPnl = async (dailyPnl: number | undefined) => {\r\n setDailyPnl(dailyPnl);\r\n };\r\n\r\n return (\r\n }\r\n isFetchingSelector={isFetchingSelector}\r\n settings={current}\r\n settingFields={definitions}\r\n onRefresh={() => {\r\n dispatcher.data.positions.manualRefresh();\r\n }}\r\n >\r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\n\nexport const Column: React.FunctionComponent<{ title?: string; titleClass?: string }> = ({ title, titleClass, children }) => (\n
    \n
    \n
    {title}
    \n {children}\n
    \n
    \n);\n\nexport interface StackedColumnProps {\n title?: string;\n valueAs?: As;\n className?: string;\n}\n\nexport const StackedColumn: React.FunctionComponent = ({ title, valueAs, className, children }) => {\n const ValueElement = valueAs || 'div';\n return (\n \n {children}\n \n );\n};\n","import React from 'react';\nimport { Number, LoadingImage, SignedNumber, Loading } from '@tradingblock/components';\nimport { Column } from '../basic/Column';\nimport _ from 'lodash';\nexport const BlockColumn: React.FunctionComponent<{\n title: string;\n value: number;\n signed?: boolean;\n isLoading?: boolean;\n hideIcon?: boolean;\n hidePrefix?: boolean;\n}> = ({ title, value, signed, isLoading, hideIcon, hidePrefix }) => {\n const isValid = !_.isNil(value) && !_.isNaN(value) && _.isNumber(value) ? true : false;\n\n return (\n \n
    \n {isLoading !== true && isValid ? (\n <>\n {signed ? (\n \n ) : (\n \n )}\n \n ) : (\n \n \n \n )}\n
    \n
    \n );\n};\n","import { Balances, Transfer, BalanceTotals } from '@tradingblock/types';\nimport { getChangePercent } from '../../../utilities/data';\n\nexport const getBalanceTotals = (balances: Balances, pendingTransfers?: Transfer[]): BalanceTotals => {\n const { Balances, Securities, BuyingPower, MarginRequirements } = balances;\n\n // total balance value (used in sums below but not returned)\n const balanceValue = getBalanceValue(Balances);\n\n const positionValue = getPositionValue(Securities);\n\n const accountValue = balanceValue + positionValue;\n\n const todaysChange = getTodaysChangeValue(Balances, Securities);\n\n // api doesn't return YTD change yet...\n const ytdChange = 0;\n\n const todaysChangePercent = getChangePercent(accountValue, todaysChange);\n const ytdChangePercent = getChangePercent(accountValue, ytdChange);\n\n const cashAndCashAlts = getCashAndCashAlts(balances);\n\n const pendingTransactions = getPendingTransactions(BuyingPower);\n\n const availableForTrading = getAvailableForTrading(BuyingPower);\n\n const availableForWithdrawal = getAvailableForWithdrawal(balances);\n\n const nonmarginableFunds = getNonmarginableFunds(Balances, MarginRequirements);\n\n const cashBalance = Balances.CashBalance;\n\n const marginBalance = Balances.MarginBalance;\n\n // unclearedDeposits/unsettledCash values not being used, might not be calculated correctly...\n\n // const unclearedDeposits = getUnclearedDeposits(Balances);\n\n // const unsettledCash = getUnsettledCash(BuyingPower, unclearedDeposits);\n\n return {\n accountValue,\n positionValue,\n cashAndCashAlts,\n todaysChange,\n ytdChange,\n todaysChangePercent,\n ytdChangePercent,\n pendingTransactions,\n availableForTrading,\n availableForWithdrawal,\n nonmarginableFunds,\n cashBalance,\n marginBalance,\n // unclearedDeposits,\n // unsettledCash,\n };\n};\n\nconst getBalanceValue = (balances: Balances['Balances']): number => {\n if (balances) {\n return balances.MarginBalance + balances.ShortBalance + balances.CashBalance;\n }\n return 0;\n};\n\nconst getPositionValue = (securities: Balances['Securities']): number => {\n if (securities) {\n return (\n securities.LongStockValue +\n securities.ShortStockValue +\n securities.LongOptionValue +\n securities.ShortOptionValue +\n securities.MutualFundsValue +\n securities.BondsAndCDValue\n );\n }\n return 0;\n};\n\nconst getTodaysChangeValue = (balances: Balances['Balances'], securities: Balances['Securities']): number => {\n let value = 0;\n if (balances) {\n value += balances.CashBalanceTodaysChange + balances.MarginBalanceTodaysChange + balances.ShortBalanceTodaysChange;\n }\n if (securities) {\n value +=\n securities.LongStockValueTodaysChange +\n securities.ShortStockValueTodaysChange +\n securities.LongOptionValueTodaysChange +\n securities.ShortOptionValueTodaysChange +\n securities.MutualFundsValueTodaysChange +\n securities.BondsAndCDValueTodaysChange +\n securities.MoneyMarketFundValueTodaysChange;\n }\n return value;\n};\n\nexport const getCashAndCashAlts = (balances: Balances): number => {\n const balVal = getBalanceValue(balances.Balances);\n if (balances.Securities) {\n return balVal + balances.Securities.MoneyMarketFundValue;\n }\n return balVal;\n};\n\nconst getPendingTransactions = (buyingPower: Balances['BuyingPower']): number => {\n if (buyingPower) {\n return buyingPower.PendingTransactions;\n }\n return 0;\n};\n\nconst getAvailableForTrading = (buyingPower: Balances['BuyingPower']): number => {\n if (buyingPower) {\n return buyingPower.AvailableFunds;\n }\n return 0;\n};\n\nconst getAvailableForWithdrawal = (balances: Balances): number => {\n if (balances.Balances) {\n return balances.Balances.WithdrawalAmount;\n }\n return 0;\n};\n\nconst getNonmarginableFunds = (\n balances: Balances['Balances'],\n marginRequirements: Balances['MarginRequirements']\n): number => {\n if (balances && marginRequirements) {\n return balances.MarginBalance * (1 - marginRequirements.MarginableEquityPercent);\n }\n return 0;\n};\n\nconst getUnclearedDeposits = (balances: Balances['Balances']): number => {\n if (balances) {\n return balances.WithdrawalAmount;\n }\n return 0;\n};\n\nconst getUnsettledCash = (buyingPower: Balances['BuyingPower'], unclearedDeposits: number): number => {\n if (buyingPower) {\n return buyingPower.AvailableFunds - unclearedDeposits;\n }\n return 0;\n};\n","import { BlockColumn } from '../../components/blocks/BlockColumn';\nimport React, { FC, useEffect, useMemo, useState } from 'react';\nimport {\n AggregatedProfitLossInfo,\n Balances,\n BalanceTotals,\n BasicSymbolProfitLossInfo,\n ProfitLossInfoMap,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { accountBalances, useStateSelector } from '../../data/global/dataSelectors';\nimport { SubAccountFilter } from '../shared/SubAccountFilter';\nimport { useDispatch, useSelector } from 'react-redux';\nimport Config from '../../config';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport {\n AccountApiFactory,\n GetSymbolsFromOrders,\n PartialQuote,\n PositionDTO,\n TodaysFilledOrders,\n} from '@tradingblock/api';\nimport { QuoteSymbolQuotes } from '../../data/global/state';\nimport { aggregatedSymbolPosition, QuoteDataToPartialQuote } from '../../data/global/selectors/transforms';\nimport { getCashAndCashAlts } from '../../data/global/utilities/balances';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { pnlSelectors } from '../../data/global/selectors/PnLSelectors';\nimport { SymbolPnLReducer } from '../../data/global/sliceReducers/performance/performanceBySymbolReducer';\nimport { UIActions } from '../../data/global/actions';\n\nexport const AccountBalanceView: FC<{ totals?: BalanceTotals }> = ({ totals }) => {\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n // redux states\n const subId = useStateSelector(state => state.account.subAccountId);\n const quotes = useStateSelector(state => state.quotes.quoteMetadata.data);\n const positionValue = useStateSelector(s => s.performance.totals.positionValue);\n const { total } = useStateSelector(PerformanceSelectors.totals.all);\n const loaded = useStateSelector(pnlSelectors.pnlDataLoaded);\n const quoteState = useStateSelector(state => state.quotes);\n const orders = useStateSelector(state => state.account.orders);\n const hasSubAccounts = useStateSelector(\n s => s.account.subaccounts.subaccounts && s.account.subaccounts.subaccounts.length > 0\n );\n const accountValue = useStateSelector(s => s.performance.totals.accountValue);\n const subAccountFilterId = useStateSelector(s => s.ui.dashboard.subAccountFilterId);\n const positions = useStateSelector(state => state.positions.positions);\n const subAccountBalances = useStateSelector(s => s.accountData.subAccountsBalances);\n const masterSubAccount = useStateSelector(\n state => state.account.subaccounts.subaccounts && state.account.subaccounts.subaccounts.find(s => s.IsMaster)\n );\n const isFetchingBalances = useStateSelector(accountBalances.isFetching);\n const isFetchingPositions = useStateSelector(s => s.positions.isFetching);\n\n const dispatch = useDispatch();\n\n // useStates for handling sub account filter\n const [selectedSubAccountId, setSelectedSubAccountId] = useState(undefined);\n const [selectedSubAccountBalances, setSelectedSubAccountBalances] = useState(undefined);\n const [selectedSubAccountPositions, setSelectedSubAccountPositions] = useState([]);\n const [selectedSubAccountCashValue, setSelectedSubAccountCashValue] = useState(undefined);\n const [selectedSubAccountPositionValue, setSelectedSubAccountPositionValue] = useState(undefined);\n const [selectedSubAccountTotalValue, setSelectedSubAccountTotalValue] = useState(undefined);\n const [positionsRequested, setPositionsRequested] = useState(false);\n const [selectedSubAccountDailyPNL, setSelectedSubAccountDailyPNL] = useState(undefined);\n const [selectedSubAccountTradingPNL, setSelectedSubAccountTradingPNL] = useState(undefined);\n\n useEffect(() => {\n if (!subAccountFilterId) {\n setSelectedSubAccountId(undefined);\n setSelectedSubAccountBalances(undefined);\n setSelectedSubAccountPositions([]);\n setSelectedSubAccountPositionValue(undefined);\n setSelectedSubAccountCashValue(undefined);\n setSelectedSubAccountTotalValue(undefined);\n setSelectedSubAccountDailyPNL(undefined);\n setSelectedSubAccountTradingPNL(undefined);\n }\n }, [subAccountFilterId]);\n\n const setSubAccountId = async (subAccountId?: number) => {\n if (subAccountId) {\n if (subAccountId === -1) {\n setSelectedSubAccountId(undefined);\n } else {\n setSelectedSubAccountId(subAccountId);\n }\n setSelectedSubAccountPositions([]);\n setSelectedSubAccountCashValue(undefined);\n setSelectedSubAccountPositionValue(undefined);\n setSelectedSubAccountTotalValue(undefined);\n setSelectedSubAccountDailyPNL(undefined);\n setSelectedSubAccountTradingPNL(undefined);\n setSelectedSubAccountBalances(undefined);\n setPositionsRequested(false);\n }\n };\n\n const accountApi = useMemo(() => {\n if (accountId && token && !selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && token && selectedSubAccountId === -1) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n if (accountId && apiRootUrl && token && selectedSubAccountId) {\n return AccountApiFactory(apiRootUrl, token, accountId, selectedSubAccountId);\n }\n }, [selectedSubAccountId, accountId, apiRootUrl, token]);\n\n const getSubAccountPositions = async () => {\n if (accountApi && selectedSubAccountId && selectedSubAccountPositions.length === 0 && !positionsRequested) {\n const positions = await accountApi.positions();\n setSelectedSubAccountPositions(positions.payload);\n setPositionsRequested(true);\n return positions.payload;\n }\n };\n\n const getSubAccountBalances = async () => {\n if (accountApi && selectedSubAccountId && !selectedSubAccountBalances) {\n const balances = await accountApi.balances();\n setSelectedSubAccountBalances(balances.payload);\n return balances.payload;\n }\n };\n\n const getSubAccountPositionQuotes = async (quotes: QuoteSymbolQuotes, positions: PositionDTO[]) => {\n const uniquePositions = _(positions)\n .map(p => [p.Symbol, p.UnderlyingSymbol])\n .flatMap()\n .uniq()\n .value();\n const quotesData = _.filter(quotes, (v, k: string) => uniquePositions.includes(k));\n const partialQuote = QuoteDataToPartialQuote(quotesData);\n return partialQuote;\n };\n\n const getSubAccountPositionValue = async (positions: PositionDTO[], subQuotes: PartialQuote[]) => {\n const positionValue = _(positions)\n .map(p => aggregatedSymbolPosition([p], subQuotes, p.UnderlyingSymbol).value)\n .sum();\n\n return positionValue;\n };\n\n const getSubAccountCashValue = async (balances: Balances) => {\n const cashValue = getCashAndCashAlts(balances);\n return cashValue;\n };\n\n const getAggregatedTotals = async (pnlMap: ProfitLossInfoMap) =>\n _.reduce(\n pnlMap,\n (acc: AggregatedProfitLossInfo, v: BasicSymbolProfitLossInfo): AggregatedProfitLossInfo => {\n const trading = acc.trading + v.trading;\n const position = acc.position + v.position;\n const total = trading + position;\n return {\n pnls: [...acc.pnls, v],\n trading,\n position,\n total,\n };\n },\n { trading: 0, position: 0, total: 0, pnls: [] }\n );\n\n const getSubAccountPositionsAndQuotes = async () => {\n if (accountApi && selectedSubAccountId && subAccountFilterId) {\n const positionResponse =\n selectedSubAccountPositions && selectedSubAccountPositions.length > 0\n ? selectedSubAccountPositions\n : await getSubAccountPositions();\n\n const balancesResponse = selectedSubAccountBalances || (await getSubAccountBalances());\n\n if (positionResponse && balancesResponse) {\n const subQuotes = await getSubAccountPositionQuotes(quotes, positionResponse);\n\n const positionValue = await getSubAccountPositionValue(positionResponse, subQuotes);\n\n const cashValue = await getSubAccountCashValue(balancesResponse);\n\n const totalValue = positionValue + cashValue;\n setSelectedSubAccountPositionValue(positionValue);\n setSelectedSubAccountCashValue(cashValue);\n setSelectedSubAccountTotalValue(totalValue);\n\n const todaysOrders =\n orders &&\n TodaysFilledOrders(orders).filter(o =>\n selectedSubAccountId !== -1 ? o.SubaccountId === selectedSubAccountId : o\n );\n\n const bySymbol = todaysOrders && SymbolPnLReducer(quoteState, todaysOrders, positionResponse);\n\n const all = bySymbol && (await getAggregatedTotals(bySymbol));\n\n if (all) {\n const { total } = all;\n setSelectedSubAccountDailyPNL(total);\n }\n const tradedSymbolsToday: string[] = GetSymbolsFromOrders(todaysOrders ? todaysOrders : []);\n\n const tradedToday = await getAggregatedTotals(\n _.reduce(\n bySymbol,\n (acc, v, k) => {\n if (tradedSymbolsToday.includes(v.symbol)) {\n return {\n ...acc,\n [k]: v,\n };\n }\n return acc;\n },\n {}\n )\n );\n\n if (tradedToday) {\n setSelectedSubAccountTradingPNL(tradedToday.trading);\n }\n }\n }\n };\n\n // This is put into place to refresh the Balance block when there is a change to the subaccount balances/positions.\n useEffect(() => {\n // This only needs to refresh when there is a selectedSubAccountId\n if (selectedSubAccountId) {\n const tempSubId = selectedSubAccountId;\n // SelectedSubAccount is the master (Assume either master or related subaccounts has changed)\n // Always refresh\n if (masterSubAccount && masterSubAccount.Id === tempSubId && subAccountBalances) {\n setSubAccountId(-1);\n setTimeout(() => setSubAccountId(tempSubId), 500);\n } else if (\n // if there is a change between the current block values and the new subAccountBalance cash values\n // refresh\n subAccountBalances &&\n selectedSubAccountCashValue &&\n subAccountBalances[tempSubId.toString()] &&\n subAccountBalances[tempSubId.toString()].Balances.CashBalance !== selectedSubAccountCashValue\n ) {\n setSubAccountId(-1);\n setTimeout(() => setSubAccountId(tempSubId), 500);\n } else if (positions) {\n // Checking if positions have been journaled into/away from the selected subaccount\n const fetchedSelectedSubPos = positions.filter(p => p.SubaccountId && p.SubaccountId === tempSubId);\n if (fetchedSelectedSubPos.length !== selectedSubAccountPositions.length) {\n setSubAccountId(-1);\n setTimeout(() => setSubAccountId(tempSubId), 500);\n }\n }\n }\n }, [subAccountBalances, positions]);\n\n useEffect(() => {\n if (!hasSubAccounts && subAccountFilterId) {\n dispatch(UIActions.setSubAccountFilterId({ id: -1 }));\n setSubAccountId(-1);\n }\n }, [hasSubAccounts]);\n\n useEffect(() => {\n if (accountApi && selectedSubAccountId && !subId) {\n getSubAccountPositionsAndQuotes();\n }\n }, [selectedSubAccountId, accountApi, subId, orders, quoteState]);\n\n return (\n <>\n {!subId && hasSubAccounts && (\n
    \n \n
    \n )}\n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n );\n};\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { accountBalances } from '../../data/global/dataSelectors';\nimport { AccountBalanceView } from './AccountBalanceView';\n\nexport const AccountContent: React.FunctionComponent<{}> = () => {\n const totals = useSelector(accountBalances.totals);\n\n return ;\n};\n","import React from 'react'\nimport { BlockDragHandle } from '@tradingblock/components';\n\nexport const AccountHeader = () => {\n return (Balances)\n}\n\nexport default AccountHeader\n","import React from 'react';\nimport useMount from 'react-use/lib/useMount';\nimport { BlockType, UserRole } from '@tradingblock/types';\nimport { useDispatcher } from '../../data/global/hooks';\nimport {\n useAuthenticationSelector,\n GetPositionAndOrderSymbols,\n useStateSelector,\n} from '../../data/global/dataSelectors';\nimport { BlockBody } from '@tradingblock/components';\nimport { AccountContent } from './AccountContent';\nimport { Block } from '../../components/blocks/Block';\nimport { getBlockProps } from '../../utilities/block';\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\nimport { account } from '../../data/global/selectors/accountSelectors';\nimport AccountHeader from './AccountHeader';\n\nexport const AccountBlock: React.FunctionComponent<{}> = () => {\n const { dispatcher } = useDispatcher();\n const { isAuthenticated } = useAuthenticationSelector();\n const accountRoles = useStateSelector(account.userRoles);\n const isIRA = useStateSelector(account.accountIsIRA);\n const isUGMA = useStateSelector(account.accountIsUGMA);\n const isPartnership = useStateSelector(account.accountIsPartnership);\n\n const refreshAccount = () => {\n if (accountRoles !== undefined && accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n dispatcher.balances.request();\n dispatcher.data.positions.request();\n }\n const pendingRefresh = () => {\n refreshAccount();\n }\n\n useMount(() => {\n if (isAuthenticated) {\n if (accountRoles !== undefined) {\n if (accountRoles.includes(UserRole.CashieringApproval) && !isIRA && !isUGMA && !isPartnership) {\n dispatcher.balances.requestPendingTransfers();\n }\n }\n dispatcher.balances.request();\n dispatcher.data.positions.request();\n }\n })\n\n useQuoteSymbolSubscriptionFromGlobalState(GetPositionAndOrderSymbols);\n useGlobalStateQuoteListener(GetPositionAndOrderSymbols);\n return (\n pendingRefresh()} header={}>\n \n \n \n )\n};","import { AccountDetails, IBlockDataState, IBlockState } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport _ from 'lodash';\nimport { OutputSelector } from 'reselect';\nimport { useMemo } from 'react';\nexport type AccountManagementTab =\n | 'clientAcc'\n | 'clientFin'\n | 'clientDiscl'\n | 'clientPref'\n | 'clientBeneficiaries'\n | 'security';\nexport const AccountManagementConstants: {\n tabs: Record;\n} = {\n tabs: {\n clientAcc: 'clientAcc',\n clientFin: 'clientFin',\n clientDiscl: 'clientDiscl',\n clientPref: 'clientPref',\n clientBeneficiaries: 'clientBeneficiaries',\n security: 'security',\n },\n};\nexport interface AccountManagementDataState extends IBlockDataState {\n account?: AccountDetails;\n tab?: AccountManagementTab;\n}\nexport type AccountManagementState = IBlockState;\ntype Selector = OutputSelector T>;\ntype Transform = (res: AccountManagementDataState) => T;\nexport function useAccountManagementData(selector: Selector | Transform, defaultVal?: T) {\n const data = useBlockData();\n const res = selector(data);\n return useMemo(() => (!_.isUndefined(defaultVal) && _.isNil(res) ? defaultVal : res), [defaultVal, res]);\n}\nexport function isAccountManagementTab(tabVal: AccountManagementTab | string): tabVal is AccountManagementTab {\n return _.map(AccountManagementConstants.tabs, (v, k) => k).includes(tabVal);\n}\n","import { createStandardAction, ActionType } from 'typesafe-actions';\nimport { AccountManagementTab } from './AccountManagementState';\n\nexport const AccountManagementBlockActions = {\n setTab: createStandardAction('@quote/tab/set')(),\n};\n\nexport type AccountManagementBlockAction = ActionType;\n","import { AddressModel, Country, DataValue, ErrorType, RE_EMAIL } from '@tradingblock/types';\nimport _ from 'lodash';\nimport Config from '../../../config';\nimport xml2js from 'xml2js';\n\nexport interface USPSErrors {\n [key: string]: string | undefined;\n}\n\nexport const getError = (value: DataValue, error: ErrorType) => {\n if (!value && !_.isNumber(value)) {\n return error;\n }\n return undefined;\n};\n\nexport const getRequiredError = (value: DataValue) => {\n return getError(value, ErrorType.Required);\n};\n\nexport const getInvalidError = (value: DataValue) => {\n return getError(value, ErrorType.Invalid);\n};\n\nexport const getAmountError = (value: DataValue) => {\n return getError(value, ErrorType.Amount);\n};\n\nexport const getContingentError = (value: DataValue) => {\n return getError(value, ErrorType.Contingent);\n};\n\nexport const getMismatchError = (value: DataValue) => {\n return getError(value, ErrorType.Mismatch);\n};\n\nexport const getEmailError = (value: string | null | undefined) => {\n return getRequiredError(value) || getInvalidError(value && RE_EMAIL.test(value));\n};\n\nexport const getStaleError = (value: DataValue) => {\n return getError(value, ErrorType.Stale);\n};\n\nexport const getUploadError = (value: DataValue) => {\n return getError(value, ErrorType.Upload);\n};\n\nexport const RE_PO_BOX = /^ *((#\\d+)|((box|bin)[-. \\/\\\\]?\\d+)|(.*p[ \\.]? ?(o|0)[-. \\/\\\\]? *-?((box|bin)|b|(#|num)?\\d+))|(p(ost)? *(o(ff(ice)?)?)? *((box|bin)|b)? *\\d+)|(p *-?\\/?(o)? *-?box)|post office box|((box|bin)|b) *(number|num|#)? *\\d+|(num|number|#) *\\d+)/i;\n\n// Promise parser for parsing xml to json\nconst promisesParser = (string: string) => {\n return new Promise(function(resolve, reject) {\n xml2js.parseString(string, (err, result) => {\n if (err) {\n return reject(err);\n } else {\n return resolve(result);\n }\n });\n });\n};\n\nexport const uspsVerification = async (values: AddressModel) => {\n const baseURL = Config.uspsBaseUrl;\n const uspsId = Config.uspsId;\n\n const requestConfig = {\n Headers: {\n 'Content-Type': 'text/xml',\n 'Access-Control-Allow-Origin': '*',\n 'Access-Control-Allow-Credentials': 'true',\n 'Access-Control-Allow-Methods': 'GET',\n },\n method: 'get',\n };\n\n const { address1, address2, city, state, country, postalCode } = values;\n\n // Build XML Request\n const xml = `
    ${encodeURIComponent(\n address1\n )}${encodeURIComponent(\n address2\n )}${city}${state}${postalCode}
    `;\n\n // Utility function to simplify address for comparison\n // Removes common suffixes, unit indicators, directional abbreviations, and whitespace\n const simplifyAddress = (address: string) => {\n return address\n .toUpperCase()\n .replace(\n /\\b(STREET|ST\\.?|ROAD|RD\\.?|AVENUE|AVE\\.?|BOULEVARD|BLVD\\.?|DRIVE|DR\\.?|LANE|LN\\.?|COURT|CT\\.?|CIRCLE|CIR\\.?|TERRACE|TER\\.?|PLACE|PL\\.?|LOOP|LOOP|HIGHWAY|HWY\\.?|PARKWAY|PKWY\\.?|ALLEY|ALY\\.?|PLAZA|PLZ\\.?|PATH|PATH|WAY|WAY)\\b/gi,\n '' // Remove common street suffixes\n )\n .replace(/\\b(UNIT|APT|APARTMENT|SUITE|STE|#)\\b/gi, '') // Normalize unit indicators\n .replace(/\\b(SOUTH|S\\.?|NORTH|N\\.?|EAST|E\\.?|WEST|W\\.?)\\b/gi, '') // Normalize directional abbreviations\n .replace(/\\s+/g, ' ') // Replace multiple whitespace with a single space\n .trim();\n };\n\n // Function to check if addresses are flipped in USPS validation response based on simplified comparison\n const isFlipped = (address1: string, address2: string) => {\n return _.includes(simplifyAddress(address1), simplifyAddress(address2));\n };\n\n try {\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica) {\n const response = await fetch(`${baseURL}${xml}`, requestConfig);\n const xmlText = await response.text();\n const xmlResult: any = await promisesParser(xmlText);\n const { AddressValidateResponse } = xmlResult;\n const { Address } = AddressValidateResponse;\n\n const { City, State, Zip5, Zip4, Address1, Address2, Error } = Address[0];\n if (Error) {\n // Handle API error response\n const { Number, Source, Description } = Error[0];\n return {\n error: {\n number: Number[0],\n source: Source[0],\n description: Description[0],\n },\n };\n } else {\n // Extract address lines from API response\n let address1Value = Address1 ? Address1[0] : null;\n let address2Value = Address2 ? Address2[0] : null;\n\n // Correct the address lines if they have been flipped\n if (!address1Value) {\n address1Value = address2Value;\n address2Value = null;\n } else if (Address1 && isFlipped(address1, address2Value)) {\n // Swap the address lines using array destructuring\n [address1Value, address2Value] = [address2Value, address1Value];\n }\n\n // Return the corrected and standardized address components\n return {\n city: City[0] || '',\n state: State[0] || '',\n zip5: Zip5[0] || '',\n zip4: Zip4[0] || '',\n uspsAddress1: address1Value || '',\n uspsAddress2: address2Value || null,\n };\n }\n }\n } catch (e) {\n console.error(e);\n }\n};\n","import { ClearerType } from '@tradingblock/types';\nimport { useStateSelector } from '../data/global/dataSelectors';\n\n// use the account number to determine if office code refers to RQD or Apex cleared account\nexport const useClearer = (): string => {\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n\n if (!accountNumber) {\n return 'No account number, cannot determine Clearer';\n }\n\n return accountNumber.includes('TBLK') ? ClearerType.RQD : ClearerType.Apex;\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { AddressUpdateValueProps, AllStates, Country, getGroupedCountryOptions } from '@tradingblock/types';\nimport { getInvalidError, getRequiredError, RE_PO_BOX, USPSErrors, uspsVerification } from './Validation';\nimport { useClearer } from '../../../hooks/useClearer';\n\nexport const AddressUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n addressType: string;\n accountHolderIndex: number;\n accountDetails: any;\n}> = ({ show, toggleModal, addressType, accountHolderIndex, accountDetails }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const clearer = useClearer();\n const dispatch = useDispatch();\n const {\n physicalAddress: { address1, address2, city, country, postalCode, state },\n } = accountDetails;\n const { accountHolders } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const user = accountHolders[accountHolderIndex];\n const initialAddressUpdateValues: AddressUpdateValueProps = {\n address1: user.address.address1 ? user.address.address1 : '',\n address2: user.address.address2 ? user.address.address2 : '',\n city: user.address.city ? user.address.city : '',\n state: user.address.state ? user.address.state : '',\n postalCode: user.address.postalCode ? user.address.postalCode : '',\n country: user.address.country ? user.address.country : '',\n addressType: '', //not used\n };\n\n let header = '';\n\n switch (addressType) {\n case 'physical':\n header = 'Physical Address';\n break;\n case 'mail':\n header = 'Mailing Address';\n break;\n default:\n break;\n }\n\n // TODO: Review localStorage usage\n const onValidate = (values: AddressUpdateValueProps) => {\n const { address1, city, state, country, addressType } = values;\n let uspsResponse;\n let isValidAddress;\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n const isMailing = headerValue === 'mail';\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-${headerValue}-${accountHolderIndex}`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && values.address1 && values.city && values.state && values.postalCode) {\n return {\n [`postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`city`]: `${error.description.trim()} Please review the entered address.`,\n [`state`]: `${error.description.trim()} Please review the entered address.`,\n [`address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (!values.address1 || !values.city) {\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n\n // USPS + Required Errors\n\n const errors: USPSErrors = {\n ['country']: getRequiredError(values.country),\n ['address1']:\n getRequiredError(values.address1) && !isMailing\n ? getInvalidError(!RE_PO_BOX.test(values.address1))\n : undefined,\n ['address2']: values.address2 && !isMailing ? getInvalidError(!RE_PO_BOX.test(values.address2)) : undefined,\n ['postalCode']:\n getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['city']:\n getRequiredError(values.city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['state']:\n getRequiredError(stateOrPostalCodeRequired ? values.state : true) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n // Required Errors\n if (!isMailing) {\n return {\n [`country`]: getRequiredError(values.country),\n [`address1`]: getRequiredError(values.address1) || getInvalidError(!RE_PO_BOX.test(values.address1)),\n [`address2`]: values.address2 && getInvalidError(!RE_PO_BOX.test(values.address2)),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true),\n [`city`]: getRequiredError(values.city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? values.state : true),\n };\n } else if (isMailing) {\n return {\n [`country`]: getRequiredError(values.country),\n [`address1`]: getRequiredError(values.address1),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? values.postalCode : true),\n [`city`]: getRequiredError(values.city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? values.state : true),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { address1, address2, city, country, postalCode, state } = values;\n let updateValues = {};\n\n if (header === 'Physical Address') {\n updateValues = {\n item: 'Address',\n accountHolder: {\n address: {\n address1: address1,\n address2: address2,\n city: city,\n country: country,\n postalCode: postalCode,\n state: state,\n },\n },\n holder: accountHolderIndex,\n };\n }\n if (header === 'Mailing Address') {\n updateValues = {\n item: 'MailingAddress',\n accountHolder: {\n mailingAddress: {\n address1: address1,\n address2: address2,\n city: city,\n country: country,\n postalCode: postalCode,\n state: state,\n },\n },\n holder: accountHolderIndex,\n };\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n },\n [toggleModal, address1, address2, city, country, postalCode, state, dispatch]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values, errors }) => (\n toggleModal()} show={show}>\n \n Address Update\n \n \n
    {header}
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.country !== Country.UnitedStatesOfAmerica && values.country !== '' && (\n \n )}\n \n \n \n \n
    \n {addressType === 'mail' && (\n

    \n All updates are pending admin review. You will be notified when your submission has been processed.\n

    \n )}\n
    \n \n {\n resetForm();\n toggleModal();\n const headerValue = header === 'Physical Address' ? 'physical' : 'mail';\n localStorage.setItem(`addressVerification-${headerValue}-${accountHolderIndex}`, 'undefined');\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport _ from 'lodash';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal } from '@tradingblock/components';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { getInvalidError, getMismatchError, getRequiredError, getStaleError } from './Validation';\nimport { EmailUpdateValueProps, RE_EMAIL, SubmitEmailValues } from '@tradingblock/types';\n\nexport const EmailUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n const user = accountHolders[accountHolderIndex];\n const email = user.email;\n const initialEmailUpdateValues: EmailUpdateValueProps = {\n emailValue: email ? email : '',\n emailConfirm: '',\n };\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onValidate = (values: EmailUpdateValueProps) => {\n const { emailValue, emailConfirm } = values;\n\n if (!emailValue) {\n return {\n [`emailValue`]: getRequiredError(emailValue),\n [`emailConfirm`]: getRequiredError(emailConfirm),\n };\n }\n\n if (!emailConfirm) {\n return {\n [`emailValue`]: getRequiredError(emailValue),\n [`emailConfirm`]: getRequiredError(emailConfirm),\n };\n }\n\n if (!RE_EMAIL.test(emailValue)) {\n return {\n [`emailValue`]: getInvalidError(RE_EMAIL.test(emailValue)),\n [`emailConfirm`]: getInvalidError(RE_EMAIL.test(emailConfirm)),\n };\n }\n\n if (!RE_EMAIL.test(emailConfirm)) {\n return {\n [`emailValue`]: getInvalidError(RE_EMAIL.test(emailValue)),\n [`emailConfirm`]: getInvalidError(RE_EMAIL.test(emailConfirm)),\n };\n }\n\n if (emailValue !== emailConfirm) {\n return {\n [`emailConfirm`]: getMismatchError(emailConfirm === emailValue),\n };\n }\n\n if (emailValue === email) {\n return {\n [`emailConfirm`]: getStaleError(emailValue !== email),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { emailValue } = values;\n const updateValues: SubmitEmailValues = {\n item: 'Email',\n accountHolder: {\n email: emailValue,\n },\n holder: accountHolderIndex,\n };\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Email Update\n \n \n
    \n \n \n \n \n \n \n
    \n

    \n Upon submission, you will receive an email notifcation to accept or deny this update. If confirmed, all\n updates are pending admin review. You will be notified when your submission has been processed.\n

    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport _ from 'lodash';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getMismatchError, getRequiredError, getStaleError } from './Validation';\nimport { AllPhoneTypes, PhoneUpdateValueProps, SubmitPhoneValues } from '@tradingblock/types';\n\nexport const PhoneUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const initialPhoneUpdateValues: PhoneUpdateValueProps = {\n phoneValue: '',\n phoneConfirm: '',\n phoneType: '',\n };\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n const accountDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const { homePhone, workPhone, mobilePhone } = accountDetails;\n\n let header = '';\n\n const onValidate = (values: PhoneUpdateValueProps) => {\n const { phoneValue, phoneConfirm, phoneType } = values;\n if (!phoneValue || !phoneConfirm || !phoneType) {\n return {\n [`phoneValue`]: getRequiredError(phoneValue),\n [`phoneConfirm`]: getRequiredError(phoneConfirm),\n [`phoneType`]: getRequiredError(phoneType),\n };\n }\n\n if (phoneValue !== phoneConfirm) {\n return {\n [`phoneConfirm`]: getMismatchError(phoneConfirm === phoneValue),\n };\n }\n\n if (phoneValue.length < 10 || phoneConfirm.length < 10) {\n return {\n [`phoneValue`]: getInvalidError(phoneValue.length > 10),\n [`phoneConfirm`]: getInvalidError(phoneConfirm.length > 10),\n };\n }\n\n if (phoneType === 'Work' && phoneValue === workPhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== workPhone),\n };\n }\n\n if (phoneType === 'Mobile' && phoneValue === mobilePhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== mobilePhone),\n };\n }\n\n if (phoneType === 'Home' && phoneValue === homePhone) {\n return {\n [`phoneConfirm`]: getStaleError(phoneValue !== homePhone),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { phoneValue, phoneType } = values;\n const updateValues: SubmitPhoneValues = {\n item: 'PhoneNumber',\n accountHolder: {\n phones: [\n {\n phoneNumber: phoneValue,\n type: phoneType,\n },\n ],\n },\n holder: accountHolderIndex,\n };\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Phone Number Update\n \n \n
    {header}
    \n
    \n \n \n \n <>\n \n \n \n \n \n \n \n
    \n

    \n All updates are pending admin review. You will be notified when your submission has been processed.\n

    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AllStates,\n Country,\n DefaultPhoneValues,\n getGroupedCountryOptions,\n TrustedContactValueProps,\n} from '@tradingblock/types';\nimport { getRequiredError, USPSErrors, uspsVerification } from './Validation';\nimport { useClearer } from '../../../hooks/useClearer';\n\nexport const TrustedContactUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const clearer = useClearer();\n const dispatch = useDispatch();\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n const { firstName, middleInitial, middleName, suffix, lastName, address, phones, email } = useStateSelector(\n s =>\n s.accountManagement.accountManagementDetails.details.trustedContact || {\n firstName: '',\n middleInitial: '',\n middleName: '',\n suffix: '',\n lastName: '',\n address: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n email: '',\n phones: [\n {\n type: 'Primary',\n phoneNumber: '',\n },\n ],\n }\n );\n\n const initialTrustedContactValues: TrustedContactValueProps = {\n firstName: firstName ? firstName : '',\n middleInitial: middleInitial ? middleInitial : '',\n middleName: middleName ? middleName : '',\n suffix: suffix ? suffix : '',\n lastName: lastName ? lastName : '',\n address1: address !== null && address.address1 ? address.address1 : '',\n address2: address !== null && address.address2 ? address.address2 : '',\n city: address !== null && address.city ? address.city : '',\n state: address !== null && address.state ? address.state : '',\n postalCode: address !== null && address.postalCode ? address.postalCode : '',\n country: address !== null && address.country ? address.country : '',\n phones: phones ? [...phones] : [DefaultPhoneValues],\n email: email ? email : '',\n };\n\n // TODO: Review localStorage usage\n const onValidate = (values: TrustedContactValueProps) => {\n const { address1, city, country, postalCode, state, firstName, lastName, phones, email } = values;\n let uspsResponse;\n let isValidAddress;\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n const uspsResponseFromStorage = localStorage.getItem('trustedContactUSPS');\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === postalCode;\n const isStateEqual = state === values.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values);\n };\n\n getUSPS().then(result => {\n localStorage.setItem('trustedContactUSPS', JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && values.address1 && values.city && values.state && values.postalCode) {\n return {\n [`postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`city`]: `${error.description.trim()} Please review the entered address.`,\n [`state`]: `${error.description.trim()} Please review the entered address.`,\n [`address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (!values.address1 || !values.city) {\n localStorage.setItem('trustedContactUSPS', 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.city);\n const isZipEqual = zip5 === values.postalCode;\n const isStateEqual = state === values.state;\n\n // USPS Verification Errors\n const errors: USPSErrors = {\n [`firstName`]: getRequiredError(firstName),\n [`lastName`]: getRequiredError(lastName),\n [`middleName`]:\n values.middleName && values.middleName.length > 20\n ? 'Middle name must be 20 characters or less.'\n : undefined,\n // suffix should only be characters and possible \".\", no spaces or numbers\n [`suffix`]:\n values.suffix && !/^[a-zA-Z.]*$/.test(values.suffix) ? 'Suffix must be characters only.' : undefined,\n [`email`]: getRequiredError(email),\n [`phones[0].phoneNumber`]: getRequiredError(phones[0].phoneNumber),\n [`address1`]: getRequiredError(address1),\n [`country`]: getRequiredError(country),\n [`city`]:\n getRequiredError(city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n [`state`]:\n getRequiredError(state) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`postalCode`]:\n getRequiredError(postalCode) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n const errors: USPSErrors = {\n [`firstName`]: getRequiredError(firstName),\n [`middleName`]:\n values.middleName && values.middleName.length > 20 ? 'Middle name must be 20 characters or less.' : undefined,\n // suffix should only be characters and possible \".\", no spaces or numbers\n [`suffix`]: values.suffix && !/^[a-zA-Z.]*$/.test(values.suffix) ? 'Suffix must be characters only.' : undefined,\n [`lastName`]: getRequiredError(lastName),\n [`email`]: getRequiredError(email),\n [`phones[0].phoneNumber`]: getRequiredError(phones[0].phoneNumber),\n [`address1`]: getRequiredError(address1),\n [`country`]: getRequiredError(country),\n [`city`]: getRequiredError(city),\n [`state`]: getRequiredError(stateOrPostalCodeRequired ? state : true),\n [`postalCode`]: getRequiredError(stateOrPostalCodeRequired ? postalCode : true),\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n address1,\n address2,\n city,\n country,\n postalCode,\n state,\n firstName,\n middleName,\n lastName,\n suffix,\n phones,\n email,\n } = values;\n let updateValues = {};\n\n updateValues = {\n item: 'TrustedContact',\n trustedContact: {\n firstName,\n middleName,\n lastName,\n suffix,\n address: {\n address1,\n address2,\n city,\n country,\n postalCode,\n state,\n },\n email,\n phones: [\n {\n type: 'Primary',\n phoneNumber: phones[0].phoneNumber,\n },\n ],\n },\n };\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n\n localStorage.setItem('trustedContactUSPS', 'undefined');\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values }) => (\n toggleModal()} show={show}>\n \n Trusted Contact Update\n \n \n
    \n

    Trusted Contact Personal Information

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n

    Trusted Contact Address

    \n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.country !== Country.UnitedStatesOfAmerica && values.country !== '' && (\n \n )}\n \n \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n localStorage.setItem('trustedContactUSPS', 'undefined');\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { StackedColumn } from './Column';\n\nexport interface DetailField {\n title?: string;\n Value: any;\n className?: string;\n hide?: boolean;\n}\n\ninterface DetailFieldsProps {\n fieldList: DetailField[];\n valueAs?: 'p' | 'div';\n}\n\nexport const DetailFields: React.FunctionComponent = ({ fieldList, valueAs }) => {\n const fields = useMemo(() => {\n return _(fieldList)\n .chunk(2)\n .value();\n }, [fieldList]);\n\n return (\n <>\n {fields.map((curr, rowIdx) => (\n
    \n {_.map(curr, ({ title, Value, className, hide }, fieldIdx) => {\n return (\n \n {!hide && }\n \n );\n })}\n
    \n ))}\n \n );\n};\n","import {\n TradeGoalType,\n RiskLevel,\n InvestmentObjectiveType,\n InvestmentObjectiveDescription,\n YearsEmployedDescription,\n BooleanToggleType,\n TradingAuthorization,\n} from '@tradingblock/types';\n\nexport const formatIncome = (incomeDescription: string) => {\n let displayString: string = '';\n switch (incomeDescription) {\n case 'Between100KAnd200K':\n displayString = '$100,000 - $200,000';\n break;\n case 'Between200KAnd300K':\n displayString = '$200,000 - $300,000';\n break;\n case 'Between25KAnd50K':\n displayString = '$25,000 - $50,000';\n break;\n case 'Between300KAnd500K':\n displayString = '$300,000 - $500,000';\n break;\n case 'Between500KAnd1Point2M':\n displayString = '$500,000 - $1,200,000';\n break;\n case 'Between50KAnd100K':\n displayString = '$50,000 - $100,000';\n break;\n case 'LessThan25K':\n displayString = 'Less than $25,000';\n break;\n case 'MoreThan1Point2M':\n displayString = 'More than $1,200,000';\n break;\n case 'Between1MAnd5M':\n displayString = '$1,000,000 - $5,000,000';\n break;\n case 'Between200KAnd500K':\n displayString = '$200,000 - $500,000';\n break;\n case 'Between500KAnd1M':\n displayString = '$500,000 - $1,000,000';\n break;\n case 'LessThan50K':\n displayString = 'Less than $50,000';\n break;\n case 'MoreThan5M':\n displayString = 'More than $5,000,000';\n break;\n default:\n displayString = 'N/A';\n break;\n }\n return displayString;\n};\n\nexport const formatTaxBracket = (bracket: string) => {\n let displayString: string = '';\n switch (bracket) {\n case 'Bottom':\n displayString = '10-19%';\n break;\n case 'Middle':\n displayString = '20-29%';\n break;\n case 'Top':\n displayString = '30-37%';\n break;\n default:\n displayString = 'N/A';\n break;\n }\n return displayString;\n};\n\nexport const getRiskLevelForTradeGoalType = (type: TradeGoalType) => {\n switch (type) {\n case TradeGoalType.StocksBonds:\n return RiskLevel.None;\n case TradeGoalType.AllAbovePlusCallsPuts:\n return RiskLevel.VeryLow;\n case TradeGoalType.AllAbovePlusOptionSpreads:\n return RiskLevel.Low;\n case TradeGoalType.AllAbovePlusPutWriting:\n return RiskLevel.Moderate;\n case TradeGoalType.AllAbovePlusAllOptionStrategies:\n return RiskLevel.High;\n default:\n throw new Error('Unknown TradeGoalType: ' + type);\n }\n};\n\nexport const getRiskLevelForInvestmentObjectiveType = (type: InvestmentObjectiveType) => {\n switch (type) {\n case InvestmentObjectiveType.CapitalPreservation:\n case InvestmentObjectiveType.Income:\n case InvestmentObjectiveType.Growth:\n case InvestmentObjectiveType.GrowthAndIncome:\n return RiskLevel.Moderate;\n case InvestmentObjectiveType.Speculation:\n return RiskLevel.High;\n default:\n throw new Error('Unknown InvestmentObjectiveType: ' + type);\n }\n};\n\nexport const getDescriptionForInvestmentObjective = (type: InvestmentObjectiveType) => {\n switch (type) {\n case InvestmentObjectiveType.CapitalPreservation:\n return InvestmentObjectiveDescription.CapitalPreservation;\n case InvestmentObjectiveType.Income:\n return InvestmentObjectiveDescription.Income;\n case InvestmentObjectiveType.Growth:\n return InvestmentObjectiveDescription.Growth;\n case InvestmentObjectiveType.GrowthAndIncome:\n return InvestmentObjectiveDescription.GrowthAndIncome;\n case InvestmentObjectiveType.Speculation:\n return InvestmentObjectiveDescription.Speculation;\n default:\n throw new Error('Unknown InvestmentObjectiveType: ' + type);\n }\n};\n\nexport const formatYearsEmployed = (type: string) => {\n switch (type) {\n case 'BetweenZeroAndOne':\n return YearsEmployedDescription.BetweenZeroAndOne;\n case 'BetweenTwoAndFive':\n return YearsEmployedDescription.BetweenTwoAndFive;\n case 'BetweenFiveAndTen':\n return YearsEmployedDescription.BetweenFiveAndTen;\n case 'BetweenTenAndTwenty':\n return YearsEmployedDescription.BetweenTenAndTwenty;\n case 'MoreThanTwenty':\n return YearsEmployedDescription.MoreThanTwenty;\n default:\n throw new Error('Unknown YearsEmployed: ' + type);\n }\n};\n\nexport const formatYearsTrading = (type: string) => {\n switch (type) {\n case 'Zero':\n return 'Zero';\n case 'One':\n return 'One';\n case 'TwoToThree':\n return '2 - 3 years';\n case 'FourToNine':\n return '4 - 9 years';\n case 'TenOrMore':\n return '10+ years';\n default:\n throw new Error('Unknown YearsTrading: ' + type);\n }\n};\n\nexport const formatTradesPerYear = (type: string) => {\n switch (type) {\n case 'OneToFive':\n return '1 - 5 trades/year';\n case 'SixToTen':\n return '6 - 10 trades/year';\n case 'ElevenToTwenty':\n return '11 - 20 trades/year';\n case 'MoreThanTwenty':\n return '20+ trades/year';\n default:\n throw new Error('Unknown TradesPerYear: ' + type);\n }\n};\n\n// formats BooleanToggleType to regular Boolean\nexport const formatBoolean = (booleanItem: BooleanToggleType | undefined) => {\n if (booleanItem === 'yes') {\n return true;\n } else {\n return false;\n }\n};\n\nexport const formatBooleanForDisplay = (booleanItem: boolean) => {\n if (booleanItem) {\n return 'Yes';\n } else return 'No';\n};\n\n// formats phone numbers into standard US format\nexport const formatPhoneNumber = (value: string | undefined) => {\n if (!value) return value;\n\n if (value === 'N/A') return value;\n\n const phoneNumber = value.replace(/[^\\d]/g, '');\n\n if (phoneNumber.length < 4) return phoneNumber;\n\n if (phoneNumber.length < 7) {\n return `${phoneNumber.slice(0, 3)}-${phoneNumber.slice(3)}`;\n }\n\n if (phoneNumber.length <= 10) {\n return `${phoneNumber.slice(0, 3)}-${phoneNumber.slice(3, 6)}-${phoneNumber.slice(6)}`;\n }\n\n if (phoneNumber.length === 11) {\n return `${phoneNumber.slice(0, 1)}-${phoneNumber.slice(1, 4)}-${phoneNumber.slice(4, 7)}-${phoneNumber.slice(7)}`;\n }\n\n return `${phoneNumber.slice(0, 2)}-${phoneNumber.slice(2, 6)}-${phoneNumber.slice(6)}`;\n};\n\n// Display agent name or not applicable\nexport const formatAgentName = (name: string | null, auth: boolean) => {\n if (auth) {\n return name;\n } else {\n return 'Not Applicable';\n }\n};\n\n// Display firm name or not applicable\nexport const formatIndustryEmployed = (firmName: string | null) => {\n if (firmName === null) {\n return 'Not Applicable';\n }\n return firmName;\n};\n\n// Display market data entitlement as string or not applicable\nexport const formatMarketDataEntitlement = (entitlement: number | null) => {\n if (entitlement === null) {\n return 'Not Applicable';\n }\n if (entitlement === 0) {\n return 'No entitlement data found...';\n }\n if (entitlement === 1) {\n return 'Professional User';\n }\n if (entitlement === 2) {\n return 'Non-Professional User';\n }\n if (entitlement === 3) {\n return 'Delayed Quotes Only User';\n }\n};\n\nexport const getAgentPhoneNumbersByType = (type: string, tradingAuthorization: TradingAuthorization) => {\n const phone = tradingAuthorization.phones ? tradingAuthorization.phones.filter(phone => phone.type === type) : [];\n if (phone.length > 0) {\n return phone[0].phoneNumber;\n }\n return 'N/A';\n};\n","import React, { useCallback, useState } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field, Form, FormikHelpers } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport * as Yup from 'yup';\n\nimport { FormGroup, TextboxField, Modal, SelectDropdownField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AllYearsEmployed,\n EmploymentTypes,\n AllStates,\n EmployInfoUpdateValueProps,\n getGroupedCountryOptions,\n Country,\n EmploymentType,\n EmployerAddress,\n} from '@tradingblock/types';\nimport { useClearer } from '../../../hooks/useClearer';\n\nexport const EmployInfoUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const clearer = useClearer();\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const { accountHolders } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n\n const [isCountryUs, setIsCountryUs] = useState(null);\n const [isEmployed, setIsEmployed] = useState(null);\n\n const user = accountHolders[accountHolderIndex];\n const initialEmployInfoUpdateValues: EmployInfoUpdateValueProps = {\n employmentType: user ? user.employmentType : '',\n employer: user ? user.employer : '',\n jobPosition: user ? user.jobPosition : '',\n yearsEmployed: user ? user.yearsEmployed : '',\n employerAddress: {\n address1: (user && user.employerAddress && user.employerAddress.address1) || '',\n address2: (user && user.employerAddress && user.employerAddress.address2) || '',\n country: (user && user.employerAddress && user.employerAddress.country) || '',\n state: (user && user.employerAddress && user.employerAddress.state) || '',\n city: (user && user.employerAddress && user.employerAddress.city) || '',\n postalCode: (user && user.employerAddress && user.employerAddress.postalCode) || '',\n },\n };\n\n const onSubmit = useCallback(\n (values: EmployInfoUpdateValueProps, { resetForm }: FormikHelpers) => {\n const { employmentType, employer, jobPosition, yearsEmployed, employerAddress } = values;\n const { address1, address2, country, state, city, postalCode } = employerAddress;\n let updateValues = {};\n\n switch (employmentType) {\n case 'Employed':\n updateValues = {\n item: 'Employment',\n accountHolder: {\n employmentType,\n employer,\n jobPosition,\n yearsEmployed,\n employerAddress: {\n address1,\n address2,\n country,\n state,\n city,\n postalCode,\n },\n },\n holder: accountHolderIndex,\n };\n break;\n case 'Student':\n case 'Unemployed':\n case 'Retired':\n updateValues = {\n item: 'Employment',\n accountHolder: {\n employmentType,\n employer: '',\n jobPosition: '',\n yearsEmployed: '',\n employerAddress: {\n address1: '',\n address2: '',\n country: 'USA',\n state: 'IL',\n city: '',\n postalCode: 99999,\n },\n },\n holder: accountHolderIndex,\n };\n break;\n default:\n break;\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId: accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n },\n [toggleModal, accountId, accountHolderIndex, dispatch]\n );\n\n const formFieldValidationSchema = Yup.string().nullable().trim().required('This field is required.');\n\n return (\n toggleModal()} show={show}>\n ().shape({\n employmentType: formFieldValidationSchema,\n ...(isEmployed && {\n employerAddress: Yup.object().shape({\n address1: formFieldValidationSchema,\n city: formFieldValidationSchema,\n country: formFieldValidationSchema,\n ...((isCountryUs || isCountryUs === null) && {\n postalCode: formFieldValidationSchema,\n state: formFieldValidationSchema,\n }),\n }),\n yearsEmployed: formFieldValidationSchema,\n jobPosition: formFieldValidationSchema,\n employer: formFieldValidationSchema,\n }),\n })}\n >\n {({ values, resetForm }) => {\n setIsEmployed(values.employmentType === EmploymentType.Employed);\n\n if (!values.employerAddress || (values.employerAddress && !values.employerAddress.country)) {\n setIsCountryUs(null);\n } else if (values.employerAddress && values.employerAddress.country === Country.UnitedStatesOfAmerica) {\n setIsCountryUs(true);\n } else if (values.employerAddress && values.employerAddress.country !== Country.UnitedStatesOfAmerica) {\n setIsCountryUs(false);\n }\n\n return (\n
    \n \n Employment Information Update\n \n \n \n \n \n

    Please provide your employment status and any applicable information.

    \n {isEmployed && (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n {(isCountryUs || isCountryUs === null) && (\n \n \n \n )}\n {!isCountryUs && isCountryUs !== null && (\n \n \n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n );\n }}\n \n
    \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const RemoveTrustedContactOrTradeAuth: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n type?: 'removeTrustedContact' | 'removeTradeAuthorization';\n}> = ({ show, toggleModal, type }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onClick = () => {\n const updateValues = {\n item: type === 'removeTrustedContact' ? 'RemoveTrustedContact' : 'RemoveTradeAuthorization',\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n toggleModal();\n };\n\n const modalTitle = type === 'removeTrustedContact' ? 'Remove Trusted Contact?' : 'Remove Trade Authorization?';\n const modalBody =\n type === 'removeTrustedContact'\n ? 'Are you sure you want to remove this trusted contact?'\n : 'Are you sure you want to remove this trade authorization?';\n\n return (\n toggleModal()} show={show}>\n \n {modalTitle}\n \n \n

    {modalBody}

    \n
    \n \n \n \n \n
    \n );\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n ContactEmail,\n ContactPhone,\n ExternalLink,\n FormGroup,\n Loading,\n Modal,\n TextboxField,\n} from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { Config } from '../../../config';\nimport { IsVirtualEnvironment } from '../../../data/global/selectors/environmentSelector';\nimport { origin } from '../../../data/global/selectors/originSelector';\nimport { PasswordChangeInitiateUrl } from '@tradingblock/api';\n\nexport const ResetPassword: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const isVirtual = useStateSelector(IsVirtualEnvironment);\n const originVal = useStateSelector(origin.origin);\n let group = originVal === 'mb' ? 'mb' : 'tb';\n const apiRootUrl = Config.tradingApi || undefined;\n const siteParam = originVal === 'mb' ? `?grp=${group}` : '';\n\n const [authError, setAuthError] = useState();\n const [sentEmail, setSentEmail] = useState(false);\n const [isFetching, setIsFetching] = useState(false);\n\n interface FormValues {\n UserName: string;\n Email: string;\n }\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const initialResetPasswordProps = {\n UserName: '',\n Email: accountManagementDetails.email ? accountManagementDetails.email : '',\n };\n\n // handle validate\n const onValidate = (values: FormValues) => {\n if (!values.UserName || !values.Email) {\n return { [`UserName`]: 'Username is required.', [`Email`]: 'Email is required.' };\n }\n if (values.Email && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i.test(values.Email)) {\n return { [`Email`]: 'Invalid email address.' };\n }\n return {};\n };\n\n\n const onSubmit = useCallback(async (values: FormValues, { resetForm }: any) => {\n setIsFetching(true);\n await fetch(`${apiRootUrl}/${PasswordChangeInitiateUrl}?siteid=${group}`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n UserName: values.UserName,\n Email: values.Email,\n }),\n }).then(async response => {\n if (response.status === 200) {\n setIsFetching(false);\n const content = await response.json();\n if (content.ResponseCode === 0) {\n setAuthError('');\n setIsFetching(false);\n setSentEmail(true);\n } else {\n setIsFetching(false);\n setSentEmail(true);\n }\n resetForm();\n }\n });\n }, []);\n\n // if sentEmail is true, set timer for 5 seconds to close the modal (if it is still open) and then reset sentEmail to false\n // this will allow users to reset their password again if they need to\n useEffect(() => {\n if (sentEmail) {\n const timer = setTimeout(() => {\n setSentEmail(false);\n if (show) {\n toggleModal();\n }\n }, 5000);\n return () => clearTimeout(timer);\n }\n }, [sentEmail]);\n\n return (\n <>\n toggleModal()} show={show}>\n \n Reset Password\n \n {isFetching && }\n {!sentEmail && !isFetching && (\n \n {({ errors, touched, submitCount, handleSubmit, resetForm, values }) => (\n \n {isVirtual && (\n <>\n

    \n Welcome to Virtual Trading. If you do not have a new Virtual account,{' '}\n \n create a virtual trading account\n \n

    \n

    NOTE: Your live account login is not compatible with Virtual Trading.

    \n \n )}\n

    \n Please provide your username and email address to begin the password reset process.\n

    \n
    \n \n \n \n \n \n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n )}\n {sentEmail && (\n <>\n \n

    Password Reset Request Sent

    \n

    \n If the username and email match, you should have received a reset email with instructions on how to\n reset your password. Please contact us if you have any further questions or concerns.\n

    \n

    \n \n
    \n \n

    \n
    \n \n \n \n \n )}\n {authError && (\n \n

    \n
    \n )}\n
    \n \n );\n};\n","import React, { useEffect, useState, useMemo } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { Loading } from '@tradingblock/components';\nimport { AddressUpdate } from './modals//AddressUpdate';\nimport { EmailUpdate } from './modals/EmailUpdate';\nimport { PhoneUpdate } from './modals/PhoneUpdate';\nimport { TrustedContactUpdate } from './modals/TrustedContactUpdate';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { formatPhoneNumber, formatYearsEmployed } from '../../utilities/accountManagement';\nimport { EmployInfoUpdate } from './modals/EmployInfoUpdate';\nimport { RemoveTrustedContactOrTradeAuth } from './modals/RemoveTrustedContactOrTradeAuth';\nimport { ResetPassword } from './modals/ResetPassword';\nimport dayjs from 'dayjs';\n\nexport const AccountDetails: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const accountDetails = useStateSelector(s => s.accountManagement.accountDetails.data);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingEmailUpdate = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Email');\n const pendingMailAddressUpdate =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'MailingAddress');\n const pendingPhoneUpdate = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'PhoneNumber');\n\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n\n const { trustedContact } = accountManagementDetails;\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const dispatch = useDispatch();\n const [showAddressConfirm, setShowAddressConfirm] = useState(false);\n const [showEmailConfirm, setShowEmailConfirm] = useState(false);\n const [showPhoneConfirm, setShowPhoneConfirm] = useState(false);\n const [showTrustedContact, setShowTrustedContact] = useState(false);\n const [showEmploymentUpdate, setShowEmploymentUpdate] = useState(false);\n const [addressType, setAddressType] = useState('');\n const [accountHolderIndex, setAccountHolderIndex] = useState(0);\n const [showRemoveTrustedContact, setShowRemoveTrustedContact] = useState(false);\n const [showResetPassword, setShowResetPassword] = useState(false);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [accountId, dispatch, isLoaded, selectedLinkedAccountId, updateData]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'email-0':\n setAccountHolderIndex(0);\n setShowEmailConfirm(true);\n break;\n case 'email-1':\n setAccountHolderIndex(1);\n setShowEmailConfirm(true);\n break;\n case 'physAddress-0':\n setAddressType('physical');\n setAccountHolderIndex(0);\n setShowAddressConfirm(true);\n break;\n case 'physAddress-1':\n setAddressType('physical');\n setAccountHolderIndex(1);\n setShowAddressConfirm(true);\n break;\n case 'mailAddress-0':\n setAddressType('mail');\n setAccountHolderIndex(0);\n setShowAddressConfirm(true);\n break;\n case 'mailAddress-1':\n setAddressType('mail');\n setAccountHolderIndex(1);\n setShowAddressConfirm(true);\n break;\n case 'trustedContact':\n setShowTrustedContact(true);\n break;\n case 'employmentInfo-0':\n setAccountHolderIndex(0);\n setShowEmploymentUpdate(true);\n break;\n case 'employmentInfo-1':\n setAccountHolderIndex(1);\n setShowEmploymentUpdate(true);\n break;\n case 'phoneUpdate-0':\n setAccountHolderIndex(0);\n setShowPhoneConfirm(true);\n break;\n case 'phoneUpdate-1':\n setAccountHolderIndex(1);\n setShowPhoneConfirm(true);\n break;\n case 'removeTrustedContact':\n setShowRemoveTrustedContact(true);\n break;\n case 'resetPassword':\n setShowResetPassword(true);\n break;\n default:\n break;\n }\n };\n\n const toggleAddressUpdate = () => {\n showAddressConfirm ? setShowAddressConfirm(false) : setShowAddressConfirm(true);\n };\n\n const toggleEmailUpdate = () => {\n showEmailConfirm ? setShowEmailConfirm(false) : setShowEmailConfirm(true);\n };\n\n const togglePhoneUpdate = () => {\n showPhoneConfirm ? setShowPhoneConfirm(false) : setShowPhoneConfirm(true);\n };\n\n const toggleTrustedContact = () => {\n showTrustedContact ? setShowTrustedContact(false) : setShowTrustedContact(true);\n };\n\n const toggleEmploymentUpdate = () => {\n showEmploymentUpdate ? setShowEmploymentUpdate(false) : setShowEmploymentUpdate(true);\n };\n\n const toggleRemoveTrustedContact = () => {\n showRemoveTrustedContact ? setShowRemoveTrustedContact(false) : setShowRemoveTrustedContact(true);\n };\n\n const toggleShowResetPassword = () => {\n showResetPassword ? setShowResetPassword(false) : setShowResetPassword(true);\n };\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n const getAccountHolderName = (index: number) => {\n if (accountHolders[index].firstName && accountHolders[index].lastName) {\n return `${accountHolders[index].firstName} ${accountHolders[index].middleName ||\n accountHolders[index].middleInitial ||\n ''} ${accountHolders[index].lastName} ${accountHolders[index].suffix || ''}`;\n }\n return 'Name not found';\n };\n\n const getPhoneNumberByType = (index: number, type: string) => {\n const phone = accountHolders[index].phones ? accountHolders[index].phones.filter(phone => phone.type === type) : [];\n if (phone.length > 0) {\n return phone[0].phoneNumber;\n }\n return 'N/A';\n };\n\n const personalInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Personal Information -{' '}\n {getAccountHolderName(index)}\n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Email Address \n \n \n
    \n {accountHolder.email ? accountHolder.email : 'No Email Address on Record'}\n
    \n {pendingEmailUpdate && pendingEmailUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingEmailUpdate[pendingEmailUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Password\n \n \n \n \n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Mailing Address \n \n \n
    \n \n {accountHolder.mailingAddress.address1 ? accountHolder.mailingAddress.address1 : 'N/A'}\n \n
    \n {accountHolder.mailingAddress.address2 && (\n <>\n {accountHolder.mailingAddress.address2}\n
    \n \n )}\n \n {accountHolder.mailingAddress.city ? accountHolder.mailingAddress.city : ''},{' '}\n {accountHolder.mailingAddress.state ? accountHolder.mailingAddress.state : ''}{' '}\n {accountHolder.mailingAddress.postalCode ? accountHolder.mailingAddress.postalCode : ''}\n \n
    \n \n {accountHolder.mailingAddress.country ? accountHolder.mailingAddress.country : 'N/A'}{' '}\n \n
    \n {pendingMailAddressUpdate && pendingMailAddressUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingMailAddressUpdate[pendingMailAddressUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Physical Address \n \n \n
    \n {accountHolder.address.address1 ? accountHolder.address.address1 : 'N/A'}\n
    \n {accountHolder.address.address2 && (\n <>\n {accountHolder.address.address2}\n
    \n \n )}\n\n \n {accountHolder.address.city ? accountHolder.address.city : ''},{' '}\n {accountHolder.address.state ? accountHolder.address.state : ''}{' '}\n {accountHolder.address.postalCode ? accountHolder.address.postalCode : 'N/A'}\n \n
    \n {accountHolder.address.country ? accountHolder.address.country : 'N/A'} \n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Phone Numbers \n \n \n \n Home: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Home'))}{' '}\n \n
    \n \n Mobile: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Mobile'))}{' '}\n \n
    \n \n Work: \n {formatPhoneNumber(getPhoneNumberByType(index, 'Work'))}{' '}\n \n
    \n {pendingPhoneUpdate && pendingPhoneUpdate.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {pendingPhoneUpdate[pendingPhoneUpdate.length - 1] &&\n dayjs(pendingPhoneUpdate[pendingPhoneUpdate.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n\n {\n Value: () => null,\n },\n ];\n });\n }\n return fieldList;\n }, [\n accountHolders,\n accountDetails,\n isLoaded,\n isFetching,\n pendingAccountUpdates,\n pendingPhoneUpdate,\n pendingMailAddressUpdate,\n pendingEmailUpdate,\n ]);\n\n const trustedContactInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Trusted Contact{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n No trusted contact on record.\n \n ),\n hide: trustedContact !== null,\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Name\n \n \n {trustedContact.firstName} {trustedContact.middleName || trustedContact.middleInitial || ''}{' '}\n {trustedContact.lastName} {trustedContact.suffix || ''}\n \n \n ),\n hide: trustedContact === null,\n },\n\n {\n Value: () => (\n <>\n \n Email\n \n {trustedContact.email}\n \n ),\n hide: trustedContact === null,\n },\n\n {\n Value: () => (\n <>\n \n Address\n \n {trustedContact.address && trustedContact.address.address1}\n
    \n {trustedContact.address && trustedContact.address.address2 && (\n <>\n {trustedContact.address.address2}\n \n )}\n \n {trustedContact.address && trustedContact.address.city},{' '}\n {trustedContact.address && trustedContact.address.state}{' '}\n {trustedContact.address && trustedContact.address.postalCode}\n \n
    \n {trustedContact.address && trustedContact.address.country}\n \n ),\n hide: trustedContact === null || trustedContact.address === null,\n },\n\n {\n Value: () => (\n <>\n \n Phone Number\n \n {formatPhoneNumber(trustedContact.phones[0].phoneNumber)}\n \n ),\n hide: trustedContact === null || trustedContact.phones === null,\n },\n {\n Value: () => (\n <>\n \n \n ),\n hide: trustedContact === null,\n },\n ];\n }\n\n return fieldList;\n }, [trustedContact, accountDetails, isFetching, isLoaded]);\n\n const employmentInfoFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountDetails && accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Employment Information -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Employment Type\n \n {accountHolder.employmentType}\n \n ),\n hide: !accountHolder.employmentType,\n },\n\n {\n Value: () => (\n <>\n \n Employer Name\n \n {accountHolder.employer}\n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.employer,\n },\n\n {\n Value: () => (\n <>\n \n Job Title\n \n {accountHolder.jobPosition}\n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.jobPosition,\n },\n\n {\n Value: () => (\n <>\n \n Years Employed\n \n \n {accountHolder.yearsEmployed ? formatYearsEmployed(accountHolder.yearsEmployed) : 'Not applicable'}\n \n \n ),\n hide: accountHolder.employmentType !== 'Employed',\n },\n\n {\n Value: () => (\n <>\n \n Employment Address\n \n \n {accountHolder.employerAddress && accountHolder.employerAddress.address1 && (\n <>\n {accountHolder.employerAddress.address1}\n
    \n \n )}\n {accountHolder.employerAddress && accountHolder.employerAddress.address2 && (\n <>\n {accountHolder.employerAddress.address2}\n
    \n \n )}\n {accountHolder.employerAddress && accountHolder.employerAddress.city}\n {accountHolder.employerAddress && accountHolder.employerAddress.state\n ? ', ' + accountHolder.employerAddress.state\n : ''}{' '}\n {accountHolder.employerAddress && accountHolder.employerAddress.postalCode}\n
    \n {accountHolder.employerAddress && accountHolder.employerAddress.country}\n
    \n \n ),\n hide: accountHolder.employmentType !== 'Employed' || !accountHolder.employerAddress,\n },\n {\n Value: () => null,\n },\n ];\n });\n }\n\n return fieldList;\n }, [accountHolders, accountDetails, isFetching, isLoaded]);\n\n if (!isLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\n <>\n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllTaxbracketTypes,\n AllTimeHorizonTypes,\n AllMonetaryRangeTypes,\n AllIncomeRangeTypes,\n FinancialUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const FinancialUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n assetType: string;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics: { bracket, horizon } } = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const initialFinancialUpdateValues: FinancialUpdateValueProps = {\n annualIncome: annualIncome ? annualIncome : '',\n totalNetWorth: totalNetWorth ? totalNetWorth : '',\n liquidNetWorth: liquidNetWorth ? liquidNetWorth : '',\n characteristics: {\n bracket: bracket ? bracket : '',\n horizon: horizon ? horizon : '',\n },\n };\n\n const onValidate = (values: FinancialUpdateValueProps) => {\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics } = values;\n const { bracket, horizon } = characteristics;\n\n if (!annualIncome || !totalNetWorth || !liquidNetWorth || !bracket || !horizon) {\n return {\n [`annualIncome`]: getRequiredError(annualIncome),\n [`totalNetWorth`]: getRequiredError(totalNetWorth),\n [`liquidNetWorth`]: getRequiredError(liquidNetWorth),\n [`characteristics.bracket`]: getRequiredError(bracket),\n [`characteristics.horizon`]: getRequiredError(horizon),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { annualIncome, totalNetWorth, liquidNetWorth, characteristics } = values;\n const { bracket, horizon } = characteristics;\n let updateValues = {};\n updateValues = {\n item: 'Financial',\n annualIncome: annualIncome,\n totalNetWorth: totalNetWorth,\n liquidNetWorth: liquidNetWorth,\n characteristics: {\n bracket: bracket,\n horizon: horizon,\n },\n };\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n toggleModal();\n resetForm();\n },\n [toggleModal, annualIncome, annualIncome, totalNetWorth, liquidNetWorth, bracket, horizon, dispatch]\n );\n\n return (\n \n {({ handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n \n \n \n

    \n Total gross annual income that earn or receive, or reasonable expect to earn or receive.\n

    \n\n \n \n \n

    \n Total value of all assets you own less all liabilities, excluding primary residence.\n

    \n\n \n \n \n

    \n Total value of all cash and cash equivalent assets you own less all liabilities.\n

    \n\n \n \n \n

    Used to determine trading products you can use.

    \n\n \n \n \n

    Used to determine trading products you can use.

    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllExperienceYearTypes,\n AllTradeExperienceYearTypes,\n AllTradeExperienceTypes,\n TradeExperienceUpdateValueProps,\n ExperienceYearType,\n} from '@tradingblock/types';\nimport { FormGroup, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const TradeExperienceUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n instrumentType: string;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { years, tradesPerYear, instrumentType } = values;\n\n let updateValues = {\n item: 'Experience',\n experience: {\n [`${instrumentType}`]: {\n years,\n tradesPerYear: years === ExperienceYearType.Zero ? null : tradesPerYear,\n },\n },\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n const onValidate = (values: TradeExperienceUpdateValueProps) => {\n const { instrumentType, years, tradesPerYear } = values;\n\n if (!instrumentType) {\n return {\n [`instrumentType`]: getRequiredError(instrumentType),\n };\n }\n\n if (instrumentType && !years) {\n return {\n [`years`]: getRequiredError(years),\n [`tradesPerYear`]: getRequiredError(tradesPerYear),\n };\n }\n if (instrumentType && years && years === ExperienceYearType.Zero && !tradesPerYear) {\n return; // no error\n }\n\n if (instrumentType && years && !tradesPerYear) {\n return {\n [`tradesPerYear`]: getRequiredError(tradesPerYear),\n };\n }\n\n return {};\n };\n\n const initialTradeExperienceUpdateValues: TradeExperienceUpdateValueProps = {\n instrumentType: undefined,\n years: undefined,\n tradesPerYear: undefined,\n };\n\n return (\n \n {({ values, handleSubmit, resetForm }) => (\n toggleModal()} show={show}>\n \n Trade Experience Update Request\n \n \n

    Trade Experience Update

    \n
    \n \n \n\n <>\n \n {values.years !== ExperienceYearType.Zero && (\n \n )}\n

    \n Your prior experience helps determine which products you can trade and the option strategies (if\n desired) you can use.\n

    \n \n
    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport { LocalizeContextProps, withLocalize } from 'react-localize-redux';\nimport _ from 'lodash';\nimport { RiskLevel } from '@tradingblock/types';\nimport { useLocalize } from '@tradingblock/components';\n\ninterface RiskLevelIconProps {\n level: RiskLevel;\n}\n\nconst RiskLevelIconComponent: React.FC = ({ level, translate }) => {\n const { getTranslationId } = useLocalize();\n\n const title = useMemo(() => {\n const text = translate(getTranslationId({ id: `riskLevel.${level}` }));\n return _.isString(text) ? text : `[level ${level}]`;\n }, [level, translate, getTranslationId]);\n\n return (\n \n \n \n \n {/* \n \n */}\n \n );\n};\n\nexport const RiskLevelIcon = withLocalize(RiskLevelIconComponent);\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllLiquidityNeedTypes,\n AllInvestmentObjectiveTypes,\n InvestmentObjectiveType,\n RiskToleranceType,\n AllRiskToleranceTypes,\n SuitabilityUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, CheckListField, SelectDropdownField, Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { RiskLevelIcon } from './components/RiskLevelIcon';\nimport {\n getRiskLevelForInvestmentObjectiveType,\n getDescriptionForInvestmentObjective,\n} from '../../../utilities/accountManagement';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\n\nexport const SuitabilityUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { investmentObjectiveType, characteristics: { liquidity, risk } } = accountManagementDetails\n const initialSuitabilityUpdateValues: SuitabilityUpdateValueProps = {\n investmentObjectiveType: investmentObjectiveType ? investmentObjectiveType : '',\n characteristics: {\n liquidity: liquidity ? liquidity : '',\n risk: risk ? risk : '',\n },\n };\n\n const onValidate = (values: SuitabilityUpdateValueProps) => {\n const { investmentObjectiveType, characteristics } = values;\n const { liquidity, risk } = characteristics;\n\n if (!investmentObjectiveType || !risk || !liquidity) {\n return {\n [`investmentObjectiveType`]: getRequiredError(investmentObjectiveType),\n [`characteristics.risk`]: getRequiredError(risk),\n [`characteristics.liquidity`]: getRequiredError(liquidity),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { investmentObjectiveType, characteristics } = values;\n const { risk, liquidity } = characteristics;\n let updateValues = {\n item: 'Suitability',\n characteristics: {\n risk,\n liquidity,\n },\n investmentObjectiveType,\n };\n\n if (\n investmentObjectiveType === accountManagementDetails.investmentObjectiveType &&\n risk === accountManagementDetails.characteristics.risk &&\n liquidity === accountManagementDetails.characteristics.liquidity\n ) {\n resetForm();\n toggleModal();\n return;\n }\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n \n
    Investment Objective
    \n ({\n value: t,\n icon: ,\n }))}\n type=\"radio\"\n className=\"checklist-descriptions\"\n renderOption={(opt: { value: InvestmentObjectiveType }) => (\n <>\n {opt.value ? opt.value.replace(/([A-Z])/g, ' $1').trim() : 'Not Found'}\n
    \n {getDescriptionForInvestmentObjective(opt.value)}\n \n )}\n />\n
    \n
    Suitability Information
    \n {values.investmentObjectiveType !== 'Speculation' && (\n \n )}\n {values.investmentObjectiveType === 'Speculation' && (\n \n )}\n\n \n

    Used to determine trading products you can use.

    \n

    \n Investment objective, risk tolerance & liquidity needs updates are pending Admin review.\n

    \n
    \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useState, useCallback, useEffect } from 'react';\nimport { useDropzone, FileError } from 'react-dropzone';\nimport _ from 'lodash';\nimport { Button } from 'react-bootstrap';\nimport { useApi } from '../../context/Api';\nimport { AccountManagementDocuments, ClearerType, ResponseCodes } from '@tradingblock/types';\nimport { ApiResponse } from '@tradingblock/api';\nimport { Text } from '@tradingblock/components';\nimport jsPDF from 'jspdf';\n\n/**\n * MiscellaneousUpload component properties\n *\n * @property {number} accountId Account ID Associated With File Upload\n * @property {void} handleDocumentUpload Following successful upload, passes the documentId to parent component\n * @property {AccountManagementDocuments} documentType Upload document type\n * @property {string} description Description of the document\n */\n\ninterface MiscellaneousUploadProps {\n accountId: number;\n handleDocumentUpload: (payload: number, accountHolderIndex: number, documentType: AccountManagementDocuments) => void;\n documentType: AccountManagementDocuments;\n description: string;\n accountHolderIndex: number;\n isCashieringDocument?: boolean;\n recipientBankId?: number;\n disabled?: boolean;\n clearer?: ClearerType;\n}\n\n/**\n * Upload widget for miscellaneous documents related to account management updates (3210 letter, government ids, signatures, etc.)\n *\n * @param {MiscellaneousUploadProps} props\n * @returns {JSX.Element}\n */\n\nexport const MiscUploadFileField: React.FC = ({\n accountId,\n handleDocumentUpload,\n documentType,\n description,\n accountHolderIndex,\n isCashieringDocument,\n recipientBankId,\n disabled,\n clearer,\n}) => {\n // Used Hooks\n const api = useApi();\n\n // Used States\n const [uploadingDocument, setUploadingDocument] = useState(false);\n const [fileName, setFileName] = useState('');\n const [uploadSuccess, setUploadSuccess] = useState(false);\n const [errors, setErrors] = useState([]);\n const maxFileSize = 12 * 1024 * 1024; // 12MB\n\n // Used States for ID Card\n const [frontImage, setFrontImage] = useState(null);\n const [backImage, setBackImage] = useState(null);\n const [frontImgPreview, setFrontImgPreview] = useState(null);\n const [backImgPreview, setBackImgPreview] = useState(null);\n const isIdCard =\n documentType === AccountManagementDocuments.DriversLicense ||\n documentType === AccountManagementDocuments.StateIdCard;\n\n const renderImageToCanvas = async (imageSrc: any) => {\n const img = new Image();\n img.src = imageSrc;\n await new Promise(resolve => (img.onload = resolve));\n const canvas = document.createElement('canvas');\n canvas.width = img.width;\n canvas.height = img.height;\n const ctx = canvas.getContext('2d');\n if (ctx) {\n ctx.drawImage(img, 0, 0);\n }\n return canvas;\n };\n\n const generatePDF = async () => {\n try {\n const pdf = new jsPDF();\n\n // Render front image to canvas\n const frontCanvas = await renderImageToCanvas(frontImgPreview);\n const frontImgData = frontCanvas.toDataURL('image/jpeg');\n const frontImgWidth = frontCanvas.width;\n const frontImgHeight = frontCanvas.height;\n\n // Maintain aspect ratio for front image\n const frontAspectRatio = frontImgWidth / frontImgHeight;\n const frontNewWidth = 150; // Desired width\n const frontNewHeight = frontNewWidth / frontAspectRatio;\n\n pdf.addImage(frontImgData, 'JPEG', 15, 40, frontNewWidth, frontNewHeight);\n\n // Add a new page\n pdf.addPage();\n // Render back image to canvas\n const backCanvas = await renderImageToCanvas(backImgPreview);\n const backImgData = backCanvas.toDataURL('image/jpeg');\n const backImgWidth = backCanvas.width;\n const backImgHeight = backCanvas.height;\n\n // Maintain aspect ratio for back image\n const backAspectRatio = backImgWidth / backImgHeight;\n const backNewWidth = 150; // Desired width\n const backNewHeight = backNewWidth / backAspectRatio;\n\n pdf.addImage(backImgData, 'JPEG', 15, 40, backNewWidth, backNewHeight);\n\n // Generate PDF Blob and display\n const pdfBlob = pdf.output('blob');\n\n // check size of the pdfBlob\n if (pdfBlob.size > maxFileSize) {\n alert('The combined image is too large to upload. Please try again with smaller images.');\n return;\n }\n\n // return a new file object with the pdfBlob\n return new File([pdf.output('blob')], 'combined.pdf', { type: 'application/pdf' });\n } catch (error) {\n console.error('Error generating PDF:', error);\n }\n };\n const handleCombinedUpload = async () => {\n if (frontImage && backImage) {\n setUploadingDocument(true);\n try {\n const fileToUpload = await generatePDF();\n\n if (fileToUpload) {\n if (!isCashieringDocument) {\n api.accountManagement\n .uploadMiscellaneousDocument(fileToUpload, accountId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n } else if (isCashieringDocument && recipientBankId) {\n api.cashiering.documents\n .upload(fileToUpload, accountId, recipientBankId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n }\n } else {\n throw new Error('File to upload is undefined.');\n }\n } catch (error) {\n setErrors([{ message: 'An error occurred while processing the upload.', code: 'UPLOAD_ERROR' }]);\n setUploadingDocument(false);\n }\n }\n };\n\n // Process upload api response\n const processUploadResponse = useCallback((response: ApiResponse) => {\n // If unsuccessful upload, set state/errors\n if (response.responseCode !== 0) {\n setUploadingDocument(false);\n setErrors([\n {\n message: ResponseCodes[response.responseCode].description as string,\n code: ResponseCodes[response.responseCode].name,\n },\n ]);\n } else {\n // If successful, set states and pass documentId to parent for update submission\n setUploadSuccess(true);\n handleDocumentUpload(response.payload, accountHolderIndex, documentType);\n setErrors([]);\n }\n }, []);\n\n // Handle image drop for ID card\n const handleImageDrop = (side: 'front' | 'back') => async (acceptedFiles: File[]) => {\n // if the side is front, set the front image state\n // if the side is back, set the back image state\n const file = acceptedFiles[0];\n // if both the front and back images are set, combine them into a single PDF and upload automatically without user intervention\n if (side === 'front') {\n setFrontImgPreview(URL.createObjectURL(file));\n setFrontImage(file);\n } else if (side === 'back') {\n setBackImgPreview(URL.createObjectURL(file));\n setBackImage(file);\n }\n };\n\n // Dropzone Properties\n const { getRootProps, getInputProps } = useDropzone({\n onDrop: () => {\n setUploadingDocument(true);\n },\n onDropAccepted: acceptedFiles => {\n // If drop accepted by frontend, upload the file to backend\n setFileName(acceptedFiles[0].name);\n if (!isCashieringDocument) {\n api.accountManagement\n .uploadMiscellaneousDocument(acceptedFiles[0], accountId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n } else if (isCashieringDocument && recipientBankId) {\n api.cashiering.documents\n .upload(acceptedFiles[0], accountId, recipientBankId, documentType, description)\n .then(response => {\n processUploadResponse(response);\n });\n }\n },\n // If drop rejected, set states/errors\n onDropRejected: fileRejections => {\n setUploadingDocument(false);\n setErrors(fileRejections[0].errors);\n },\n maxSize: maxFileSize,\n maxFiles: 1,\n accept: 'image/png, image/jpeg, image/jpg, image/gif, application/pdf, capture=camera',\n });\n\n // Dropzones for ID Card\n const { getRootProps: getFrontRootProps, getInputProps: getFrontInputProps } = useDropzone({\n onDrop: acceptedFiles => handleImageDrop('front')(acceptedFiles),\n maxSize: maxFileSize,\n maxFiles: 1,\n accept: 'image/png, image/jpeg, image/jpg, image/gif, capture=camera',\n });\n\n const { getRootProps: getBackRootProps, getInputProps: getBackInputProps } = useDropzone({\n onDrop: acceptedFiles => handleImageDrop('back')(acceptedFiles),\n maxSize: maxFileSize,\n maxFiles: 1,\n accept: 'image/png, image/jpeg, image/jpg, image/gif, capture=camera',\n });\n\n const formatDocumentName = (documentName: string) => {\n const specialCases: { [key: string]: string } = {\n DriversLicense: \"Driver's License\",\n StateIdCard: 'State ID Card',\n Passport: 'Passport',\n MilitaryId: 'Military ID',\n SsnCard: 'SSN Card',\n SsaLetter: 'SSA Letter',\n IrsItinLetter: 'IRS ITIN Letter',\n OtherGovernmentId: 'Other Government ID',\n CddDocument: 'CDD Document',\n AllPassingCipResults: 'All Passing CIP Results',\n IrsW9Form: 'IRS W-9 Form',\n SignatureImage: 'Signature Image',\n IdDocument: 'ID Document',\n AffiliateApproval: 'Affiliate Approval',\n Document: 'Document',\n Other: 'Other',\n GovernmentId: 'Government ID',\n };\n\n if (specialCases[documentName]) {\n return specialCases[documentName];\n }\n\n return (\n documentName\n // Add spaces before each capital letter except the first one\n .replace(/([A-Z])/g, ' $1')\n // Trim any leading spaces\n .trim()\n // Convert to title case\n .replace(/\\w\\S*/g, txt => txt.charAt(0).toUpperCase() + txt.substring(1).toLowerCase())\n );\n };\n\n useEffect(() => {\n if (frontImage && backImage) {\n handleCombinedUpload();\n }\n }, [frontImage, backImage]);\n\n return (\n <>\n {!uploadSuccess ? (\n <>\n {!isIdCard && (\n
    \n \n {!uploadingDocument ? (\n <>\n \n \n ) : (\n \n {' '}\n \n \n )}\n
    \n )}\n {isIdCard && (\n <>\n {/* Only display if there is no frontImage state currently set*/}\n {frontImage === null && (\n
    \n \n \n
    \n )}\n {/* Only display if there is no backImage state currently set*/}\n {backImage === null && (\n
    \n \n \n
    \n )}\n \n )}\n \n ) : (\n <>\n
    \n \n File successfully uploaded - {fileName}\n \n
    \n \n )}\n {errors.length > 0 && (\n
    \n
      \n {errors.map((error, errorIndex) => (\n
    • \n {error.message}\n
    • \n ))}\n
    \n
    \n )}\n \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AccountManagementDocuments,\n AllBooleanToggleTypes,\n AllTradeGoalTypes,\n BooleanToggleType,\n ClearerType,\n Country,\n TradeGoalType,\n TradeGoalUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, CheckListField, Modal, StepperField, ExternalLink, Text } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { RiskLevelIcon } from './components/RiskLevelIcon';\nimport { getRiskLevelForTradeGoalType } from '../../../utilities/accountManagement';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getRequiredError, getUploadError } from './Validation';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's tradeGoal (trade level)\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @returns {JSX.Element}\n */\n\nexport const formatTradeGoalType = (tradeGoalType: string) => {\n switch (tradeGoalType) {\n case 'StocksBonds':\n return 'Stocks & Bonds';\n case 'AllAbovePlusCallsPuts':\n return 'Stocks & Bonds + Calls & Puts';\n case 'AllAbovePlusOptionSpreads':\n return 'Stocks, Bonds, Calls, Puts + Option Spreads';\n case 'AllAbovePlusPutWriting':\n return 'Stocks, Bonds, Calls, Puts, Option Spreads + Put Writing';\n case 'AllAbovePlusAllOptionStrategies':\n return 'Stocks, Bonds, Calls, Puts, Option Spreads, Put Writing + All Option Strategies';\n default:\n return tradeGoalType.replace(/([A-Z])/g, ' $1').trim();\n }\n};\n\nexport const TradeGoalUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // used hooks\n const dispatch = useDispatch();\n\n // state selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n\n // Used States\n const [clickedAgreements, setClickedAgreements] = useState([]);\n const [uploadIds, setUploadId] = useState<{ documentId: number; accountHolderIndex: number }[]>([]);\n const documentIds: {\n documentId: number;\n accountHolderIndex: number;\n documentType: AccountManagementDocuments;\n }[] = [];\n const [numberOfUploads, setNumberOfUploads] = useState(0);\n\n // Retrieve documentId, accountHolderIndex, documentType of uploaded files, push into documentIds array for submission & increment numberOfUploads\n const handleDocumentUpload = (\n documentId: number,\n accountHolderIndex: number,\n documentType: AccountManagementDocuments\n ) => {\n if (documentId) {\n setUploadId([...uploadIds, { accountHolderIndex, documentId }]);\n documentIds.push({ documentId, accountHolderIndex, documentType });\n setNumberOfUploads(numberOfUploads => numberOfUploads + 1);\n }\n return;\n };\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n // Return undefined, disabling button, for agreements that have not been clicked\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n // Clearer\n const clearer = useClearer();\n\n // Link to Option Agreements\n // TODO: Ensure RQD Link is accurate once it is available\n const link = 'https://legacy.tradingblock.com/Docs/Agreements//Option_Agreement_v5.5_20180821.pdf';\n const rqdLink = 'https://legacy.tradingblock.com/Docs/Agreements//RQD_Options_Agreement_v30_220421.pdf';\n\n const formatBooleanToggleType = (toggleType: string) => {\n if (toggleType === 'yes') {\n return true;\n } else {\n return false;\n }\n };\n\n // Check if either account holder has foreign citizenship\n const checkForForeign = () => {\n const holderCitizenship = accountHolders.filter(\n holder => holder.citizenshipCountry !== Country.UnitedStatesOfAmerica\n );\n if (holderCitizenship.length > 0) {\n return true;\n }\n return false;\n };\n const isForeign = checkForForeign();\n\n /**\n *\n * @property {TradeGoalType | undefined} tradeGoalType User response to their desired trade level for account update\n * @property {BooleanToggleType | null} option If applicable, user acceptance or rejection of Option Agreement\n */\n\n const initialTradeGoalFlexUpdate: TradeGoalUpdateValueProps = {\n tradeGoalType: undefined,\n agreements: {\n option: null,\n },\n };\n\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: TradeGoalUpdateValueProps) => {\n const { tradeGoalType, agreements } = values;\n const { option } = agreements;\n\n if (!tradeGoalType) {\n return {\n [`tradeGoalType`]: getRequiredError(tradeGoalType),\n };\n }\n if (tradeGoalType !== TradeGoalType.StocksBonds && !option) {\n return {\n [`agreements.option`]: getRequiredError(option),\n };\n }\n\n if (tradeGoalType !== TradeGoalType.StocksBonds && option && option !== BooleanToggleType.Yes) {\n return {\n [`agreements.option`]: getInvalidError(false),\n };\n }\n\n if (isForeign && accountManagementDetails.type !== 'Joint' && numberOfUploads < 2) {\n return {\n [`uploadDocuments`]: getUploadError(false),\n };\n }\n\n if (isForeign && accountManagementDetails.type === 'Joint' && numberOfUploads < 4) {\n return {\n [`uploadedDocuments`]: getUploadError(false),\n };\n }\n };\n\n // On form submission set updateValues and dispatch update request\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { tradeGoalType } = values;\n let updateValues;\n updateValues = {\n item: 'TradeGoal',\n tradeGoalType,\n agreements: {\n option: formatBooleanToggleType(values.agreements.option),\n },\n };\n\n if (isForeign) {\n updateValues = {\n item: 'TradeGoal',\n tradeGoalType,\n agreements: {\n option: formatBooleanToggleType(values.agreements.option),\n },\n uploadedDocuments: documentIds.map(doc => {\n return {\n accountHolder: doc.accountHolderIndex,\n documentId: doc.documentId,\n documentName: doc.documentType,\n };\n }),\n };\n }\n\n if (tradeGoalType === accountManagementDetails.tradeGoalType) {\n resetForm();\n toggleModal();\n return;\n }\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n
    Trade Goal Update
    \n \n ({\n value: t,\n icon: ,\n }))}\n type=\"radio\"\n className=\"checklist-descriptions\"\n renderOption={(opt: { value: TradeGoalType }) => (\n <>\n {opt.value ? formatTradeGoalType(opt.value) : 'Not Found'}\n \n )}\n />\n

    \n While every account is approved to trade stocks, ETFs, mutual funds, and fixed income, we are required\n to review your investment objectives, experience, income, and net worth if you wish to trade options.\n

    \n

    \n Trade level type updates are pending Admin review and acceptance of the options agreement.\n

    \n
    \n {values.tradeGoalType && values.tradeGoalType !== TradeGoalType.StocksBonds && (\n <>\n

    \n onClickedAgreementLink('option')}\n >\n Option Agreement\n {' '}\n

    \n \n \n \n \n )}\n {values.tradeGoalType && isForeign && (\n <>\n

    \n Foreign account trade goal updates require signature and government ID images to be uploaded for\n admin review. Please attach documents accordingly below prior to submission.\n

    \n {errors.uploadedDocuments && !!submitCount && (\n <>\n \n \n \n
    \n
    \n \n )}\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n {accountHolders.map((holder, i) => (\n
    \n
    \n {holder.firstName} {holder.middleName || holder.middleInitial || ''} {holder.lastName}{' '}\n {holder.suffix || ''}\n
    \n \n \n \n \n \n \n
    \n ))}\n
    \n \n )}\n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { ExternalLink, FormGroup, Modal, StepperField, Text } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport {\n AccountManagementDocuments,\n AllBooleanToggleTypes,\n AllFlexibilityTypes,\n ApiResponse,\n BooleanToggleType,\n ClearerType,\n Country,\n FlexibilityType,\n FlexibilityTypeUpdateValueProp,\n} from '@tradingblock/types';\nimport { getInvalidError, getRequiredError, getUploadError } from './Validation';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useApi } from '../../../context/Api';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's flexibilityType (Margin/Cash-Only)\n *\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @returns {JSX.Element}\n */\n\nexport const FlexibilityTypeUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // Used Hooks\n const dispatch = useDispatch();\n\n // Used States\n const [clickedAgreements, setClickedAgreements] = useState([]);\n const [uploadIds, setUploadId] = useState<{ documentId: number; accountHolderIndex: number }[]>([]);\n const [numberOfUploads, setNumberOfUploads] = useState(0);\n\n // Array of documents uploaded for update request\n const documentIds: {\n documentId: number;\n accountHolderIndex: number;\n documentType: AccountManagementDocuments;\n }[] = [];\n\n // Retrieve documentId, accountHolderIndex, documentType of uploaded files, push into documentIds array for submission & increment numberOfUploads\n const handleDocumentUpload = (\n documentId: number,\n accountHolderIndex: number,\n documentType: AccountManagementDocuments\n ) => {\n if (documentId) {\n setUploadId([...uploadIds, { accountHolderIndex, documentId }]);\n documentIds.push({ documentId, accountHolderIndex, documentType });\n setNumberOfUploads(numberOfUploads => numberOfUploads + 1);\n }\n return;\n };\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n // Return undefined, disabling button, for agreements that have not been clicked\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n // Clearer\n const clearer = useClearer();\n\n // Margin Agreement Links\n // TODO: Ensure RQD Link is accurate once it is available\n const link = 'https://legacy.tradingblock.com/Docs/Agreements//Margin_Agreement_vTest.pdf';\n const rqdLink = 'https://legacy.tradingblock.com/Docs/Agreements//RQD_Margin_Supplement_Agreement_v3_220421.pdf';\n\n // State Selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountDetails;\n\n const api = useApi();\n const [duplicateAccountError, setDuplicateAccountError] = React.useState(null);\n\n const handleDuplicateAccountCheckResponse = useCallback((response: ApiResponse) => {\n if (response.responseCode !== 0) {\n setDuplicateAccountError(response.payload[0]);\n } else {\n return;\n }\n }, []);\n\n /**\n * FlexibilityTypeUpdateValueProps\n *\n * @property {FlexibilityType | undefined} flexibilityType User response to Account Type (Margin/Cash-Only)\n * @property {BooleanToggleType | null} margin If applicable, user acceptance or rejection of margin agreement\n */\n\n const initialTradeGoalFlexUpdate: FlexibilityTypeUpdateValueProp = {\n flexibilityType: undefined,\n agreements: {\n margin: null,\n },\n };\n\n const formatBooleanToggleType = (toggleType: string) => {\n if (toggleType === 'yes') {\n return true;\n } else {\n return false;\n }\n };\n\n // Check if either account holder has foreign citizenship\n const checkForForeign = () => {\n const holderCitizenship = accountHolders.filter(\n holder => holder.citizenshipCountry !== Country.UnitedStatesOfAmerica\n );\n if (holderCitizenship.length > 0) {\n return true;\n }\n return false;\n };\n // Boolean for foreign account holder\n const isForeign = checkForForeign();\n\n // On form submission set updateValues and dispatch update request\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { flexibilityType } = values;\n let updateValues;\n updateValues = {\n item: 'Flexability',\n flexibilityType,\n agreements: {\n margin: formatBooleanToggleType(values.agreements.margin),\n },\n };\n\n // if either account holder is foreign, attach required documents to update values\n if (isForeign) {\n updateValues = {\n item: 'Flexability',\n flexibilityType,\n agreements: {\n margin: formatBooleanToggleType(values.agreements.margin),\n },\n uploadedDocuments: documentIds.map(doc => {\n return {\n accountHolder: doc.accountHolderIndex,\n documentId: doc.documentId,\n documentName: doc.documentType,\n };\n }),\n };\n }\n\n // If flexibility type is stale, reset form and close modal\n if (flexibilityType === accountDetails.flexibilityType) {\n resetForm();\n toggleModal();\n return;\n }\n\n // dispatch update request\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n // re-retrieve account/account management details following update request\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: FlexibilityTypeUpdateValueProp) => {\n const { flexibilityType, agreements } = values;\n const { margin } = agreements;\n\n if (values.flexibilityType) {\n let requestValues: DuplicateAccountCheckRequest;\n // TODO: Implement duplicate account check for entities once supported and redux implemented\n // if (accountDetails.type === 'Entity') {\n // requestValues = {\n // accountIdToIgnore: accountId,\n // entityAccountType: accountDetails.entityAccountType,\n // flexibilityType: values.flexibilityType,\n // primaryTaxIdSecret:\n // };\n // }\n\n if (accountDetails.type === 'Individual' && !isForeign) {\n requestValues = {\n accountIdToIgnore: accountId,\n flexibilityType: values.flexibilityType,\n primaryTaxIdSecret: accountHolders[0].ssnSecret,\n retirementAccountType: accountDetails.retirementAccountType ? accountDetails.retirementAccountType : null,\n type: accountDetails.type,\n };\n\n api.application.duplicateAccountCheck(requestValues).then(response => {\n handleDuplicateAccountCheckResponse(response);\n });\n }\n if ((accountDetails.type === 'Joint' || accountDetails.type === 'Ugma') && !isForeign) {\n requestValues = {\n accountIdToIgnore: accountId,\n flexibilityType: values.flexibilityType,\n primaryTaxIdSecret: accountHolders[0].ssnSecret,\n secondaryTaxIdSecret: accountHolders[1].ssnSecret,\n retirementAccountType: accountDetails.retirementAccountType ? accountDetails.retirementAccountType : null,\n type: accountDetails.type,\n };\n\n api.application.duplicateAccountCheck(requestValues).then(response => {\n handleDuplicateAccountCheckResponse(response);\n });\n }\n }\n\n if (!flexibilityType) {\n return {\n [`flexibilityType`]: getRequiredError(flexibilityType),\n };\n }\n if (!isForeign && duplicateAccountError) {\n return {\n [`flexibilityType`]: duplicateAccountError ? duplicateAccountError : undefined,\n };\n }\n if (flexibilityType === FlexibilityType.Margin && !margin) {\n return {\n [`agreements.margin`]: getRequiredError(margin),\n };\n }\n\n if (flexibilityType === FlexibilityType.Margin && margin && margin !== BooleanToggleType.Yes) {\n return {\n [`agreements.margin`]: getInvalidError(false),\n };\n }\n\n if (isForeign && accountDetails.type !== 'Joint' && numberOfUploads < 2) {\n return {\n [`uploadDocuments`]: getUploadError(false),\n };\n }\n\n if (isForeign && accountDetails.type === 'Joint' && numberOfUploads < 4) {\n return {\n [`uploadedDocuments`]: getUploadError(false),\n };\n }\n };\n\n interface DuplicateAccountCheckRequest {\n accountIdToIgnore?: number;\n entityAccountType?: string;\n flexibilityType: string;\n primaryTaxIdSecret?: string;\n retirementAccountType?: string | null;\n secondaryTaxIdSecret?: string;\n type: string;\n }\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n \n
    \n
    Account Type Update
    \n

    What type of trading flexibility do you need?

    \n

    Cash-only accounts trade on a cash basis and do not include margin.

    \n

    \n Margin accounts offer the most flexibility with advanced trading strategies and the ability to trade on\n margin, subject to approval and acceptance of margin agreement.\n

    \n \n \n {/* {duplicateAccountError && {duplicateAccountError}} */}\n \n {values.flexibilityType === 'Margin' && (\n <>\n

    \n onClickedAgreementLink('margin')}\n >\n Margin Agreement\n {' '}\n

    \n \n \n \n \n )}\n {values.flexibilityType && isForeign && (\n <>\n

    \n Foreign account type updates require signature and government ID images to be uploaded for admin\n review. Please attach documents accordingly below prior to submission.\n

    \n {errors.uploadedDocuments && !!submitCount && (\n <>\n \n \n \n
    \n
    \n \n )}\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n {accountHolders.map((holder, i) => (\n
    \n
    \n {holder.firstName} {holder.middleName || holder.middleInitial || ''} {holder.lastName}{' '}\n {holder.suffix || ''}\n
    \n \n \n \n \n \n \n
    \n ))}\n
    \n \n )}\n \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useMemo, useState, useEffect } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { DefaultAccountManagementDetails } from '@tradingblock/types';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { Loading } from '@tradingblock/components';\nimport {\n formatIncome,\n formatTaxBracket,\n formatTradesPerYear,\n formatYearsTrading,\n} from '../../utilities/accountManagement';\nimport { FinancialUpdate } from './modals/FinancialUpdate';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { TradeExperienceUpdate } from './modals/TradeExperience';\nimport { SuitabilityUpdate } from './modals/SuitabilityUpdate';\nimport { formatTradeGoalType, TradeGoalUpdate } from './modals/TradeGoalUpdate';\nimport { FlexibilityTypeUpdate } from './modals/FlexibilityTypeUpdate';\nimport dayjs from 'dayjs';\n\nexport const FinancialDetails: React.FunctionComponent<{}> = () => {\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const areDetailsLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const {\n characteristics,\n annualIncome,\n liquidNetWorth,\n totalNetWorth,\n investmentObjectiveType,\n experience,\n lastChanged,\n tradeGoalType,\n flexibilityType,\n } = accountManagementDetails || DefaultAccountManagementDetails;\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingSuitabilityUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Suitability');\n const pendingTradeLevelUpdates = pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'TradeGoal');\n const pendingFlexabilityUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'Flexability');\n const { risk, bracket, horizon, liquidity } = characteristics;\n const accountId = useStateSelector(s => s.account.accountId);\n\n const { bonds, options, stocks, commodities, margins } = experience;\n const { address, phone } = lastChanged;\n\n const [showAssetUpdate, setShowAssetUpdate] = useState(false);\n const [showExperienceUpdate, setShowExperienceUpdate] = useState(false);\n const [showSuitabilityUpdate, setShowSuitabilityUpdate] = useState(false);\n const [showTradeGoalUpdate, setShowTradeGoalUpdate] = useState(false);\n const [showFlexibilityTypeUpdate, setShowFlexibilityTypeUpdate] = useState(false);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n const toggleAssetUpdate = () => {\n showAssetUpdate ? setShowAssetUpdate(false) : setShowAssetUpdate(true);\n };\n\n const toggleExperienceUpdate = () => {\n showExperienceUpdate ? setShowExperienceUpdate(false) : setShowExperienceUpdate(true);\n };\n\n const toggleSuitabilityUpdate = () => {\n showSuitabilityUpdate ? setShowSuitabilityUpdate(false) : setShowSuitabilityUpdate(true);\n };\n\n const toggleTradeGoalUpdate = () => {\n showTradeGoalUpdate ? setShowTradeGoalUpdate(false) : setShowTradeGoalUpdate(true);\n };\n\n const toggleFlexibilityTypeUpdate = () => {\n showFlexibilityTypeUpdate ? setShowFlexibilityTypeUpdate(false) : setShowFlexibilityTypeUpdate(true);\n };\n\n const [assetType, setAssets] = useState('');\n const [updateType, setUpdateType] = useState('');\n\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (!areDetailsLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [dispatch, accountId, updateData, areDetailsLoaded, selectedLinkedAccountId]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'financialInformation':\n setAssets(event.target.id);\n setShowAssetUpdate(true);\n break;\n case 'tradeExperience':\n setUpdateType(event.target.id);\n setShowExperienceUpdate(true);\n break;\n case 'suitability':\n setShowSuitabilityUpdate(true);\n break;\n case 'tradeGoalType':\n setShowTradeGoalUpdate(true);\n break;\n case 'flexibilityType':\n setShowFlexibilityTypeUpdate(true);\n break;\n default:\n break;\n }\n };\n\n const fields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Financial Information{' '}\n \n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Trade Experience{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n {\n Value: () => (\n <>\n Annual Income\n\n {formatIncome(annualIncome)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Bonds\n Years Trading:{' '}\n {formatYearsTrading(bonds.years)}{' '}\n {bonds.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(bonds.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Total Net Worth\n {formatIncome(totalNetWorth)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Options\n Years Trading:{' '}\n {formatYearsTrading(options.years)}{' '}\n {options.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(options.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Liquid Net Worth\n {formatIncome(liquidNetWorth)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Stocks\n Years Trading:{' '}\n {formatYearsTrading(stocks.years)}{' '}\n {stocks.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(stocks.tradesPerYear)}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Tax Bracket\n\n {formatTaxBracket(bracket)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Commodities\n Years Trading:{' '}\n {formatYearsTrading(commodities.years)}{' '}\n {commodities.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(commodities.tradesPerYear)}{' '}\n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Investment Horizon\n {horizon ? horizon : 'N/A'}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Margins\n Years Trading:{' '}\n {formatYearsTrading(margins.years)}\n {margins.tradesPerYear && (\n <>\n
    \n Trades per Year:{' '}\n {formatTradesPerYear(margins.tradesPerYear)}\n \n )}\n \n ),\n },\n\n { Value: () => null },\n ];\n }\n return fieldList;\n }, [\n annualIncome,\n totalNetWorth,\n liquidNetWorth,\n investmentObjectiveType,\n risk,\n bracket,\n horizon,\n liquidity,\n bonds,\n options,\n stocks,\n address,\n phone,\n ]);\n\n const suitabilityFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Suitability Information{' '}\n \n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Account Details\n \n ),\n className: 'fields-title',\n },\n {\n Value: () => (\n <>\n Investment Objective\n \n {investmentObjectiveType\n ? investmentObjectiveType.replace(/([A-Z])/g, ' $1').trim()\n : 'No Investment Objective Type Found'}\n {' '}\n \n ),\n },\n {\n Value: () => (\n <>\n \n Approved Trade Level{' '}\n \n \n \n {tradeGoalType ? formatTradeGoalType(tradeGoalType) : 'No Trade Goal Type Found'}\n {' '}\n
    \n {pendingTradeLevelUpdates && pendingTradeLevelUpdates.length > 0 && (\n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingTradeLevelUpdates[pendingTradeLevelUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Risk Tolerance\n {risk ? risk : 'N/A'}{' '}\n \n ),\n },\n {\n Value: () => (\n <>\n \n Account Type{' '}\n \n \n\n \n {flexibilityType ? flexibilityType.replace(/([A-Z])/g, ' $1').trim() : 'No Flexibility Type Found'}\n \n {pendingFlexabilityUpdates && pendingFlexabilityUpdates.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingFlexabilityUpdates[pendingFlexabilityUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Liquidity Preference\n\n \n {liquidity ? liquidity.replace(/([A-Z])/g, ' $1').trim() : 'No Liquidity Preference Found'}\n \n\n {pendingSuitabilityUpdates && pendingSuitabilityUpdates.length > 0 && (\n <>\n
    \n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingSuitabilityUpdates[pendingSuitabilityUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [\n liquidity,\n tradeGoalType,\n risk,\n flexibilityType,\n investmentObjectiveType,\n pendingAccountUpdates,\n pendingTradeLevelUpdates,\n pendingFlexabilityUpdates,\n pendingSuitabilityUpdates,\n ]);\n\n if (!areDetailsLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\n <>\n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n IndividualRepresentationsUpdateValueProps,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\n\nexport const IndividualRepresentationsUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const initialIndividualRepresentationsValues: IndividualRepresentationsUpdateValueProps = {\n stakeholder: null,\n disclosuresStakeholderTickerSymbol: '',\n disclosuresGovOfficialImmediateFamily: '',\n irsWithholding: null,\n govOfficial: null,\n disclosuresGovOfficialPoliticalOrg: '',\n };\n\n const onValidate = (values: IndividualRepresentationsUpdateValueProps) => {\n const {\n stakeholder,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n disclosuresStakeholderTickerSymbol,\n irsWithholding,\n govOfficial,\n } = values;\n\n if (stakeholder === 'yes' && !disclosuresStakeholderTickerSymbol) {\n return {\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n };\n }\n\n if (govOfficial === 'yes' && !disclosuresGovOfficialImmediateFamily && !disclosuresGovOfficialPoliticalOrg) {\n return {\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n };\n }\n\n if (!stakeholder || !irsWithholding || !govOfficial) {\n return {\n [`stakeholder`]: getRequiredError(stakeholder),\n [`irsWithholding`]: getRequiredError(irsWithholding),\n [`govOfficial`]: getRequiredError(govOfficial),\n [`disclosuresGovOfficialImmediateFamily`]: getRequiredError(disclosuresGovOfficialImmediateFamily),\n [`disclosuresGovOfficialPoliticalOrg`]: getRequiredError(disclosuresGovOfficialPoliticalOrg),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(disclosuresStakeholderTickerSymbol),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n stakeholder,\n disclosuresStakeholderTickerSymbol,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n irsWithholding,\n govOfficial,\n } = values;\n\n let updateValues = {\n item: 'Disclosures',\n accountHolder: {\n disclosures: {\n stakeholder: formatBoolean(stakeholder),\n govOfficial: formatBoolean(govOfficial),\n irsWithholding: formatBoolean(irsWithholding),\n },\n disclosuresStakeholderTickerSymbol,\n disclosuresGovOfficialImmediateFamily,\n disclosuresGovOfficialPoliticalOrg,\n },\n holder: accountHolderIndex,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId: accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Financial Information Update Request\n \n\n \n
    \n

    Individual Representations

    \n

    Are you A 10% shareholder, director, and/or policymaker of a publicly-owned company?

    \n \n \n {values.stakeholder === BooleanToggleType.Yes && (\n \n )}\n \n

    \n Are you a current or former senior public official (US or foreign), or immediate family relation to\n such?\n

    \n \n \n {values.govOfficial === BooleanToggleType.Yes && (\n <>\n \n\n \n \n )}\n \n

    Are you notified by the IRS that I am subject to backup withholding?

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useState, useMemo, useCallback, useEffect } from 'react';\nimport { Field } from 'formik';\nimport _ from 'lodash';\nimport { DateModel } from '@tradingblock/types';\nimport {\n BaseFieldProps,\n FloatingLabelWrapper,\n FloatingLabelState,\n SelectDropdownField,\n Text,\n isFieldValueFilled,\n} from '@tradingblock/components';\nimport dayjs from 'dayjs';\n\ninterface DateFieldProps extends BaseFieldProps {}\n\nexport const isDateFilled = (value: DateModel | null | undefined) => {\n return (\n !!value && (isFieldValueFilled(value.month) || isFieldValueFilled(value.day) || isFieldValueFilled(value.year))\n );\n};\n\nexport const getDatePartOptions = (part: keyof DateModel, forPastDates?: boolean) => {\n const min = part === 'year' ? (forPastDates ? 1900 : dayjs().year()) : 1;\n const max = part === 'year' ? (forPastDates ? dayjs().year() : 2030) : part === 'day' ? 31 : 12;\n const options = _.map(_.range(min, max + 1), v => v);\n if (part === 'year' && forPastDates) {\n return _.reverse(options);\n }\n return options;\n};\n\nexport const DateField: React.FC = ({\n form,\n id,\n disabled,\n defaultLabelId,\n controlledLabel,\n onLabelStateChange,\n}) => {\n const { values, touched, errors, submitCount } = form;\n const value = useMemo(() => _.get(values, id), [values, id]);\n const error = _.get(touched, id) ? _.pickBy(errors, (err, key) => err && _.startsWith(key, id)) : undefined;\n const forPastDates = useMemo(() => _.endsWith(id, 'dateOfBirth') || _.endsWith(id, 'CreatedDate'), [id]);\n const [floatingLabelState, setFloatingLabelState] = useState({ isFilled: isDateFilled(value) });\n const updateFloatingLabelState = useCallback(\n (state: FloatingLabelState) => {\n setFloatingLabelState(state);\n if (onLabelStateChange) {\n onLabelStateChange(state);\n }\n },\n [onLabelStateChange]\n );\n useEffect(() => {\n if (!controlledLabel) {\n updateFloatingLabelState({ isFilled: isDateFilled(value), hasFocus: floatingLabelState.hasFocus });\n }\n }, [value, controlledLabel, floatingLabelState.hasFocus, updateFloatingLabelState]);\n const handleLabelStateChange = (state: FloatingLabelState) => {\n updateFloatingLabelState({\n isFilled: isDateFilled(value),\n hasFocus: !_.isUndefined(state.hasFocus) ? state.hasFocus : floatingLabelState.hasFocus,\n });\n };\n const getFieldProps = (key: keyof DateModel) => {\n return {\n component: SelectDropdownField,\n id: `${id}.${key}`,\n options: getDatePartOptions(key, forPastDates),\n disabled,\n defaultLabelId: defaultLabelId && `${defaultLabelId}.${key}`,\n optionsDefaultLabelId: key,\n useRawOptions: key === 'day' || key === 'year',\n controlledLabel: true,\n onLabelStateChange: handleLabelStateChange,\n };\n };\n\n return (\n <>\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n {!_.isEmpty(error) && !!submitCount && (\n \n \n \n )}\n \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n TradeAuthUpdateValueProps,\n AllTradeAuthorizationTypes,\n TradeAuthorizationType,\n getGroupedCountryOptions,\n Country,\n AllStates,\n AllPhoneTypes,\n EmploymentTypes,\n EmploymentType,\n ClearerType,\n} from '@tradingblock/types';\nimport {\n FormGroup,\n Modal,\n SelectDropdownField,\n StepperField,\n TextboxField,\n Text,\n ExternalLink,\n} from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getInvalidError, getMismatchError, getRequiredError, USPSErrors, uspsVerification } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\nimport { DateField } from '../../../components/form/DateField';\nimport { useClearer } from '../../../hooks/useClearer';\nimport { cleanDateModel } from '../../../utilities/date';\n\nexport const TradeAuthUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const [showToolTip, setShowToolTip] = React.useState(false);\n\n const handleToolTipClick = (e: any) => {\n e.preventDefault();\n setShowToolTip(!showToolTip);\n };\n\n // Trade Authorization Links\n const clearer = useClearer();\n const origin = useStateSelector(s => s.auth.origin);\n const siteGroup = origin === 'tb' ? 'tradingblock' : 'moneyblock';\n const apexTradeAuthLinks = {\n limited: `https://www.${siteGroup}.com/docs/Agreements/Apex_Limited_Trading_Authorization_221206.pdf`,\n full: `https://www.${siteGroup}.com/docs/Agreements/Apex_Full_Trading_Authorization_221206.pdf`,\n };\n // TODO: Confirm these links are accurate\n const rqdTradeAuthLinks = {\n limited: `https://ny4staging.tradingblock.com/RestHub/Documents/Agreement/rqdLimitedTradingAuthorization`,\n full: `https://ny4staging.tradingblock.com/RestHub/Documents/Agreement/rqdPowerOfAttorney`,\n };\n const links = clearer === ClearerType.Apex ? apexTradeAuthLinks : rqdTradeAuthLinks;\n\n const getLinkDescription = (tradeAuthorizationType: TradeAuthorizationType) => {\n if (tradeAuthorizationType === TradeAuthorizationType.Limited) {\n return clearer === ClearerType.Apex ? 'Limited Trading Authorization' : 'RQD Limited Trading Authorization';\n }\n if (tradeAuthorizationType === TradeAuthorizationType.Full) {\n return clearer === ClearerType.Apex\n ? 'Full Trading Authorization'\n : 'RQD Fee Payment and Full Trading Authorization';\n }\n };\n\n const [clickedAgreements, setClickedAgreements] = useState([]);\n\n // Log clicked agreements for disable/enable of accept/reject buttons\n const onClickedAgreementLink = useCallback(\n (agreement: string) => {\n setClickedAgreements([...clickedAgreements, agreement]);\n },\n [clickedAgreements]\n );\n\n const getAgreementDisabledOptions = useCallback(\n (agreement: string) => {\n // if haven't clicked agreement, disable toggle buttons\n if (!_.includes(clickedAgreements, agreement)) {\n return AllBooleanToggleTypes;\n }\n return undefined;\n },\n [clickedAgreements]\n );\n\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n const intitialTradeAuthUpdateValues: TradeAuthUpdateValueProps = {\n tradeAuthorization: undefined,\n address: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n country: '',\n postalCode: '',\n },\n citizenshipCountry: '',\n dateOfBirth: '',\n disclosures: {\n industryEmployed: undefined,\n stakeholder: undefined,\n },\n disclosuresIndustryEmployedFirmName: undefined,\n disclosuresStakeholderTickerSymbol: undefined,\n email: '',\n employer: '',\n employmentType: '',\n firstName: '',\n middleInitial: '',\n middleName: '',\n foreignTaxIdCountry: '',\n foreignTaxIdNumber: '',\n jobPosition: '',\n lastName: '',\n suffix: '',\n phones: [\n {\n type: '',\n phoneNumber: '',\n },\n ],\n ssnSecret: '',\n type: '',\n signedName: '',\n tradeAuthAgreement: undefined,\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const agreementsObject = () => {\n if (values.type === TradeAuthorizationType.Limited) {\n return clearer === ClearerType.Apex\n ? {\n limitedTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n }\n : {\n rqdLimitedTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n };\n }\n if (values.type === TradeAuthorizationType.Full) {\n return {\n fullTradingAuthorization: formatBoolean(values.tradeAuthAgreement),\n };\n }\n };\n let updateValues = {\n item: 'TradeAuthorization',\n agreements: agreementsObject(),\n tradingAuthorization: {\n address: {\n address1: values.address.address1,\n address2: values.address.address2 || undefined,\n city: values.address.city,\n state: values.address.state,\n country: values.address.country,\n postalCode: values.address.postalCode,\n },\n citizenshipCountry: values.citizenshipCountry,\n dateOfBirth: cleanDateModel(values.dateOfBirth),\n disclosures: {\n industryEmployed: formatBoolean(values.disclosures.industryEmployed) || undefined,\n stakeholder: formatBoolean(values.disclosures.stakeholder) || undefined,\n },\n disclosuresIndustryEmployedFirmName: values.disclosuresIndustryEmployedFirmName || undefined,\n disclosuresStakeholderTickerSymbol: values.disclosuresStakeholderTickerSymbol || undefined,\n email: values.email,\n employer: values.employer || undefined,\n employmentType: values.employmentType,\n firstName: values.firstName,\n foreignTaxIdCountry: values.foreignTaxIdCountry || undefined,\n foreignTaxIdNumber: values.foreignTaxIdNumber || undefined,\n jobPosition: values.jobPosition,\n lastName: values.lastName,\n phones: [\n {\n type: values.phones[0].type,\n phoneNumber: values.phones[0].phoneNumber,\n },\n ],\n ssnSecret: values.ssnSecret,\n type: values.type,\n },\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n const onValidate = (values: TradeAuthUpdateValueProps) => {\n // signed name match\n const { signedName, firstName, lastName } = values;\n const nameMatch = `${firstName} ${lastName}` === signedName;\n\n // TODO: Move USPS Validation to a separate file\n // USPS Address Verification\n // Checks if US address is valid and if not, returns the suggested address\n const { tradeAuthorization, type, address } = values;\n const { address1, city, state, country, postalCode } = address;\n let uspsResponse;\n let isValidAddress;\n const headerValue = 'tradeAuth';\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n\n // Check to see if response is already in local storage\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-${headerValue}`);\n\n // If response is in local storage, parse it and check if values.address is valid\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n\n // Compare values.address to response from USPS\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.address.city);\n const isZipEqual = zip5 === values.address.postalCode;\n const isStateEqual = state === values.address.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n // If values.address is valid, set isValidAddress to true\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n // Once most address information is entered, if values.address is not valid, call USPS verification on changes to values.address and set response to local storage\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(values.address);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-${headerValue}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n // If USPS returns an error, return error message\n if (\n error &&\n values.address.address1 &&\n values.address.city &&\n values.address.state &&\n values.address.postalCode\n ) {\n return {\n [`address.postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`address.city`]: `${error.description.trim()} Please review the entered address.`,\n [`address.state`]: `${error.description.trim()} Please review the entered address.`,\n [`address.address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n // If the user changes address1 or the city, remove the response from local storage in order to call USPS again\n if (!values.address.address1 || !values.address.city) {\n localStorage.setItem(`addressVerification-${headerValue}`, 'undefined');\n }\n\n // Compare the city, state, and zip5 from the response to the values.address and provide necessary error messages if they do not match along with standard validation\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(values.address.city);\n const isZipEqual = zip5 === values.address.postalCode;\n const isStateEqual = state === values.address.state;\n\n const errors: USPSErrors = {\n [`address.country`]: getRequiredError(values.address.country),\n [`address.address1`]: getRequiredError(values.address.address1),\n ['address.postalCode']:\n getRequiredError(stateOrPostalCodeRequired ? values.address.postalCode : true) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['address.city']:\n getRequiredError(values.address.city) || !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['address.state']:\n getRequiredError(stateOrPostalCodeRequired ? values.address.state : true) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`type`]: getRequiredError(type),\n [`citizenshipCountry`]: getRequiredError(values.citizenshipCountry),\n [`dateOfBirth`]: getRequiredError(values.dateOfBirth),\n [`email`]: getRequiredError(values.email),\n [`employer`]: getRequiredError(values.employmentType === EmploymentType.Employed ? values.employer : true),\n [`employmentType`]: getRequiredError(values.employmentType),\n [`firstName`]: getRequiredError(values.firstName),\n [`jobPosition`]: getRequiredError(\n values.employmentType === EmploymentType.Employed ? values.jobPosition : true\n ),\n [`lastName`]: getRequiredError(values.lastName),\n [`phones[0].type`]: getRequiredError(values.phones[0].type),\n [`phones[0].phoneNumber`]: getRequiredError(values.phones[0].phoneNumber),\n [`ssnSecret`]: getRequiredError(values.ssnSecret),\n [`signedName`]: getRequiredError(values.signedName) || getMismatchError(nameMatch),\n [`foreignTaxIdCountry`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdCountry : true\n ),\n [`foreignTaxIdNumber`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdNumber : true\n ),\n [`disclosures.industryEmployed`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.industryEmployed : true\n ),\n [`disclosures.stakeholder`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.stakeholder : true\n ),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.industryEmployed === 'yes'\n ? values.disclosuresIndustryEmployedFirmName\n : true\n ),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.stakeholder === 'yes'\n ? values.disclosuresStakeholderTickerSymbol\n : true\n ),\n [`tradeAuthAgreement`]:\n getRequiredError(values.tradeAuthAgreement) || values.tradeAuthAgreement === BooleanToggleType.No\n ? getInvalidError(false)\n : undefined,\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n\n if (!tradeAuthorization) {\n return {\n [`tradeAuthorization`]: getRequiredError(tradeAuthorization),\n };\n }\n\n if (tradeAuthorization === 'yes') {\n const errors = {\n [`type`]: getRequiredError(type),\n [`address.address1`]: getRequiredError(values.address.address1),\n [`address.city`]: getRequiredError(values.address.city),\n [`address.state`]: getRequiredError(values.address.state),\n [`address.country`]: getRequiredError(values.address.country),\n [`address.postalCode`]: getRequiredError(values.address.postalCode),\n [`citizenshipCountry`]: getRequiredError(values.citizenshipCountry),\n [`dateOfBirth`]: getRequiredError(values.dateOfBirth),\n [`email`]: getRequiredError(values.email),\n [`employer`]: getRequiredError(values.employmentType === EmploymentType.Employed ? values.employer : true),\n [`employmentType`]: getRequiredError(values.employmentType),\n [`firstName`]: getRequiredError(values.firstName),\n [`jobPosition`]: getRequiredError(\n values.employmentType === EmploymentType.Employed ? values.jobPosition : true\n ),\n // middle initial is not required but should not be more than 1 character\n [`middleName`]:\n values.middleName && values.middleName.length > 20 ? 'Middle name must be less than 20 characters' : null,\n [`lastName`]: getRequiredError(values.lastName),\n // if suffix is present, it should be only characters with a possible \".\" or \"-\"\n [`suffix`]: values.suffix && !/^[a-zA-Z .-]*$/.test(values.suffix) ? 'Suffix must be only letters' : null,\n [`phones[0].type`]: getRequiredError(values.phones[0].type),\n [`phones[0].phoneNumber`]: getRequiredError(values.phones[0].phoneNumber),\n [`ssnSecret`]: getRequiredError(values.ssnSecret),\n [`signedName`]: getRequiredError(values.signedName) || getMismatchError(nameMatch),\n [`foreignTaxIdCountry`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdCountry : true\n ),\n [`foreignTaxIdNumber`]: getRequiredError(\n values.citizenshipCountry !== Country.UnitedStatesOfAmerica ? values.foreignTaxIdNumber : true\n ),\n [`disclosures.industryEmployed`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.industryEmployed : true\n ),\n [`disclosures.stakeholder`]: getRequiredError(\n values.type === TradeAuthorizationType.Full ? values.disclosures.stakeholder : true\n ),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.industryEmployed === 'yes'\n ? values.disclosuresIndustryEmployedFirmName\n : true\n ),\n [`disclosuresStakeholderTickerSymbol`]: getRequiredError(\n values.type === TradeAuthorizationType.Full && values.disclosures.stakeholder === 'yes'\n ? values.disclosuresStakeholderTickerSymbol\n : true\n ),\n [`tradeAuthAgreement`]:\n getRequiredError(values.tradeAuthAgreement) ||\n (values.tradeAuthAgreement !== BooleanToggleType.Yes && getInvalidError(false)),\n };\n\n const cleanedErrors = _.omitBy(errors, _.isNil);\n\n return _.omitBy(errors, _.isNil);\n }\n };\n\n return (\n \n {({ handleSubmit, values, errors, resetForm }) => (\n toggleModal()} show={show}>\n \n Trade Authorization Agent Update\n \n \n

    Trade authorization or agent

    \n

    Do you want to grant trading authorization to another party?

    \n
    \n \n \n \n {values.tradeAuthorization === BooleanToggleType.Yes && (\n <>\n

    \n Do you wish to grant your agent limited or full trading authorization?{' '}\n \n

    \n {showToolTip && (\n

    \n Note: Limited trading authorization grants your authorized agent the ability to trade in this\n account. Full trading authorization grants the authorized agent the ability to trade and move\n funds in this account.\n

    \n )}\n \n \n \n {!_.isEmpty(values.type) && (\n <>\n

    Authorized Agent Personal Information

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.address.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.address.country !== Country.UnitedStatesOfAmerica && values.address.country !== '' && (\n \n )}\n \n \n \n \n \n \n \n \n \n \n \n {values.citizenshipCountry === Country.UnitedStatesOfAmerica && (\n \n }} />}\n type=\"password\"\n allowUnmask={true}\n />\n \n )}\n {values.citizenshipCountry !== Country.UnitedStatesOfAmerica && (\n <>\n \n \n \n \n \n \n \n )}\n\n

    Authorized Agent Employment Information

    \n \n \n \n {values.employmentType === EmploymentType.Employed && (\n <>\n \n \n \n \n \n \n \n )}\n\n {values.type === TradeAuthorizationType.Full && (\n <>\n

    Authorized Agent Disclosures

    \n

    \n Is the agent employed by or a member of a registered broker-dealer, securities or futures\n exchange, or securities industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n {values.disclosures && values.disclosures.industryEmployed === BooleanToggleType.Yes && (\n \n \n \n )}\n

    \n Is the agent a 10% shareholder, director, and/or policy maker of a publicly-owned company?\n

    \n \n \n \n {values.disclosures && values.disclosures.stakeholder === BooleanToggleType.Yes && (\n \n \n \n )}\n \n )}\n

    Authorized Party Signature

    \n \n \n \n

    \n onClickedAgreementLink('tradeAuthorization')}\n >\n {getLinkDescription(values.type as TradeAuthorizationType)}\n {' '}\n

    \n \n \n \n \n )}\n \n )}\n \n
    \n \n {\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback, useState } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n IndustryEmployedUpdateValueProps,\n AccountManagementDocuments,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, Text, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError, getUploadError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\nimport { MiscUploadFileField } from '../../../components/form/UploadMiscFile';\nimport { useClearer } from '../../../hooks/useClearer';\n\n/**\n * Modal for updating a user's FINRA affiliation disclosure\n *\n *\n * @param {boolean} show Boolean value used for showing/hiding modal\n * @param {void} toggleModal Function to toggle show from true or false\n * @param {number} accountHolderIndex request maker's index within accountHolders array, specifies the account holder update is for\n * @returns {JSX.Element}\n *\n */\n\nexport const IndustryEmployedUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n accountHolderIndex: number;\n}> = ({ show, toggleModal, accountHolderIndex }) => {\n // Used Hooks\n const dispatch = useDispatch();\n\n // State Selectors\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const { accountHolders } = accountManagementDetails;\n const clearer = useClearer();\n\n // Used States\n const [uploadId, setUploadId] = useState();\n\n const handleDocumentUpload = (documentId: number) => {\n setUploadId(documentId);\n };\n\n /**\n * IndustryEmployedUpdateValueProps\n *\n * @property {BooleanToggleType | undefined} industryEmployed User's Yes/No response to FINRA affiliation\n * @property {string} disclosuresIndustryEmployedFirmName If user is affiliated, the name of user employer\n */\n\n const initialIndustryEmployedUpdateValues: IndustryEmployedUpdateValueProps = {\n industryEmployed: undefined,\n disclosuresIndustryEmployedFirmName: '',\n };\n\n // On form submission set update values accordingdly, dispatch update request, and resetForm/toggleModal\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { industryEmployed, disclosuresIndustryEmployedFirmName } = values;\n\n let updateValues = {\n item: 'IndustryEmployed',\n accountHolder: {\n disclosures: {\n industryEmployed: formatBoolean(industryEmployed),\n },\n disclosuresIndustryEmployedFirmName,\n },\n holder: accountHolderIndex,\n uploadedDocuments: [\n {\n accountHolder: accountHolderIndex,\n documentId: uploadId,\n documentName: AccountManagementDocuments.AffiliateApproval,\n },\n ],\n };\n\n // If update value is equal to value already on record, resetForm/toggleModal\n if (formatBoolean(industryEmployed) === accountHolders[accountHolderIndex].disclosures.industryEmployed) {\n resetForm();\n toggleModal();\n return;\n }\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n // Set timeout to dispatch requests for user account information following update request\n // TODO: Develop better success/status handling for update requests\n\n resetForm();\n toggleModal();\n },\n\n [toggleModal, uploadId]\n );\n // Form validation prior to submission, ensures all disclosures are answered and necessary docs are gathered\n const onValidate = (values: IndustryEmployedUpdateValueProps) => {\n const { industryEmployed, disclosuresIndustryEmployedFirmName } = values;\n\n if (!industryEmployed) {\n return {\n [`industryEmployed`]: getRequiredError(industryEmployed),\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(disclosuresIndustryEmployedFirmName),\n };\n }\n\n if (industryEmployed === 'yes' && !disclosuresIndustryEmployedFirmName) {\n return {\n [`disclosuresIndustryEmployedFirmName`]: getRequiredError(disclosuresIndustryEmployedFirmName),\n };\n }\n\n if (industryEmployed === 'yes' && !uploadId) {\n return {\n [`uploadedDocuments`]: getUploadError(uploadId),\n };\n }\n };\n\n return (\n \n {({ handleSubmit, values, errors, submitCount, resetForm }) => (\n toggleModal()} show={show}>\n \n Industry Employed Update Request\n \n \n

    \n Are you employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n\n {values.industryEmployed === BooleanToggleType.Yes && (\n <>\n \n \n \n \n \n {errors.uploadedDocuments && !!submitCount && !uploadId && (\n <>\n \n \n \n \n )}\n \n

    \n Since you stated you are employed by or a member of a registered broker-dealer, securities or futures\n exchange, or securities industry regulatory body (e.g., FINRA, NFA), a 3210 Form Letter from your\n employer is required to process your update.\n

    \n \n )}\n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport { BooleanToggleType, AllBooleanToggleTypes, AccountDisclosuresUpdateValueProps } from '@tradingblock/types';\nimport { FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { formatBoolean } from '../../../utilities/accountManagement';\n\nexport const AccountDisclosuresUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n\n const initialAccountDisclosuresUpdateValues: AccountDisclosuresUpdateValueProps = {\n foreignBank: undefined,\n foreignFinancialInstitution: undefined,\n foreignShellBank: undefined,\n proprietarySecuritiesAccount: undefined,\n disclosuresForeignBankUSAgent: '',\n };\n\n const onValidate = (values: AccountDisclosuresUpdateValueProps) => {\n const {\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n } = values;\n\n if (!foreignBank || !foreignShellBank || !foreignFinancialInstitution || !proprietarySecuritiesAccount) {\n return {\n [`foreignBank`]: getRequiredError(foreignBank),\n [`foreignShellBank`]: getRequiredError(foreignShellBank),\n [`foreignFinancialInstitution`]: getRequiredError(foreignFinancialInstitution),\n [`proprietarySecuritiesAccount`]: getRequiredError(proprietarySecuritiesAccount),\n [`disclosuresForeignBankUSAgent`]: getRequiredError(disclosuresForeignBankUSAgent),\n };\n }\n\n if (foreignBank === 'yes' && !disclosuresForeignBankUSAgent) {\n return {\n [`disclosuresForeignBankUSAgent`]: getRequiredError(disclosuresForeignBankUSAgent),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const {\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n } = values;\n\n let updateValues = {\n item: 'AccountDisclosures',\n accountDisclosures: {\n foreignBank: formatBoolean(foreignBank),\n foreignShellBank: formatBoolean(foreignShellBank),\n foreignFinancialInstitution: formatBoolean(foreignFinancialInstitution),\n proprietarySecuritiesAccount: formatBoolean(proprietarySecuritiesAccount),\n },\n disclosuresForeignBankUSAgent,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n resetForm();\n toggleModal();\n\n // setTimeout(() => {\n // dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n // dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n // }, 1000);\n // if (isUpdateLoaded && !isUpdateLoading) {\n // dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n // dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n\n // }\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, resetForm }) => (\n toggleModal()} show={show}>\n \n Account Disclosures Update Request\n \n \n
    \n

    Is this account maintained on behalf of a foreign bank?

    \n \n \n \n {values.foreignBank === BooleanToggleType.Yes && (\n <>\n \n \n \n \n )}\n

    Is this account maintained on behalf of a foreign shell bank?

    \n \n \n \n

    Is this account maintained on behalf of a foreign financial institution?

    \n \n \n \n

    \n Is this account maintained on behalf of a broker or dealer’s proprietary securities account (PAB\n account)?\n

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n
    \n );\n};\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Formik, Field } from 'formik';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { FormGroup, TextboxField, Modal, SelectDropdownField, StepperField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { getRequiredError } from './Validation';\nimport { ServiceProfileValueProps, AllIssuerDirectCommunicationTypes } from '@tradingblock/types';\n\nexport const ServiceProfileUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const initailServiceProfileValues: ServiceProfileValueProps = {\n issuerDirectCommunication: undefined,\n };\n\n const onValidate = (values: ServiceProfileValueProps) => {\n const { issuerDirectCommunication } = values;\n\n if (!issuerDirectCommunication) {\n return {\n [`issuerDirectCommunication`]: getRequiredError(issuerDirectCommunication),\n };\n }\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const { issuerDirectCommunication } = values;\n\n const updateValues = {\n item: 'ServiceProfile',\n serviceProfile: {\n issuerDirectCommunication: issuerDirectCommunication,\n },\n };\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n //TODO: Rework Redux logic surrounding how to display user updates that do not require admin review immdediately\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, resetForm, values }) => (\n toggleModal()} show={show}>\n \n Service Profile Update\n \n \n
    \n

    Issuer Direct Communication

    \n

    \n Unless the applicant objects, under Rule 14b-1(c) of the Securities Exchange Act we are required to\n disclose the issuer of a given security in addition to the name, address and position of customers who\n are the beneficial owners of that issuer's securities. Please indicate below if you do or do not want to\n have your ownership disclosed.\n

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useEffect, useState, useMemo } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { Loading } from '@tradingblock/components';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport { IndividualRepresentationsUpdate } from './modals/IndividualRepresentations';\nimport { TradeAuthUpdate } from './modals/TradeAuthUpdate';\nimport { IndustryEmployedUpdate } from './modals/IndustryEmployedUpdate';\nimport {\n formatAgentName,\n formatIndustryEmployed,\n formatBooleanForDisplay,\n formatPhoneNumber,\n getAgentPhoneNumbersByType,\n} from '../../utilities/accountManagement';\nimport { AccountDisclosuresUpdate } from './modals/AccountDisclosuresUpdate';\nimport { ServiceProfileUpdate } from './modals/ServiceProfileUpdate';\nimport dayjs from 'dayjs';\nimport { Country, TradeAuthorizationType } from '@tradingblock/types';\nimport { formatDateWithoutTime } from '../../utilities/date';\nimport { RemoveTrustedContactOrTradeAuth } from './modals/RemoveTrustedContactOrTradeAuth';\n\nexport const AccountDisclosures: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n\n const {\n accountHolders,\n tradingAuthorization,\n accountDisclosures,\n disclosuresForeignBankUSAgent,\n serviceProfile,\n } = accountManagementDetails;\n\n const {\n foreignBank,\n foreignFinancialInstitution,\n foreignShellBank,\n proprietarySecuritiesAccount,\n } = accountDisclosures;\n\n const { issuerDirectCommunication } = serviceProfile;\n const hasGrantedTradeAuth: boolean = tradingAuthorization !== null;\n const grantedTradeAuthPriorToUpdates: boolean = tradingAuthorization && tradingAuthorization.email === null;\n const agentName = tradingAuthorization && tradingAuthorization.firstName + ' ' + tradingAuthorization.lastName;\n\n // Pending Account Management Update Requests\n const pendingAccountUpdates = useStateSelector(s => s.accountManagement.pendingAccountManagementUpdates.data);\n const pendingIndustryEmployedUpdate =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'IndustryEmployed');\n const pendingServiceProfileUpdates =\n pendingAccountUpdates && pendingAccountUpdates.filter(u => u.item === 'ServiceProfile');\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n\n const dispatch = useDispatch();\n const [showIndividualRepUpdate, setShowIndividualRepUpdate] = useState(false);\n const [showTradeAuthUpdate, setShowTradeAuthUpdate] = useState(false);\n const [showIndustryEmployedUpdate, setShowIndustryEmployedUpdate] = useState(false);\n const [showAccountDisclosuresUpdate, setShowAccountDisclosuresUpdate] = useState(false);\n const [showServiceProfileUpdate, setShowServiceProfileUpdate] = useState(false);\n const [accountHolderIndex, setAccountHolderIndex] = useState(0);\n const [showRemoveTradeAuth, setShowRemoveTradeAuth] = useState(false);\n // TODO: Remove middleInitial from the types once backend has updated the database retroactively\n const getAccountHolderName = (index: number) => {\n if (accountHolders[index].firstName && accountHolders[index].lastName) {\n return `${accountHolders[index].firstName} ${accountHolders[index].middleName ||\n accountHolders[index].middleInitial ||\n ''} ${accountHolders[index].lastName} ${accountHolders[index].suffix || ''}`;\n }\n return 'Name not found';\n };\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [dispatch, updateData, accountId, isLoaded, selectedLinkedAccountId]);\n\n const handleClick = (event: any) => {\n event.preventDefault();\n switch (event.target.id) {\n case 'tradeAuthorization':\n setShowTradeAuthUpdate(true);\n break;\n case 'industryEmployed-0':\n setAccountHolderIndex(0);\n setShowIndustryEmployedUpdate(true);\n break;\n case 'industryEmployed-1':\n setAccountHolderIndex(1);\n setShowIndustryEmployedUpdate(true);\n break;\n case 'accountDisclosures':\n setShowAccountDisclosuresUpdate(true);\n break;\n case 'individualReps-0':\n setAccountHolderIndex(0);\n setShowIndividualRepUpdate(true);\n break;\n case 'individualReps-1':\n setAccountHolderIndex(1);\n setShowIndividualRepUpdate(true);\n break;\n case 'serviceProfile':\n setShowServiceProfileUpdate(true);\n break;\n case 'removeTradeAuth':\n setShowRemoveTradeAuth(true);\n break;\n default:\n break;\n }\n };\n\n // Toggle Modal Functions\n const toggleIndividualRepUpdate = () => {\n setShowIndividualRepUpdate(!showIndividualRepUpdate);\n };\n\n const toggleTradeAuthUpdate = () => {\n setShowTradeAuthUpdate(!showTradeAuthUpdate);\n };\n\n const toggleIndustryEmployedUpdate = () => {\n setShowIndustryEmployedUpdate(!showIndustryEmployedUpdate);\n };\n\n const toggleAccountDisclosuresUpdate = () => {\n setShowAccountDisclosuresUpdate(!showAccountDisclosuresUpdate);\n };\n\n const toggleServiceProfileUpdate = () => {\n showServiceProfileUpdate ? setShowServiceProfileUpdate(false) : setShowServiceProfileUpdate(true);\n };\n\n const toggleRemoveTradeAuth = () => {\n showRemoveTradeAuth ? setShowRemoveTradeAuth(false) : setShowRemoveTradeAuth(true);\n };\n\n const tradeAuthFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Trade Authorization{' '}\n handleClick(event)}\n hidden={hasGrantedTradeAuth}\n >\n (Update)\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Third Party Trade Authorization Granted\n {hasGrantedTradeAuth ? 'Yes' : 'No'}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Agent Name\n\n {formatAgentName(agentName, hasGrantedTradeAuth)}\n \n ),\n },\n ];\n }\n\n if (hasGrantedTradeAuth && !grantedTradeAuthPriorToUpdates) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Trade Authorization Type\n {tradingAuthorization.type}\n \n ),\n },\n {\n Value: () => (\n <>\n Email\n {tradingAuthorization.email}\n \n ),\n },\n {\n Value: () => (\n <>\n Address\n \n {tradingAuthorization.address && tradingAuthorization.address.address1\n ? tradingAuthorization.address.address1\n : 'N/A'}\n \n
    \n {tradingAuthorization.address && tradingAuthorization.address.address2 && (\n <>\n {tradingAuthorization.address.address2}\n
    \n \n )}\n \n {tradingAuthorization.address && tradingAuthorization.address.city\n ? tradingAuthorization.address.city\n : ''}\n ,{' '}\n {tradingAuthorization.address && tradingAuthorization.address.state\n ? tradingAuthorization.address.state\n : ''}{' '}\n {tradingAuthorization.address && tradingAuthorization.address.postalCode\n ? tradingAuthorization.address.postalCode\n : ''}\n \n
    \n \n {tradingAuthorization.address && tradingAuthorization.address.country\n ? tradingAuthorization.address.country\n : 'N/A'}{' '}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Phone Numbers\n \n Home: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Home', tradingAuthorization))}\n {' '}\n \n
    \n \n Mobile: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Mobile', tradingAuthorization))}\n {' '}\n \n
    \n \n Work: \n \n {formatPhoneNumber(getAgentPhoneNumbersByType('Work', tradingAuthorization))}\n {' '}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Employment Type\n {tradingAuthorization.employmentType}\n \n ),\n },\n {\n Value: () => (\n <>\n Employer Name\n {tradingAuthorization.employer ? tradingAuthorization.employer : 'N/A'}\n \n ),\n },\n {\n Value: () => (\n <>\n Citizenship Country\n {tradingAuthorization.citizenshipCountry}\n {tradingAuthorization.citizenshipCountry !== Country.UnitedStatesOfAmerica && (\n <>\n
    \n Foreign Tax ID Country\n {tradingAuthorization.foreignTaxIdCountry}\n
    \n Foreign Tax ID\n {tradingAuthorization.foreignTaxIdNumber}\n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Date of Birth\n \n {tradingAuthorization.dateOfBirth\n ? formatDateWithoutTime(tradingAuthorization.dateOfBirth)\n : 'Date not found'}\n \n \n ),\n },\n {\n Value: () => (\n <>\n Disclosures\n \n Is the agent employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.industryEmployed ? 'Yes' : 'No'}\n \n \n\n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.industryEmployed && (\n <>\n
    \n \n Firm name: {tradingAuthorization.disclosuresIndustryEmployedFirmName}\n \n \n )}\n
    \n
    \n \n Is the agent a 10% shareholder, director, and/or policy maker of a publicly-owned company?{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.stakeholder ? 'Yes' : 'No'}\n \n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosures.stakeholder && (\n <>\n
    \n \n Ticker symbol:{' '}\n \n {tradingAuthorization.disclosures && tradingAuthorization.disclosuresStakeholderTickerSymbol}\n \n \n \n )}\n \n ),\n hide: tradingAuthorization.type === TradeAuthorizationType.Limited,\n },\n ];\n }\n\n if (hasGrantedTradeAuth) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n \n \n ),\n hide: tradingAuthorization === null,\n },\n ];\n }\n\n return fieldList;\n }, [tradingAuthorization]);\n\n const industryEmployedFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n\n if (accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Industry Employed -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n {\n Value: () => (\n <>\n \n Are you employed by or a member of a registered broker-dealer, securities or futures exchange, or\n securities industry regulatory body (e.g., FINRA, NFA)?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.industryEmployed)}\n {pendingIndustryEmployedUpdate && pendingIndustryEmployedUpdate.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(\n pendingIndustryEmployedUpdate[pendingIndustryEmployedUpdate.length - 1].createDate\n ).format('MM/DD/YYYY - hh:mm A')}\n \n
    \n \n )}\n \n ),\n },\n {\n Value: () => (\n <>\n Industry Employed Firm Name\n\n \n {formatIndustryEmployed(accountHolder.disclosuresIndustryEmployedFirmName)}\n \n \n ),\n },\n ];\n });\n }\n return fieldList;\n }, [accountHolders, isFetching, isLoaded, pendingIndustryEmployedUpdate]);\n\n const disclosureFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails && !isFetching && isLoaded) {\n accountHolders.map((accountHolder, index) => {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Individual Representations -{' '}\n {getAccountHolderName(index)}{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n \n Are you a 10% shareholder, director, and/or policy maker of a publicly-owned company?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.stakeholder)}\n {accountHolder.disclosures.stakeholder && (\n <>\n
    \n\n \n Company ticker:{' '}\n \n {accountHolder.disclosuresStakeholderTickerSymbol\n ? accountHolder.disclosuresStakeholderTickerSymbol\n : 'N/A'}\n \n \n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Are you notified by the IRS that I am subject to backup withholding?\n\n {formatBooleanForDisplay(accountHolder.disclosures.irsWithholding)}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Are you a current or former senior public official (US or foreign), or immediate family relation to\n such?\n \n\n {formatBooleanForDisplay(accountHolder.disclosures.govOfficial)}\n {accountHolder.disclosures.govOfficial && (\n <>\n
    \n \n Family Member(s):{' '}\n \n {accountHolder.disclosuresGovOfficialImmediateFamily\n ? accountHolder.disclosuresGovOfficialImmediateFamily\n : 'N/A'}\n \n {' '}\n
    \n \n Organization:{' '}\n \n {accountHolder.disclosuresGovOfficialPoliticalOrg\n ? accountHolder.disclosuresGovOfficialPoliticalOrg\n : 'N/A'}\n \n {' '}\n \n )}\n \n ),\n },\n {\n Value: () => null,\n },\n ];\n });\n }\n return fieldList;\n }, [accountHolders, isFetching, isLoaded]);\n\n const accountDisclosureFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (accountManagementDetails) {\n fieldList = [\n ...fieldList,\n\n {\n Value: () => (\n <>\n Account Disclosures{' '}\n \n \n ),\n className: 'fields-title',\n },\n\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Is this account maintained on behalf of a foreign bank?\n {formatBooleanForDisplay(foreignBank)}{' '}\n {foreignBank && (\n <>\n
    \n \n U.S. agent for service of process:{' '}\n {disclosuresForeignBankUSAgent || 'Not applicable'}\n \n \n )}\n \n ),\n },\n\n {\n Value: () => (\n <>\n Is this account maintained on behalf of a foreign shell bank?\n {formatBooleanForDisplay(foreignShellBank)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Is this account maintained on behalf of a foreign financial institution?\n \n {formatBooleanForDisplay(foreignFinancialInstitution)}{' '}\n \n ),\n },\n\n {\n Value: () => (\n <>\n \n Is this account maintained on behalf of a broker or dealer’s proprietary securities account (PAB\n account)?\n \n {formatBooleanForDisplay(proprietarySecuritiesAccount)}{' '}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [\n foreignBank,\n foreignShellBank,\n foreignFinancialInstitution,\n proprietarySecuritiesAccount,\n disclosuresForeignBankUSAgent,\n ]);\n\n const serviceProfileFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (serviceProfile) {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n Service Profile{' '}\n \n \n ),\n className: 'fields-title',\n },\n // TODO: Develop a component to better handle table views. DetailField defaults to two-columns requiring null values for a one column display\n { Value: () => null },\n\n {\n Value: () => (\n <>\n Disclosure of name and address on securities you own:\n\n {issuerDirectCommunication ? issuerDirectCommunication : 'N/A'}\n {pendingServiceProfileUpdates && pendingServiceProfileUpdates.length > 0 && (\n <>\n
    \n \n Update Request Pending Admin Review\n
    \n \n {dayjs(pendingServiceProfileUpdates[pendingServiceProfileUpdates.length - 1].createDate).format(\n 'MM/DD/YYYY - hh:mm A'\n )}\n \n
    \n \n )}\n \n ),\n },\n ];\n }\n\n return fieldList;\n }, [issuerDirectCommunication, pendingServiceProfileUpdates]);\n\n if (!isLoaded || isFetching || !accountManagementDetails) return ;\n\n return (\n <>\n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n \n \n \n \n \n \n \n );\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { useDispatch } from 'react-redux';\nimport { Modal } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const RemoveAllBeneficiaries: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const dispatch = useDispatch();\n\n const onClick = () => {\n const updateValues = {\n item: 'RemoveBeneficiaries',\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n toggleModal();\n };\n\n return (\n toggleModal()} show={show}>\n \n Remove All Beneficiaries?\n \n \n

    \n {' '}\n Are you sure you want to remove all current beneficiaries?\n

    \n
    \n \n \n \n \n
    \n );\n};\n","import { DateModel } from '@tradingblock/types';\nimport dayjs from 'dayjs';\n\nexport const formatAgreementKey = (agreementKey: string) => {\n switch (agreementKey) {\n case 'clientRelationshipSummary':\n return 'Client Relationship Summary';\n case 'customerAndPrivacyPolicy':\n return 'Customer and Privacy Policy';\n case 'electronicConsent':\n return 'Electronic Consent';\n case 'exchangeDataAgreement':\n return 'Exchange Data Agreement';\n case 'entityMargin':\n return 'Entity Margin';\n case 'entityOption':\n return 'Entity Option';\n case 'iRACoverDellAdoption':\n return 'IRA Cover Dell Adoption';\n case 'iRASepAdoption':\n return 'IRA Sep Adoption';\n case 'iRASimpleAdoption':\n return 'IRA Simple Adoption';\n case 'iRARothAdoption':\n return 'IRA Roth Adoption';\n case 'limitedMargin':\n return 'Limited Margin';\n case 'margin':\n return 'Margin';\n case 'option':\n return 'Option';\n case 'onlineServices':\n return 'Online Services';\n case 'riskDisclosure':\n return 'Risk Disclosure';\n case 'corporateCash':\n return 'Corporate Cash';\n case 'corporateMargin':\n return 'Corporate Margin';\n case 'jointCommunity':\n return 'Joint Community';\n case 'jointSurvivor':\n return 'Joint Survivor';\n case 'llcAccount':\n return 'LLC Account';\n case 'rqdClearingDisclosures':\n return 'RQD Clearing Disclosures';\n case 'rqdCustomerAgreement':\n return 'RQD Customer Agreement';\n case 'rqdCustomerInformationBrochure':\n return 'RQD Customer Information Brochure';\n case 'rqdExecutionDisclosures':\n return 'RQD Execution Disclosures';\n case 'rqdLimitedMarginAgreement':\n return 'RQD Limited Margin Agreement';\n case 'rqdLimitedTradingAuthorization':\n return 'RQD Limited Trading Authorization';\n case 'rqdMargin':\n return 'RQD Margin Agreement';\n case 'rqdOption':\n return 'RQD Option Agreement';\n case 'rqdPowerOfAttorney':\n return 'RQD Fee Payment and Full Trading Authorization';\n case 'rqdPrivacyNotice':\n return 'RQD Privacy Notice';\n case 'rqdPrivacyPolicy':\n return 'RQD Privacy Policy';\n case 'rqdResponsibilitiesOfIbAndCarryingBroker':\n return 'RQD Responsibilities of IB and Carrying Broker';\n case 'rqdSpecialStatementForUncoveredOptionWriters':\n return 'RQD Special Statement for Uncovered Option Writers';\n case 'apiAgreement':\n return 'API Agreement';\n default:\n return agreementKey;\n }\n};\n\nexport const formatMarketDataKey = (marketDataKey: string) => {\n switch (marketDataKey) {\n case 'associationRegistration':\n return 'Association Registration';\n case 'benefitsReceived':\n return 'Benefits Received';\n case 'capitalTrading':\n return 'Capital Trading';\n case 'corporationTrading':\n return 'Corporation Trading';\n case 'employmentFunctions':\n return 'Employment Functions';\n case 'investmentProfessional':\n return 'Investment Professional';\n case 'jobFunctions':\n return 'Job Functions';\n case 'personalUse':\n return 'Personal Use';\n case 'secCftcRegistration':\n return 'SEC CFTC Registration';\n default:\n return marketDataKey;\n }\n};\n\nexport const formatBirthDate = (birthDate: DateModel | undefined) => {\n const { day, month, year } = birthDate || { day: '', month: '', year: '' };\n const dateString = `${month}/${day}/${year}`;\n if (birthDate) {\n return dayjs(dateString).format('MMMM DD, YYYY');\n }\n return 'None';\n};\n\nexport const maskSSN = (ssn: string | undefined) => {\n const masked = ssn || '';\n const prefix = 'xxxx-xx-';\n const unmaskedIdx = masked.length - 4;\n return prefix + masked.substring(unmaskedIdx);\n};\n","import React, { useEffect, useState, useMemo, useCallback } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport {\n AddIcon,\n FormGroup,\n StepperField,\n LocalizeButton as Button,\n TextboxField,\n AddressField,\n Text,\n Loading,\n SelectDropdownField,\n} from '@tradingblock/components';\nimport { FieldArray, Formik, Field } from 'formik';\nimport {\n AllAccountManagementBeneficiaryAccountTypes,\n AllAccountManagementBeneficiaryTypes,\n AllStates,\n BeneficiaryType,\n getGroupedCountryOptions,\n BeneficiaryAccountType,\n AccountManagementBeneficiaryUpdateModel,\n Country,\n ErrorType,\n AddressModel,\n BeneficiariesRelationships,\n} from '@tradingblock/types';\nimport _ from 'lodash';\nimport { DateField } from '../../components/form/DateField';\nimport { RemoveAllBeneficiaries } from './modals/RemoveAllBeneficiaries';\nimport { maskSSN } from '../admin/Applications/services/formatters';\nimport { DetailFields, DetailField } from '../../components/basic/DetailFields';\nimport {\n getInvalidError,\n getRequiredError,\n getAmountError,\n getContingentError,\n uspsVerification,\n} from './modals/Validation';\nimport { cleanDateModel } from '../../utilities/date';\nimport { useClearer } from '../../hooks/useClearer';\n\nexport const Beneficiaries: React.FunctionComponent<{}> = () => {\n const accountId = useStateSelector(s => s.account.accountId);\n const beneficiaries = useStateSelector(s => s.accountManagement.accountManagementDetails.details.beneficiaries);\n const beneArr = beneficiaries || [];\n const dispatch = useDispatch();\n const isUpdateLoading = useStateSelector(s => s.accountManagement.update.isLoading);\n const updateData = useStateSelector(s => s.accountManagement.update.data);\n const selectedLinkedAccountId = useStateSelector(\n s => s.account.selectedLinkedAccount && s.account.selectedLinkedAccount.accountId\n );\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n\n const [addOrEditBeneficiary, setAddOrEditBeneficiary] = useState(false);\n const [showRemoveAll, setShowRemoveAll] = useState(false);\n const toggleShowRemoveAll = () => {\n showRemoveAll ? setShowRemoveAll(false) : setShowRemoveAll(true);\n };\n const clearer = useClearer();\n\n useEffect(() => {\n if (!isLoaded && accountId) {\n if (selectedLinkedAccountId) {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId: selectedLinkedAccountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId: selectedLinkedAccountId }));\n } else {\n dispatch(AccountManagementDataActions.requestAccountDetails({ accountId }));\n dispatch(AccountManagementDataActions.requestAccountManagementDetails({ accountId }));\n }\n }\n }, [accountId, dispatch, updateData, isLoaded, selectedLinkedAccountId]);\n\n const initialBeneficiariesValues: AccountManagementBeneficiaryUpdateModel = {\n beneficiaries: beneArr,\n max: 10,\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n const cleanDateBeneficiaries = values.beneficiaries.map((b: any) => {\n if (b.dateOfBirth && b.beneficiaryType === BeneficiaryType.Individual) {\n b.dateOfBirth = cleanDateModel(b.dateOfBirth);\n }\n if (b.dateOfBirth && b.beneficiaryType === BeneficiaryType.Trust) {\n b.dateOfBirth = null;\n }\n return b;\n });\n\n let updateValues = {\n item: 'Beneficiaries',\n beneficiaries: cleanDateBeneficiaries,\n };\n\n dispatch(AccountManagementDataActions.requestMakeAccountUpdate({ accountId, request: updateValues }));\n\n if (!isUpdateLoading) {\n resetForm();\n setAddOrEditBeneficiary(false);\n }\n },\n [accountId, dispatch]\n );\n\n // TODO: Review localStorage usage\n const onValidate = (values: AccountManagementBeneficiaryUpdateModel) => {\n let primaryBeneficiaries = values.beneficiaries\n ? values.beneficiaries.filter(b => b.beneficiaryAccountType === BeneficiaryAccountType.Primary)\n : [];\n let contingentBeneficiaries = values.beneficiaries\n ? values.beneficiaries.filter(b => b.beneficiaryAccountType === BeneficiaryAccountType.Contingent)\n : [];\n\n let totalPrimaryPercent = _.sumBy(primaryBeneficiaries, b => _.toNumber(b.percent));\n let totalContingentPercent = _.sumBy(contingentBeneficiaries, b => _.toNumber(b.percent));\n return values.beneficiaries.reduce(\n (acc, b, i) => {\n const { address } = b;\n let uspsResponse;\n let isValidAddress;\n\n const uspsResponseFromStorage = localStorage.getItem(`beneficiaryAddress-${i}`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(b.address.city);\n const isZipEqual = zip5 === b.address.postalCode;\n const isStateEqual = state === b.address.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (\n b.address.address1 &&\n b.address.city &&\n b.address.state &&\n b.address.country === Country.UnitedStatesOfAmerica &&\n !isValidAddress\n ) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n return await uspsVerification(address as AddressModel);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`beneficiaryAddress-${i}`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (error && address.address1 && address.city && address.state && address.postalCode) {\n acc[\n `beneficiaries[${i}].address.postalCode`\n ] = `${error.description.trim()} Please review the entered address.`;\n acc[`beneficiaries[${i}].address.city`] = `${error.description.trim()} Please review the entered address.`;\n acc[`beneficiaries[${i}].address.state`] = `${error.description.trim()} Please review the entered address.`;\n acc[\n `beneficiaries[${i}].address.address1`\n ] = `${error.description.trim()} Please review the entered address.`;\n }\n\n if (!address.address1 || !address.city) {\n localStorage.setItem(`beneficiaryAddress-${i}`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual = _.toLower(startCaseCity) === _.toLower(address.city);\n const isZipEqual = zip5 === address.postalCode;\n const isStateEqual = state === address.state;\n\n !isCityEqual\n ? (acc[`beneficiaries[${i}].address.city`] = `Please verify city. USPS Provided City: ${startCaseCity}`)\n : (acc[`beneficiaries[${i}].address.city`] = undefined);\n\n !isZipEqual\n ? (acc[`beneficiaries[${i}].address.postalCode`] = `Please verify zip code. USPS Provided Zip: ${zip5}`)\n : (acc[`beneficiaries[${i}].address.postalCode`] = undefined);\n\n !isStateEqual\n ? (acc[`beneficiaries[${i}].address.state`] = `Please verify state. USPS Provided State: ${state}`)\n : (acc[`beneficiaries[${i}].address.state`] = undefined);\n }\n }\n\n if (!b.beneficiaryAccountType || !b.beneficiaryType) {\n acc[`beneficiaries[${i}].beneficiaryAccountType`] = getRequiredError(b.beneficiaryAccountType);\n acc[`beneficiaries[${i}].beneficiaryType`] = getRequiredError(b.beneficiaryType);\n }\n if (b.percent) {\n if (b.beneficiaryAccountType === BeneficiaryAccountType.Primary && totalPrimaryPercent !== 100) {\n acc[`beneficiaries[${i}].percent`] = getAmountError(false);\n } else if (b.beneficiaryAccountType === BeneficiaryAccountType.Contingent && totalContingentPercent !== 100) {\n acc[`beneficiaries[${i}].percent`] = getAmountError(false);\n } else if (totalPrimaryPercent !== 100 && totalContingentPercent > 0) {\n acc[`beneficiaries[${i}].percent`] = getContingentError(false);\n }\n }\n\n if (b.beneficiaryType === BeneficiaryType.Individual) {\n if (!b.firstName) {\n acc[`beneficiaries[${i}].firstName`] = getRequiredError(b.firstName);\n }\n if (b.middleName && b.middleName.length > 20) {\n acc[`beneficiaries[${i}].middleName`] = getInvalidError(b.middleName);\n }\n if (!b.lastName) {\n acc[`beneficiaries[${i}].lastName`] = getRequiredError(b.lastName);\n }\n // if suffix is present, it should be only characters with a possible \".\" or \"-\"\n if (b.suffix && !/^[a-zA-Z.-]+$/.test(b.suffix)) {\n acc[`beneficiaries[${i}].suffix`] = getInvalidError(b.suffix);\n }\n if (!b.ssnSecret) {\n acc[`beneficiaries[${i}].ssnSecret`] = getRequiredError(b.ssnSecret);\n }\n if (!b.relationship) {\n acc[`beneficiaries[${i}].relationship`] = getRequiredError(b.relationship);\n }\n if (!b.dateOfBirth.day) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.day);\n }\n if (!b.dateOfBirth.month) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.month);\n }\n if (!b.dateOfBirth.year) {\n acc[`beneficiaries[${i}].dateOfBirth`] = getRequiredError(b.dateOfBirth.year);\n }\n }\n\n if (b.beneficiaryType === BeneficiaryType.Trust) {\n if (!b.trustName) {\n acc[`beneficiaries[${i}].trustName`] = getRequiredError(b.trustName);\n }\n if (!b.einSecret) {\n acc[`beneficiaries[${i}].einSecret`] = getRequiredError(b.einSecret);\n }\n }\n\n if (!b.address.address1) {\n acc[`beneficiaries[${i}].address.address1`] = getRequiredError(b.address.address1);\n }\n if (!b.address.city) {\n acc[`beneficiaries[${i}].address.city`] = getRequiredError(b.address.city);\n }\n if (!b.address.country) {\n acc[`beneficiaries[${i}].address.country`] = getRequiredError(b.address.country);\n }\n if (b.address.country === Country.UnitedStatesOfAmerica && !b.address.state) {\n acc[`beneficiaries[${i}].address.state`] = getRequiredError(b.address.state);\n }\n if (b.address.country === Country.UnitedStatesOfAmerica && !b.address.postalCode) {\n acc[`beneficiaries[${i}].address.postalCode`] = getRequiredError(b.address.postalCode);\n }\n if (b.address.country !== Country.UnitedStatesOfAmerica && !b.address.state) {\n acc[`beneficiaries[${i}].address.state`] = getRequiredError(b.address.state);\n }\n if (!b.percent) {\n acc[`beneficiaries[${i}].percent`] = getRequiredError(b.percent);\n }\n if (b.percent && !_.isInteger(b.percent)) {\n acc[`beneficiaries[${i}].percent`] = getInvalidError(b.percent);\n }\n\n Object.keys(acc).forEach(key => (acc[key] === undefined ? delete acc[key] : {}));\n\n return acc;\n },\n {} as Record\n );\n };\n\n const beneficiaryFields = useMemo(() => {\n let fieldList: DetailField[] = [];\n if (beneficiaries) {\n beneficiaries.map((b, i) => {\n fieldList = [\n ...fieldList,\n {\n Value: () => (\n <>\n {b.beneficiaryType === BeneficiaryType.Individual && (\n \n \n {b.firstName} {b.lastName} ({b.beneficiaryAccountType})\n \n
    \n \n Relationship: {b.relationship ? b.relationship : 'Not found'}\n \n
    \n \n Date of Birth:{' '}\n \n {b.dateOfBirth && (\n <>\n {b.dateOfBirth.month}/{b.dateOfBirth.day}/{b.dateOfBirth.year}\n \n )}\n \n \n
    \n \n SSN/ITIN: {b.ssnSecret ? maskSSN(b.ssnSecret) : 'Not found'}\n \n
    \n \n Percent: {b.percent ? b.percent : 'Not found'}\n \n
    \n
    \n \n Address\n
    \n \n {b && b.address && b.address.address1 && (\n <>\n {b && b.address && b.address.address1}\n
    \n \n )}\n {b && b.address && b.address.address2 && (\n <>\n {b.address.address2}\n
    \n \n )}\n {b && b.address && b.address.city}\n {b && b.address && b.address.state ? ', ' + b.address.state : ''}{' '}\n {b && b.address && b.address.postalCode}\n
    \n {b && b.address && b.address.country}\n
    \n
    \n
    \n )}\n {b.beneficiaryType === BeneficiaryType.Trust && (\n \n \n {b.beneficiaryAccountType} - {b.beneficiaryType}\n \n
    \n
    \n \n {b.trustName ? b.trustName : 'Not found'}\n
    \n {b.einSecret ? b.einSecret : 'Not found'}\n
    \n
    \n \n Percent: {b.percent ? b.percent : 'Not found'}\n \n
    \n
    \n \n Address\n
    \n \n {b && b.address && b.address.address1 && (\n <>\n {b && b.address && b.address.address1}\n
    \n \n )}\n {b && b.address && b.address.address2 && (\n <>\n {b.address.address2}\n
    \n \n )}\n {b && b.address && b.address.city}\n {b && b.address && b.address.state ? ', ' + b.address.state : ''}{' '}\n {b && b.address && b.address.postalCode}\n
    \n {b && b.address && b.address.country}\n
    \n
    \n
    \n )}\n \n ),\n },\n ];\n });\n }\n return fieldList;\n }, [beneficiaries]);\n\n return (\n <>\n {isUpdateLoading && (\n
    \n
    \n

    Beneficiaries

    \n
    \n \n
    \n )}\n {!isUpdateLoading && (\n
    \n {beneficiaries && beneficiaries.length > 0 && !addOrEditBeneficiary && (\n
    \n

    \n Beneficiaries\n

    \n \n\n
    \n {\n e.preventDefault();\n setShowRemoveAll(true);\n }}\n >\n Remove All Beneficiaries\n \n {\n e.preventDefault();\n setAddOrEditBeneficiary(true);\n }}\n >\n Edit/Add Beneficiaries\n \n
    \n
    \n )}\n {(beneficiaries.length === 0 || addOrEditBeneficiary) && (\n <>\n {beneficiaries.length > 0 && (\n

    \n {\n e.preventDefault();\n setAddOrEditBeneficiary(false);\n }}\n >\n \n Go back\n \n

    \n )}\n

    \n Changes must be saved in order to take effect.\n

    \n\n \n {({ values, setValues, errors, handleSubmit }) => {\n const total = _.size(values.beneficiaries);\n const totalPercentageError = errors.beneficiaries;\n const max = values.max;\n\n return (\n
    \n (\n <>\n {values.beneficiaries.map((beneficiary, index) => (\n \n
    \n
    \n

    Retirement Account Beneficiary #{index + 1}

    \n
    \n
    \n
    \n {\n if (values.beneficiaries.length === 1 && beneficiaries.length === 0) {\n setAddOrEditBeneficiary(false);\n }\n arrayHelpers.remove(index);\n }}\n tabIndex={-1}\n >\n \n \n
    \n
    \n
    \n\n \n \n \n \n \n setValues({\n ...values,\n beneficiaries: _.map(values.beneficiaries, (b, j) => {\n if (index === j) {\n const isIndividual = beneficiaryType === BeneficiaryType.Individual;\n return {\n ...b,\n beneficiaryType,\n relationship: isIndividual ? b.relationship : undefined,\n firstName: isIndividual ? b.firstName : '',\n lastName: isIndividual ? b.lastName : '',\n dateOfBirth: isIndividual ? b.dateOfBirth : {},\n ssnSecret: isIndividual ? b.ssnSecret : '',\n trustName: isIndividual ? undefined : b.trustName,\n einSecret: isIndividual ? undefined : b.einSecret,\n };\n }\n return b;\n }),\n })\n }\n />\n \n {beneficiary.beneficiaryType === BeneficiaryType.Individual && (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n {beneficiary.beneficiaryType === BeneficiaryType.Trust && (\n <>\n \n \n \n \n \n \n \n )}\n \n \n \n \n {totalPercentageError && (\n

    \n {totalPercentageError}{' '}\n \n

    \n )}\n
    \n ))}\n {max && total < max && (\n

    \n {\n event.currentTarget.blur();\n event.preventDefault();\n arrayHelpers.push({\n address: {\n address1: '',\n address2: '',\n city: '',\n postalCode: null,\n country: '',\n state: null,\n },\n beneficiaryAccountType: '',\n beneficiaryType: '',\n dateOfBirth: {\n day: undefined,\n month: undefined,\n year: undefined,\n },\n einSecret: '',\n firstName: '',\n middleName: '',\n lastName: '',\n suffix: '',\n percent: null,\n relationship: '',\n ssnSecret: '',\n trustName: '',\n });\n setAddOrEditBeneficiary(true);\n }}\n type=\"button\"\n >\n \n Add Beneficiary\n {' '}\n 0 ? 'partial' : 'all'}`}\n data={{ max, left: max - total }}\n />\n

    \n )}\n {addOrEditBeneficiary && (\n
    \n {beneficiaries.length > 0 && (\n <>\n {\n e.preventDefault();\n setAddOrEditBeneficiary(false);\n }}\n >\n \n Go back\n \n \n )}\n\n handleSubmit(values)}\n >\n Save\n \n
    \n )}\n \n )}\n />\n
    \n );\n }}\n \n \n )}\n\n \n
    \n )}\n \n );\n};\n","import { ColumnWithSorting, EmptyBlockContent, Loading, Table } from '@tradingblock/components';\nimport React, { useEffect, useMemo } from 'react';\nimport { BlockTable } from '../../../shared/BlockTable';\nimport { useApi } from '../../../../context/Api';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../../../data/global/actions/AccountManagementActions';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport dayjs from 'dayjs';\n\nexport const AuthHistoryTable: React.FunctionComponent<{}> = ({}) => {\n // State variables\n\n // Hooks for API and Redux\n const api = useApi();\n const dispatch = useDispatch();\n\n // Selectors for Redux state\n const username = useStateSelector(s => s.auth.userName);\n const authHistory = useStateSelector(s => s.accountManagement.authHistory.data);\n const isFetching = useStateSelector(s => s.accountManagement.authHistory.isFetching);\n\n // Function to fetch the authentication history\n const fetchAuthHistory = () => {\n dispatch(AccountManagementDataActions.requestAuthHistory({ username }));\n };\n\n // Fetch the authentication history on component mount\n useEffect(() => {\n fetchAuthHistory();\n }, []);\n\n // Define the columns for the authentication history table\n const AuthHistoryColumns = useMemo(\n () => [\n {\n Header: 'Date',\n accessor: (a: any) => a.TimeStamp,\n Cell: (row: any) => {\n return dayjs(row.value + 'Z').format('MM/DD/YYYY');\n },\n },\n {\n Header: 'Time',\n accessor: (a: any) => a.TimeStamp,\n Cell: (row: any) => {\n return dayjs(row.value + 'Z').format('h:mm:ss A');\n },\n },\n {\n Header: 'IP Address',\n accessor: 'ipAddress',\n Cell: (row: any) => {\n // if the ip is null/undefined return fontawesome ban icon\n if (!row.value) {\n return ;\n } else {\n return row.value;\n }\n },\n },\n ],\n []\n );\n\n const initialState = useMemo(() => {\n return {\n pageSize: 10,\n pageIndex: 0,\n sortBy: [],\n columnOrder: [],\n };\n }, []);\n\n // Return the authentication history table\n return (\n <>\n {isFetching && (\n
    \n
    \n
    Log-in History
    \n
    \n
    \n Loading...\n
    \n
    \n )}\n {!isFetching && authHistory && authHistory.length === 0 && }\n {!isFetching && authHistory && authHistory.length > 0 && (\n
    \n
    \n \n
    Log-in History
    \n
    \n
    \n \n
    \n
    \n

    The log-in history table displays the last 50 successful log-in attempts.

    \n
    \n
    \n )}\n \n );\n};\n","import React, { useMemo } from 'react';\nimport { RegisteredDevicesTable } from './components/table/RegisteredDevicesTable';\nimport { MFASettings } from './modals/MFASettings';\nimport { AuthHistoryTable } from './components/table/AuthHistoryTable';\n\n//TODO: Once backend is ready, we need to fetch the data from the backend and populate the MFA options\nexport const AccountSecurity: React.FunctionComponent<{}> = ({}) => {\n const [isTwoFactorEnabled, setIsTwoFactorEnabled] = React.useState(true);\n const [showMFASettings, setShowMFASettings] = React.useState(false);\n\n const toggleMFASettings = () => {\n setShowMFASettings(!showMFASettings);\n };\n\n const MFASetting = useMemo(() => {\n return isTwoFactorEnabled ? 'Enabled' : 'Disabled';\n }, [isTwoFactorEnabled]);\n\n return (\n <>\n
    \n
    \n {/*TODO: Reimplement when SMS MFA is ready */}\n {/*
    \n
    \n
    \n
    Security Preferences
    \n

    Multi-factor Authentication: {MFASetting}

    \n {isTwoFactorEnabled ? (\n <>\n

    Current MFA Method: SMS

    \n \n ) : null}\n \n
    \n
    \n
    */}\n
    \n \n
    \n
    \n {/* */}\n {/* Display a message informing users that a new no password login feature is coming soon */}\n\n
    \n
    Introducing Our New No-Password Login!
    \n

    \n We're excited to bring you a simpler, faster, and more secure way to access your account – with our new\n No-Password Login feature!\n

    \n
    What is No-Password Login?
    \n

    \n Say goodbye to remembering passwords! Our No-Password Login uses multi-factor authentication (MFA) to\n verify your identity. It's a more secure way to access your account and protect your information.\n

    \n
    How does it work?
    \n

    \n When you sign in, you'll receive a notification on your mobile device. Simply tap \"Approve\" to log in –\n no password needed!\n

    \n
    Coming Soon!
    \n

    \n We're working hard to bring you this new feature. Stay tuned for updates on when you can start using\n No-Password Login!\n

    \n
    \n
    \n
    \n
    \n {/* */}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n BooleanToggleType,\n AllBooleanToggleTypes,\n CommunicationPreferencesUpdateRequest,\n AllElectronicFormats,\n AllDuplicateStatementOptions,\n DuplicateStatements,\n getGroupedCountryOptions,\n AllStates,\n Country,\n CommunicationPreferencesUpdateValues,\n DeliveryType,\n} from '@tradingblock/types';\nimport { FormGroup, Modal, SelectDropdownField, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\nimport { getRequiredError, USPSErrors, uspsVerification } from './Validation';\nimport { AccountManagementDataActions } from '../../../data/global/actions/AccountManagementActions';\nimport { formatBoolean } from '../../../utilities/accountManagement';\nimport { useClearer } from '../../../hooks/useClearer';\n\nexport const CommunicationPreferencesUpdate: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n const dispatch = useDispatch();\n\n const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n const clearer = useClearer();\n\n const initialCommunicationPreferencesUpdateValues: CommunicationPreferencesUpdateRequest = {\n deliveryType: undefined,\n requestDuplicateStatements: undefined,\n duplicateStatements: undefined,\n duplicateStatementsAddress: {\n address1: '',\n address2: '',\n city: '',\n state: '',\n postalCode: '',\n country: '',\n },\n duplicateStatementsEmail: undefined,\n preferredElectronicFormat: undefined,\n subscribeToPromotionalEmails: undefined,\n };\n\n const onValidate = (values: CommunicationPreferencesUpdateRequest) => {\n const { duplicateStatementsAddress } = values;\n\n const { address1, city, state, country } = duplicateStatementsAddress || {\n address1: '',\n city: '',\n state: '',\n country: '',\n };\n\n let uspsResponse;\n let isValidAddress;\n const stateOrPostalCodeRequired = country === Country.UnitedStatesOfAmerica;\n const uspsResponseFromStorage = localStorage.getItem(`addressVerification-duplicateStatementsAddress`);\n\n if (uspsResponseFromStorage && uspsResponseFromStorage !== 'undefined') {\n uspsResponse = JSON.parse(uspsResponseFromStorage);\n const { city, state, zip5, error } = uspsResponse;\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual =\n values.duplicateStatementsAddress &&\n _.toLower(startCaseCity) === _.toLower(values.duplicateStatementsAddress.city);\n const isZipEqual = values.duplicateStatementsAddress && zip5 === values.duplicateStatementsAddress.postalCode;\n const isStateEqual = values.duplicateStatementsAddress && state === values.duplicateStatementsAddress.state;\n const isAddressCorrect = !error && isCityEqual && isZipEqual && isStateEqual;\n\n isAddressCorrect ? (isValidAddress = true) : (isValidAddress = false);\n }\n\n if (address1 && city && state && country === Country.UnitedStatesOfAmerica && !isValidAddress) {\n const getUSPS = async () => {\n await new Promise(resolve => setTimeout(resolve, 100));\n if (!values.duplicateStatementsAddress) {\n return;\n }\n return await uspsVerification(values.duplicateStatementsAddress);\n };\n\n getUSPS().then(result => {\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, JSON.stringify(result));\n });\n }\n\n if (uspsResponse) {\n const { city, state, zip5, error } = uspsResponse;\n\n if (\n error &&\n values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.address1 &&\n values.duplicateStatementsAddress.city &&\n values.duplicateStatementsAddress.state &&\n values.duplicateStatementsAddress.postalCode\n ) {\n return {\n [`duplicateStatementsAddress.postalCode`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.city`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.state`]: `${error.description.trim()} Please review the entered address.`,\n [`duplicateStatementsAddress.address1`]: `${error.description.trim()} Please review the entered address.`,\n };\n }\n\n if (\n (values.duplicateStatementsAddress && !values.duplicateStatementsAddress.address1) ||\n (values.duplicateStatementsAddress && !values.duplicateStatementsAddress.city)\n ) {\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, 'undefined');\n }\n\n if (city && state && zip5) {\n const formattedCityCapitalized = _.capitalize(city);\n const startCaseCity = _.startCase(formattedCityCapitalized);\n const isCityEqual =\n values.duplicateStatementsAddress &&\n _.toLower(startCaseCity) === _.toLower(values.duplicateStatementsAddress.city);\n const isZipEqual = values.duplicateStatementsAddress && zip5 === values.duplicateStatementsAddress.postalCode;\n const isStateEqual = values.duplicateStatementsAddress && state === values.duplicateStatementsAddress.state;\n\n // USPS + Required Errors\n\n const errors: USPSErrors = {\n ['duplicateStatementsAddress.country']: getRequiredError(\n values.duplicateStatementsAddress && values.duplicateStatementsAddress.country\n ),\n ['duplicateStatementsAddress.address1']: getRequiredError(\n values.duplicateStatementsAddress && values.duplicateStatementsAddress.address1\n ),\n ['duplicateStatementsAddress.postalCode']:\n getRequiredError(\n stateOrPostalCodeRequired\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.postalCode\n : true\n ) || !isZipEqual\n ? `Please verify the zip code. USPS Provided Zip Code: ${zip5}`\n : undefined,\n ['duplicateStatementsAddress.city']:\n getRequiredError(values.duplicateStatementsAddress && values.duplicateStatementsAddress.city) ||\n !isCityEqual\n ? `Please verify the city. USPS Provided City: ${startCaseCity}`\n : undefined,\n ['duplicateStatementsAddress.state']:\n getRequiredError(\n stateOrPostalCodeRequired\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.state\n : true\n ) || !isStateEqual\n ? `Please verify the state. USPS Provided State: ${state}`\n : undefined,\n [`deliveryType`]: getRequiredError(values.deliveryType),\n [`duplicateStatements`]: getRequiredError(values.duplicateStatements),\n [`preferredElectronicFormat`]: getRequiredError(values.preferredElectronicFormat),\n [`subscribeToPromotionalEmails`]: getRequiredError(values.subscribeToPromotionalEmails),\n [`requestDuplicateStatements`]: getRequiredError(values.requestDuplicateStatements),\n };\n\n Object.keys(errors).forEach(key => (errors[key] === undefined ? delete errors[key] : {}));\n\n return errors;\n }\n }\n const errors = {\n [`deliveryType`]: getRequiredError(values.deliveryType),\n [`duplicateStatements`]:\n values.requestDuplicateStatements === BooleanToggleType.Yes\n ? getRequiredError(values.duplicateStatements)\n : undefined,\n [`preferredElectronicFormat`]: getRequiredError(values.preferredElectronicFormat),\n [`subscribeToPromotionalEmails`]: getRequiredError(values.subscribeToPromotionalEmails),\n [`requestDuplicateStatements`]: getRequiredError(values.requestDuplicateStatements),\n [`duplicateStatementsAddress.country`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.country\n : true\n ),\n [`duplicateStatementsAddress.address1`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.address1\n : true\n ),\n [`duplicateStatementsAddress.postalCode`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.postalCode\n : true\n ),\n [`duplicateStatementsAddress.city`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.city\n : true\n ),\n [`duplicateStatementsAddress.state`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.PostalMail\n ? values.duplicateStatementsAddress && values.duplicateStatementsAddress.state\n : true\n ),\n [`duplicateStatementsEmail`]: getRequiredError(\n values.duplicateStatements === DuplicateStatements.Email ? values.duplicateStatementsEmail : true\n ),\n };\n const cleanedErrors = _.omitBy(errors, _.isNil);\n return cleanedErrors;\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n // construct updateValues for submission, if duplicateStatementsAddress is not provided, then remove it from the updateValues same for duplicateStatementsEmail\n // set duplicateStatements to None if requestDuplicateStatements is No\n const updateValues: CommunicationPreferencesUpdateValues = {\n item: 'CommunicationPreferences',\n communicationPreferences: {\n deliveryType: values.deliveryType === BooleanToggleType.Yes ? DeliveryType.Paper : DeliveryType.Electronic,\n duplicateStatements: values.duplicateStatements,\n duplicateStatementsAddress: values.duplicateStatementsAddress,\n duplicateStatementsEmail: values.duplicateStatementsEmail,\n preferredElectronicFormat: values.preferredElectronicFormat,\n subscribeToPromotionalEmails: formatBoolean(values.subscribeToPromotionalEmails),\n },\n };\n\n // remove duplicateStatementsAddress and duplicateStatementsEmail if they are not provided\n // remove duplicateStatementsAddress if duplicateStatements is not PostalMail\n if (!values.duplicateStatementsAddress) {\n delete updateValues.communicationPreferences.duplicateStatementsAddress;\n }\n if (!values.duplicateStatementsEmail) {\n delete updateValues.communicationPreferences.duplicateStatementsEmail;\n }\n if (values.duplicateStatements !== DuplicateStatements.PostalMail) {\n delete updateValues.communicationPreferences.duplicateStatementsAddress;\n }\n if (values.requestDuplicateStatements === BooleanToggleType.No) {\n updateValues.communicationPreferences.duplicateStatements = DuplicateStatements.None;\n }\n\n dispatch(\n AccountManagementDataActions.requestMakeAccountUpdate({\n accountId,\n request: updateValues,\n })\n );\n resetForm();\n toggleModal();\n\n localStorage.setItem(`addressVerification-duplicateStatementsAddress`, 'undefined');\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, values, errors, resetForm }) => (\n toggleModal()} show={show}>\n \n Communication Preferences Update\n \n \n
    \n

    Would you like to receive paper confirmations and statements?

    \n \n \n \n

    Preferred electronic communications format?

    \n \n \n \n

    Would you like to receive duplicate statements?

    \n \n \n \n {values.requestDuplicateStatements === BooleanToggleType.Yes && (\n <>\n

    How would you like to receive duplicate statements?

    \n \n \n \n {values.duplicateStatements === DuplicateStatements.Email && (\n \n \n \n )}\n {values.duplicateStatements === DuplicateStatements.PostalMail && (\n <>\n

    Address for Duplicate Statements

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n {values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.country === Country.UnitedStatesOfAmerica && (\n \n )}\n {values.duplicateStatementsAddress &&\n values.duplicateStatementsAddress.country !== Country.UnitedStatesOfAmerica &&\n values.duplicateStatementsAddress.country !== '' && (\n \n )}\n \n \n \n \n \n )}\n \n )}\n

    Would you like to receive promotional emails?

    \n \n \n \n
    \n
    \n \n {\n resetForm();\n toggleModal();\n }}\n >\n Cancel\n \n \n \n
    \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { Field, Formik } from 'formik';\nimport _ from 'lodash';\nimport {\n AllBooleanToggleTypes,\n BooleanToggleType,\n MarketDataProfileReviewUpdateValueProps,\n ProSubType,\n} from '@tradingblock/types';\nimport { CheckListInput, FormGroup, Modal, StepperField, TextboxField } from '@tradingblock/components';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useDispatch } from 'react-redux';\nimport { Modal as BootstrapModal, Button } from 'react-bootstrap';\n\nexport const MarketDataProfileReview: React.FunctionComponent<{\n show?: boolean;\n toggleModal: () => void;\n}> = ({ show, toggleModal }) => {\n // const dispatch = useDispatch();\n\n // const accountId = useStateSelector(s => s.accounts.account && s.accounts.account.AccountId);\n // const accountDisclosures = useStateSelector(\n // s =>\n // s.accountManagement.accountManagementDetails &&\n // s.accountManagement.accountManagementDetails.details.accountDisclosures\n // );\n\n const initialMarketDataProfileReviewValues: MarketDataProfileReviewUpdateValueProps = {\n industryEmployed: undefined,\n foreignBank: undefined,\n foreignShellBank: undefined,\n foreignFinancialInstitution: undefined,\n proprietarySecuritiesAccount: undefined,\n personalUse: undefined,\n secCftcRegistration: undefined,\n associationRegistration: undefined,\n jobFunctions: undefined,\n };\n\n const onValidate = (values: MarketDataProfileReviewUpdateValueProps) => {\n return {};\n };\n\n const onSubmit = useCallback(\n (values, { resetForm }) => {\n //TODO: create action to update market data profile review when endpoint is ready\n // dispatch(AccountManagementDataActions.updateMarketDataProfileReview(accountId, values));\n resetForm();\n toggleModal();\n },\n [toggleModal]\n );\n\n return (\n \n {({ handleSubmit, isSubmitting, values }) => (\n toggleModal()}>\n \n Market Data User Profile Review\n \n \n

    \n Please answer the questions below to verify your status as a professional or non-professional user of\n NYSE, AMEX, Nasdaq and OPRA market data. Please note:\n

    \n\n
      \n
    • Delayed market data is provided at no cost to all users.
    • \n
    • Real-time market data is provided at no cost to all non-professional users.
    • \n
    • Real-time market data is provided at cost to all professional users.
    • \n
    \n\n

    \n Are you employed or a member of a registered broker-dealer, securities or futures exchange, or securities\n industry regulatory body (e.g., FINRA, NFA)?\n

    \n \n \n \n {values.industryEmployed === BooleanToggleType.Yes && (\n \n \n \n )}\n

    Are you opening this account on behalf of one of the following:

    \n\n

    A foreign bank?

    \n \n \n \n\n

    A foreign shell bank?

    \n \n \n \n\n

    A foreign financial institution?

    \n \n \n \n\n

    A broker or dealer's proprietary securities account (PAB account)?

    \n \n \n \n\n

    Do you use market data for your own personal, non-business use?

    \n \n \n \n {values.personalUse === BooleanToggleType.Yes && (\n <>\n

    Are you currently registered with the SEC or the CFTC?

    \n \n \n \n

    \n Are you currently registered or qualified with any securities agency, any securities exchange,\n association or regulatory body, or any commodities or futures contract market, association or\n regulatory body, in the United States or elsewhere?\n

    \n \n \n \n

    \n Do you perform any functions that require (or are similar to those that require) registration or\n qualification with any US or non-US securities or futures regulatory body or agency (i.e. SEC, CFTC,\n other state or federal securities or futures agency, regulator, exchange, market or association)?\n

    \n \n \n \n \n )}\n

    * Select whether you wish to receive Real-time or Delayed quotes:

    \n \n \n \n
    \n \n \n \n \n
    \n )}\n
    \n );\n};\n","import {\n CheckListInput,\n GetLogoutUrl,\n GetTradingBlockDomain,\n GetTradingBlockFullUrl,\n Loading,\n} from '@tradingblock/components';\nimport { DeliveryType, DuplicateStatements } from '@tradingblock/types';\nimport React, { useMemo, useState } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { formatBooleanForDisplay, formatMarketDataEntitlement } from '../../utilities/accountManagement';\nimport { CommunicationPreferencesUpdate } from './modals/CommunicationPreferencesUpdate';\nimport { MarketDataProfileReview } from './modals/MarketDataProfileReview';\n\nexport const Preferences: React.FunctionComponent<{}> = ({}) => {\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const isLoaded = useStateSelector(s => s.accountManagement.accountDetails.isLoaded);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const isFetching = useStateSelector(s => s.accountManagement.accountManagementDetails.isFetching);\n\n // Destructuring account management details & communication preferences\n const { communicationPreferences, agreements } = accountManagementDetails;\n const { apiAgreement } = agreements;\n const {\n deliveryType,\n duplicateStatements,\n duplicateStatementsAddress,\n duplicateStatementsEmail,\n preferredElectronicFormat,\n subscribeToPromotionalEmails,\n } = communicationPreferences;\n\n // Formatting data for display\n const receivePaperStatements = deliveryType === DeliveryType.Paper ? 'Yes' : 'No';\n const receiveDuplicateStatements = duplicateStatements !== DuplicateStatements.None ? 'Yes' : 'No';\n\n // TODO: Implement market data entitlement updates for account management once the API is ready\n // const getMarketDataEntitlement = () => {\n // if (\n // profileData &&\n // profileData.current &&\n // profileData.current.entitlement &&\n // profileData.current.entitlement.marketDataEntitlementTypeId\n // ) {\n // return formatMarketDataEntitlement(profileData.current.entitlement.marketDataEntitlementTypeId);\n // }\n // return '';\n // };\n\n // const marketDataEntitlement = useMemo(() => getMarketDataEntitlement(), [profileData]);\n\n // State for toggling modals\n const [showMarketDataProfileReview, setShowMarketDataProfileReview] = useState(false);\n const [showCommunicationPreferencesUpdate, setShowCommunicationPreferencesUpdate] = useState(false);\n\n // Toggles for modals\n const toggleMarketDataProfileReview = () => {\n setShowMarketDataProfileReview(!showMarketDataProfileReview);\n };\n const toggleCommunicationPreferencesUpdate = () => {\n setShowCommunicationPreferencesUpdate(!showCommunicationPreferencesUpdate);\n };\n\n // Legacy domain for accessing the API agreement\n const tradingBlockDomain = GetTradingBlockDomain(accountNumber);\n const legacyLink = (\n \n {tradingBlockDomain}\n \n );\n\n // Formatting data for display\n const formatPreferredElectronicFormat = (format: string) => {\n if (format === 'PlainText') {\n return 'Plain Text';\n }\n if (format === 'Html') {\n return 'HTML';\n }\n return 'None';\n };\n\n // Formatting data for display\n const formatApiAgreementResponse = (response: boolean) => {\n if (response) {\n return 'Accepted';\n }\n return 'Declined';\n };\n\n // If not loaded or is fetching, show loading component\n if (!isLoaded || isFetching) return ;\n\n return (\n <>\n
    \n
    \n
    \n
    \n

    \n Communication Preferences\n

    \n
    \n
    \n
    \n
    \n Would you like to receive paper confirmations and statements?\n

    {receivePaperStatements}

    \n
    \n
    \n Would you like to receive duplicate confirmations and statements?\n

    {receiveDuplicateStatements}

    \n {receiveDuplicateStatements === 'Yes' && (\n <>\n Duplicate Statements Type\n

    \n {duplicateStatements === DuplicateStatements.PostalMail ? 'Postal Mail' : duplicateStatements}\n

    \n {duplicateStatements === DuplicateStatements.PostalMail && duplicateStatementsAddress && (\n <>\n Duplicate Statements Address\n

    {duplicateStatementsAddress.address1}

    \n {duplicateStatementsAddress.address2 && (\n

    {duplicateStatementsAddress.address2}

    \n )}\n

    \n {duplicateStatementsAddress.city}, {duplicateStatementsAddress.state}{' '}\n {duplicateStatementsAddress.postalCode}\n

    \n \n )}\n {duplicateStatements === DuplicateStatements.Email && duplicateStatementsEmail && (\n <>\n Duplicate Statements Email\n

    {duplicateStatementsEmail}

    \n \n )}\n \n )}\n
    \n
    \n
    \n
    \n Preferred electronic communications format?\n

    {formatPreferredElectronicFormat(preferredElectronicFormat)}

    \n
    \n
    \n Subscribed to promotional emails?\n

    {formatBooleanForDisplay(subscribeToPromotionalEmails)}

    \n
    \n
    \n
    \n
    \n toggleCommunicationPreferencesUpdate()}\n >\n Update\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    \n Trading Preferences\n

    \n
    \n
    \n {/* TODO: Once backend supports API agreement through RestHub include ability to accept or remove the api agreement here on the dashboard */}\n
    \n {/* TODO: Implement market data entitlement updates for account management once the API is ready */}\n {/*
    \n Quote data entitlement:{' '}\n \n
    */}\n
    \n API Agreement: \n {!apiAgreement && (\n

    \n We need an additional agreement for your account to use the API and this platform. Please log in to\n the classic {legacyLink}, visit your Profile, and complete the API agreement checkbox.\n

    \n )}\n
    \n
    \n
    \n
    \n
    \n \n \n \n );\n};\n","import React, { useCallback, useEffect } from 'react';\nimport Tabs from 'react-bootstrap/Tabs';\nimport Tab from 'react-bootstrap/Tab';\nimport { useBlockActionDispatchAndGenericActions } from '../../components/blocks/BlockState';\nimport {\n AccountManagementConstants,\n useAccountManagementData,\n AccountManagementDataState,\n isAccountManagementTab,\n} from './state/AccountManagementState';\nimport { AccountManagementBlockAction, AccountManagementBlockActions } from './state/AccountManagementBlockAction';\nimport { AccountDetails } from './AccountDetails';\nimport { FinancialDetails } from './FinancialDetails';\nimport { AccountDisclosures } from './AccountDisclosures';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { Beneficiaries } from './Beneficiaries';\nimport { useDispatch } from 'react-redux';\nimport { AccountManagementDataActions } from '../../data/global/actions/AccountManagementActions';\nimport { AccountSecurity } from './Security';\nimport { Preferences } from './Preferences';\n\nconst {\n clientAcc,\n clientFin,\n clientDiscl,\n clientPref,\n clientBeneficiaries,\n security,\n} = AccountManagementConstants.tabs;\n\nexport const AccountManagementContent: React.FunctionComponent<{}> = ({}) => {\n const dispatch = useDispatch();\n const accountId = useStateSelector(s => s.account.accountId);\n const retirementAccount = useStateSelector(\n s => s.accountManagement.accountManagementDetails.details.retirementAccountType\n );\n const isRetirementAccount = retirementAccount && retirementAccount !== '' ? true : false;\n const tab = useAccountManagementData(s => s.tab || 'clientAcc');\n const [, blockDispatch] = useBlockActionDispatchAndGenericActions<\n AccountManagementDataState,\n AccountManagementBlockAction\n >();\n const setTab = useCallback(\n (ev: string) => {\n if (isAccountManagementTab(ev)) {\n blockDispatch(AccountManagementBlockActions.setTab(ev));\n }\n },\n [blockDispatch]\n );\n\n useEffect(() => {\n if (accountId) {\n dispatch(AccountManagementDataActions.requestPendingAccountManagementUpdates({ accountId }));\n }\n }, [accountId, dispatch]);\n\n return (\n <>\n
    \n setTab(ev)}>\n \n {tab === clientAcc && }\n \n \n {tab === clientFin && }\n \n \n {tab === clientDiscl && }\n \n \n {tab === clientPref && }\n \n \n {tab === security && }\n \n {isRetirementAccount && (\n \n {tab === clientBeneficiaries && }\n \n )}\n \n
    \n \n );\n};\n","import React, { useCallback } from 'react';\nimport { BlockType } from '@tradingblock/types';\nimport { BlockDragHandle, ContactPhone, getBlockTypeName } from '@tradingblock/components';\nimport { useStateSelector } from '../../data/global/dataSelectors';\n\ninterface HeaderProps {\n blockType: BlockType;\n}\n\nexport const AccountManagementHeader: React.FunctionComponent = ({ blockType }) => {\n const accountTitle = useStateSelector(s => s.account.account && s.account.account.AccountTitle);\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const accountStatus = useStateSelector(s => s.account.accountDetails && s.account.accountDetails.accountStatus);\n const accountManagementDetails = useStateSelector(s => s.accountManagement.accountManagementDetails.details);\n const accountFlexibilityType =\n accountManagementDetails && accountManagementDetails.flexibilityType\n ? accountManagementDetails.flexibilityType[0]\n : '';\n // account status can be multi-worded without spaces, so we need to add them\n const getAccountStatus = useCallback((status: string) => {\n // format status to place a space between words\n const formattedStatus = status.replace(/([A-Z])/g, ' $1').trim();\n switch (status) {\n case 'Active':\n return {formattedStatus};\n case 'Inactive':\n return {formattedStatus};\n case 'Closed':\n return {formattedStatus};\n case 'ActiveClosingTradesOnly':\n return {formattedStatus};\n case 'ProcessingItemsMissing':\n return (\n <>\n \n {formattedStatus}\n \n
    \n \n Please contact us at if you have any questions or concerns.\n \n \n );\n default:\n return (\n \n {formattedStatus}\n \n );\n }\n }, []);\n\n return (\n <>\n
    \n {getBlockTypeName(blockType)} \n
    \n \n \n {accountTitle} - #{accountNumber} - {accountFlexibilityType && `${accountFlexibilityType} - `}\n {' '}\n {getAccountStatus(accountStatus || '')}\n \n \n );\n};\n","import React from 'react';\nimport { BlockBody } from '@tradingblock/components';\nimport { BlockType } from '@tradingblock/types';\nimport { Block } from '../../components/blocks/Block';\nimport { getBlockProps } from '../../utilities/block';\nimport { AccountManagementContent } from './AccountManagementContent';\nimport { AccountManagementHeader } from './AccountManagmentHeader';\n\nexport const AccountManagementContentBlock: React.FunctionComponent<{}> = () => {\n return (\n \n \n \n );\n};\n\nexport const AccountManagementBlock: React.FunctionComponent<{}> = () => {\n return (\n \n )}\n >\n \n \n );\n};\n","import React, { useMemo } from 'react';\nimport dayjs from 'dayjs';\nimport { isOCCSymbol, OCCSymbolToOptionData, deriveOptionExpirationType } from '@tradingblock/api';\nimport { OptionType, OptionExpirationType } from '@tradingblock/types';\nimport _ from 'lodash';\n\nconst OptionSymbolName: React.FC<{ symbol: string; underlyingSymbol: string }> = ({ symbol, underlyingSymbol }) => {\n const { expiration, strike, option } = OCCSymbolToOptionData(symbol);\n const optionExpirationType = deriveOptionExpirationType(symbol, underlyingSymbol || '');\n const symbolDate = useMemo(() => _([dayjs(expiration).format('MMM D'), optionExpirationType === OptionExpirationType.AM ? ' AM' : '']).join(''), [expiration, optionExpirationType]);\n return (\n <>\n {underlyingSymbol}\n {symbolDate}\n \n {strike} {option === OptionType.Call ? 'Call' : 'Put'}\n \n \n );\n};\n\nexport const SymbolName: React.FC<{ symbol: string; underlyingSymbol: string }> = ({ symbol, underlyingSymbol }) => {\n return (\n <>\n {isOCCSymbol(symbol) && }\n {!isOCCSymbol(symbol) && {symbol}}\n \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useMemo, useCallback, useState, useEffect, useRef } from 'react';\nimport { Cell } from 'react-table';\nimport _ from 'lodash';\nimport { AssetSymbol, OrderAction, AssetType } from '@tradingblock/types';\nimport { toAssetSymbol, AssetTypeToSymbolType, OrderBuilderType, isOCCSymbol, isIndexSymbol } from '@tradingblock/api';\nimport { EmptyBlockContent, Loading, Number, SignedNumber } from '@tradingblock/components';\nimport {\n useStateSelector,\n getFavorites,\n getFavoriteSymbols,\n dashboardIdSelector,\n} from '../../data/global/dataSelectors';\nimport { getQuotesBySymbols } from '../../data/global/selectors/quoteSelector';\nimport { SymbolName } from '../../components/basic/SymbolName';\nimport { useDispatcher } from '../../data/global/hooks';\n\nimport { DirectionalPrice } from '../../components/trading/DirectionalPrice';\nimport { useTradeSymbolAction } from '../../components/blocks/hooks/useOrderBlock';\nimport { useChartSymbolAction, PriceChartBuilderType } from '../../components/blocks/hooks/usePriceChartBlock';\nimport { TradeOrderButton, ChartButton } from '../../components/blocks/actions/OrderActionButtons';\nimport { useBlockGroupInfo } from '../useGroupState';\nimport { changeCalculation } from '../../utilities/position';\nimport { useFavoriteSettings } from './useFavoriteSettings';\nimport { BlockTable } from '../shared/BlockTable';\nimport { BlockAction, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { useBlockTable } from '../shared/table/useBlockTableActions';\n\ninterface FavoriteRowProps {\n AssetSymbol: AssetSymbol;\n Symbol: string;\n LastTradePrice: number;\n NetChange: number;\n ChangePercentage: number;\n BidPrice: number;\n AskPrice: number;\n Open: number;\n High: number;\n Low: number;\n ClosePrice: number;\n ClosePriceTMinus2: number;\n IsSettlementSet: boolean;\n CalculatedNetChange: number;\n CalculatedChangePercent: number;\n}\n\nconst DefaultQuoteData = {\n Symbol: '',\n LastTradePrice: 0,\n NetChange: 0,\n ChangePercentage: 0,\n BidPrice: 0,\n AskPrice: 0,\n Open: 0,\n High: 0,\n Low: 0,\n ClosePrice: 0,\n ClosePriceTMinus2: 0,\n IsSettlementSet: false,\n CalculatedNetChange: 0,\n CalculatedChangePercent: 0,\n};\n\nexport const FavoritesContent: React.FunctionComponent<{}> = () => {\n const { state } = useBlockTable('favorites');\n const [sortBy, setSortBy] = useState(undefined);\n const [sortDirection, setSortDirection] = useState<'asc' | 'desc' | undefined>(undefined);\n const { groupId } = useBlockGroupInfo();\n const { favorites, symbols } = useStateSelector(s => ({\n favorites: getFavorites(s),\n symbols: getFavoriteSymbols(s),\n }));\n const [pageIndex, setPageIndex] = useState(state.pageIndex);\n const [pageSize, setPageSize] = useState(state.pageSize);\n const total = _.size(favorites);\n\n const { dispatcher } = useDispatcher();\n const remove = useCallback(\n (symbol: string) => {\n dispatcher.favorites.remove(symbol);\n },\n [dispatcher.favorites]\n );\n\n const quoteMetaData = useStateSelector(s => getQuotesBySymbols(s, symbols));\n\n const data = useMemo(() => {\n return _.filter(\n _.map(favorites, f => {\n const quoteData = _.find(quoteMetaData, q => q.Symbol === f.symbol) || DefaultQuoteData;\n const {\n Symbol,\n LastTradePrice,\n NetChange,\n ChangePercentage,\n ClosePrice,\n Open,\n High,\n Low,\n BidPrice,\n AskPrice,\n IsSettlementSet,\n ClosePriceTMinus2,\n } = quoteData;\n\n const { change, changePercent } = changeCalculation(\n LastTradePrice,\n ClosePrice,\n ClosePriceTMinus2,\n BidPrice,\n AskPrice,\n Symbol,\n IsSettlementSet\n );\n return {\n Symbol,\n AssetSymbol: f,\n LastTradePrice,\n NetChange,\n ChangePercentage,\n BidPrice,\n AskPrice,\n Open,\n High,\n Low,\n ClosePrice,\n ClosePriceTMinus2,\n IsSettlementSet,\n CalculatedNetChange: change,\n CalculatedChangePercent: changePercent * 100,\n };\n }),\n d => !!d.Symbol\n );\n }, [quoteMetaData]);\n\n const getRowKey = useCallback((data: FavoriteRowProps) => `${data.Symbol}`, []);\n\n const getCurrentSortBy = useCallback(\n (newDesc?: boolean) => {\n if (sortBy) {\n return { id: sortBy, desc: !_.isUndefined(newDesc) ? newDesc : sortDirection === 'desc' };\n }\n return undefined;\n },\n [sortBy, sortDirection]\n );\n\n const [tableColumnOrder, setTableColumnOrder] = useState([]);\n\n const onSort = useCallback(\n (sort: any[]) => {\n const sortVal = _.first(sort) || getCurrentSortBy(sortDirection === 'asc');\n if (sortVal) {\n const { id, desc, asc } = sortVal;\n setSortBy(id);\n setSortDirection(desc ? 'desc' : asc ? 'asc' : undefined);\n }\n },\n [tableColumnOrder]\n );\n\n const getColumnOrder = (columns: string[]) => {\n return setTableColumnOrder(columns);\n };\n\n const { blockId } = useBlockMetadata();\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { type } = useBlockMetadata();\n const { dispatch } = useDispatcher();\n const blockType = type;\n const blocksLoading = useStateSelector(s => s.blocks.isFetching);\n\n useEffect(() => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType,\n blockSettings: {\n ...current,\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n return () => {\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n };\n }, [tableColumnOrder, sortBy]);\n\n const pageCount = useMemo(() => {\n if (pageSize) {\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\n }\n return 0;\n }, [total, pageSize]);\n\n const onPage = useCallback((pageIndex: number) => {\n setPageIndex(pageIndex);\n }, []);\n\n const onPageSize = useCallback((pageSize: number) => {\n setPageSize(pageSize);\n }, []);\n\n const columns: any[] = useMemo(\n () => [\n {\n Header: 'Symbol',\n accessor: 'Symbol',\n canSort: true,\n Cell: ({ row }: Cell) => (\n \n ),\n },\n {\n Header: 'Last',\n accessor: 'LastTradePrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Change',\n accessor: 'NetChange',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const val = useRef(0.0);\n if (row.original.NetChange) val.current = row.original.NetChange;\n return ;\n },\n },\n {\n Header: '(%)',\n accessor: (a: FavoriteRowProps) => a.ChangePercentage,\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const val = useRef(0.0);\n if (row.original.ChangePercentage) val.current = row.original.ChangePercentage;\n return ;\n },\n },\n {\n Header: 'Bid',\n accessor: 'BidPrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return isIndexSymbol(row.original.Symbol) ? '-' : ;\n },\n },\n {\n Header: 'Ask',\n accessor: 'AskPrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return isIndexSymbol(row.original.Symbol) ? '-' : ;\n },\n },\n {\n Header: 'Open',\n accessor: 'Open',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n const isOption = row.original.AssetSymbol.symbol.split(' ').length > 1;\n const isIndex = row.original.AssetSymbol.assetType === AssetType.Index;\n if (isOption || isIndex) return '-';\n return ;\n },\n },\n {\n Header: 'Prev. Close',\n accessor: 'ClosePrice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n return (\n \n );\n },\n },\n {\n Header: 'Close',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => {\n if (row.original.IsSettlementSet) {\n return ;\n } else {\n return ;\n }\n },\n },\n {\n Header: 'High',\n accessor: 'High',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Low',\n accessor: 'Low',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n {\n Header: 'Trade',\n id: 'trade',\n Cell: ({ row }: Cell) => {\n const assetSymbol = row.original.AssetSymbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: assetSymbol.name, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const orderBuilder = useCallback((builder: OrderBuilderType) => {\n return builder.action(OrderAction.Buy);\n }, []);\n const handleTradeClick = useTradeSymbolAction(baseAssetSymbol, orderBuilder, { groupId });\n return handleTradeClick()} />;\n },\n },\n {\n Header: 'Chart',\n id: 'chart',\n Cell: ({ row }: Cell) => {\n const assetSymbol = row.original.AssetSymbol;\n const underlyingSymbol = assetSymbol.underlyingSymbol || assetSymbol.symbol;\n const baseAssetSymbol = toAssetSymbol(\n underlyingSymbol,\n assetSymbol.assetType,\n AssetTypeToSymbolType(assetSymbol.assetType),\n { name: assetSymbol.name, underlyingSymbol, rootSymbol: underlyingSymbol }\n );\n const isOCC = isOCCSymbol(assetSymbol.symbol);\n const priceChartBuilder = useCallback((builder: PriceChartBuilderType) => {\n return builder;\n }, []);\n const handleChart = useChartSymbolAction(baseAssetSymbol, priceChartBuilder, { groupId });\n const handleClick = () => {\n handleChart();\n groupId && dispatcher.blockGroup.setSymbol(groupId, assetSymbol);\n };\n //Don't show for option/symbol rows\n if (isOCC) {\n return null;\n }\n return ;\n },\n },\n {\n Header: 'Remove',\n id: 'favorites-last-col',\n className: 'col-delete',\n Cell: ({ row }: Cell) => (\n {\n remove(row.original.Symbol);\n }}\n type=\"button\"\n >\n \n \n ),\n },\n ],\n [remove, groupId, dispatcher.favorites.request, tableColumnOrder]\n );\n\n const { filterHiddenColumns, current } = useFavoriteSettings();\n const filterColumns = useCallback(() => filterHiddenColumns(columns, current), [current, columns, tableColumnOrder]);\n\n const initialState = useMemo(() => {\n const currentSortBy = getCurrentSortBy();\n return {\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\n pageIndex: pageIndex || 0,\n sortBy: currentSortBy ? [currentSortBy] : [],\n columnOrder: [],\n };\n }, [pageSize, pageIndex, total]);\n\n // we need to chunk the data based on the current page size and page index\n const chunkedData = useMemo(() => {\n if (pageSize === 0) {\n return data;\n }\n const start = pageIndex * pageSize;\n const end = start + pageSize;\n return data.slice(start, end);\n }, [data, pageIndex, pageSize]);\n\n return (\n <>\n {data && data.length > 0 && !blocksLoading && (\n \n )}\n {!data || (data.length === 0 && You have no favorites.)}\n {blocksLoading && }\n \n );\n};\n","import { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport React, { useCallback, useState } from 'react';\nimport { getFavorites, useStateSelector } from '../../data/global/dataSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\n\nexport const FavoritesHeader = () => {\n const { dispatcher } = useDispatcher();\n\n const onSelect = useCallback(\n (value: OptionType) => {\n const symbolName = value ? value.data : undefined;\n if (symbolName) {\n dispatcher.favorites.add(symbolName);\n }\n setSymbolFound(false);\n },\n [dispatcher.favorites]\n );\n\n const { favorites } = useStateSelector(s => ({\n favorites: getFavorites(s),\n }));\n\n const [symbolFound, setSymbolFound] = useState(false);\n\n return (\n <>\n
    \n
    \n setSymbolFound(false)}\n onSearch={(query) => {\n if (!query) {\n setSymbolFound(false);\n } else {\n const found = favorites.find((f) => f.symbol.toLowerCase() === query.toLowerCase());\n setSymbolFound(found !== undefined);\n }\n }}\n placeholder=\"Add...\"\n clearOptionsOnSelect={true}\n />\n
    \n
    \n {symbolFound && Symbol already in favorites}\n
    \n
    \n \n );\n};\n","import React, { useCallback, } from 'react';\nimport { BlockType } from '@tradingblock/types';\nimport { BlockBody, EmptyBlockContent, Loading } from '@tradingblock/components';\nimport { FavoritesContent } from './FavoritesContent';\nimport { Block } from '../../components/blocks/Block';\nimport { useQuoteSymbolSubscriptionFromGlobalState } from '../../hooks/useQuoteData';\nimport { getFavoriteSymbols, useStateSelector } from '../../data/global/dataSelectors';\nimport { getBlockProps } from '../../utilities/block';\nimport { FavoritesHeader } from './FavoritesHeader';\nimport { useBlockStateSelector } from '../../components/blocks/BlockState';\nimport { DataState } from '../../data/global/state';\nimport { initialPositionsAreLoading } from '../../data/global/selectors/positionSelector';\nimport { useFavoriteSettings } from './useFavoriteSettings';\n\nexport const FavoritesBlock: React.FunctionComponent<{}> = () => {\n useQuoteSymbolSubscriptionFromGlobalState(getFavoriteSymbols);\n const isLoaded = useStateSelector(state => state.blocks.isFetchingInitial === false);\n const loaded = useBlockStateSelector(s => s.data.isLoaded === true);\n const dataAndBlockLoaded = isLoaded === true && loaded === true;\n\n const isFetchingSelector = useCallback((state: DataState) => {\n const { loading } = initialPositionsAreLoading(state);\n return loading;\n }, []);\n\n const { current, definitions } = useFavoriteSettings();\n\n return (\n }\n isFetchingSelector={isFetchingSelector}\n settings={current}\n isRefreshable={true}\n settingFields={definitions}\n >\n \n {dataAndBlockLoaded && }\n {!dataAndBlockLoaded && {}}\n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useCallback } from 'react';\nimport { OptionType } from '@tradingblock/components';\nimport { AssetSymbol, BlockType } from '@tradingblock/types';\nimport { OrderState } from './state/OrderState';\nimport { useOrderActions } from './state/useOrderActions';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useStateSelector, blockGroupId } from '../../data/global/dataSelectors';\nimport { useBlockData, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { SymbolPickerHeader } from '../shared/SymbolPickerHeader';\nimport { useGroupState } from '../useGroupState';\n\ninterface OrderHeaderProps {}\n\nexport const OrderHeader: React.FC = () => {\n const [symbol] = useGroupState('symbol');\n const { isLoaded } = useBlockData();\n const { blockId } = useBlockMetadata();\n const groupId = useStateSelector(s => blockGroupId(s, blockId));\n const { dispatcher } = useDispatcher();\n const setGroupSymbol = dispatcher.blockGroup.setSymbol;\n const { setSymbol } = useOrderActions();\n\n const onSelect = useCallback(\n (value: OptionType) => {\n const symbolValue = value ? value.data : undefined;\n const symbolName = symbolValue ? symbolValue.symbol : undefined;\n if (symbolName && symbolValue && groupId) {\n //setSym(symbolValue);\n setSymbol(symbolValue, false, { persist: true });\n setGroupSymbol(groupId, symbolValue);\n }\n },\n [groupId]\n );\n // useEffect(() => {\n // if (groupId && sym && (!symbol || sym.symbol !== symbol.symbol)) {\n // setSymbol(sym, { persist: true });\n // setGroupSymbol(groupId, sym);\n // }\n // }, [sym]);\n const onClear = useCallback(() => {\n //setSymbol(undefined);\n if (groupId !== undefined) {\n setSymbol(undefined, false, { persist: true });\n setGroupSymbol(groupId, undefined);\n } else {\n console.log('not clearing block because group is undefined');\n }\n }, [setGroupSymbol, groupId]);\n\n return (\n \n );\n};\n\nexport const OrderHeaderMemo = React.memo(OrderHeader);\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useMemo } from 'react';\nimport _ from 'lodash';\nimport { ITradingBlockApi } from '@tradingblock/api';\nimport { Expiration } from '@tradingblock/types';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useDispatcher, TradingBlockDispatcher } from '../../../data/global/hooks';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { StrikeSelectors, ExpirationSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { useApi } from '../../../context/Api';\nimport { isSameExpiration } from '../../../utilities/date';\n\n// const loadStrikes = (api: ITradingBlockApi, dispatcher: TradingBlockDispatcher) => async (symbolVal: string, expirationVal: Expiration) => {\n// try {\n// dispatcher.strikes.request(symbolVal, expirationVal);\n// const request = await api.options.strikes(symbolVal, expirationVal.date, expirationVal.optionExpirationType);\n// const strikes = request.payload;\n// dispatcher.strikes.receive(symbolVal, expirationVal, strikes);\n// return strikes;\n// } catch (err) {\n// console.warn('loading strikes failed');\n// }\n// };\n\nexport const useExpirationLoader = (symbol: string) => {\n const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol));\n const expirationsLoading = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol));\n const expirationsAreLoaded = useMemo(() => expirations && expirations.length > 0, [expirations]);\n const { dispatcher } = useDispatcher();\n const api = useApi();\n useEffect(() => {\n const loadExpirations = async (symbolVal: string) => {\n try {\n dispatcher.expirations.request(symbolVal);\n // const request = await api.options.expirations(symbolVal);\n // const expirations = request.payload.expirations;\n // dispatcher.expirations.receive(symbolVal, expirations);\n } catch (err) {\n console.warn('loading expirations failed');\n }\n };\n if (symbol && !expirationsAreLoaded && !expirationsLoading) {\n loadExpirations(symbol);\n }\n }, [symbol]);\n useWhyDidYouUpdate('Order:useExpirationLoader', {\n symbol,\n expirations,\n expirationsLoading,\n expirationsAreLoaded,\n dispatcher,\n api,\n });\n};\n\n// const useStrategyRules = (): { expirationRule: ExpirationRules; strikeRule: StrikeRules | undefined } => {\n// const strategy = useOrderData(OrderSelectors.strategy);\n// const expirationRule = () => {\n// if (!strategy || isCustomStrategy(strategy)) {\n// return ExpirationRules.SameExpiry;\n// }\n// return strategy.profile.Rules && strategy.profile.Rules.Expiration ? strategy.profile.Rules.Expiration : ExpirationRules.SameExpiry;\n// };\n// const strikeRule = () => {\n// if (!strategy || isCustomStrategy(strategy)) {\n// return undefined;\n// }\n// return strategy.profile.Rules && strategy.profile.Rules.Strike ? strategy.profile.Rules.Strike : undefined;\n// };\n// return {\n// expirationRule: expirationRule(),\n// strikeRule: strikeRule(),\n// };\n// };\n// const useLegExpirations = (symbol: string) => {\n// const strategy = useOrderData(OrderSelectors.strategy);\n// const legCount = useMemo(() => (strategy && !isCustomStrategy(strategy) ? strategy.info.LegsAmount : 1), [strategy]);\n// const { expirationRule } = useStrategyRules();\n// const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol || ''));\n// const values = useMemo(() => {\n// const defaultValues = _(expirations)\n// .map(d => dayjs(d))\n// .filter((d: dayjs.Dayjs): boolean => {\n// return d.isAfter(dayjs().add(3, 'week')) && d.isBefore(dayjs().add(5, 'week'));\n// })\n// .orderBy(d => d.unix())\n// .take(expirationRule === ExpirationRules.DifferentExpiries ? legCount : 1)\n// .value();\n// return _.unionBy(defaultValues, v => v.unix());\n// }, [expirations]);\n// return values;\n// };\n\nexport const useOptionDefaults = (symbol: string) => {\n const legExpirations = useOrderData(OrderSelectors.legExpirations);\n const expirationsBySymbol: Expiration[] = useStateSelector(state =>\n StrikeSelectors.expirationsBySymbol(state, symbol)\n );\n const existingLegExpirationWithoutStrikes = useMemo(() => {\n const res = _.filter(legExpirations, exp => {\n const existingStrikes = _.find(expirationsBySymbol, strikeExp => isSameExpiration(strikeExp, exp.expiration));\n return existingStrikes ? false : true;\n });\n return res;\n }, [legExpirations, expirationsBySymbol]);\n const api = useApi();\n const { dispatcher } = useDispatcher();\n // const strikeFetcher = loadStrikes(api, dispatcher);\n useEffect(() => {\n const loadExpirationStrikes = async (expirationValues: Expiration[]) => {\n const strikes = _.map(expirationValues, exp => {\n dispatcher.strikes.request(symbol, exp);\n //strikeFetcher(symbol, exp)\n });\n const allStrikes = await Promise.all(strikes);\n return allStrikes;\n };\n\n if (existingLegExpirationWithoutStrikes.length > 0) {\n loadExpirationStrikes(existingLegExpirationWithoutStrikes.map(e => e.expiration));\n }\n }, [symbol, existingLegExpirationWithoutStrikes]);\n};\n","import { PositionInfo } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { areArraysEqual } from './data';\n\nconst toSortedValues = (info: PositionInfo) =>\n _(info)\n .map((v, k) => ({ symbol: k, ...v }))\n .orderBy(v => v.symbol)\n .value();\n\nexport const areEqual = (info: PositionInfo, info2: PositionInfo) => {\n const first = toSortedValues(info);\n const second = toSortedValues(info2);\n return areArraysEqual(first, second);\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect } from 'react';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSymbolList, OrderPositions } from '../state/OrderLegSelector';\nimport { useStateSelector, positionInfos } from '../../../data/global/dataSelectors';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { areEqual } from '../../../utilities/order';\n\nexport const useOrderPositionSync = () => {\n const blockId = useBlockId();\n const { setPositionInfo } = useOrderActions();\n const orderSymbols = useOrderData(s => OrderSymbolList(s, blockId));\n const localPositions = useOrderData(s => OrderPositions(s, blockId));\n\n const positionInfo = useStateSelector(s => positionInfos(s, orderSymbols.map(os => os.symbol), blockId));\n\n useWhyDidYouUpdate('useOrderPositionSync', { positionInfo, localPositions, orderSymbols, blockId });\n useEffect(() => {\n if (localPositions && !areEqual(localPositions, positionInfo)) {\n setPositionInfo(positionInfo);\n }\n }, [positionInfo, setPositionInfo, orderSymbols, localPositions]);\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport {\n OrderAction,\n StrategyType,\n OrderActionDirection,\n isCustomStrategy,\n TradingStrategy,\n CustomTradingStrategy,\n OrderLegDTO,\n AssetType,\n OrderClass,\n} from '@tradingblock/types';\nimport { useOrderData, OrderStrength } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { DtoToOrderleg, isCalendarStrategy } from '../OrderUtilities';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { useOrderAssetSymbolOrUndefined } from '../state/useOrderState';\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\nimport { AssetTypeToSymbolType, toAssetSymbol } from '@tradingblock/api';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { Svg } from '@tradingblock/components';\n\ninterface StrengthIcon {\n icon: string;\n css: string;\n}\ninterface StrengthDef {\n icons: StrengthIcon | StrengthIcon[];\n text: string;\n css?: 'pos' | 'neg';\n}\ntype StrengthMap = { [key in OrderStrength]: StrengthDef };\ntype SentimentMap = {\n [key in StrategyType]: T;\n};\n\nconst SentimentIcons: SentimentMap = {\n [StrategyType.Bull]: {\n [OrderStrength.Low]: { icons: { icon: `far fa-triangle`, css: 'pos' }, text: 'Somewhat Bullish', css: 'pos' },\n [OrderStrength.Medium]: {\n icons: { icon: `fa fa-triangle`, css: 'pos' },\n text: 'Bullish',\n css: 'pos',\n },\n [OrderStrength.High]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle`, css: 'pos' }],\n text: 'Very Bullish',\n css: 'pos',\n },\n [OrderStrength.VeryHigh]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle`, css: 'pos' }],\n text: 'Most Bullish',\n css: 'pos',\n },\n },\n [StrategyType.Bear]: {\n [OrderStrength.Low]: {\n icons: { icon: `far fa-triangle fa-rotate-180`, css: 'neg' },\n text: 'Somewhat Bearish',\n css: 'neg',\n },\n [OrderStrength.Medium]: {\n icons: { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n text: 'Bearish',\n css: 'neg',\n },\n [OrderStrength.High]: {\n icons: [\n { icon: `far fa-triangle fa-rotate-180`, css: 'neg' },\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n ],\n text: 'Very Bearish',\n css: 'neg',\n },\n [OrderStrength.VeryHigh]: {\n icons: [\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' },\n ],\n text: 'Most Bearish',\n css: 'neg',\n },\n },\n [StrategyType.Volatility]: {\n [OrderStrength.Low]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `far fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'Low Volatility',\n },\n [OrderStrength.Medium]: {\n icons: [{ icon: `far fa-triangle`, css: 'pos' }, { icon: `far fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'Med Volatility',\n },\n [OrderStrength.High]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'High Volatility',\n },\n [OrderStrength.VeryHigh]: {\n icons: [{ icon: `fa fa-triangle`, css: 'pos' }, { icon: `fa fa-triangle fa-rotate-180`, css: 'neg' }],\n text: 'High Volatility',\n },\n },\n};\n\nexport const useStrategySentiment = (strategy: TradingStrategy | CustomTradingStrategy) => {\n const action = useOrderData(OrderSelectors.action);\n const orderSentiment = useMemo(() => {\n if (!strategy || !action) {\n return undefined;\n }\n if (isCustomStrategy(strategy) || isCalendarStrategy(strategy)) {\n return undefined;\n }\n const dir = action === OrderAction.Buy ? OrderActionDirection.Long : OrderActionDirection.Short;\n const directionInfo = strategy.profile[dir];\n const stratType = directionInfo ? directionInfo.StrategyType : undefined;\n const strengthVal = directionInfo ? directionInfo.Strength : undefined;\n if (!stratType || strengthVal === undefined) {\n return undefined;\n }\n let strength = OrderStrength.Low;\n if (strengthVal <= 3) {\n strength = OrderStrength.Low;\n } else if (strengthVal <= 6) {\n strength = OrderStrength.Medium;\n } else if (strengthVal <= 8) {\n strength = OrderStrength.High;\n } else {\n strength = OrderStrength.VeryHigh;\n }\n let overallSentimentClass = stratType === StrategyType.Bull ? 'pos' : stratType === StrategyType.Bear ? 'neg' : '';\n return {\n strength,\n type: stratType,\n overallSentimentClass,\n };\n }, [action, strategy]);\n\n const sentimentDef = useMemo(\n () => (orderSentiment ? SentimentIcons[orderSentiment.type][orderSentiment.strength] : undefined),\n [orderSentiment]\n );\n\n const sentimentClass = useMemo(() => (sentimentDef && sentimentDef.css ? sentimentDef.css : ''), [sentimentDef]);\n const sentimentText = useMemo(() => (sentimentDef && sentimentDef.text ? sentimentDef.text : ''), [sentimentDef]);\n\n const icons = useMemo(() => {\n return sentimentDef ? (_.isArray(sentimentDef.icons) ? sentimentDef.icons : [sentimentDef.icons]) : [];\n }, [sentimentDef]);\n\n return {\n sentiment: orderSentiment,\n icons,\n sentimentClass,\n sentimentText,\n };\n};\n\nexport const OrderSentiment: React.FC<{\n strategy: any;\n legs: OrderLegDTO[];\n}> = ({ strategy, legs }) => {\n const { icons, sentimentText, sentimentClass } = useStrategySentiment(strategy as TradingStrategy);\n const { groupId } = useBlockGroupInfo();\n\n const assSymbol = toAssetSymbol(\n legs.length > 0 ? legs[0].UnderlyingSymbol : '',\n AssetType.Equity,\n AssetTypeToSymbolType(AssetType.Equity),\n {\n name: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n underlyingSymbol: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n rootSymbol: legs.length > 0 ? legs[0].UnderlyingSymbol : undefined,\n }\n );\n const action = useOrderData(OrderSelectors.action);\n const invertSentiment = action === 1 ? { transform: 'scaleY(1)' } : { transform: 'scaleY(-1)' };\n const assetSymbol = useOrderAssetSymbolOrUndefined();\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const orderData = useOrderData(s => s);\n const isCalendar = isCalendarStrategy(strategy as TradingStrategy);\n const isCoveredCallOrMarriedPut = strategy.info.Name === 'Covered Call' || strategy.info.Name === 'Married Put';\n const isButterflyCallOrPut = strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly';\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n\n const createOrder = () => {\n let quantity = Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n\n if (isCoveredCallOrMarriedPut) {\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n const shareLegRatio = shareLeg ? shareLeg.SpreadRatio : 100;\n quantity = shareLegRatio ? shareLegRatio / 100 : 1;\n }\n\n return {\n Legs: legs.map(leg => ({\n ...DtoToOrderleg(leg, assetSymbolInfo),\n SpreadRatio: isSingleLeggedStrategy\n ? undefined\n : isCoveredCallOrMarriedPut\n ? leg.AssetType === AssetType.Option\n ? orderData.quantity\n : 100 * orderData.quantity\n : isButterflyCallOrPut\n ? leg.SpreadRatio && leg.SpreadRatio * orderData.quantity\n : orderData.quantity,\n })),\n OrderClass: legs.length > 1 ? OrderClass.Multileg : OrderClass.Single,\n Duration: orderData.duration,\n Quantity: quantity,\n OrderType: orderData.orderType,\n AllOrNone: false,\n Description: '',\n };\n };\n\n const copy = useOrderCopyAction(createOrder(), assetSymbol || assSymbol, { groupId }, undefined, true);\n const copyOrder = () => copy();\n const { verboseSentiment } = useOrderSettings();\n const optionLegsHaveExpirationAndStrike = useMemo(() => {\n return (\n legs.filter(leg => leg.AssetType === AssetType.Option).length ===\n legs.filter(leg => leg.AssetType === AssetType.Option && leg.Strike && leg.Expiration).length\n );\n }, [legs, invertSentiment]);\n\n return (\n <>\n {\n window.onscroll = () => {\n window.scroll(0, 0);\n };\n copyOrder();\n }}\n disabled={!optionLegsHaveExpirationAndStrike}\n title={\n optionLegsHaveExpirationAndStrike\n ? 'Change to a custom strategy'\n : 'Please set expiration and strike for all options prior to changing to a custom strategy'\n }\n // style to denote when the button is available/disabled\n style={{\n opacity: optionLegsHaveExpirationAndStrike ? 1 : 0.5,\n cursor: optionLegsHaveExpirationAndStrike ? 'pointer' : 'not-allowed',\n }}\n >\n {verboseSentiment && (\n
    \n \n {icons.map((ic, ind) => (\n \n \n \n ))}\n {isCalendar && !verboseSentiment && (\n \n \n \n )}\n \n
    \n )}\n
    \n
    \n {verboseSentiment && (\n <>\n
    Sentiment
    \n
    {sentimentText}
    \n \n )}\n {isCalendar && verboseSentiment &&
    VOL PLAY
    }\n
    \n
    \n \n {strategy && (\n <>\n \n {(strategy.info.IconKind as string) === 'svg' ? (\n \n \n \n ) : (\n \n )}\n \n {''}\n \n )}\n \n \n \n );\n};\n","import React from 'react';\nimport { AssetType, DebitOrCredit, OrderAction, OrderLegDTOState, TradingStrategy } from '@tradingblock/types';\nimport { useStrategySentiment } from './OrderSentiment';\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\nimport { useOrderBlockData, useOrderData } from '../state/OrderState';\nimport { DtoToOrderleg } from '../OrderUtilities';\nimport { useOrderAssetSymbolOrUndefined } from '../state/useOrderState';\nimport _ from 'lodash';\nimport { useBlockGroupInfo } from '../../useGroupState';\nimport { AssetTypeToSymbolType, toAssetSymbol } from '@tradingblock/api';\nimport { OrderSelectors } from '../state/OrderSelector';\n\nexport const OrderStrategyMatch: React.FC<{ strategy: TradingStrategy; legs: OrderLegDTOState[] }> = ({\n strategy,\n legs,\n}) => {\n const { sentimentClass, sentimentText } = useStrategySentiment(strategy);\n const { groupId } = useBlockGroupInfo();\n\n const assetSymbolValue = toAssetSymbol(\n legs[0].UnderlyingSymbol,\n AssetType.Equity,\n AssetTypeToSymbolType(AssetType.Equity),\n {\n name: legs[0].UnderlyingSymbol,\n underlyingSymbol: legs[0].UnderlyingSymbol,\n rootSymbol: legs[0].UnderlyingSymbol,\n }\n );\n\n const assetSymbol = useOrderAssetSymbolOrUndefined() || assetSymbolValue;\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const orderData = useOrderData(s => s);\n const debitCredit = useOrderBlockData(OrderSelectors.debitOrCredit, DebitOrCredit.Debit);\n let orderAction = debitCredit === DebitOrCredit.Debit ? OrderAction.Buy : OrderAction.Sell;\n\n const createOrder = () => {\n // covered call/covered puts have a size ratio of 100(shares):1(option) and are not receiving the correct quantity values when setting creating the order\n // so we need to set the quantity to the max of the quantity and the spread ratio\n // if 500 shares and 5 options, the quantity should be 5 (100:1)\n // otherwise utilize Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n\n let quantity = Math.max(...[orderData.quantity, ...legs.map(l => (l.SpreadRatio ? l.SpreadRatio : 0))]);\n const isCoveredCallOrMarriedPut = strategy.info.Name === 'Covered Call' || strategy.info.Name === 'Married Put';\n const isButterflyCallOrPut = strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly';\n\n if (isCoveredCallOrMarriedPut) {\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n const shareLegRatio = shareLeg ? shareLeg.SpreadRatio : 100;\n\n quantity = shareLegRatio ? shareLegRatio / 100 : 1;\n }\n\n if (isButterflyCallOrPut) {\n // for butterflies, the spread ratio is 1:2:1\n // find the leg with the highest spread ratio and divide that by 2 to get the quantity\n const highestSpreadRatioLeg =\n legs && legs.find(l => l.SpreadRatio === Math.max(...(legs.map(l => l.SpreadRatio) as any)));\n // use the leg with the highest spread ratio to determine the quantity\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.SpreadRatio) {\n quantity = highestSpreadRatioLeg.SpreadRatio && highestSpreadRatioLeg.SpreadRatio / 2;\n }\n }\n\n // need to set actions correctly for custom strategies, particularly vertical spreads\n // for a call vertical spread the order is considered a buy if you are buying the lower strike and selling the higher strike\n // for a put vertical spread the order is considered a buy if you are selling the lower strike and buying the higher strike\n if (strategy && strategy.info.Name === 'Call Vertical') {\n // find the leg with the lower strike\n const lowerStrikeLeg = legs && legs.find(l => l.Strike === Math.min(...(legs.map(l => l.Strike) as any)));\n // use the leg with the lower strike to determine the action\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n if (strategy && strategy.info.Name === 'Put Vertical') {\n // find the leg with the lower strike\n const lowerStrikeLeg = legs && legs.find(l => l.Strike === Math.min(...(legs.map(l => l.Strike) as any)));\n // use the leg with the lower strike to determine the action\n if (lowerStrikeLeg) {\n if (lowerStrikeLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n } else {\n orderAction = OrderAction.Buy;\n }\n }\n }\n\n // set actions accordingly for butterfly strategies\n if (strategy && (strategy.info.Name === 'Call Butterfly' || strategy.info.Name === 'Put Butterfly')) {\n // find the leg with the highest spread ratio\n const highestSpreadRatioLeg =\n legs && legs.find(l => l.SpreadRatio === Math.max(...(legs.map(l => l.SpreadRatio) as any)));\n // a call butterfly is a buy if you are selling the highest spread ratio leg\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.Action === OrderAction.Sell) {\n orderAction = OrderAction.Buy;\n }\n\n // a call butterfly is a sell if you are buying the highest spread ratio leg\n if (highestSpreadRatioLeg && highestSpreadRatioLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n }\n }\n\n // set actions accordingly for condor strategies\n if (strategy && (strategy.info.Name === 'Call Condor' || strategy.info.Name === 'Put Condor')) {\n // use the two middle legs to determine the order action\n // if the two middle legs are both buys, the order action is a sell\n // if the two middle legs are both sells, the order action is a buy\n const legsByStrike = _.sortBy(legs, l => l.Strike);\n const middleTwoStrikes = _.slice(legsByStrike, 1, 3);\n const middleTwoStrikesActions = _.map(middleTwoStrikes, l => l.Action);\n const middleTwoStrikesActionsAreEqual = _.uniq(middleTwoStrikesActions).length === 1;\n if (middleTwoStrikesActionsAreEqual) {\n if (middleTwoStrikesActions[0] === OrderAction.Buy) {\n orderAction = OrderAction.Sell;\n }\n if (middleTwoStrikesActions[0] === OrderAction.Sell) {\n orderAction = OrderAction.Buy;\n }\n }\n }\n\n // set actions accordingly for covered call strategy\n // covered call is considered a buy (bullish) if you are buying the stock and selling the call\n // covered call is considered a sell (bearish) if you are selling the stock and buying the call\n if (strategy && strategy.info.Name === 'Covered Call') {\n // find the share leg and use that to determine the action of the order\n const shareLeg = legs.find(l => l.AssetType === AssetType.Equity);\n if (shareLeg) {\n if (shareLeg.Action === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n\n // set actions accordingly for married put strategy\n // both legs of a married put have the same action\n // apply the same action to the order\n if (strategy && strategy.info.Name === 'Married Put') {\n // ensure that both legs have the same action\n const actions = legs.map(l => l.Action);\n const actionsAreEqual = _.uniq(actions).length === 1;\n if (actionsAreEqual) {\n if (actions[0] === OrderAction.Buy) {\n orderAction = OrderAction.Buy;\n } else {\n orderAction = OrderAction.Sell;\n }\n }\n }\n\n return {\n Legs: legs.map(leg => ({\n ...DtoToOrderleg(leg, assetSymbolInfo),\n SpreadRatio: isCoveredCallOrMarriedPut\n ? leg.AssetType === AssetType.Option\n ? 1\n : 100\n : isButterflyCallOrPut\n ? leg.SpreadRatio && leg.SpreadRatio / quantity\n : 1,\n })),\n OrderClass: strategy.profile.OrderClass,\n Duration: orderData.duration,\n Quantity: quantity,\n OrderType: orderData.orderType,\n AllOrNone: false,\n Description: '',\n Action: orderAction,\n };\n };\n\n const copy = useOrderCopyAction(createOrder(), assetSymbol, { groupId }, strategy);\n const copyOrder = () => copy();\n\n return (\n <>\n copyOrder()}\n >\n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    Matches
    \n
    {strategy.info.Name}
    \n
    \n
    \n \n \n );\n};\n","import React from 'react';\nimport { Tooltip } from '@tradingblock/components';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const OrderValidationIcon: React.FC<{}> = () => {\n const blockId = useBlockId();\n const message = useOrderData(s => OrderSelectors.validationErrorMessage(s, blockId));\n // const validation = useOrderData(s => s.validation);\n if (!message) {\n return <>;\n }\n\n return (\n
    \n \n \n {message}\n
    \n }\n type=\"light\"\n >\n \n \n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { NumberInput } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../../state/OrderState';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { useOrderSettings } from '../../hooks/useOrderSettings';\nimport { OrderSelectors } from '../../state/OrderSelector';\n\nconst OrderQuantitySelector = createCachedSelector(\n (s: OrderState, defaultOrderQuantity: any) => s.quantity,\n (s: OrderState, defaultOrderQuantity: any) => defaultOrderQuantity,\n (quantity: number, defaultQuantity: any) => {\n if (_.isNumber(quantity)) {\n return quantity;\n }\n if (_.isNumber(defaultQuantity)) {\n return defaultQuantity;\n }\n return 1;\n }\n)(() => `OrderQuantity`);\n\nexport const useOrderQuantity = () => {\n const { setQuantity } = useOrderActions();\n const { defaultQuantityForOptionsAndStrategies } = useOrderSettings();\n const quantity = useOrderData((s: OrderState) => OrderQuantitySelector(s, defaultQuantityForOptionsAndStrategies));\n const setOrderQuantity = useCallback(\n (value: number) => {\n let val = value;\n if (val < 1) {\n val = 1;\n }\n setQuantity(val);\n },\n [setQuantity]\n );\n\n return { quantity, setOrderQuantity };\n};\n\nexport const OrderQuantity: React.FC<{ id?: string }> = ({ id }) => {\n const { quantity, setOrderQuantity } = useOrderQuantity();\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n const { setLegQuantity } = useOrderActions();\n\n const onChange = (value: number) => {\n setOrderQuantity(value);\n if (isSingleLeggedStrategy && id) {\n setLegQuantity(id, value);\n }\n };\n\n return (\n
    \n \n
    \n );\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport _ from 'lodash';\nimport { BasicDropdown, ToggleButton } from '@tradingblock/components';\nimport { OrderAction, TradingStrategyOrCustom, isCustomStrategy } from '@tradingblock/types';\nimport { useOrderData, useOrderStrategy } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { OrderStrategyMatch } from './OrderStrategyMatch';\nimport { OrderValidationIcon } from './OrderValidationIcon';\nimport { OrderQuantity } from './Order/OrderQuantity';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\nimport { CoveredCall, CustomStrategy, MarriedPut, Shares, Strategies } from '@tradingblock/api';\nimport { OrderSentiment } from './OrderSentiment';\n\nconst StrategyPicker: React.FC<{ strategies: TradingStrategyOrCustom[] }> = ({ strategies }) => {\n const blockId = useBlockId();\n const StrategyOptions = useMemo(() => strategies.map(s => s.info.Name.toString()), [strategies]);\n const isCustomOrUndefinedStrategy = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const strategy = useOrderStrategy();\n const blockSettings = useOrderSettings();\n const { defaultStrategy, defaultQuantityForOptionsAndStrategies, defaultQuantityForShares } = blockSettings;\n const isStrategyInvalid = useOrderData(s => OrderSelectors.isStrategyInvalid(s, blockId));\n const isOrderInvalid = useOrderData(s => s.validation && s.validation.valid === false);\n const match = useOrderData(s => s.validation && s.validation.match);\n const hasLegs = useOrderData(s => OrderSelectors.hasLegs(s, blockId));\n const isComplete = useOrderData(s => OrderSelectors.isComplete(s));\n const legs = useOrderData(OrderSelectors.legs);\n const blockState = useOrderData(s => s);\n\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const action = classifiedStrategy.action === 'BUY' ? OrderAction.Buy : OrderAction.Sell;\n const matchedStrategy = Strategies.find(s => s.info.Name === classifiedStrategy.name);\n const { setStrategy, setOrderAction } = useOrderActions();\n const isCustom = blockState.strategy === 'Custom';\n\n const switchStrategy = useCallback(\n (strat: { name: string; value: string }) => {\n // TODO: need to ensure that the order action and strategy are set correctly\n const matchStrat = strategies.find(s => s.info.Name === strat.name);\n\n if (matchStrat) {\n setStrategy(matchStrat, {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n });\n }\n },\n [setStrategy, strategies, action]\n );\n\n const selectedStrategy = useMemo(() => {\n if (strategy) {\n return (\n StrategyOptions.find(s => s === strategy.info.Name) ||\n StrategyOptions.find(s => s === defaultStrategy) ||\n CustomStrategy.info.Name\n );\n }\n return StrategyOptions.find(s => s === defaultStrategy) || CustomStrategy.info.Name;\n }, [StrategyOptions, strategy]);\n\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n const hideStrategyBuyAndQuantity = useMemo(\n () => (strategy && (isCustomStrategy(strategy) || isSingleLeggedStrategy) ? true : false),\n [strategy, isSingleLeggedStrategy]\n );\n\n const strategyIsCustom = useMemo(() => (strategy && isCustomStrategy(strategy) ? true : false), [\n strategy,\n isCustomStrategy,\n ]);\n\n const strategyHasSentiment = useMemo(() => strategy && !isCustomOrUndefinedStrategy, [\n strategy,\n isCustomOrUndefinedStrategy,\n ]);\n\n const bidirectional = useMemo(\n () => (strategy && !isCustomStrategy(strategy) ? strategy.profile.Bidirectional : true),\n [strategy]\n );\n\n const actionValue = useMemo(() => (action === OrderAction.Buy ? true : false), [action]);\n\n const setActionValue = useCallback(\n (isActive: boolean) => setOrderAction(isActive ? OrderAction.Buy : OrderAction.Sell),\n [setOrderAction]\n );\n\n const validationClass = useMemo(() => (isStrategyInvalid === true ? 'invalid' : ''), [isStrategyInvalid]);\n\n useEffect(() => {\n // If the strategy is undefined, set it to the default strategy\n if (!strategy) {\n setStrategy(\n { info: { Name: defaultStrategy } },\n {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n }\n );\n }\n // If a strategy is set, but it has no order legs, set it to a custom strategy\n if (strategy && !hasLegs) {\n setStrategy(\n { info: { Name: 'Custom' } },\n {\n action: action,\n reverseLegs: action === OrderAction.Sell && !isCustom ? true : false,\n isDirty: false,\n }\n );\n }\n }, [strategy]);\n\n const handleScrollSelect = (data: any): void => {\n setSelectedScrollPickItem(data);\n };\n\n const onBlur = (e: any) => {\n setWheelPickerHeight(40);\n setTimeout(() => setSelectedScrollPickItem(persist), 100);\n };\n\n const onFocus = (e: any) => {\n setWheelPickerHeight(200);\n setPersist(e.target.ariaLabel);\n };\n\n const [selectedScrollPickItem, setSelectedScrollPickItem] = useState(selectedStrategy);\n const [persist, setPersist] = useState(selectedScrollPickItem);\n const [wheelPickerHeight, setWheelPickerHeight] = useState(40);\n\n useEffect(() => {\n switchStrategy({ name: selectedScrollPickItem, value: selectedScrollPickItem });\n }, [selectedScrollPickItem, defaultQuantityForOptionsAndStrategies, defaultQuantityForShares]);\n\n return (\n
    \n {!hideStrategyBuyAndQuantity && (\n
    \n \n
    \n )}\n\n
    \n {!hideStrategyBuyAndQuantity && (\n //
    \n // \n //
    \n \n )}\n
    \n
    \n {/* TODO: Add back in the wheel picker when bugs are ironed out in TBFE-886 */}\n {/*
    onBlur(e)} onFocus={e => onFocus(e)}> */}\n \n {/* ({ id: s.info.Name, value: s.info.Name })) || []}\n backgroundColor={'#33425b'}\n shadowColor={'#33425b'}\n activeColor={'#02FFF6'}\n color={'#cad3e070'}\n height={wheelPickerHeight}\n width={180}\n itemHeight={1}\n /> */}\n {/*
    */}\n {/* \n {selectedStrategy.name}\n */}\n
    \n {isOrderInvalid === true && }\n {strategyHasSentiment && !isStrategyInvalid && !isOrderInvalid && isComplete && (\n
    \n \n
    \n )}\n {matchedStrategy && strategyIsCustom && !isOrderInvalid && isComplete && (\n
    \n {/* {matchHasSentiment && } */}\n \n
    \n )}\n
    \n );\n};\n\nexport const OrderStrategyPicker: React.FC<{ isSymbolIndex: boolean }> = ({ isSymbolIndex }) => {\n const strategies = useOrderData(o =>\n isSymbolIndex\n ? o.validStrategies.filter(\n s =>\n s.info.Name !== Shares.info.Name &&\n s.info.Name !== MarriedPut.info.Name &&\n s.info.Name !== CoveredCall.info.Name\n )\n : o.validStrategies\n );\n\n return <>{strategies.length > 0 && };\n};\n","import { useCallback } from 'react';\nimport { OrderLegDTO, AssetType, SaveOptions } from '@tradingblock/types';\nimport { getCustomStrategyLegQuantity } from '@tradingblock/api';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport {\n useBlockActions,\n useBlockData,\n useBlockActionDispatchAndGenericActions,\n} from '../../../components/blocks/BlockState';\nimport { DefaultLegs } from '../OrderUtilities';\nimport { OrderState } from './OrderState';\nimport { Actions, OrderActions } from './OrderActions';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { useOrderActions } from './useOrderActions';\n\nexport const useLegsUpdateAction = () => {\n const { setSubstate } = useBlockActions();\n const update = useCallback(\n (orderLeg: OrderLegDTO, options?: SaveOptions | undefined) => {\n setSubstate('legs', orderLeg.Id, orderLeg, options);\n },\n [setSubstate]\n );\n return { update };\n};\n\nexport const useLegsActions = () => {\n const symbol = useGroupAssetSymbol();\n const settings = useOrderSettings();\n const { legs, quantity } = useBlockData();\n const [{ updateData }, dispatch] = useBlockActionDispatchAndGenericActions();\n const { setDebitCredit, setQuantity } = useOrderActions();\n\n // const updatePartial = useCallback(\n // (legsToUpdate: PartialOrderLegDTO[], options?: SaveOptions | undefined) => {\n // const updated = _.reduce(\n // legs,\n // (updated, l, k) => {\n // const updatedLeg = _.find(legsToUpdate, incLeg => incLeg.Id === l.Id) || {};\n // return {\n // ...updated,\n // [k]: {\n // ...l,\n // ...updatedLeg,\n // },\n // };\n // },\n // {} as Legs\n // );\n // setField('legs', updated, options);\n // },\n // [setField, legs, symbol]\n // );\n const add = useCallback(\n (assetType: AssetType, options?: SaveOptions) => {\n const initialValues = {\n assetType,\n spreadRatio: getCustomStrategyLegQuantity(assetType, settings),\n };\n\n const updatedLegs = {\n ...legs,\n ...DefaultLegs(legs, symbol, initialValues),\n };\n\n // Define the quantity settings based on assetType\n const settingsQuantity =\n assetType === AssetType.Option\n ? settings.defaultQuantityForOptionsAndStrategies\n : settings.defaultQuantityForShares;\n\n const originalLegKeys = Object.keys(legs);\n const updatedLegKeys = Object.keys(updatedLegs);\n\n if (updatedLegKeys.length > 1) {\n updatedLegKeys.forEach(legId => {\n const leg = updatedLegs[legId];\n const isOriginalLeg = originalLegKeys.includes(legId);\n\n // Adjust SpreadRatio based on the number of original legs\n if (originalLegKeys.length === 1) {\n leg.SpreadRatio = isOriginalLeg ? quantity : settingsQuantity;\n } else {\n leg.SpreadRatio = leg.SpreadRatio || 1; // Default to 1 if not set\n }\n });\n }\n\n // Update data with new quantities and recalculated prices\n updateData(\n {\n quantity: originalLegKeys.length === 0 ? settingsQuantity : 1,\n legs: updatedLegs,\n recalculatePrice: true,\n },\n options\n );\n },\n [updateData, legs, symbol, settings]\n );\n\n const remove = useCallback(\n (id: string) => {\n const legKeys = Object.keys(legs);\n\n // Check if the number of legs is exactly two before removal\n if (legKeys.length === 2) {\n // Find the remaining leg that is not being removed\n const remainingLegKey = legKeys.find(key => key !== id);\n\n if (remainingLegKey) {\n // Ensure the key is not undefined\n const remainingLeg = legs[remainingLegKey];\n\n if (remainingLeg) {\n // Update the quantity to the spread ratio of the remaining leg or default to 1\n const newQuantity = remainingLeg.SpreadRatio || 1;\n setQuantity(newQuantity, { persist: true });\n\n // Update remaining leg's SpreadRatio to 1 and adjust Quantity\n updateData(\n {\n legs: {\n ...legs,\n [remainingLegKey]: {\n ...remainingLeg,\n SpreadRatio: 1,\n Quantity: newQuantity * quantity,\n },\n },\n recalculatePrice: true,\n },\n { persist: true }\n );\n }\n }\n }\n\n // Dispatch the action to remove the leg\n dispatch(Actions.removeLeg({ id }, { persist: true }));\n\n // Recalculate debit or credit after modification\n setDebitCredit();\n },\n [updateData, legs, dispatch, setDebitCredit, setQuantity, quantity]\n );\n\n return {\n add,\n remove,\n };\n};\n","import React, { useCallback } from 'react';\nimport { Dropdown, DropdownItem, IDropdownActions, AddIcon } from '@tradingblock/components';\nimport { AssetType } from '@tradingblock/types';\nimport { Shares } from '@tradingblock/api';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useLegsActions } from '../state/useLegsActions';\n\nexport const AddOrderLeg: React.FC<{ maxLegs: number; isSymbolIndex: boolean }> = ({ maxLegs, isSymbolIndex }) => {\n const { add } = useLegsActions();\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const canAddShares = useOrderData(o => o.validStrategies.some(s => s.info.Name === Shares.info.Name));\n const legIds = useOrderData(OrderSelectors.legIds);\n const maxReached = legIds.length >= maxLegs;\n const hasSharesLeg = useOrderData(OrderSelectors.hasSharesLeg);\n const onAdd = useCallback(\n (type: AssetType = AssetType.Option) => {\n if (maxReached) {\n console.error('maximum number of legs already reached');\n }\n add(type, { persist: true });\n },\n [add, maxReached]\n );\n const button = <>;\n\n return (\n <>\n {!hasSharesLeg && !isSymbolIndex && (\n }\n dropdownContent={(actions: IDropdownActions) => {\n const onItemClick = (at: AssetType) => () => {\n onAdd(at);\n actions.toggleDropdown();\n };\n return (\n <>\n {canAddShares && Add shares leg}\n Add option leg\n \n );\n }}\n />\n )}\n\n {(hasSharesLeg || isSymbolIndex) && (\n onAdd(AssetType.Option)}\n disabled={maxReached || !isCustomStrategyOrUndefined}\n type=\"button\"\n >\n \n \n )}\n \n );\n};\n","import React, { useCallback } from 'react';\nimport { AssetType } from '@tradingblock/types';\nimport { Shares, getCustomStrategyLegQuantity } from '@tradingblock/api';\nimport { useOrderData } from '../state/OrderState';\nimport { useLegsActions } from '../state/useLegsActions';\n\nexport const AddOrderLegContent: React.FC<{ isSymbolIndex: boolean }> = ({ isSymbolIndex }) => {\n const { add } = useLegsActions();\n const canAddShares = useOrderData(o => o.validStrategies.some(s => s.info.Name === Shares.info.Name));\n\n const onAddEquityLeg = useCallback(() => {\n add(AssetType.Equity, { persist: true });\n }, [add]);\n const onAddOptionLeg = useCallback(() => {\n add(AssetType.Option, { persist: true });\n }, [add]);\n\n return (\n
    \n
    Build your own
    \n \n {canAddShares && !isSymbolIndex && (\n \n )}\n
    \n );\n};\n","import React, { useMemo } from 'react';\nimport { useOrderSymbolOrUndefined } from '../state/useOrderState';\nimport { useOrderData } from '../state/OrderState';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { useOrderActions } from '../state/useOrderActions';\n\nexport const ClearOrder = () => {\n const symbol = useOrderSymbolOrUndefined();\n const { clearOrder } = useOrderActions();\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const showClearAll = useMemo(() => isCustomStrategyOrUndefined && symbol !== undefined, [\n isCustomStrategyOrUndefined,\n symbol,\n ]);\n\n return (\n
    \n {showClearAll && (\n \n )}\n
    \n );\n};\n","import React, { useEffect } from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderData, OrderState, useOrderBlockData, OrderQuote } from '../state/OrderState';\nimport { OrderSymbolList, OrderSymbolListValues } from '../state/OrderLegSelector';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderActions, Actions } from '../state/OrderActions';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\nimport { useQuoteBidAskMetadata } from '../../../hooks/useFeedQuote';\nimport { useBlockActions, useBlockActionDispatch, useBlockId } from '../../../components/blocks/BlockState';\nimport { OrderType } from '@tradingblock/types';\n\nconst useQuoteSync = () => {\n const blockId = useBlockId();\n const orderSymbols = useOrderData(s => OrderSymbolListValues(s, blockId));\n const quotes: OrderQuote[] = useQuoteBidAskMetadata();\n const dispatch = useBlockActionDispatch();\n\n useEffect(() => {\n dispatch(Actions.updateQuote(quotes));\n }, [quotes, orderSymbols]);\n};\n\nexport const PriceAndQuoteSync = () => {\n const price = useOrderData(s => s.price);\n const orderType = useOrderData(s => s.orderType);\n const recalculate = useOrderData(s => s.recalculatePrice);\n const legInfo = useOrderBlockData(OrderSymbolListValues);\n useQuoteSync();\n const { setPrice } = useOrderActions();\n const { mid, includesAllSymbols } = useOrderPrice();\n const { complete } = useOrderStatus();\n const { setField } = useBlockActions();\n\n useEffect(() => {\n const shouldRecalc = price === undefined || recalculate === true;\n\n if (shouldRecalc && !_.isNil(mid) && complete && includesAllSymbols) {\n if (orderType === OrderType.Stop_Limit) {\n setPrice(undefined, false);\n }\n }\n }, [recalculate, mid, includesAllSymbols, price, complete, setPrice, legInfo]);\n useWhyDidYouUpdate('PriceSync', { mid, price, complete, setField });\n return <>;\n};\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { OrderType } from '@tradingblock/types';\nimport { BasicSelect, DropdownItemType, OptionType, SplitDropdownProps } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useBlockActions } from '../../../components/blocks/BlockState';\nimport { useOrderActions } from '../state/useOrderActions';\n\nconst orderTypePlaceholderDisplay = {\n [OrderType.Market]: 'MKT',\n [OrderType.Limit]: 'LMT',\n [OrderType.Stop_Market]: 'STP MKT',\n [OrderType.Stop_Limit]: 'STP LMT',\n [OrderType.Market_On_Close]: 'MKT ON CLS',\n};\n\nconst orderTypePickerOptions = [\n {\n label: 'Market',\n value: OrderType.Market,\n data: OrderType.Market,\n },\n {\n label: 'Limit',\n value: OrderType.Limit,\n data: OrderType.Limit,\n },\n {\n label: 'Stop Market',\n value: OrderType.Stop_Market,\n data: OrderType.Stop_Market,\n },\n {\n label: 'Stop Limit',\n value: OrderType.Stop_Limit,\n data: OrderType.Stop_Limit,\n },\n {\n label: 'Market on Close',\n value: OrderType.Market_On_Close,\n data: OrderType.Market_On_Close,\n },\n];\n\nexport const OrderTypePicker: React.FC, 'className'>> = ({ className }) => {\n const [allowedOrderTypePickerOptions, setAllowedOrderTypePickerOptions] = useState(orderTypePickerOptions);\n const orderType = useOrderData((s: OrderState) => s.orderType, OrderType.Limit);\n const legs = useOrderData((s: OrderState) => s.legs);\n const { setField: set } = useBlockActions();\n const { setStopPrice, setPrice } = useOrderActions();\n\n const setValue = useCallback(\n ({ data }: OptionType) => {\n set('orderType', data, { persist: true });\n if (data === OrderType.Stop_Limit || data === OrderType.Stop_Market) {\n setPrice(undefined, false);\n setStopPrice(undefined);\n }\n },\n [set, setPrice]\n );\n\n useEffect(() => {\n // If we change our strategy from a single leg one, remove unsupported order types\n if (Object.values(legs).length > 1) {\n if (\n orderType === OrderType.Stop_Limit ||\n orderType === OrderType.Stop_Market ||\n orderType === OrderType.Market_On_Close\n ) {\n set('orderType', OrderType.Limit, { persist: true });\n setStopPrice(undefined);\n }\n setAllowedOrderTypePickerOptions(\n orderTypePickerOptions.filter(\n ({ data: option }) =>\n option !== OrderType.Stop_Limit && option !== OrderType.Stop_Market && option !== OrderType.Market_On_Close\n )\n );\n } else {\n setAllowedOrderTypePickerOptions(orderTypePickerOptions);\n }\n }, [legs]);\n\n return (\n \n );\n};\n","import React, { useEffect, useMemo } from 'react';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport PriceComponent from './PriceComponent';\nimport { DebitOrCredit, OrderAction } from '@tradingblock/types';\nimport _ from 'lodash';\nimport { useCallback } from 'react';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\nimport { determineIsBuy } from '../OrderUtilities';\n\nexport const OrderPrice: React.FC<{}> = () => {\n const { setPrice, setDebitCredit } = useOrderActions();\n const [areOptionLegsSet, setAreOptionLegsSet] = React.useState(false);\n const [isNegativePrice, setIsNegativePrice] = React.useState(false);\n // allow negative prices if the strategy is custom or calendar spreads\n const legs = useOrderData(OrderSelectors.legs);\n const orderAction = useOrderData(s => s.action);\n const debitCredit = useOrderData(s => s.debitCredit);\n const isDebit = debitCredit === DebitOrCredit.Debit;\n const match = useOrderData(s => s.validation && s.validation.match);\n const isCustomOrder = match === undefined ? true : false;\n const isCustomStrategyOrCalendar = useMemo(\n () => (match ? match.info.Name === 'Call Calendar' || match.info.Name === 'Put Calendar' || isCustomOrder : true),\n [match]\n );\n const price = useOrderData((s: OrderState) => {\n return s.price !== undefined ? (isCustomStrategyOrCalendar ? s.price : s.price) : undefined;\n });\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const isStrategyMatch = classifiedStrategy.name !== 'Custom';\n const isCustomWithoutClassifiedStrategy = isCustomOrder && !isStrategyMatch;\n const isClassifiedAsCalendar = _.includes(classifiedStrategy.name, 'Calendar');\n\n const isBuy = determineIsBuy(\n isCustomOrder,\n orderAction,\n isClassifiedAsCalendar,\n isStrategyMatch,\n classifiedStrategy,\n isCustomWithoutClassifiedStrategy,\n debitCredit,\n legs,\n price\n );\n\n useEffect(() => {\n setIsNegativePrice((isBuy && !isDebit) || (!isBuy && isDebit));\n }, [isBuy, isDebit]);\n\n const onChange = useCallback(\n (value: number | null) => {\n setPrice(\n value === null ? undefined : !isCustomStrategyOrCalendar && value < 0 ? 0 : value,\n false,\n isCustomStrategyOrCalendar ? isNegativePrice : false\n );\n },\n [isStrategyMatch, isNegativePrice, isCustomStrategyOrCalendar]\n );\n\n const optionLegs = Object.values(legs).filter(leg => leg.OptionType);\n\n // check if the order contains any option legs, and if so check to see if a strike and expiration have been set for all option legs\n const checkOptionLegs = () => {\n if (legs) {\n if (optionLegs.length > 0) {\n const strikes = optionLegs.filter(leg => leg.Strike !== undefined);\n const expirations = optionLegs.filter(leg => leg.Expiration !== undefined);\n if (strikes.length === optionLegs.length && expirations.length === optionLegs.length) {\n setAreOptionLegsSet(true);\n } else {\n setAreOptionLegsSet(false);\n }\n }\n }\n };\n\n useEffect(() => {\n checkOptionLegs();\n }, [optionLegs]);\n\n return (\n 0 && !areOptionLegsSet}\n />\n );\n};\n","import React, { useEffect, useMemo } from 'react';\nimport round from 'lodash/round';\nimport { AssetType, DebitOrCredit, OrderAction, OrderType } from '@tradingblock/types';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderState } from '../state/useOrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderPrice } from '../hooks/useOrderPrice';\nimport { MarkerLabel } from '../OrderContent';\nimport Slider from 'rc-slider';\nimport { useBlockActionDispatchAndGenericActions } from '../../../components/blocks/BlockState';\nimport { OrderActions } from '../state/OrderActions';\nimport _ from 'lodash';\nimport { orderLegsToClassifiedStrategy } from '../../../data/global/utilities/strategyClassification';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { determineIsBuy } from '../OrderUtilities';\n\nexport const PriceSlider: React.FC = () => {\n const { bid, mid, ask } = useOrderPrice();\n const { setPrice, setStopPrice, setAction } = useOrderActions();\n const orderType = useOrderState('orderType');\n const orderAction = useOrderState('action');\n const isCustomOrder = useOrderData((s: OrderState) => s.strategy === 'Custom');\n const legs = useOrderData(OrderSelectors.legs);\n const isValid = useOrderData(s => s.validation && s.validation.valid);\n const classifiedStrategy = orderLegsToClassifiedStrategy(legs);\n const isStrategyMatch = classifiedStrategy.name !== 'Custom';\n const debitCredit = useOrderData(s => s.debitCredit);\n const price = useOrderData((s: OrderState) => s.price, undefined);\n\n const isCustomWithoutClassifiedStrategy = isCustomOrder && !isStrategyMatch;\n const isClassifiedAsCalendar = _.includes(classifiedStrategy.name, 'Calendar');\n\n const isBuy = determineIsBuy(\n isCustomOrder,\n orderAction,\n isClassifiedAsCalendar,\n isStrategyMatch,\n classifiedStrategy,\n isCustomWithoutClassifiedStrategy,\n debitCredit,\n legs,\n price\n );\n\n const { complete } = useOrderStatus();\n const isMarketOrder = orderType === OrderType.Market;\n const num_legs = legs ? Object.values(legs).length : 1;\n\n const formatCurrency = (num: number) => {\n let decimalPlaces = 2; // default value\n\n // split the number into its integer and decimal parts\n const parts = num.toString().split('.');\n\n // check if the number has a decimal part and if it has more than 2 decimal places\n if (parts.length > 1 && parts[1].length > 2) {\n decimalPlaces = 3;\n }\n\n return '$' + num.toFixed(decimalPlaces).replace(/\\d(?=(\\d{3})+\\.)/g, '$&,');\n };\n\n const setPriceFromSlider = (value: number | number[]) => {\n if (typeof value === 'number' && complete !== false && orderType !== OrderType.Market) {\n // Account for reversed slider state\n const adjustedValue = isBuy ? value : 100 - value;\n\n let bottom = bid > 0 ? bid - bid / 25 : bid + bid / 25;\n let top = ask > 0 ? ask + ask / 25 : ask - ask / 25;\n let updatedPrice = parseFloat(((adjustedValue / 100) * (top - bottom) + bottom).toFixed(2));\n\n if (adjustedValue === 25) {\n updatedPrice = bid;\n } else if (adjustedValue === 50) {\n updatedPrice = mid;\n } else if (adjustedValue === 75) {\n updatedPrice = ask;\n }\n\n let priceParts = updatedPrice.toString().split('.');\n\n if (priceParts.length > 1 && priceParts[1].length > 2) {\n updatedPrice = parseFloat(updatedPrice.toFixed(2));\n }\n if (orderType === OrderType.Stop_Market) {\n setPrice(updatedPrice, true, updatedPrice < 0);\n setStopPrice(updatedPrice);\n } else {\n setPrice(updatedPrice, true, updatedPrice < 0);\n }\n }\n };\n\n const priceSliderValue = useMemo(() => {\n if (price === undefined || isMarketOrder) {\n return 0;\n }\n\n if (price === bid) {\n return isBuy ? 25 : 75;\n } else if (price === mid) {\n return 50;\n } else if (price === ask) {\n return isBuy ? 75 : 25;\n }\n\n const midDiff = round((ask - bid) / 2, 2);\n const percentage = (ask + midDiff - (bid - midDiff)) / 100;\n const sizeDiff = (price - (bid - midDiff)) / percentage;\n let res = sizeDiff;\n if (price > midDiff + ask) {\n res = 100;\n } else if (price < bid - midDiff) {\n res = 0;\n } else {\n res = sizeDiff;\n }\n\n return isBuy ? Math.abs(res) : 100 - Math.abs(res);\n }, [bid, mid, ask, price, isBuy]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n return (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Bid'}\n value={\n complete === false ? '-' : bid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n [50]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Mid'}\n value={\n complete === false ? '-' : mid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n [75]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Ask'}\n value={\n complete === false ? '-' : ask.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n />\n ),\n style: {},\n },\n }\n : {\n [25]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Ask'}\n value={\n complete === false ? '-' : ask.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n [50]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Mid'}\n value={\n complete === false ? '-' : mid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n [75]: {\n label: (\n 1 ? '-3.2rem' : '-2.2rem',\n }}\n title={(num_legs > 1 ? 'Impl. ' : '') + 'Bid'}\n value={\n complete === false ? '-' : bid.toLocaleString(undefined, { currency: 'USD', style: 'currency' })\n }\n isReversed={true}\n />\n ),\n style: {},\n },\n }\n }\n />\n );\n};\n","import React, { useCallback } from 'react';\nimport { Durations } from '@tradingblock/types';\nimport { ToggleButton } from '@tradingblock/components';\nimport { useBlockActions } from '../../../components/blocks/BlockState';\nimport { useOrderData, OrderState } from '../state/OrderState';\n\n// interface OrderDuration extends DropdownItemType {\n// duration: Durations;\n// }\n// const toItemType = (d: Durations) => ({\n// name: Durations[d],\n// value: Durations[d],\n// duration: d,\n// });\n// const durations: OrderDuration[] = [Durations.Day, Durations.GTC, Durations.Manual].map(toItemType);\n\n// export const DurationPicker: React.FunctionComponent<{}> = ({}) => {\n// const duration = useOrderData((s: OrderState) => s.duration, Durations.Day);\n\n// const { setField: set } = useBlockActions();\n// const setDuration = useCallback(\n// (dur: DropdownItemType) => {\n// const durVal = durations.find(d => d.name === dur.name);\n// if (durVal) {\n// set('duration', durVal.duration, { persist: true });\n// }\n// },\n// [set]\n// );\n\n// return (\n// \n// {Durations[duration]}\n// \n// );\n// };\n\nexport const DurationPicker: React.FC<{}> = () => {\n const duration = useOrderData((s: OrderState) => s.duration, Durations.Day);\n\n const { setField: set } = useBlockActions();\n\n const setValue = useCallback(\n (isActive: boolean) => {\n set('duration', isActive ? Durations.Day : Durations.GTC, { persist: true });\n },\n [set]\n );\n\n return (\n \n );\n};\n","import React from 'react';\nimport { useOrderData, OrderState } from '../state/OrderState';\nimport { useOrderActions } from '../state/useOrderActions';\nimport PriceComponent from './PriceComponent';\n\nexport const StopOrderPrice: React.FC<{}> = () => {\n const { setStopPrice } = useOrderActions();\n const price = useOrderData((s: OrderState) => s.stopPrice ? s.stopPrice : undefined);\n const onChange = (value: number | null) => {\n setStopPrice(value === null ? undefined : value < 0 ? 0 : Math.abs(value));\n };\n \n return ;\n};\n","import React, { useEffect } from 'react';\nimport { OrderType } from '@tradingblock/types';\nimport { useOrderData } from '../../state/OrderState';\nimport { OrderTypePicker } from '../OrderTypePicker';\nimport { OrderPrice } from '../OrderPrice';\nimport { DebitCreditToggle } from '../DebitCreditToggle';\nimport { PriceSlider } from '../PriceSlider';\nimport { DurationPicker } from '../DurationPicker';\nimport { StopOrderPrice } from '../StopOrderPrice';\n\nexport const OrderContentSettings: React.FC<{}> = () => {\n const orderType = useOrderData(s => s.orderType);\n\n return (\n
    \n
    \n
    \n
    \n {orderType === OrderType.Stop_Limit && }\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n {orderType === OrderType.Stop_Market && }\n {!(orderType === OrderType.Stop_Market || orderType === OrderType.Stop_Limit || orderType === OrderType.Market || orderType === OrderType.Market_On_Close) && }\n {orderType === OrderType.Stop_Limit && }\n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n};\n","import React, { FC, useCallback } from 'react';\nimport { TradingStrategyName, OrderAction, TradingStrategyNameOrCustom } from '@tradingblock/types';\nimport { getKnownStrategy } from '@tradingblock/api';\nimport { Svg } from '@tradingblock/components';\nimport { useOrderActions } from '../../blocks/Order/state/useOrderActions';\n\nexport const StrategyButton: FC<{ strategy: TradingStrategyName | TradingStrategyNameOrCustom }> = props => {\n const stratName = props.strategy;\n const strategy = getKnownStrategy(stratName as TradingStrategyName);\n const { setStrategy } = useOrderActions();\n const onClick = useCallback(() => setStrategy(strategy, { action: OrderAction.Buy, reverseLegs: false, isDirty: false }), [strategy]);\n\n return \n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { IndexStrategies, Strategies } from '@tradingblock/api';\nimport { StrategyButton } from '../../../components/blocks/StrategyButton';\n\ninterface StrategyProps {\n isIndex: boolean;\n}\n\nexport const StrategyTemplateButtons: React.FC = ({ isIndex }) => {\n if (isIndex) {\n return (\n
      \n {_.map(IndexStrategies, s => (\n
    • \n \n
    • \n ))}\n
    \n );\n }\n\n return (\n
      \n {_.map(Strategies, s => (\n
    • \n \n
    • \n ))}\n
    \n );\n};\n","import React, { useState, useCallback, FC } from 'react';\nexport const BlockPropTitle: FC<{ short: string; full: string }> = ({ short, full }) => {\n return (\n \n \n {short}\n \n {full}\n \n );\n};\n","import _ from 'lodash';\nimport {\n isCustomStrategy,\n StrikeRules,\n OptionType,\n ExpirationRules,\n OrderAction,\n Expiration,\n} from '@tradingblock/types';\nimport { OrderSelectors, LegExpirationInfo } from './../state/OrderSelector';\nimport { useOrderData, useOrderStrategy } from '../state/OrderState';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { DataState } from '../../../data/global/state';\nimport { StrikeSelectors, ExpirationSelectors } from '../../../data/global/selectors/expirationStrikeSelector';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { toArray } from '../../../utilities/data';\nimport { useGroupState } from '../../useGroupState';\n\nconst strikesWithValidity = (strikes: number[], isValid?: (strike: number) => boolean) => {\n return _.map(strikes, (s: number) => {\n return {\n value: s,\n isValid: isValid ? isValid(s) : true,\n };\n });\n};\n\nexport const useFilteredStrikes = (legId: string, expiration?: Expiration) => {\n const [symbol] = useGroupState('symbol');\n const strategy = useOrderStrategy();\n const blockId = useBlockId();\n const currentLegStrike = useOrderData(s => OrderSelectors.legStrikeById(s, blockId, legId));\n const legsWithStrike = useOrderData(s => OrderSelectors.orderedLegsWithStrike(s, blockId));\n const firstLegWithStrike = _.first(legsWithStrike);\n const firstStrike = firstLegWithStrike ? firstLegWithStrike.Strike : undefined;\n\n const strategyLegCount = strategy && !isCustomStrategy(strategy) ? strategy.info.LegsAmount : 0;\n const strikes = useStateSelector((state: DataState) =>\n expiration && symbol ? StrikeSelectors.strikes(state, { symbol: symbol.symbol, expiration: expiration }) || [] : []\n );\n const strikeRules = strategy && !isCustomStrategy(strategy) ? toArray(strategy.profile.Rules.Strike) : [];\n const shoudlValidate = currentLegStrike === undefined || !strikeRules.includes(StrikeRules.SameStrikes);\n\n if (!strategy || isCustomStrategy(strategy)) {\n return strikesWithValidity(strikes);\n } else if (strikeRules.includes(StrikeRules.Any)) {\n return strikesWithValidity(strikes);\n } else if (shoudlValidate && strategyLegCount === 2 && firstLegWithStrike && _.isNumber(firstStrike)) {\n const otherLeg = _.find(legsWithStrike, l => l.LegId !== legId);\n const otherStrike = otherLeg ? otherLeg.Strike : undefined;\n if (otherLeg === undefined || otherStrike === undefined) {\n return strikesWithValidity(strikes);\n }\n const otherLegHasLowerIndex = otherLeg.Index === 0;\n // should always allow all strikes bc we default values when one strike changes\n if (strikeRules.includes(StrikeRules.SameStrikes)) {\n return strikesWithValidity(strikes);\n } else if (strikeRules.includes(StrikeRules.DifferentStrikes)) {\n return strikesWithValidity(strikes, s => s !== otherStrike);\n } else if (strikeRules.includes(StrikeRules.CallHigherThanPut)) {\n return strikesWithValidity(strikes, s =>\n otherLeg.OptionType === OptionType.Call ? s < otherStrike : s > otherStrike\n );\n } else if (strikeRules.includes(StrikeRules.DecreasingOrder)) {\n return strikesWithValidity(strikes, s => (otherLegHasLowerIndex ? s < otherStrike : s > otherStrike));\n } else if (strikeRules.includes(StrikeRules.IncreasingOrder)) {\n return strikesWithValidity(strikes, s => (otherLegHasLowerIndex ? s > otherStrike : s < otherStrike));\n }\n }\n\n return strikesWithValidity(strikes);\n};\n\nexport const useFilteredExpirations = (legId: string) => {\n const [symbol] = useGroupState('symbol');\n const strategy = useOrderStrategy();\n const blockId = useBlockId();\n const legsWithExpiration = useOrderData(s => OrderSelectors.orderedLegsWithExpiration(s, blockId));\n const firstLegWithExpiration = useOrderData(s => OrderSelectors.firstLegWithExpiration(s, blockId));\n const currentLegAction = useOrderData(s => OrderSelectors.legActionById(s, blockId, legId));\n const firstExp = firstLegWithExpiration ? firstLegWithExpiration.Expiration : undefined;\n\n const expirations = useStateSelector(\n state => (symbol ? ExpirationSelectors.expirations(state, symbol.symbol) : []) || []\n );\n\n const otherLegs = _.reduce(\n legsWithExpiration,\n (acc: LegExpirationInfo[], l) => {\n if (l.LegId === legId) {\n return acc;\n }\n return [...acc, l];\n },\n []\n );\n\n if (strategy && !isCustomStrategy(strategy) && firstLegWithExpiration && _.isDate(firstExp)) {\n const expirationRule = strategy.profile.Rules.Expiration;\n if (expirationRule === ExpirationRules.DifferentExpiries) {\n return _.filter(expirations, e => !otherLegs.map(e => e.Expiration.date.valueOf()).includes(e.date.valueOf()));\n } else if (expirationRule === ExpirationRules.BuyWithLaterSellWithSooner) {\n //const firstLegIsBuy = firstLegWithExpiration.Action === OrderAction.Buy;\n const currLegIsBuy = currentLegAction && currentLegAction === OrderAction.Buy ? true : false;\n const { sellExpirations, buyExpirations } = _.reduce(\n otherLegs,\n (acc, l) => {\n const keyVal = l.Action === OrderAction.Buy ? 'buyExpirations' : 'sellExpirations';\n return {\n ...acc,\n [keyVal]: [...acc[keyVal], l.Expiration],\n };\n },\n { sellExpirations: [] as Date[], buyExpirations: [] as Date[] }\n );\n const maxSell = _(sellExpirations)\n .map(e => e.valueOf())\n .max();\n const minBuy = _(buyExpirations)\n .map(e => e.valueOf())\n .min();\n return _(expirations)\n .filter(e => {\n if (currLegIsBuy) {\n return maxSell ? e.date.valueOf() > maxSell : true;\n } else {\n return minBuy ? e.date.valueOf() < minBuy : true;\n }\n })\n\n .value();\n }\n }\n return _.orderBy(expirations, v => v.date.valueOf());\n};\n","import React from 'react';\n\nexport const LoadingDropdownButton: React.FunctionComponent<{ message?: string }> = ({ message }) => {\n return (\n <>\n \n \n );\n};\n","import React, { useMemo, useCallback, useEffect } from 'react';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { Expiration, AssetSymbol } from '@tradingblock/types';\nimport { AsyncAutocomplete, OptionType, ReactSelectComponents } from '@tradingblock/components';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useFilteredExpirations } from '../../hooks/useStrikesFilteredForStrategy';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { ExpirationSelectors } from '../../../../data/global/selectors/expirationStrikeSelector';\nimport { LoadingDropdownButton } from '../../../../components/basic/Loading';\nimport { useBlockActionDispatchAndGenericActions, useBlockId } from '../../../../components/blocks/BlockState';\nimport { expirationDisplayInfo } from '../../../../utilities/data';\nimport { expirationValue } from '../../../../utilities/date';\nimport { blockSettings } from '../../../../data/global/selectors/settingSelectors';\nimport { getType } from 'typesafe-actions';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\ntype ExpirationOption = OptionType;\n\nconst ExpirationToOption = (ex: Expiration, symbol: AssetSymbol) => {\n const d = dayjs(ex.date);\n const expDisplayInfo = expirationDisplayInfo(ex, symbol);\n const stringValue = `${d.format('MM.D.YY')} ${expDisplayInfo.label}`;\n const sym: ExpirationOption = {\n label: stringValue,\n value: stringValue,\n data: { ...ex, class: expDisplayInfo.class },\n searchValue: `${d.format('MM.D.YY')} ${d.format('YYYY MMMM dddd')} ${expDisplayInfo.label}`,\n };\n return sym;\n};\n\nexport interface OrderLegExpirationProps {\n legId: string;\n symbol: AssetSymbol;\n expiration?: Expiration;\n setExpiration: (val: Expiration) => void;\n setNoExpirations?: (val: boolean) => any;\n}\n\ntype OptionComponentType = { data: ExpirationOption } & any;\nexport const OptionComponent = ({ data, ...rest }: OptionComponentType) => {\n const className = `${_.get(rest, 'className', '')} ${data.data.class}`;\n return ;\n};\n\nexport const OrderLegExpiration: React.FC = ({\n legId,\n symbol,\n expiration,\n setExpiration,\n setNoExpirations,\n}) => {\n // const expirations = useStateSelector(state => ExpirationSelectors.expirations(state, symbol));\n const blockId = useBlockId();\n const { mid } = useOrderPrice();\n const expirations = useFilteredExpirations(legId);\n const isFetching = useStateSelector(state => ExpirationSelectors.isFetching(state, symbol.symbol));\n const expirationsAreInvalid = useOrderData(s => OrderSelectors.fieldIsInvalid(s, blockId, 'Expiration'));\n //@ts-ignore @param blockId\n const settings = useStateSelector(s => blockSettings.order(s, blockId));\n const { weeklyExpirations, monthlyExpirations, quarterlyExpirations, yearlyExpirations } = settings;\n const expirationOptionTypes = useMemo(() => {\n const expirationOptTypes = (expirations || []).map(e => ExpirationToOption(e, symbol));\n return expirationOptTypes;\n }, [expirations, symbol]);\n\n const filteredExpirationOptionTypes = useMemo(() => {\n const filtered = expirationOptionTypes.filter(eo => {\n const expirationFreqCode = eo.data.ExpirationFreqCode;\n\n const isWeekly =\n expirationFreqCode === 'W' ||\n expirationFreqCode === 'MW' ||\n expirationFreqCode === 'WW' ||\n (expirationFreqCode && expirationFreqCode.includes('Week')) ||\n (expirationFreqCode && expirationFreqCode.includes('W'));\n\n const isMonthly =\n expirationFreqCode === 'M' ||\n expirationFreqCode === 'MM' ||\n expirationFreqCode === 'Monthly' ||\n expirationFreqCode === 'VX' ||\n expirationFreqCode === 'ME';\n const isQuarterly = expirationFreqCode === 'QuarterlyEOM';\n const isYearly = expirationFreqCode === 'Yearly';\n\n return (\n (isWeekly && weeklyExpirations) ||\n (isMonthly && monthlyExpirations) ||\n (isQuarterly && quarterlyExpirations) ||\n (isYearly && yearlyExpirations)\n );\n });\n return filtered;\n }, [expirationOptionTypes]);\n\n const currValue = useMemo(() => {\n const curr = expiration\n ? filteredExpirationOptionTypes.find(eo => {\n return expiration && expiration.date && expirationValue(eo.data) === expirationValue(expiration);\n })\n : undefined;\n return curr;\n }, [filteredExpirationOptionTypes, expiration]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const onSelectExpiration = useCallback(\n (val: OptionType) => {\n const match = filteredExpirationOptionTypes.find(eo => expirationValue(eo.data) === expirationValue(val.data));\n if (val && match) {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n setExpiration(val.data);\n } else {\n console.warn('couldnt find matching expiration', val);\n }\n },\n [setExpiration, filteredExpirationOptionTypes]\n );\n\n const searchExpirations = useCallback(\n async (_: string) => {\n return Promise.resolve(filteredExpirationOptionTypes);\n },\n [filteredExpirationOptionTypes]\n );\n\n // if filteredExpirationOptionTypes is empty, then we need to set the expiration to undefined\n useEffect(() => {\n if (setNoExpirations) {\n setNoExpirations(filteredExpirationOptionTypes.length === 0);\n }\n }, [filteredExpirationOptionTypes, setNoExpirations]);\n\n return (\n <>\n {isFetching !== false && }\n {isFetching === false && (\n
    \n \n
    \n )}\n \n );\n};\n","import React, { useMemo, useCallback } from 'react';\nimport _ from 'lodash';\nimport { Expiration } from '@tradingblock/types';\nimport { OptionType, AsyncAutocomplete } from '@tradingblock/components';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { OrderSelectors } from './../../state/OrderSelector';\nimport { DataState } from '../../../../data/global/state';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { StrikeSelectors } from '../../../../data/global/selectors/expirationStrikeSelector';\nimport { useFilteredStrikes } from '../../hooks/useStrikesFilteredForStrategy';\nimport { LoadingDropdownButton } from '../../../../components/basic/Loading';\nimport { useBlockActionDispatchAndGenericActions, useBlockMetadata } from '../../../../components/blocks/BlockState';\nimport { useLastPrice } from '../useLastPrice';\nimport { getType } from 'typesafe-actions';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\ninterface OrderLegStrikesProps {\n legId: string;\n symbol: string;\n expiration: Expiration;\n strike?: number;\n defaultStrike?: number;\n setStrike: (val: number) => void;\n}\n\nconst StrikeToOption = (strike: { value: number; isValid: boolean }) => {\n const sym: OptionType = {\n label: strike.value.toString(),\n value: strike.value.toString(),\n data: strike.value,\n searchValue: strike.value.toString(),\n };\n\n const numberSizeTrigger = 6;\n const requiredPrecision = 2;\n\n // edge case fix for when strikes have a large precision. scales with sigfigs. 1, 1000, 10000.\n if (sym.label.length > numberSizeTrigger) {\n // split by decimal grab the suffix and fix the preicision ~.00\n const deimcalSuffix = sym.label.split('.')[1].slice(0, requiredPrecision);\n // assign new property value to object prop. concat decimal then concat formatted suffix\n sym.label = sym.label\n .split('.')[0]\n .concat('.')\n .concat(deimcalSuffix);\n return sym;\n }\n return sym;\n};\n\nconst useDefaultStrikeValue = (symbol: string, strikes: OptionType[]) => {\n const currentPrice = useLastPrice(symbol);\n if (currentPrice === undefined) {\n return undefined;\n }\n return _(strikes)\n .orderBy(s => Math.abs(currentPrice.LastTradePrice - s.data))\n .first();\n};\n\nexport const OrderLegStrikes: React.FC = ({ legId, symbol, expiration, strike, setStrike }) => {\n // const { strikes, isFetching } = useOrderData(s => OrderSelectors.strikesByExpiration(s, expiration));\n const { blockId } = useBlockMetadata();\n const { mid } = useOrderPrice();\n const strikesAreInvalid = useOrderData(s => OrderSelectors.fieldIsInvalid(s, blockId, 'Strike'));\n //const strikes = useStateSelector((state: DataState) => (expiration ? StrikeSelectors.strikes(state, { symbol, expiration: expiration }) || [] : []));\n const strikes = useFilteredStrikes(legId, expiration);\n const isStrikesFetching = useStateSelector((state: DataState) =>\n expiration ? StrikeSelectors.isFetching(state, { symbol, expiration }) : undefined\n );\n // useEffect(() => {\n // if (!isStrikesFetching && _.isNumber(defaultStrike) && strike === undefined) {\n // setStrike(defaultStrike);\n // }\n // }, [strike, isStrikesFetching, setStrike, defaultStrike]);\n\n const strikeOptions = useMemo(() => _.filter(strikes, s => s.isValid).map(StrikeToOption), [strikes, strike]);\n // const strikeOptions = useMemo(() => _.map(strikes, StrikeToOption), [strikes]);\n const currValue = useMemo(() => (strike ? strikeOptions.find(strikeOpt => strikeOpt.data === strike) : undefined), [\n strikeOptions,\n strike,\n ]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const setValue = useCallback(\n (val: OptionType) => {\n const match = strikeOptions.find(s => s.data === val.data);\n if (match) {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } });\n setStrike(match.data);\n }\n },\n [setStrike, strikeOptions]\n );\n\n const search = useCallback(\n async (value: string) => {\n return Promise.resolve(strikeOptions);\n },\n [strikeOptions]\n );\n const defaultValue = useDefaultStrikeValue(symbol, strikeOptions);\n\n return (\n <>\n {isStrikesFetching !== false && }\n {/* {isStrikesFetching === false && (\n \n {!currValue && strike}\n {currValue && {currValue.value}}\n \n )} */}\n {isStrikesFetching === false && (\n
    \n \n
    \n )}\n \n );\n};\n","import { useLastTradepriceOrUndefined } from '../../../hooks/useFeedQuote';\n\nexport const useLastPrice = (symbol: string) => {\n return useLastTradepriceOrUndefined(symbol);\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { DropdownItemType, ToggleButton } from '@tradingblock/components';\nimport { PositionEffect, OrderAction } from '@tradingblock/types';\nimport { OrderState, useOrderData } from '../../state/OrderState';\nimport { LegSelector } from '../../state/OrderLegSelector';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useBlockActionDispatchAndGenericActions, useBlockData } from '../../../../components/blocks/BlockState';\nimport { Actions, OrderActions } from '../../state/OrderActions';\nimport { getType } from 'typesafe-actions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\nexport interface LegAction extends DropdownItemType {\n type: PositionEffect;\n orderType: OrderAction;\n}\n// const legActions: LegAction[] = [{ name: 'buyopen', value: 'buy', type: PositionEffect.Open, label: 'Buy to open', orderType: OrderAction.Buy }, { name: 'buyclose', value: 'buy', type: PositionEffect.Close, label: 'Buy to close', orderType: OrderAction.Buy }, { name: 'sellopen', value: 'sell', type: PositionEffect.Open, label: 'Sell to open', orderType: OrderAction.Sell }, { name: 'sellclose', value: 'sell', type: PositionEffect.Close, label: 'Sell to close', orderType: OrderAction.Sell }];\n\nexport const LegAction: React.FC<{ id: string }> = ({ id }) => {\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const { setLegAction } = useOrderActions();\n\n const setOrderType = useCallback(\n (ot: OrderAction) => {\n if (isCustomStrategyOrUndefined) {\n setLegAction(id, ot);\n } else {\n setLegAction(id);\n }\n },\n [id, isCustomStrategyOrUndefined, setLegAction]\n );\n\n return ;\n};\n\nconst LegActionPicker: React.FC<{ id: string; setOrderType: (act: OrderAction) => void }> = ({ id, setOrderType }) => {\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n const {mid} = useOrderPrice();\n\n const action = LegSelector.Action(useBlockData(), id);\n const setActionValue = useCallback(\n (isActive: boolean) => {\n //setOrderType(isActive ? OrderAction.Buy : OrderAction.Sell);\n setOrderType(action === OrderAction.Buy ? OrderAction.Sell : OrderAction.Buy);\n dispatch({ type: getType(Actions.setPrice), payload: { price: undefined, updateCreditOrDebit: true, mid: mid } })\n dispatch({ type: getType(Actions.setStopPrice), payload: { price: undefined, updateCreditOrDebit: false } })\n },\n [setOrderType, action]\n );\n const actionValue = useMemo(() => (action === OrderAction.Buy ? true : false), [action]);\n //const buttonClass = useMemo(() => (action.orderType === OrderAction.Sell ? `btn-sell` : `btn-buy`), [action.orderType]);\n\n return (\n \n // \n // {_.camelCase(OrderAction[action.orderType])}\n // {`To ${PositionEffect[action.type]}`}\n // \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { NumberInput } from '@tradingblock/components';\nimport { useOrderData, OrderState } from '../../state/OrderState';\nimport { LegSelector } from '../../state/OrderLegSelector';\nimport { useOrderActions } from '../../state/useOrderActions';\nimport { OrderSelectors } from '../../state/OrderSelector';\nimport { useOrderQuantity } from '../Order/OrderQuantity';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\nimport { useBlockActionDispatchAndGenericActions } from '../../../../components/blocks/BlockState';\nimport { OrderActions, Actions } from '../../state/OrderActions';\nimport { getType } from 'typesafe-actions';\nimport { useOrderPrice } from '../../hooks/useOrderPrice';\n\nexport const LegQuantity: React.FC<{ id: string; disabled?: boolean }> = ({ id, disabled }) => {\n const legQuantityIsInvalid = useOrderData(s => OrderSelectors.invalidLegPosition(s, id));\n const { setLegQuantity } = useOrderActions();\n const { quantity } = useOrderQuantity();\n const spreadRatio = LegSelector.SpreadRatio(useBlockData(), id);\n const { mid } = useOrderPrice();\n\n const quantityValue = useMemo(() => {\n return disabled ? quantity * spreadRatio : spreadRatio;\n }, [spreadRatio, quantity]);\n\n const [{}, dispatch] = useBlockActionDispatchAndGenericActions();\n\n const onChange = useCallback(\n (value: number) => {\n dispatch({\n type: getType(Actions.setPrice),\n payload: { price: undefined, updateCreditOrDebit: true, mid: mid },\n });\n setLegQuantity(id, value);\n },\n [setLegQuantity, id]\n );\n return (\n
    \n \n
    \n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { PositionEffect, OrderActionDirection, PositionInfo, OrderAction } from '@tradingblock/types';\nimport { OrderState } from '../../state/OrderState';\nimport { SymbolOccBasicSelector, LegSelector } from '../../state/OrderLegSelector';\nimport { useStateSelector, positionInfo } from '../../../../data/global/dataSelectors';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\nimport { PositionDTO } from '@tradingblock/api';\nimport _ from 'lodash';\n\nconst Position = ({ position, quantity }: { position?: PositionEffect; quantity: number }) => {\n const quantityValue = useMemo(() => (quantity !== 0 ? `(${quantity})` : ''), [quantity]);\n const direction = useMemo(() => (position === PositionEffect.Open ? 'open' : 'close'), [position]);\n const directionClass = useMemo(() => (position === PositionEffect.Open ? 'neg' : 'pos'), [position]);\n const positionClass = useMemo(() => {\n if (quantity < 0) {\n return 'neg';\n } else if (quantity > 0) {\n return 'pos';\n } else if (quantity === 0) {\n return '';\n }\n }, [quantity]);\n\n return position ? (\n
    \n
    \n Position\n {quantityValue}{' '}\n
    \n
    To {direction}
    \n
    \n ) : (\n <>\n );\n};\n\nconst PositionMemo = React.memo(Position);\n\nexport const LegPosition: React.FC<{ legId: string; positions: PositionDTO[] }> = ({ legId, positions }) => {\n const blockState = useBlockData();\n const occSymbol = useMemo(() => SymbolOccBasicSelector(blockState, legId) || '', [legId, blockState]);\n\n // States\n const [accountPositionInfo, setAccountPositionInfo] = useState({});\n\n // Redux\n const subId = useStateSelector(s => s.account.subAccountId);\n\n useEffect(() => {\n if (positions) {\n const positionsWithId = positions.map(p => {\n return {\n ...p,\n };\n });\n const info = _.reduce(\n positionsWithId,\n (acc: PositionInfo, p) => {\n const symbolKey = p.Symbol;\n const existing = acc[symbolKey] || { quantity: 0 };\n const direction =\n p.OpenQuantity + existing.quantity < 0 ? OrderActionDirection.Short : OrderActionDirection.Long;\n const quantity = existing.quantity + p.OpenQuantity;\n return {\n ...acc,\n [symbolKey]: {\n underlyingSymbol: p.UnderlyingSymbol,\n quantity,\n direction,\n },\n };\n },\n {}\n );\n\n if (info) {\n setAccountPositionInfo(info);\n }\n }\n }, []);\n\n const positionQuantity = useStateSelector(s => {\n const { quantity } = positionInfo(s, occSymbol);\n const info = accountPositionInfo[occSymbol];\n const quantityValue = subId && info ? info.quantity : quantity;\n\n return quantityValue;\n });\n\n const legPosition = useMemo(() => {\n const position = LegSelector.PositionEffect(blockState, legId);\n const action = LegSelector.Action(blockState, legId);\n const info = accountPositionInfo[occSymbol];\n\n const positionIsLong = info && info.quantity > 0;\n let subPosition: PositionEffect | undefined;\n\n if (positionIsLong && action === OrderAction.Buy) {\n subPosition = PositionEffect.Open;\n } else if (positionIsLong && action === OrderAction.Sell) {\n subPosition = PositionEffect.Close;\n } else if (!positionIsLong && action === OrderAction.Buy) {\n subPosition = PositionEffect.Close;\n } else if (!positionIsLong && action === OrderAction.Sell) {\n subPosition = PositionEffect.Open;\n }\n\n const positionValue = subId && info ? subPosition : position;\n // if can't determine position effect, default to Open\n return positionValue || PositionEffect.Open;\n }, [legId, blockState, subId, accountPositionInfo]);\n\n return ;\n};\n","import { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderState } from '../state/OrderState';\nimport { SymbolOccBasicSelector } from '../state/OrderLegSelector';\nimport { getQuoteMetadata } from '../../../data/global/selectors/quoteSelector';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { useQuoteBidAsk } from '../../../hooks/useFeedQuote';\nimport { useBlockData } from '../../../components/blocks/BlockState';\n\nexport const useBidAsk = (legId: string) => {\n const blockState = useBlockData();\n // const log = useLog('useBidAsk');\n const occSymbol = useMemo(() => SymbolOccBasicSelector(blockState, legId) || '', [legId, blockState]);\n const quote = useStateSelector(s => getQuoteMetadata(s, occSymbol));\n const feedQuote = useQuoteBidAsk(occSymbol);\n\n // log(`${occSymbol} %o`, { quote, feedQuote, symbolQuote });\n\n const result = useMemo(() => {\n const feed = feedQuote || { BidPrice: undefined, AskPrice: undefined };\n const quo = quote || { BidPrice: undefined, AskPrice: undefined };\n const bids = [feed.BidPrice, quo.BidPrice];\n const asks = [feed.AskPrice, quo.AskPrice];\n return {\n bid: _.find(bids, v => _.isNumber(v)),\n ask: _.find(asks, v => _.isNumber(v)),\n };\n }, [quote, feedQuote]);\n // useWhyDidYouUpdate(`useBidAsk:${legId}:${occSymbol}`, { quote, feedQuote, blockState, occSymbol, result });\n return result;\n};\n","import React from 'react';\nimport _ from 'lodash';\nimport { getClassNames } from '@tradingblock/components';\nimport { useDirectionalValue } from '../basic/Directional';\n\nexport const Directional: React.FC<{ value?: string | number; className?: string }> = ({\n value,\n className,\n children,\n}) => {\n const directionalClass = useDirectionalValue(_.isNumber(value) ? value : undefined);\n const classes = getClassNames([className, directionalClass]);\n return
    {children}
    ;\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { useBidAsk } from '../useBidAsk';\nimport { DropdownItemType, ToggleButton, Number, CSS, Loading } from '@tradingblock/components';\nimport { OrderState } from '../../state/OrderState';\nimport { SymbolOccBasicSelector } from '../../state/OrderLegSelector';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { quoteSelectors } from '../../../../data/global/selectors/quoteSelector';\nimport { BidAskPrice } from '../../../../components/symbol/BidAsk';\nimport { Directional } from '../../../../components/symbol/Price';\nimport { useBlockData } from '../../../../components/blocks/BlockState';\n\nconst getQuoteHigh = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.High : undefined))(\n (_, id) => `${id}-high`\n);\nconst getQuoteLow = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.Low : undefined))(\n (_, id) => `${id}-low`\n);\nconst getQuoteClose = createCachedSelector(quoteSelectors.byId, quote => (quote ? quote.ClosePrice : undefined))(\n (_, id) => `${id}-close`\n);\n\nconst LegPrice: React.FC<{ value?: number }> = ({ value }) => {\n return (\n <>\n {!_.isNil(value) && (\n
    \n \n
    \n )}\n \n );\n};\n\nconst DirectionalLegPrice: React.FC<{ value?: number }> = ({ value }) => {\n return (\n <>\n {!_.isNil(value) && (\n \n \n \n )}\n \n );\n};\n\nconst LegBidQuote: React.FC<{ legId: string }> = ({ legId }) => {\n const { bid } = useBidAsk(legId);\n return ;\n};\n\nconst LegAskQuote: React.FC<{ legId: string }> = ({ legId }) => {\n const { ask } = useBidAsk(legId);\n return ;\n};\n\nconst LegQuoteHigh: React.FC<{ legId: string }> = ({ legId }) => {\n const blockState = useBlockData();\n const occSymbol = SymbolOccBasicSelector(blockState, legId);\n const High = useStateSelector(s => getQuoteHigh(s, occSymbol || ''));\n return ;\n};\n\nconst LegQuoteLow: React.FC<{ legId: string }> = ({ legId }) => {\n const blockState = useBlockData();\n const occSymbol = SymbolOccBasicSelector(blockState, legId);\n const Low = useStateSelector(s => getQuoteLow(s, occSymbol || ''));\n return ;\n};\n\n// const LegQuoteClose: React.FC<{ legId: string }> = ({ legId }) => {\n// const blockState = useBlockData();\n// const occSymbol = SymbolOccBasicSelector(blockState, legId);\n// const Close = useStateSelector(s => getQuoteClose(s, occSymbol || ''));\n// if (!Close && blockState.price) {\n// return ;\n// } else {\n// return ;\n// }\n// };\n\nexport const LegPrices = {\n Bid: LegBidQuote,\n Ask: LegAskQuote,\n High: LegQuoteHigh,\n Low: LegQuoteLow,\n // Close: LegQuoteClose,\n};\n","import React, { useCallback, useMemo } from 'react';\nimport _ from 'lodash';\nimport { DropdownItemType, ToggleButton, Number } from '@tradingblock/components';\nimport { AssetType, OptionType, isCustomStrategy, Expiration } from '@tradingblock/types';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { LegSelector } from '../state/OrderLegSelector';\nimport { useLegsActions } from '../state/useLegsActions';\nimport { useOrderLegData } from '../state/useOrderLegData';\nimport { OrderSelectors } from '../state/OrderSelector';\nimport { OrderState, useOrderData } from '../state/OrderState';\nimport { BlockPropTitle } from '../../../components/blocks/blockProp/BlockProp';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { OrderLegExpiration } from './Legs/Expiration';\nimport { OrderLegStrikes } from './Legs/Strikes';\nimport { LegAction } from './Legs/Action';\nimport { LegQuantity } from './Legs/Quantity';\nimport { LegPosition } from './Legs/Position';\nimport { LegPrices } from './Legs/BidAsk';\nimport { useGroupAssetSymbol } from '../../useGroupState';\nimport { OrderQuantity } from './Order/OrderQuantity';\nimport { HasEquityLeg } from '../OrderUtilities';\nimport { useOrderSettings } from '../hooks/useOrderSettings';\nimport { useEffect } from 'react';\nimport { PositionDTO } from '@tradingblock/api';\n\ninterface LegAssetType extends DropdownItemType {\n type: AssetType;\n optionType?: OptionType;\n}\n\nconst assetTypes: LegAssetType[] = [\n { name: 'shares', value: 'Shares', type: AssetType.Equity },\n { optionType: OptionType.Call, name: 'call', value: 'Call', type: AssetType.Option },\n { optionType: OptionType.Put, name: 'put', value: 'Put', type: AssetType.Option },\n];\n\nexport const useAssetTypes = (id: string) => {\n const { legs } = useBlockData();\n const legAssetType = LegSelector.AssetType(useBlockData(), id);\n return legAssetType !== AssetType.Equity && HasEquityLeg(legs)\n ? assetTypes.filter(at => at.type !== AssetType.Equity)\n : assetTypes;\n};\n\n// export const LegSync = (id: string) => {\n// const leg = useOrderData(state => state.legs[id]);\n// useEffect(() => {\n// console.log('leg changed', { Action: OrderAction[leg.Action], leg });\n// }, [leg]);\n// return leg;\n// };\n\nexport const OrderLeg: React.FC<{\n id: string;\n price: number;\n invalid?: boolean;\n positions: PositionDTO[];\n setNoExpirations?: (val: boolean) => any;\n}> = ({ id, price, invalid, positions, setNoExpirations }) => {\n const symbol = useGroupAssetSymbol();\n\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n const isSingleLeggedStrategy = useOrderData(OrderSelectors.isSingleLegStrategy);\n\n const { setExpiration, setStrike } = useOrderActions();\n\n const { strike, expiration } = useOrderLegData(id);\n const { remove } = useLegsActions();\n const legAssetType = LegSelector.AssetType(useBlockData(), id);\n const legOptionType = LegSelector.OptionType(useBlockData(), id);\n\n const assetType = useMemo(\n () => assetTypes.find(at => at.type === legAssetType && at.optionType === legOptionType) || assetTypes[0],\n [legAssetType, legOptionType]\n );\n\n const isOption = useMemo(() => symbol && assetType && assetType.type === AssetType.Option, [assetType, symbol]);\n const strategy = useOrderData((s: OrderState) => s.strategy);\n const isCustom = useMemo(() => (strategy === undefined || isCustomStrategy(strategy) ? true : false), [strategy]);\n //TODO: temporary fix for custom strategies with no legs causing white screen, will review and provide a better solution soon\n const lastLeg = useOrderData(OrderSelectors.legs).length > 1 && true;\n\n // useLegOptionDefaults(id, symbol, price);\n // useStrikeLoader(symbol, expiration);\n const setLegStrike = useCallback(\n (value: number) => {\n localStorage.setItem(`leg-strike-${id}`, JSON.stringify(value));\n setStrike(id, value);\n },\n [setStrike, id]\n );\n let strikeStored: any = localStorage.getItem(`leg-strike-${id}`);\n const setLegExpiration = useCallback(\n (date: Expiration) => {\n setExpiration(id, date);\n },\n [setExpiration, id]\n );\n\n useEffect(() => {\n if (!strike) {\n setStrike(id, JSON.parse(strikeStored));\n }\n }, []);\n\n const validationClass = useMemo(() => (invalid ? ' invalid' : ''), [invalid]);\n\n const enableLegQuantity = useMemo(() => {\n return isCustom || isSingleLeggedStrategy;\n }, [isCustom, isSingleLeggedStrategy]);\n\n const { modernBidAskLabelOrientation } = useOrderSettings();\n\n return (\n
    \n
    \n \n
    \n {/*
    \n \n
    */}\n
    \n {!isSingleLeggedStrategy && }\n {isSingleLeggedStrategy && }\n
    \n
    \n \n
    \n
    \n {isOption ? (\n \n ) : (\n \n )}\n
    \n\n
    \n {isOption && symbol && (\n \n )}\n
    \n\n
    \n {isOption && symbol && expiration && (\n \n )}\n
    \n\n {modernBidAskLabelOrientation && (\n
    \n
    \n
    \n
      \n
    • \n \n \n \n \n
    • \n
    • \n \n \n \n \n
    • \n {/*
    • \n \n \n \n \n
    • */}\n
    \n
    \n
    \n
      \n
    • \n \n \n \n \n
    • \n
    • \n \n \n \n \n
    • \n
    \n
    \n
    \n
    \n )}\n\n {!modernBidAskLabelOrientation && (\n
    \n
    \n
    \n
      \n
    • \n \n \n \n \n
    • \n
    • \n \n \n \n \n
    • \n {/*
    • \n \n \n \n \n
    • */}\n
    \n
    \n
    \n
      \n
    • \n \n \n \n \n
    • \n
    • \n \n \n \n \n
    • \n
    \n
    \n
    \n
    \n )}\n\n
    \n {isCustomStrategyOrUndefined && lastLeg && (\n remove(id)}\n disabled={!isCustomStrategyOrUndefined}\n type=\"button\"\n >\n \n \n )}\n
    \n
    \n );\n};\n\nconst LegOptionType: React.FC<{ id: string; disabled: boolean }> = ({ id, disabled }) => {\n const { setIsDirty, setOptionType, setPrice } = useOrderActions();\n const value = LegSelector.OptionType(useBlockData(), id);\n const setValue = useCallback(\n (isActive: boolean) => {\n setOptionType(id, isActive ? OptionType.Call : OptionType.Put);\n setPrice(undefined, false);\n setIsDirty(true);\n },\n [id, setOptionType, setIsDirty]\n );\n const isActive = useMemo(() => value === OptionType.Call, [value]);\n\n return (\n \n );\n};\n","import { useMemo } from 'react';\nimport { Expiration } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { OrderState } from './OrderState';\nimport { LegSelector } from './OrderLegSelector';\n\nexport const useOrderLegData = (id: string) => {\n const blockState = useBlockData();\n const expiration: Expiration | undefined = useMemo(\n () => (blockState.legs[id] ? blockState.legs[id].Expiration : undefined),\n [blockState, id]\n );\n const strike = LegSelector.Strike(blockState, id);\n\n return {\n expiration,\n strike,\n occSymbol: LegSelector.SymbolAsOCC(blockState, { id }),\n };\n};\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport { OrderSelectors } from './state/OrderSelector';\nimport { useOrderData } from './state/OrderState';\nimport { useOptionDefaults } from './data/useExpirationStrikeData';\nimport { useFeedQuoteWithMetadata } from '../../hooks/useFeedQuote';\nimport { OrderLeg } from './components/Leg';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { PositionDTO } from '@tradingblock/api';\nimport { useOrderState } from './state/useOrderState';\nimport { AssetType } from '@tradingblock/types';\n\nconst OrderLegData: React.FC<{ symbol: string }> = ({ symbol }) => {\n useOptionDefaults(symbol);\n return <>;\n};\n\nexport const OrderLegs: React.FC<{\n symbol: string;\n positions: PositionDTO[];\n setNoExpirations?: (val: boolean) => any;\n}> = ({ symbol, positions, setNoExpirations }) => {\n const blockId = useBlockId();\n const legIds = useOrderData(OrderSelectors.legIds);\n const symbolQuote = useFeedQuoteWithMetadata(symbol);\n const invalidLegIds = useOrderData(s => OrderSelectors.invalidLegIds(s, blockId));\n const midPrice = useMemo(() => {\n if (!symbolQuote) {\n return undefined;\n }\n const diff = symbolQuote.AskPrice - symbolQuote.BidPrice;\n const mid = symbolQuote.BidPrice + diff;\n return _.isNumber(mid) && _.isFinite(mid) ? mid : undefined;\n }, [symbolQuote]);\n\n // determine if the current order has any option legs by looking at order type\n const legs = useOrderState('legs');\n\n const hasOptionLegs = useMemo(() => {\n return _.some(legs, leg => leg.AssetType === AssetType.Option);\n }, [legs]);\n\n return (\n <>\n {symbol && }\n {symbol &&\n legIds.map(lid => (\n \n ))}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useContext, useEffect, useMemo } from 'react';\nimport { useAlerts } from '@tradingblock/components';\n\nimport { OrderState, useOrderData } from './state/OrderState';\nimport { OrderSelectors } from './state/OrderSelector';\nimport { useOrderSymbolData } from './state/useOrderSymbols';\nimport { useOrderAssetSymbolOrUndefined, useOrderSymbolOrUndefined } from './state/useOrderState';\nimport { useExpirationLoader } from './data/useExpirationStrikeData';\nimport { useOrderPositionSync } from './hooks/useOrderPositionSync';\nimport { useBlockActions, useBlockMetadata } from '../../components/blocks/BlockState';\nimport { OrderStrategyPicker } from './components/OrderStrategyPicker';\nimport { AddOrderLeg } from './components/AddOrderLeg';\nimport { AddOrderLegContent } from './components/AddOrderLegContent';\nimport { ClearOrder } from './components/ClearOrder';\nimport { PriceAndQuoteSync } from './components/PriceAndQuoteSync';\nimport { OrderContentSettings } from './components/content/OrderContentSettings';\nimport { StrategyTemplateButtons } from './components/StrategyTemplateButtons';\nimport { OrderLegs } from './OrderLegs';\nimport _ from 'lodash';\nimport { AccountApiFactory, PositionDTO, isIndexSymbol } from '@tradingblock/api';\nimport { useSelector } from 'react-redux';\nimport { account, useStateSelector } from '../../data/global/dataSelectors';\nimport Config from '../../config';\nimport { BlockDataContext } from '../../components/blocks/BlockState';\nimport { useOrderActions } from './state/useOrderActions';\nimport { OrderType } from '@tradingblock/types';\n\nexport const OrderContent: React.FC<{ setNoExpirations?: (val: boolean) => any }> = ({ setNoExpirations }) => {\n //const data = useMemo(() => favorites || [], [favorites]);\n //const symbolQuote = useStateSelector(s => (symbol && symbol.symbol ? s.quotes[symbol.symbol] : undefined));\n const { blockId, data } = useBlockMetadata();\n const symbol = useOrderSymbolOrUndefined();\n const assetSymbol = useOrderAssetSymbolOrUndefined();\n const assetSymbolInfo = _.omit(assetSymbol, ['name', 'provider']);\n const isSymbolIndex = symbol ? isIndexSymbol(symbol) : false;\n const context = useContext(BlockDataContext);\n // const assetSymbol = useOrderState('symbol');\n const orderType = useOrderData(s => s.orderType);\n const legError = useOrderData(s => s.legError);\n const hidePrice = useMemo(() => orderType === OrderType.Market, [orderType]);\n const hasLegs = useOrderData(s => OrderSelectors.hasLegs(s, blockId));\n const isCustomStrategyOrUndefined = useOrderData(OrderSelectors.isCustomStrategyOrUndefined);\n useExpirationLoader(symbol || '');\n useOrderSymbolData();\n useOrderPositionSync();\n const notifications = useAlerts();\n const [positions, setPositions] = React.useState([]);\n const emptyCustomOrder = !hasLegs && symbol ? true : false;\n const isIndex = _.toLower(symbol).charAt(0) === '$' ? true : false;\n // variables for building api client\n const accountId = useSelector(account.accountId);\n const apiRootUrl = Config.tradingApi;\n const token = useStateSelector(state => state.auth.apiToken) || undefined;\n\n const accountApi = useMemo(() => {\n if (accountId && token) {\n return AccountApiFactory(apiRootUrl, token, accountId);\n }\n return undefined;\n }, [accountId, apiRootUrl, token]);\n\n useEffect(() => {\n // display any leg errors\n if (legError) {\n notifications.error(legError, { id: 'order-leg-error', autoClose: 7000 });\n }\n }, [legError]);\n\n useEffect(() => {\n // TODO: Really need to have positions in global redux state. Only issue is that sub accounts\n // will reload/rewrite positions in redux. But can't just filter on the redux state with subaccount id,\n // since PnL is tightly coupled with positions values.\n // this will need to be covered and refactored later...\n if (accountApi) {\n accountApi.positions().then(payload => {\n setPositions(payload.payload);\n });\n }\n }, []);\n\n // In order to alleviate the issue of a linked order block quotes/legs getting out of sync with symbol picker\n // we will force a symbol change on initial load if the context symbol is different than the header/group symbol\n // this will ensure that the block is in sync with the symbol picker.\n // TODO: Review how block data and settings are currently being stored/persisted. (Context vs. Mongo vs. Redux)\n const { changeSymbol } = useOrderActions();\n const { setField } = useBlockActions();\n useEffect(() => {\n if (symbol && data && data.symbol && symbol !== data.symbol.underlyingSymbol) {\n assetSymbol && changeSymbol(assetSymbolInfo, assetSymbol, { persist: true });\n }\n }, [symbol, data.symbol]);\n\n useEffect(() => {\n setField('orderType', OrderType.Limit, { persist: true });\n }, [symbol]);\n\n return (\n <>\n {symbol && (\n
    \n \n {hasLegs && symbol && }\n {emptyCustomOrder && (\n <>\n \n

    Or use a strategy template

    \n \n \n )}\n
    \n )}\n\n {symbol && (\n <>\n \n {hasLegs && (\n
    \n
    \n {isCustomStrategyOrUndefined && symbol && }\n
    \n\n \n
    \n )}\n {hasLegs && }\n \n )}\n \n );\n};\n\nexport const MarkerLabel: React.FC<{\n title: string;\n value: string;\n styles?: React.CSSProperties;\n isReversed?: boolean;\n}> = ({ title, value, styles, isReversed }) => {\n const style = isReversed\n ? {\n ...styles,\n transform: 'translateX(50%)',\n right: '50%',\n maxWidth: '75%',\n }\n : {\n ...styles,\n transform: 'translateX(-50%)',\n left: '50%',\n maxWidth: '75%',\n };\n\n return (\n \n \n {title}\n \n {value}\n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport _ from 'lodash';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useQuoteActions } from '../../../hooks/useQuoteData';\nimport { useBlockGlobalData, useBlockId } from '../../../components/blocks/BlockState';\nimport { useOrderData } from './OrderState';\nimport { OrderSymbolList } from './OrderLegSelector';\nimport { useOrderDebug } from '../OrderUtilities';\nimport { areArraysEqual } from '../../../utilities/data';\n\nexport const useOrderSymbolData = () => {\n const log = useOrderDebug('useOrderSymbolData');\n const { setQuotes } = useQuoteActions();\n const { quotes } = useBlockGlobalData();\n const blockId = useBlockId();\n const currentLegSymbols = useOrderData(s => OrderSymbolList(s, blockId));\n\n const [orderSymbols, setOrderSymbols] = useState([]);\n\n useEffect(() => {\n const legsymbolList = currentLegSymbols.map(s => s.symbol).filter(ss => ss !== undefined);\n const symbolsToRemove = _.difference(orderSymbols || [], legsymbolList || []);\n const symbolsToAdd = _.difference(legsymbolList, quotes);\n const symbolChanges = _.union(symbolsToRemove, symbolsToAdd);\n if ((symbolChanges && symbolChanges.length > 0) || !areArraysEqual(orderSymbols, legsymbolList)) {\n log('syncing block symbols %o', { legsymbolList, orderSymbols });\n setQuotes(legsymbolList);\n setOrderSymbols(orderSymbols);\n } else {\n log('order block symbols havent changed %o', { legsymbolList, orderSymbols });\n }\n // setOrderSymbols(currentLegSymbols);\n }, [orderSymbols, currentLegSymbols]);\n\n useWhyDidYouUpdate('Order:useOrderSymbolData', {\n orderSymbols,\n currentLegSymbols,\n setOrderSymbols,\n quotes,\n setQuotes,\n log,\n });\n};\n","import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\r\nimport _ from 'lodash';\r\nimport { OrderPreviewPopupProps } from './types';\r\nimport { IsVirtualEnvironment } from '../../../../data/global/selectors/environmentSelector';\r\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\r\nimport { useDispatcher } from '../../../../data/global/hooks';\r\nimport { useOrderPreviewOrder } from './useOrderPreview';\r\n\r\nexport const OrderPreviewActions: React.FC<\r\n OrderPreviewPopupProps & {\r\n setOrderStatusProcessed: React.Dispatch>;\r\n disabled: boolean;\r\n onSave: () => void;\r\n isSaving: boolean;\r\n }\r\n> = ({ previewClosed, onSave, disabled, isSaving, isCancelOrder, action, setOrderStatusProcessed }) => {\r\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\r\n const btnClassName = useMemo(() => (isVirtualEnv ? 'btn-virtual' : `btn-${isCancelOrder ? 'danger' : 'primary'}`), [\r\n isVirtualEnv,\r\n ]);\r\n const { dispatcher } = useDispatcher();\r\n const { order } = useOrderPreviewOrder(action);\r\n const [isProcessing, setIsProcessing] = useState(false);\r\n const [complete, setIsComplete] = useState(false);\r\n\r\n // Ref to manage the actual processing state reliably across re-renders\r\n const isProcessingRef = useRef(false);\r\n\r\n // Function to handle the order action, with processing logic\r\n const handleOrderAction = useCallback(\r\n order => {\r\n // Prevent further execution if already processing\r\n if (isProcessingRef.current) return;\r\n\r\n // Set processing state\r\n isProcessingRef.current = true;\r\n setIsProcessing(true);\r\n\r\n const processOrder = () => {\r\n if (complete && !isProcessing) {\r\n // Handle order completion\r\n previewClosed({ action: 'closed' });\r\n } else if (!isCancelOrder) {\r\n // Handle new order\r\n setTimeout(() => {\r\n onSave();\r\n setIsProcessing(false);\r\n setIsComplete(true);\r\n isProcessingRef.current = false;\r\n }, 2000);\r\n } else if (order.OrderId) {\r\n // Handle order cancellation\r\n setTimeout(() => {\r\n dispatcher.order.requestCancel(order.OrderId);\r\n setIsProcessing(false);\r\n setIsComplete(true);\r\n setOrderStatusProcessed(true);\r\n isProcessingRef.current = false;\r\n }, 2000);\r\n }\r\n };\r\n\r\n processOrder();\r\n },\r\n [complete, isCancelOrder, onSave, previewClosed, dispatcher]\r\n );\r\n\r\n // Handle button click without debouncing\r\n const handleClick = () => {\r\n if (!isProcessingRef.current) {\r\n handleOrderAction(order);\r\n }\r\n };\r\n\r\n // Cleanup effect to reset processing ref on component unmount\r\n useEffect(() => {\r\n return () => {\r\n isProcessingRef.current = false;\r\n };\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n handleClick()}\r\n style={{ transition: 'all 0.5s ease-in-out' }}\r\n type=\"button\"\r\n >\r\n {!isSaving && (\r\n <>\r\n {!complete ? (isCancelOrder ? 'Cancel' : 'Send') + ' Order' : ''} {' '}\r\n \r\n \r\n )}\r\n {(isSaving || isProcessing) && (\r\n <>\r\n   Saving...  \r\n \r\n \r\n )}\r\n {complete && (\r\n <>\r\n   OK  \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import React, { useMemo, useCallback, useState, useEffect, useRef, EffectCallback, DependencyList } from 'react';\nimport _, { isEqual } from 'lodash';\nimport { FormGroup, SelectDropdownInput, BasicCheckboxInput } from '@tradingblock/components';\nimport { SubAccount, UserProfileLevel } from '@tradingblock/types';\nimport {\n useStateSelector,\n subAccountIdSelector,\n account,\n isMarketOpenSelector,\n isIndexMarketOpenSelector,\n} from '../../../../data/global/dataSelectors';\nimport { IsVirtualEnvironment } from '../../../../data/global/selectors/environmentSelector';\nimport { PreviewActions, useOrderPreviewOrder } from './useOrderPreview';\nimport { PreviewContent } from './PreviewContent';\nimport { TradingBlockLink } from '../../../../components/basic/TradingBlockLink';\nimport { useSelector } from 'react-redux';\nimport { orderCanBeFilledDuringIndexMarketTimes } from '../../../../utilities/date';\n\nexport const PreviewPopupContent: React.FC<{\n isCancelOrder: boolean;\n subAccounts?: SubAccount[];\n warningNotAccepted: boolean;\n onWarningAccepted: () => void;\n action?: PreviewActions;\n orderStatusProcessed?: boolean;\n orderValue?: any;\n}> = ({\n subAccounts,\n warningNotAccepted,\n onWarningAccepted,\n isCancelOrder,\n action: passedAction,\n orderStatusProcessed,\n orderValue,\n}) => {\n const {\n order,\n legs,\n action,\n initialPrice,\n initialStopPrice,\n isWarningSymbol,\n isTradingblockOrder,\n changeSubaccountId,\n } = useOrderPreviewOrder(passedAction ? passedAction : 'execute');\n\n const globalSubAccountId = useStateSelector(subAccountIdSelector);\n const [orderSubAccountId, setOrderSubAccountId] = useState();\n const userLevel = useSelector(account.userLevel);\n const isAdmin = userLevel && userLevel === UserProfileLevel.Admin;\n\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\n const indexMarketOpen = useStateSelector(s => isIndexMarketOpenSelector(s));\n\n const isVirtualEnv = useStateSelector(IsVirtualEnvironment);\n\n const actionName = action === 'execute' ? 'execution' : 'replacement';\n\n const subAccountOptions = useMemo(() => {\n return _.map(subAccounts, sa => ({\n value: sa.Id,\n label: `${sa.Nickname} (${sa.AcctSuffix})`,\n }));\n }, [subAccounts]);\n\n const legSubAccountId = _.get(legs[0], 'SubaccountId');\n const orderSubaccount = order.SubaccountId\n ? subAccountOptions.find(subaccount => subaccount.value === order.SubaccountId)\n : '';\n const masterAccount = _.find(subAccounts, sa => sa.IsMaster);\n\n /**\n * Custom hook to perform a deep comparison of dependencies and\n * run the effect only when there is an actual change in dependencies.\n * @param {EffectCallback} callback - The effect function to be executed.\n * @param {DependencyList} dependencies - The dependencies array for the effect.\n */\n const useDeepCompareEffect = (callback: EffectCallback, dependencies: DependencyList) => {\n // Ref to store the current dependencies\n const currentDependenciesRef = useRef();\n\n // Perform deep comparison between current and previous dependencies\n if (!isEqual(currentDependenciesRef.current, dependencies)) {\n // If dependencies have changed, update the ref value\n currentDependenciesRef.current = dependencies;\n }\n\n // Use useEffect with the ref value (which updates only if dependencies change)\n useEffect(callback, [currentDependenciesRef.current]);\n };\n\n // Usage in your component\n useDeepCompareEffect(() => {\n // If order is not defined, return early to avoid running the rest of the effect\n if (!order) return;\n\n // Helper function to update sub-account ID\n const updateSubAccountId = (id: number) => {\n setOrderSubAccountId(id);\n changeSubaccountId(id);\n };\n\n // Logic to handle different cases based on the state\n if (isTradingblockOrder) {\n if (globalSubAccountId) {\n // If globally selected sub-account, force select the dropdown\n updateSubAccountId(globalSubAccountId);\n } else {\n // Back to edit and re-open preview (but no global sub-account selected)\n if (legSubAccountId && legSubAccountId === -1) {\n if (masterAccount) {\n updateSubAccountId(masterAccount.Id);\n }\n } else if (legSubAccountId) {\n updateSubAccountId(legSubAccountId);\n } else {\n if (order.SubaccountId && orderSubaccount) {\n updateSubAccountId(order.SubaccountId);\n }\n }\n }\n } else if (order.SubaccountId && orderSubaccount) {\n // Order Preview from Activity Order Block\n setOrderSubAccountId(order.SubaccountId);\n }\n }, [order, isTradingblockOrder, globalSubAccountId, legSubAccountId, masterAccount]);\n\n const onSelectSubAccount = useCallback(\n (id: number) => {\n setOrderSubAccountId(id);\n changeSubaccountId(id);\n },\n [setOrderSubAccountId, changeSubaccountId]\n );\n\n useEffect(() => {\n // If admin, automatically accept the leveraged ETF warning\n if (isAdmin && isWarningSymbol) {\n onWarningAccepted();\n }\n }, [isAdmin, isWarningSymbol]);\n\n useEffect(() => {\n if (order.SubaccountId && (isCancelOrder || action === 'replace')) {\n onSelectSubAccount(order.SubaccountId);\n }\n }, []);\n\n return (\n <>\n

    \n Please review the following order details before {isCancelOrder ? `cancelling` : `sending it for ${actionName}`}\n .\n

    \n {(orderCanBeFilledDuringIndexMarketTimes(order.UnderlyingSymbol, order.Legs) ? !indexMarketOpen : !marketOpen) && (\n <>\n

    \n NYSE Market is closed: \n All successfully placed orders will be saved and become live at market open of the next trading session.\n

    \n {order && !order.Price && (\n

    \n Warning: Market orders can only be placed during regular market hours. Please consider a\n limit order.\n

    \n )}\n \n )}\n {!_.isEmpty(subAccounts) && !isCancelOrder && actionName !== 'replacement' ? (\n \n onSelectSubAccount(subAccountId)}\n />\n \n ) : (\n //Cancel order -> prefill with order's subaccount source\n !_.isEmpty(subAccounts) &&\n (isCancelOrder || actionName === 'replacement') && (\n \n \n \n )\n )}\n {order && (\n \n )}\n {isVirtualEnv && (\n

    \n \n Virtual account\n \n

    \n )}\n {isWarningSymbol && !isAdmin && (\n <>\n

    \n Warning: Leveraged, Inverse, and Commodity ETFs carry unique risks and may not be suitable for every\n investor.\n
    \n Learn more\n

    \n \n I understand the risk and would like to place the order\n \n \n )}\n \n );\n};\n","import { BasicDropdown, BasicSelect, CheckboxInput, CheckListInput } from '@tradingblock/components';\nimport { Order, OrderLeg, TradingblockOrder } from '@tradingblock/types';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\n\nexport interface AdminCommissionOrderActionsProps {\n order: Order | TradingblockOrder | undefined;\n setOrder: (order: Order | TradingblockOrder) => void;\n setCommissionFilled: React.Dispatch>;\n}\n\nexport default function AdminCommissionOrderActions({\n order,\n setOrder,\n setCommissionFilled,\n}: AdminCommissionOrderActionsProps) {\n\n const userLevel = useStateSelector(s => s.account.profile.current && s.account.profile.current.level);\n const isAdmin = userLevel === 'Admin';\n const [placeAs, setPlaceAs] = useState<'Unsolicited' | 'Solicited' | 'Discretionary' | undefined>(isAdmin ? undefined : 'Unsolicited');\n const [executeAs, setExecuteAs] = useState<'Agent' | 'Principal' | 'Undefined'>('Agent');\n const [commission, setCommission] = useState<'Online' | 'Assisted' | 'Override' | 'Undefined'>('Online');\n const [commissionOverrideCode, setCommissionOverrideCode] = useState();\n const currentUserProfileCommissionCodes = useStateSelector(state =>\n state.account.profile.current ? state.account.profile.current.commissionCodes : undefined\n );\n const commissionCodes = useMemo(() => {\n return currentUserProfileCommissionCodes\n ? Object.entries(currentUserProfileCommissionCodes).map(([commissionLabel, commissionCode]) => ({\n label: commissionLabel,\n value: commissionCode,\n }))\n : undefined;\n }, [currentUserProfileCommissionCodes]);\n const accountId = useStateSelector(s => s.account.accountId);\n\n const handleSetCommissionFilled = useCallback(\n (value: boolean) => {\n setCommissionFilled(value);\n },\n [setCommissionFilled]\n );\n\n useEffect(() => {\n if (order !== undefined) {\n // Make sure all the options are selected before admin can send it\n if (placeAs !== undefined && executeAs !== 'Undefined' && commission !== 'Undefined') {\n // If the user has Override commission, make sure the code is set too before allowing\n // them to place an order.\n if (commission === 'Override' && commissionOverrideCode === undefined) {\n handleSetCommissionFilled(false);\n } else {\n handleSetCommissionFilled(true);\n }\n } else {\n handleSetCommissionFilled(false);\n }\n }\n }, [placeAs, executeAs, commission, commissionOverrideCode]);\n\n useEffect(() => {\n if (order !== undefined) {\n setOrder({\n ...order,\n PlacedAs: placeAs,\n ExecutedAs: executeAs,\n CommissionType: commission,\n CommissionScheduleId: commissionOverrideCode ? commissionOverrideCode.value : undefined,\n });\n }\n }, [])\n\n return (\n
    \n
    \n Placed As:\n {\n if (order !== undefined) {\n setPlaceAs(value);\n setOrder({\n ...order,\n PlacedAs: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Unsolicited',\n label: 'Unsolicited',\n },\n {\n value: 'Solicited',\n label: 'Solicited',\n },\n {\n value: 'Discretionary',\n label: 'Discretionary',\n },\n ]}\n />\n
    \n
    \n Executed As:\n {\n if (order !== undefined) {\n setExecuteAs(value);\n setOrder({\n ...order,\n ExecutedAs: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Agent',\n label: 'Agent',\n },\n {\n value: 'Principal',\n label: 'Principal',\n },\n ]}\n />\n
    \n
    \n Commission:\n {\n if (order !== undefined) {\n setCommission(value);\n setOrder({\n ...order,\n CommissionType: value as any,\n })\n }\n }}\n type=\"radio\"\n options={[\n {\n value: 'Online',\n label: 'Online',\n },\n {\n value: 'Assisted',\n label: 'Assisted',\n },\n {\n value: 'Override',\n label: 'Override',\n },\n ]}\n />\n {commission === 'Override' && commissionCodes && (\n \n {\n if (order !== undefined) {\n setCommissionOverrideCode(selectedOption);\n setOrder({\n ...order,\n CommissionScheduleId: selectedOption.value,\n })\n }\n }}\n isSearchable={false}\n />\n
    \n )}\n
    \n \n );\n}\n","import React, { useCallback, useState } from 'react';\nimport { BasicCheckboxInput, OnChangeHandler } from '@tradingblock/components';\nimport { Order, OrderLeg, TradingblockOrder } from '@tradingblock/types';\n\nexport interface AdminBypassMarginProps {\n order: Order | TradingblockOrder | undefined;\n setOrder: (order: Order | TradingblockOrder) => void;\n}\n\nexport default function AdminBypassMargin({ order, setOrder }: AdminBypassMarginProps) {\n const [bypassMargin, setBypassMargin] = useState(false);\n\n const handleBypassMargin = useCallback(\n (event, value) => {\n if (order !== undefined) {\n setBypassMargin(value);\n setOrder({\n ...order,\n BypassMargin: value,\n });\n }\n },\n [bypassMargin, order, setOrder]\n );\n\n return (\n
    \n \n

    CAUTION: IF CHECKBOX BELOW IS SELECTED, THIS ORDER WILL BYPASS MARGIN CHECK PROCEDURE.

    \n
    \n \n Bypass Margin\n \n
    \n );\n}\n","import React, { useState, useCallback, useMemo, useEffect } from 'react';\nimport _ from 'lodash';\nimport { Modal as BootstrapModal } from 'react-bootstrap';\nimport { Order, UserRole } from '@tradingblock/types';\nimport { ContactPhone, Modal } from '@tradingblock/components';\nimport { useDispatcher } from '../../../../data/global/hooks';\nimport { useStateSelector } from '../../../../data/global/dataSelectors';\nimport { account } from '../../../../data/global/selectors/accountSelectors';\nimport { useOrderPreviewOrder } from './useOrderPreview';\nimport { OrderPreviewPopupProps } from './types';\nimport { OrderPreviewActions } from './OrderPreviewActions';\nimport { PreviewPopupContent } from './PreviewPopupContent';\nimport { useQuote } from '../../../../hooks/useFeedQuote';\nimport { useSelector } from 'react-redux';\nimport AdminCommissionOrderActions from './AdminCommissionOrderActions';\nimport AdminBypassMargin from './AdminBypassMargin';\nimport { getOrderStatus } from '@tradingblock/api';\nimport { getOrders } from '../../../../data/global/selectors/orderSelector';\n\nexport interface PreviewResult {\n action: 'order-placed' | 'closed' | 'error';\n error?: any;\n}\n\nexport const OrderPreviewPopupContent: React.FC = ({\n show,\n isCancelOrder,\n previewClosed,\n action: passedAction,\n orderValue,\n ...rest\n}) => {\n const accountOrders = useStateSelector(s => getOrders(s));\n const userLevel = useSelector(account.userLevel);\n const userRoles = useSelector(account.userRoles);\n const ableToBypassMargin = userRoles ? userRoles.includes(UserRole.BypassMarginCheck) : false;\n const ableToChangeCommission = userLevel !== 'Account' && userLevel !== 'Undefined' ? true : false;\n const subAccounts = useStateSelector(account.subAccounts);\n\n const [isSaving, setIsSaving] = useState(false);\n const [orderStatusProcessed, setOrderStatusProcessed] = useState(false);\n const [orderFillResponse, setOrderFillResponse] = useState<{\n orderStatus: { status: boolean | string | undefined };\n response: boolean;\n }>({\n orderStatus: {} as any,\n response: false,\n });\n const [originalOrders, setOriginalOrders] = useState(accountOrders);\n const { order, action, isWarningSymbol, onSave, setOrder } = useOrderPreviewOrder(passedAction);\n const { dispatcher } = useDispatcher();\n const [warningNotAccepted, setWarningNotAccepted] = useState(isWarningSymbol);\n const latestOrderId = useStateSelector(s => s.positions.latestOrderId);\n\n const [commissionFilled, setCommissionFilled] = useState(ableToChangeCommission ? false : true);\n\n const onSaveOrder = useCallback(() => {\n if (order && action !== 'replace') {\n setIsSaving(true);\n try {\n onSave();\n setIsSaving(false);\n setOrder({\n ...order,\n BypassMargin: undefined,\n CommissionScheduleId: undefined,\n CommissionType: undefined,\n ExecutedAs: undefined,\n PlacedAs: undefined,\n });\n } catch (placeOrderError) {\n previewClosed({ action: 'error', error: placeOrderError });\n setIsSaving(false);\n dispatcher.order.errored(order, placeOrderError as any);\n } finally {\n setOrderStatusProcessed(true);\n }\n } else if (orderValue && action === 'replace') {\n setIsSaving(true);\n try {\n onSave();\n setIsSaving(false);\n setOrder({\n ...orderValue,\n BypassMargin: undefined,\n CommissionScheduleId: undefined,\n CommissionType: undefined,\n ExecutedAs: undefined,\n PlacedAs: undefined,\n });\n } catch (placeOrderError) {\n previewClosed({ action: 'error', error: placeOrderError });\n setIsSaving(false);\n dispatcher.order.errored(orderValue, placeOrderError as any);\n } finally {\n setOrderStatusProcessed(true);\n }\n }\n }, [order, previewClosed, onSave, dispatcher]);\n\n const onClose = useCallback(\n (show: boolean) => {\n return previewClosed({ action: 'closed' });\n },\n [previewClosed]\n );\n useEffect(() => {\n // Find the order that matches the latestOrderId\n const order = accountOrders.find(o => o.OrderId === latestOrderId);\n\n // Retrieve the order status if the order exists\n const orderStatus = order && order.OrderStatus;\n\n // Get the object status if orderStatus is a number\n const objectStatus = typeof orderStatus === 'number' && getOrderStatus(orderStatus);\n\n // Check if the orders have changed or if it's a replace action\n const hasOrdersChanged = orderStatusProcessed && accountOrders.length !== originalOrders.length;\n const isReplaceAction = action === 'replace' && accountOrders.length === originalOrders.length;\n\n // Set the order fill response if either condition is met\n if ((order && hasOrdersChanged) || isReplaceAction) {\n setOrderFillResponse({\n orderStatus: { status: objectStatus && objectStatus.status },\n response: true,\n });\n }\n }, [accountOrders, orderStatusProcessed, latestOrderId, action, originalOrders.length]);\n\n const onWarningAccepted = useCallback(() => {\n setWarningNotAccepted(!warningNotAccepted);\n }, [warningNotAccepted, setWarningNotAccepted]);\n\n const saveDisabled = useMemo(() => isSaving || warningNotAccepted === true, [isSaving, warningNotAccepted]);\n\n const orderQuote = useQuote(order && order.UnderlyingSymbol ? order.UnderlyingSymbol : '');\n const orderAssetClass = useMemo(() => {\n if (order && order.UnderlyingSymbol && orderQuote) {\n const { AssetClass } = orderQuote;\n return AssetClass;\n }\n return '';\n }, [order && order.UnderlyingSymbol, orderQuote]);\n\n const isMutualFund: boolean = useMemo(() => {\n if (order && order.UnderlyingSymbol) {\n return order.UnderlyingSymbol.startsWith(':');\n }\n return false;\n }, [order]);\n\n const isBond = useMemo(() => {\n return orderAssetClass === 16 ? true : false;\n }, [orderAssetClass]);\n\n return (\n \n \n {(isCancelOrder ? 'Cancel' : 'Confirm') + ' Order'}\n \n \n \n\n {orderStatusProcessed && orderFillResponse.response && orderFillResponse.orderStatus.status !== false && (\n
    \n Order processed with status {String(orderFillResponse.orderStatus.status).toUpperCase()}.\n
    \n See Activity Block → Orders Tab for more information.\n
    \n )}\n {orderStatusProcessed === true &&\n orderFillResponse.orderStatus.status === false &&\n orderFillResponse.response === true && <>}\n\n {ableToChangeCommission && !isCancelOrder && (\n \n )}\n {ableToBypassMargin && }\n
    \n \n \n \n {isMutualFund && (\n
    \n
    \n Alert!\n

    \n Mutual fund orders are not currently supported by our new dashboard. Please use our Legacy platform for\n the time being. Thank you.\n

    \n
    \n
    \n )}\n {isBond && (\n
    \n
    \n Alert!\n

    \n Bond orders are not currently supported by our new dashboard. Please contact our Trade Desk for the time\n being. Thank you.\n

    \n \n
    \n
    \n )}\n
    \n );\n};\n\nexport const OrderPreviewPopup: React.FC = ({\n isCancelOrder,\n show,\n previewClosed,\n action,\n orderValue,\n}) => {\n const { order } = useOrderPreviewOrder(action);\n return (\n <>\n {order && (\n \n )}\n \n );\n};\n\nexport const orderFillResponseStyle = {\n backgroundColor: 'var(--blue-dark)',\n padding: '20px',\n borderRadius: '5px',\n fontSize: '16px',\n textAlign: 'center',\n margin: '0 auto',\n marginTop: '20px',\n marginBottom: '20px',\n} as object;\n","import React, { useMemo } from 'react';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport { getProfitLoss, isInfinity } from '@tradingblock/api';\nimport { OrderAction, isCustomStrategy, NumberOrInfinity, Legs } from '@tradingblock/types';\nimport { InfinityIcon, Number } from '@tradingblock/components';\nimport { useOrderData, OrderState, useOrderStrategy } from '../state/OrderState';\nimport { useOrderStatus } from '../data/useOrderStatus';\nimport { useOrderTotal } from '../hooks/useOrderTotal';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nconst legAndQuantitySelector = createCachedSelector(\n (s: OrderState, { blockId, price }: { blockId: string; price: number }) => s.legs,\n (s: OrderState) => s.quantity,\n (s: OrderState) => s.action,\n (s: OrderState, { blockId, price }: { blockId: string; price: number }) => price,\n (legs: Legs, quantity: number, action: OrderAction, price: number) => {\n return {\n Legs: _.values(legs),\n Quantity: quantity,\n action,\n price,\n commission: 0,\n };\n }\n)((s: OrderState, { blockId, price }: { blockId: string; price: number }) => `legQuantity${blockId}`);\n\nconst useOrderDataForProfitLoss = () => {\n const { total } = useOrderTotal();\n\n const blockId = useBlockId();\n const orderPartial = useOrderData(s => legAndQuantitySelector(s, { blockId, price: total || 0 }));\n\n return orderPartial;\n};\n\nconst useProfitLoss = () => {\n const orderData = useOrderDataForProfitLoss();\n const strategy = useOrderStrategy();\n const quotes = useOrderData(s => s.quotes);\n const profitloss = useMemo(\n () => (strategy && !isCustomStrategy(strategy) ? getProfitLoss(strategy.info.Name, orderData, quotes) : undefined),\n [strategy, orderData]\n );\n return profitloss;\n};\n\nconst PriceOrInfinity: React.FC<{ value: NumberOrInfinity }> = ({ value }) => {\n return isInfinity(value) ? : ;\n};\n\nexport const ProfitLoss: React.FC<{}> = () => {\n const profitLossValues = useProfitLoss();\n const { complete } = useOrderStatus();\n\n return (\n

    \n {profitLossValues && complete && (\n <>\n \n Max profit: \n {' '}\n \n Max loss: \n \n \n )}\n

    \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { useMemo, useEffect } from 'react';\r\nimport createCachedSelector from 're-reselect';\r\nimport _ from 'lodash';\r\nimport { useWhyDidYouUpdate, BoldNumber, ContactPhone } from '@tradingblock/components';\r\nimport { DebitOrCredit, OrderType, TradingblockOrder } from '@tradingblock/types';\r\nimport { useOrderData, OrderState, useOrderBlockData } from './state/OrderState';\r\nimport { OrderSelectors } from './state/OrderSelector';\r\nimport { useOrderTotal } from './hooks/useOrderTotal';\r\nimport { OrderPreviewPopup } from './components/Preview/PreviewPopup';\r\nimport { ProfitLoss } from './components/ProfitLoss';\r\nimport { useOrderPreview } from './components/Preview/useOrderPreview';\r\nimport { useQuote } from '../../hooks/useFeedQuote';\r\nimport Config from '../../config';\r\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\r\n\r\nconst OrderFooterPrice = () => {\r\n const { total, debitCredit, marginCost } = useOrderTotal();\r\n const totalInfo = useMemo(() => {\r\n const isDebit = debitCredit === DebitOrCredit.Debit;\r\n const priceVal = _.isNumber(total) ? Math.abs(total) : total;\r\n return isDebit\r\n ? {\r\n text: 'Est. Debit',\r\n directionClass: 'neg',\r\n price: priceVal,\r\n }\r\n : {\r\n text: 'Est. Credit',\r\n directionClass: 'pos',\r\n price: priceVal,\r\n };\r\n }, [total, debitCredit]);\r\n\r\n return (\r\n <>\r\n \r\n {totalInfo.text}\r\n \r\n \r\n \r\n \r\n \r\n {' Standard Est. Margin'}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst isOrderValidSelector = createCachedSelector(\r\n (s: OrderState, blockId: string) => s.validation.valid,\r\n (s: OrderState, blockId: string) => {\r\n const legs = s.legs;\r\n if (_.isNil(legs) || _.values(legs).length === 0) {\r\n return false;\r\n }\r\n return _.every(legs, ({ OptionType, Strike, Expiration, SpreadRatio }) => {\r\n if (_.isNil(OptionType)) {\r\n return true;\r\n } else {\r\n return _.every([Strike, Expiration, SpreadRatio], v => !_.isNil(v));\r\n }\r\n });\r\n },\r\n (valid, complete) => {\r\n return { valid, complete };\r\n }\r\n)((s: OrderState, blockId: string) => blockId);\r\n\r\nexport const OrderFooter: React.FC<{ symbol: string; noExpirations?: boolean }> = ({ noExpirations }) => {\r\n const {\r\n isPreview,\r\n togglePreview,\r\n previewClosed,\r\n audio: { successAudio, errorAudio },\r\n } = useOrderPreview();\r\n\r\n const message = useOrderData(s => s.validation.message);\r\n const previewEnabled = useOrderData(s => s.preview.enabled);\r\n const tbOrder = useOrderBlockData(OrderSelectors.order);\r\n const tbOrderLegs = useOrderBlockData(OrderSelectors.legs);\r\n const orderQuote = useQuote(tbOrder.UnderlyingSymbol ? tbOrder.UnderlyingSymbol : '');\r\n const { muteAllSounds } = useDashboardSettings();\r\n const orderAssetClass = useMemo(() => {\r\n if (tbOrder.UnderlyingSymbol && orderQuote) {\r\n const { AssetClass } = orderQuote;\r\n return AssetClass;\r\n }\r\n return '';\r\n }, [tbOrder.UnderlyingSymbol, orderQuote]);\r\n const [isPriceValid, setIsPriceValid] = React.useState(false);\r\n\r\n const isMutualFund = useMemo(() => {\r\n return tbOrder && tbOrder.UnderlyingSymbol && tbOrder.UnderlyingSymbol.startsWith(':') && tbOrderLegs.length > 0;\r\n }, [tbOrder]);\r\n\r\n const isBond = useMemo(() => {\r\n return orderAssetClass === 16 && tbOrderLegs.length > 0 ? true : false;\r\n }, [orderAssetClass]);\r\n\r\n useWhyDidYouUpdate('OrderFooter', { message, previewEnabled });\r\n\r\n // need to perform price validation before preview is enabled\r\n // market and market on close orders do not require a price or stop price to be valid\r\n // limit orders require a price to be valid\r\n // stop orders require a stop price to be valid\r\n // stop limit orders require a price and stop price to be valid\r\n\r\n const validatePrice = (order: TradingblockOrder) => {\r\n const { Price, Stop } = order;\r\n if (order.OrderType === OrderType.Market || order.OrderType === OrderType.Market_On_Close) {\r\n return setIsPriceValid(true);\r\n } else if (order.OrderType === OrderType.Limit) {\r\n return setIsPriceValid(_.isNumber(Price));\r\n } else if (order.OrderType === OrderType.Stop_Market) {\r\n return setIsPriceValid(_.isNumber(Stop));\r\n } else if (order.OrderType === OrderType.Stop_Limit) {\r\n return setIsPriceValid(_.isNumber(Price) && _.isNumber(Stop));\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n // need to perform validatePrice\r\n // if the order is valid, then enable preview\r\n // if the order is invalid, then disable preview\r\n useEffect(() => {\r\n if (tbOrder) {\r\n validatePrice(tbOrder);\r\n }\r\n }, [tbOrder.Price, tbOrder.Stop, tbOrder.OrderType]);\r\n\r\n return (\r\n <>\r\n {!muteAllSounds && successAudio}\r\n {!muteAllSounds && errorAudio}\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {isMutualFund && (\r\n
    \r\n Alert!\r\n

    Please use our Legacy platform to place your mutual fund order. Thank you.

    \r\n
    \r\n )}\r\n {isBond && (\r\n
    \r\n Alert!\r\n

    Please contact our Trade Desk to place your bond order. Thank you.

    \r\n \r\n
    \r\n )}\r\n \r\n Preview \r\n \r\n
    \r\n {isPreview && }\r\n \r\n );\r\n};\r\n","import React, { useMemo, useEffect, useCallback } from 'react';\n// import useThrottle from 'react-use/lib/useThrottle';\nimport _ from 'lodash';\nimport createCachedSelector from 're-reselect';\nimport useMount from 'react-use/lib/useMount';\nimport { BlockBody, Loading, EmptyBlockContent, useWhyDidYouUpdate } from '@tradingblock/components';\nimport { AssetType, BlockType } from '@tradingblock/types';\nimport { orderLegOccSymbol } from '@tradingblock/api';\nimport { OrderState } from './state/OrderState';\nimport { useOrderState } from './state/useOrderState';\nimport { OrderBlockSettingsFields } from './state/OrderSettings';\nimport { orderBlockSymbols } from './data/orderSelectors';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { useQuoteSymbolSubscription } from '../../hooks/useQuoteData';\nimport { useOrderBlockGroupHandler } from './hooks/useOrderBlockGroupHandler';\nimport { useOrderSettings } from './hooks/useOrderSettings';\nimport { Block } from '../../components/blocks/Block';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { OrderHeaderMemo } from './OrderHeader';\nimport { OrderContent } from './OrderContent';\nimport { OrderFooter } from './OrderFooter';\nimport { getBlockProps } from '../../utilities/block';\nimport { useGroupState } from '../useGroupState';\n\nconst useOrderQuoteSymbolSubscription = () => {\n const blockId = useBlockId();\n useQuoteSymbolSubscription(s => orderBlockSymbols(s, blockId));\n};\n\nconst Content: React.FC<{}> = () => {\n const [assetSymbol] = useGroupState('symbol');\n const isLoaded = useOrderState('isLoaded');\n const legs = useOrderState('legs');\n useOrderBlockGroupHandler();\n useOrderQuoteSymbolSubscription();\n useWhyDidYouUpdate('OrderContent', { isLoaded, assetSymbol });\n\n const hasOptionLegs = useMemo(() => {\n return _.some(legs, leg => leg.AssetType === AssetType.Option);\n }, [legs]);\n\n const [noExpirations, setNoExpirations] = React.useState(false);\n\n useEffect(() => {\n if (!hasOptionLegs) {\n setNoExpirations(false);\n }\n }, [hasOptionLegs]);\n\n return (\n <>\n \n {assetSymbol ? (\n <>\n \n \n ) : (\n {isLoaded ? 'Enter symbol above.' : }\n )}\n \n \n \n );\n};\n\nexport const OrderBlock: React.FC<{}> = () => {\n const settings = useOrderSettings();\n const { dispatcher } = useDispatcher();\n const [initialLogin, setInitialLogin] = React.useState(true);\n\n useEffect(() => {\n if (initialLogin) {\n settings.weeklyExpirations = true;\n settings.monthlyExpirations = true;\n settings.quarterlyExpirations = true;\n settings.yearlyExpirations = true;\n setInitialLogin(false);\n }\n }, []);\n\n useMount(() => dispatcher.data.positions.request());\n const blockprops = useMemo(() => getBlockProps(BlockType.Order, ), []);\n return (\n \n \n \n );\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect } from 'react';\nimport { useWhyDidYouUpdate } from '@tradingblock/components';\nimport { useOrderActions } from '../state/useOrderActions';\nimport { OrderActions } from '../state/OrderActions';\nimport { useBlockGroupField, useBlockGroupInfo } from '../../useGroupState';\nimport { GroupManager } from '../../../context/GroupManager';\nimport { useBlockActionDispatch } from '../../../components/blocks/BlockState';\nimport { GenericBlockActionTypes } from '../../../components/blocks/state/BlockState';\n\nexport const useOrderBlockGroupHandler = () => {\n const { blockId, groupId } = useBlockGroupInfo();\n const { setSymbol, handleOrderGroupChange } = useOrderActions();\n const dispatch = useBlockActionDispatch>();\n const symbolValue = useBlockGroupField('symbol');\n\n useEffect(() => {\n if (groupId) {\n GroupManager.attach({ blockId, groupId, dispatch }, true);\n setSymbol(symbolValue, true, { persist: false });\n }\n\n return () => {\n GroupManager.detach(blockId);\n };\n }, [groupId]);\n // const onOrderChange = useCallback(\n // (order: BlockGroupOrderInfo | undefined, groupId?: string) => {\n // // try to add new order leg with custom strategy\n // const symb = symbolValue;\n // if (symb === undefined) {\n // console.warn('ignoreing order group change because symbol is undefined');\n // return;\n // }\n // if (order && orderGroupId === groupId) {\n // //const symb = order.symbol || symbolValue;\n // handleOrderGroupChange(symb, { ...order, strategy: order.strategy || { info: { Name: 'Custom' } } });\n // }\n // setOrderGroupId(groupId);\n // },\n // [symbolValue]\n // );\n // const onGroupIdChange = useCallback(\n // (val?: string, groupId?: string) => {\n // if (orderGroupId !== groupId) {\n // GroupManager.detach(blockId);\n // }\n\n // GroupManager.attach({ blockId, groupId: val || groupId || orderGroupId, dispatch }, true);\n // setOrderGroupId(groupId);\n // console.log('setting symbol to', symbolValue);\n // setSymbol(symbolValue, false);\n // },\n // [symbolValue]\n // );\n useWhyDidYouUpdate('useOrderBlockGroupHandler', { setSymbol, handleOrderGroupChange, symbolValue });\n //useGroupStateHandler('symbol', onSymbolChange, { fireOnGroupChange: true, fireOnUndefined: true });\n // useGroupStateHandler('order', onOrderChange, { fireOnGroupChange: false });\n //useGroupStateHandler('groupId', onGroupIdChange, { fireOnGroupChange: false });\n};\n","import { useContext, useMemo } from 'react';\nimport _ from 'lodash';\nimport { BlockStateContext } from './BlockState';\n\nexport function useActiveBlockTab() {\n const { tabs } = useContext(BlockStateContext);\n const res = useMemo(() => {\n if (tabs === undefined) {\n return {\n title: \"Trades\",\n active: true,\n }\n }\n const active = _.find(tabs || [], t => t.active === true);\n return active ? active : undefined;\n }, [tabs]);\n return res;\n}\n","import React from 'react';\nimport { OrderStatusToString } from './util';\n\nexport const ActivityOrderStatusWrapper: React.FunctionComponent<{ status?: number }> = ({ status, children }) => {\n return (\n <>\n
    {children}
    \n \n );\n};\n","import {\r\n OrderStatusToString,\r\n isFilledOrderStatus,\r\n isPartialOrderStatus,\r\n getFilledQuantity,\r\n ActivityStatusMessage,\r\n isPartiallyCancelledOrderStatus,\r\n} from '../../util';\r\nimport React, { FC } from 'react';\r\nimport { OrderActivity, OrderLeg, OrderStatus } from '@tradingblock/types';\r\nimport { ActivityOrderStatusWrapper } from '../../ActivityOrderStatusWrapper';\r\nimport { isErrorActivity } from '../../../../utilities/activity';\r\nimport _ from 'lodash';\r\nimport { orderstate } from '../../../Order/state/transforms/orderStateTransforms';\r\n\r\nconst getLegFilledTotal = (l: OrderLeg, orderQuantity: number, orderStatus: number | undefined) => {\r\n const filledStatus = isFilledOrderStatus(orderStatus);\r\n const { SpreadRatio } = l;\r\n if (filledStatus) {\r\n return orderQuantity * (SpreadRatio || 1);\r\n }\r\n return l.LegFillQuantity || 0;\r\n};\r\n\r\nconst OrderLegsStatus: FC<{ legs: OrderLeg[]; orderQuantity: number; orderStatus: number | undefined }> = ({\r\n legs,\r\n orderQuantity,\r\n orderStatus,\r\n}) => {\r\n const maxInd = _.size(legs) - 1;\r\n return (\r\n <>\r\n {_.map(legs, (l, ind) => {\r\n const filledQuantity = getLegFilledTotal(l, orderQuantity, orderStatus);\r\n const totalQuantity = (l.SpreadRatio || 1) * orderQuantity;\r\n return (\r\n
    \r\n {`${filledQuantity} / ${totalQuantity}`}\r\n {maxInd > ind &&
    }\r\n
    \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport const OrderActivityStatus: FC<{ activity: OrderActivity }> = ({ activity }) => {\r\n const { OrderStatus, Legs, Quantity } = activity;\r\n const status = OrderStatusToString(OrderStatus);\r\n const filledStatus = isFilledOrderStatus(OrderStatus);\r\n const partialStatus = isPartialOrderStatus(OrderStatus);\r\n const partiallyCancelledStatus = isPartiallyCancelledOrderStatus(OrderStatus);\r\n let statusClass = undefined;\r\n const statusMore = ActivityStatusMessage(activity);\r\n let statusValue = status;\r\n if (filledStatus) {\r\n statusClass = 'pos';\r\n } else if (partialStatus || partiallyCancelledStatus) {\r\n statusClass = 'pending';\r\n } else if (isErrorActivity(activity)) {\r\n statusValue = 'Error';\r\n statusClass = 'neg';\r\n }\r\n\r\n const showLegStatus = isErrorActivity(activity) === true ? false : true;\r\n const showLegMore = showLegStatus || statusMore;\r\n return (\r\n \r\n {statusValue}\r\n {showLegMore && (\r\n <>\r\n
    \r\n {(filledStatus || partialStatus) && (\r\n \r\n )}\r\n {!filledStatus && !partialStatus && statusMore && <>{statusMore}}\r\n \r\n )}\r\n\r\n {/* {statusMore && <>{statusMore}} */}\r\n
    \r\n );\r\n};\r\n","import createCachedSelector from 're-reselect';\nimport dayjs from 'dayjs';\nimport { ActivityState } from './ActivityState';\nimport { ActivityTimeframes } from '@tradingblock/types';\nimport _ from 'lodash';\n\nexport const TimeframePresetValues = (startOfToday: dayjs.Dayjs, endOfToday: dayjs.Dayjs) => {\n const today = {\n text: 'Today',\n timeframeKey: ActivityTimeframes.Today,\n start: startOfToday,\n end: endOfToday,\n };\n return {\n today,\n all: [\n today,\n {\n text: 'Week',\n timeframeKey: ActivityTimeframes.Week,\n start: dayjs(startOfToday).subtract(1, 'week'),\n end: endOfToday,\n },\n {\n text: 'Month',\n timeframeKey: ActivityTimeframes.Month,\n start: dayjs(startOfToday).subtract(1, 'month'),\n end: endOfToday,\n },\n {\n text: 'Year',\n timeframeKey: ActivityTimeframes.Year,\n start: dayjs(startOfToday).subtract(1, 'year'),\n end: endOfToday,\n },\n {\n text: '3y',\n timeframeKey: ActivityTimeframes['Three Years'],\n start: dayjs(startOfToday).subtract(3, 'year'),\n end: endOfToday,\n },\n ],\n };\n};\n\nexport const ActivityTimeFrameSelector = createCachedSelector(\n ({ startDate, endDate }: ActivityState, blockId: string, defaultTimeframe: ActivityTimeframes | undefined) => ({\n defaultTimeframe,\n startDate,\n endDate,\n }),\n ({ startDate, endDate, defaultTimeframe }) => {\n const startOfToday = dayjs().startOf('day');\n const endOfToday = dayjs().endOf('day');\n const { all, today } = TimeframePresetValues(startOfToday, endOfToday);\n\n const presetValue = defaultTimeframe ? all.find(tp => tp.timeframeKey === defaultTimeframe) : undefined;\n if (_.isNil(startDate) && _.isNil(endDate)) {\n if (_.isNil(presetValue)) {\n return {\n startDate: today.start ? today.start.toDate() : undefined,\n endDate: today.end ? today.end.toDate() : undefined,\n };\n }\n return {\n startDate: presetValue.start ? presetValue.start.toDate() : undefined,\n endDate: presetValue.end ? presetValue.end.toDate() : undefined,\n };\n }\n\n return { startDate, endDate };\n }\n)((state, blockId) => blockId);\n","import { SettingsFields } from '../../components/form/GenericField';\nimport { ActivitySettings, ActivityTimeframes } from '@tradingblock/types';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport { blockSettings } from '../../data/global/selectors/settingSelectors';\nimport _ from 'lodash';\n\nexport const ActivitySettingsFields: SettingsFields = {\n timeframe: {\n type: 'choice',\n values: _.map(\n [\n ActivityTimeframes.Today,\n ActivityTimeframes.Week,\n ActivityTimeframes.Month,\n ActivityTimeframes.Year,\n ActivityTimeframes['Three Years'],\n ],\n tf => {\n return {\n value: tf,\n label: ActivityTimeframes[tf],\n };\n }\n ),\n },\n};\n\nexport const useActivitySettings = () => {\n // const settings = useBlockSettings();\n //return settingsWithDefaults;\n const blockId = useBlockId();\n const current = useStateSelector(s => blockSettings.activity(s, blockId));\n return {\n current: current,\n definitions: ActivitySettingsFields,\n };\n};\n\nexport const useActivitySettingsValue = (): ActivitySettings => {\n // const settings = useBlockSettings();\n //return settingsWithDefaults;\n const { current } = useActivitySettings();\n return current || { timeframe: undefined, workingOrdersOnly: false };\n};\n\nexport const useActivityBlockData = () => {\n const blockId = useBlockId();\n const blockState = useStateSelector(s => s.account.ordersUIState[blockId]);\n if (!blockState) {\n return { pageSize: 50, pageIndex: 0, total: 0 };\n }\n return {\n pageSize: blockState.pageSize || 50,\n pageIndex: blockState.pageIndex || 0,\n total: blockState.total,\n };\n};\n","import dayjs from 'dayjs';\nimport { useMemo } from 'react';\nimport { TimeframePresetValues, ActivityTimeFrameSelector } from '../state/ActivitySelector';\nimport { useActivitySettingsValue } from '../useActivitySettings';\nimport { useActivityDataSelector } from '../state/ActivityState';\nimport { useBlockId } from '../../../components/blocks/BlockState';\n\nexport const useActivityTimeframes = () => {\n const startOfToday = dayjs().startOf('day');\n const endOfToday = dayjs().endOf('day');\n const { all, today } = useMemo(() => {\n return TimeframePresetValues(startOfToday, endOfToday);\n }, [startOfToday, endOfToday]);\n return { presets: all };\n};\n\nexport const useActivityTimeframeValues = () => {\n const blockId = useBlockId();\n const { timeframe } = useActivitySettingsValue();\n const { startDate, endDate } = useActivityDataSelector(s => ActivityTimeFrameSelector(s, blockId, timeframe));\n // Bad hack to memoize the date strings so that the datepicker doesn't re-render on every date reference change, even if same date\n const startDateString = useMemo(() => (startDate instanceof Date ? startDate.toISOString() : new Date()), [startDate]);\n const endDateString = useMemo(() => (endDate instanceof Date ? endDate.toISOString() : new Date()), [endDate]);\n\n const memoStart = useMemo(() => startDate, [startDateString]);\n const memoEnd = useMemo(() => endDate, [endDateString]);\n return { startDate: memoStart, endDate: memoEnd };\n};\n","import { OutputSelector, createSelector } from 'reselect';\nimport _ from 'lodash';\nimport { HistoryItem, IBlockDataState, Order } from '@tradingblock/types';\nimport { useBlockData } from '../../../components/blocks/BlockState';\nimport { WithTables } from '../../../components/blocks/state/blockTable/BlockTableState';\n\nexport interface ActivityState extends WithTables {\n startDate?: Date;\n endDate?: Date;\n history?: HistoryItem[];\n order?: Order[];\n}\n\nexport const InitialState: ActivityState = {\n startDate: undefined,\n endDate: undefined,\n isDirty: false,\n tables: {},\n};\ntype Selector = OutputSelector T>;\ntype Transform = (res: ActivityState) => T;\nexport function useActivityData(selector: Selector | Transform, defaultVal?: T) {\n const data = useBlockData();\n const res = selector(data);\n return defaultVal && _.isNil(res) ? defaultVal : res;\n}\nexport function useActivityDataSelector(selector: (res: ActivityState) => T, defaultVal?: T) {\n const data = useBlockData();\n const select = createSelector(\n (s: ActivityState) => s,\n selector\n );\n const res = select(data);\n return defaultVal && _.isNil(res) ? defaultVal : res;\n}\n","import React from 'react';\nimport { isToday } from '@tradingblock/api';\nimport { BoldNumber, ResponsiveTd } from '@tradingblock/components';\nimport { Order, OrderStatuses } from '@tradingblock/types';\nimport dayjs from 'dayjs';\nimport _ from 'lodash';\nimport useDeepCompareEffect from 'react-use/lib/useDeepCompareEffect';\nimport useSWR from 'swr';\nimport { useApi } from '../../../context/Api';\nimport { accountIdSelector, subAccountIdSelector, useStateSelector } from '../../../data/global/dataSelectors';\nimport { getSpecificOrderMessages } from '../../../data/global/selectors/orderSelector';\nimport { OrderStatusToString } from '../util';\nimport { useSelector } from 'react-redux';\nimport { account } from '../../../data/global/selectors/accountSelectors';\n\nexport interface ActivityOrderEventsSubRowProps {\n row: Order;\n}\n\nexport default function ActivityOrderEventsSubRow({ row }: ActivityOrderEventsSubRowProps) {\n const api = useApi();\n const accountId = useStateSelector(accountIdSelector);\n const subaccountId = useStateSelector(subAccountIdSelector);\n const messages = useStateSelector(getSpecificOrderMessages(row.OrderId));\n const hasSubAccounts = useSelector(account.hasSubAccounts);\n\n const { data, error, mutate } = useSWR(\n {\n accountId: accountId,\n subaccountId: subaccountId,\n orderId: row.OrderId,\n includeOrderEvents: true,\n },\n api.order(accountId, subaccountId).get\n );\n\n useDeepCompareEffect(() => {\n //TODO: Remove this deep compare effect, since we really should not have to use it.\n mutate();\n }, [messages]);\n\n // Loading data\n if (!error && !data) {\n return (\n \n Loading...\n \n );\n }\n\n if (error) {\n return (\n \n Error...\n \n );\n }\n\n const sortedOrderEvents =\n data && data.payload && data.payload.items[0] && data.payload.items[0].OrderEvents\n ? _.sortBy(data.payload.items[0].OrderEvents, 'TimeStamp').reverse()\n : [];\n\n if (sortedOrderEvents.length === 0) {\n return (\n \n No events found.\n \n );\n }\n\n return (\n <>\n {sortedOrderEvents.map((orderEvent, i) => {\n return (\n \n \n {orderEvent.Description === 'Stock' || orderEvent.Description === 'Multileg'\n ? `${orderEvent.Symbol} ${orderEvent.Description}`\n : orderEvent.Description\n ? orderEvent.Description\n : orderEvent.Symbol}\n \n {row.OrderId}\n {hasSubAccounts && }\n \n {OrderStatusToString((orderEvent.OrderStatus as unknown) as number)}\n \n \n \n \n \n {orderEvent.OrderStatus === OrderStatuses.Filled && }\n \n \n \n {(orderEvent.OrderStatus === OrderStatuses.PartiallyFilled ||\n orderEvent.OrderStatus === OrderStatuses.Filled) && (\n <>\n
    \n {orderEvent.OrderStatus === OrderStatuses.PartiallyFilled ? 'Partial Fill' : 'Filled'}\n
    \n {orderEvent.FillQuantity}\n \n )}\n
    \n \n {dayjs(orderEvent.TimeStamp).format(\n isToday(orderEvent.TimeStamp) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A'\n )}\n \n \n \n );\n })}\n \n );\n}\n","import React, { useEffect } from 'react';\nimport { AssetType, OrderLeg } from '@tradingblock/types';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport { Directional } from '../../../components/symbol/Price';\nimport { Number } from '@tradingblock/components';\n\nexport const ActivityOrdersBidAsk: React.FC<{ val: OrderLeg; spreadName: string; legsLength: number }> = ({\n val,\n spreadName,\n legsLength,\n}) => {\n let bid = 0;\n let ask = 0;\n const quotes = useStateSelector(state => state.quotes.quoteMetadata);\n const spreads = useStateSelector(state => state.spread.spreadMetadata);\n\n // Show bid/ask for options and if the ask and bid is not 0\n if (\n spreads &&\n spreads.data &&\n spreads.data[spreadName] &&\n !(spreads.data[spreadName].Bid === 0 && spreads.data[spreadName].Ask === 0)\n ) {\n bid = spreads.data[spreadName].Bid;\n ask = spreads.data[spreadName].Ask;\n } else if (\n val.AssetType === AssetType.Equity &&\n legsLength === 1 &&\n quotes &&\n quotes.data &&\n quotes.data[val.Symbol] &&\n !(quotes.data[val.Symbol].AskPrice === 0 && quotes.data[val.Symbol].BidPrice === 0)\n ) {\n bid = quotes.data[val.Symbol].BidPrice;\n ask = quotes.data[val.Symbol].AskPrice;\n }\n\n return !(bid === 0 && ask === 0) ? (\n
    \n [\n \n \n \n   / \n \n \n \n ]\n
    \n ) : (\n <>\n );\n};\n","/* eslint-disable react/display-name */\r\nimport React, { useMemo, useCallback, useEffect, useState, Fragment } from 'react';\r\nimport _ from 'lodash';\r\nimport dayjs from 'dayjs';\r\nimport { Row, Cell } from 'react-table';\r\nimport {\r\n BoldNumber,\r\n CellWithExpandedToggleProps,\r\n Column,\r\n EmptyBlockContent,\r\n FrozenHeaderTable,\r\n Loading,\r\n useTableColumnWidths,\r\n} from '@tradingblock/components';\r\nimport {\r\n OrderLeg,\r\n Order,\r\n AssetType,\r\n OrderStatuses,\r\n OrderActivity,\r\n SizeType,\r\n SpreadType,\r\n OrderStrategyTypeId,\r\n OrderStrategyType,\r\n} from '@tradingblock/types';\r\nimport {\r\n toAssetSymbol,\r\n AssetTypeToSymbolType,\r\n OrderStatusCategories,\r\n getLocalDateFromTimezone,\r\n} from '@tradingblock/api';\r\nimport { BlockAction, useBlockId, useBlockMetadata } from '../../../components/blocks/BlockState';\r\nimport {\r\n dashboardIdSelector,\r\n isIndexMarketOpenSelector,\r\n isMarketOpenSelector,\r\n useStateSelector,\r\n} from '../../../data/global/dataSelectors';\r\nimport { areOrdersLoaded, getOrdersByBlockId } from '../../../data/global/selectors/orderSelector';\r\nimport { isBetween, isToday, orderCanBeFilledDuringIndexMarketTimes } from '../../../utilities/date';\r\nimport {\r\n OrderStatusToString,\r\n detailFormattor,\r\n isCancelledOrderStatus,\r\n isNewOrPartialOrderStatus,\r\n isFilledOrderStatus,\r\n formatOrderLeg,\r\n formatOrderPrice,\r\n} from '../util';\r\nimport { ActivityOrderStatusWrapper } from '../ActivityOrderStatusWrapper';\r\nimport { useActiveBlockTab } from '../../../components/blocks/BlockAccessors';\r\nimport { useDispatcher } from '../../../data/global/hooks';\r\nimport {\r\n CancelOrderButton,\r\n ReplaceOrderButton,\r\n OrderActionButton,\r\n} from '../../../components/blocks/actions/OrderActionButtons';\r\nimport { useBlockGroupInfo } from '../../useGroupState';\r\nimport { useOrderCopyAction } from '../../../components/blocks/hooks/useOrderBlock';\r\nimport { OrderActivityStatus } from './orders/OrderActivityStatus';\r\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\r\nimport { PositionDropdown } from '../../Positions/components/PositionDropdown';\r\nimport ActivityOrderEventsSubRow from './ActivityOrderEventsSubRow';\r\nimport { useActivityBlockData, useActivitySettingsValue } from '../useActivitySettings';\r\nimport { Actions } from '../../../data/global/actions';\r\nimport { calculateEstCommission } from '../../Order/components/Preview/EstCommissionPreview';\r\nimport { account } from '../../../data/global/selectors/accountSelectors';\r\nimport { useSelector } from 'react-redux';\r\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\r\nimport { Spread } from '../ActivityContent';\r\nimport { ActivityOrdersBidAsk } from './ActivityOrdersBidAsk';\r\nimport { OrderStrategyIdToOrderStrategyName } from '../../Order/state/OrderStateToOrder';\r\n\r\nexport const ActivityOrdersTable: React.FC<{\r\n tabType: 'orders' | 'trades';\r\n onReplace: (order: Order) => void;\r\n onCancelOrder: (order: Order) => void;\r\n subscribedSpreads: Spread[];\r\n addSpread: (spread: Spread) => void;\r\n removeSpread: (spread: Spread) => void;\r\n}> = ({ tabType, onReplace, onCancelOrder, subscribedSpreads, addSpread, removeSpread }) => {\r\n const { groupId } = useBlockGroupInfo();\r\n const blockId = useBlockId();\r\n\r\n // Get the start and endDate\r\n const { startDate, endDate } = useActivityTimeframeValues();\r\n // get the orders\r\n const orderHistory = useStateSelector(getOrdersByBlockId(blockId));\r\n const tab = useActiveBlockTab();\r\n const subAccounts = useStateSelector(account.subAccounts);\r\n const shouldBeHighlighted = (row: Row>): string => {\r\n return isNewOrPartialOrderStatus(row.original.OrderStatus) ? 'row-link' : '';\r\n };\r\n const { workingOrdersOnly } = useActivitySettingsValue();\r\n const { dispatcher, dispatch } = useDispatcher();\r\n const dashboardId = useStateSelector(dashboardIdSelector);\r\n const { type } = useBlockMetadata();\r\n const settings = useStateSelector(s => blockSettings.position(s));\r\n\r\n const resetWorkingOrders = () => {\r\n const settingsSaveData = {\r\n dashboardId: dashboardId || '',\r\n blockId,\r\n blockType: type,\r\n blockSettings: {\r\n ...settings,\r\n workingOrdersOnly: false,\r\n },\r\n };\r\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\r\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\r\n };\r\n\r\n useEffect(() => {\r\n if (tabType) resetWorkingOrders();\r\n return () => {\r\n resetWorkingOrders();\r\n };\r\n }, [tabType]);\r\n\r\n const isLoaded = useStateSelector(areOrdersLoaded);\r\n const timeFilteredMessages = useMemo(() => {\r\n return _.filter(orderHistory, (n: OrderActivity) => {\r\n if (\r\n workingOrdersOnly ||\r\n (startDate as Date) === (endDate as Date) ||\r\n startDate === undefined ||\r\n endDate === undefined\r\n ) {\r\n return true;\r\n }\r\n return isBetween(n.Date, startDate, endDate);\r\n })\r\n .map(d => ({ ...d, display: { trClass: '' } }))\r\n .sort((a, b) => dayjs(b.Date).valueOf() - dayjs(a.Date).valueOf());\r\n // add display options to each row of data\r\n }, [endDate, orderHistory, startDate, workingOrdersOnly, tabType]);\r\n\r\n const data = useMemo(() => {\r\n return _.uniqBy(timeFilteredMessages, v => v.OrderId);\r\n }, [startDate, endDate, timeFilteredMessages, tab]);\r\n\r\n const commissionDetails = useStateSelector(s =>\r\n s.account.accountDetails ? s.account.accountDetails.commissions : undefined\r\n );\r\n const { pageSize, pageIndex, total } = useActivityBlockData();\r\n const isFetchingBlockOrders = useStateSelector(\r\n s => s.account.ordersUIState[blockId] && s.account.ordersUIState[blockId].isFetching\r\n );\r\n const hasSubAccounts = useSelector(account.hasSubAccounts);\r\n const initialState = useMemo(() => {\r\n const numPages = Math.ceil((total || 0) / pageSize);\r\n // check if the current pageIndex is out of bounds\r\n // current implementation does not track timeframe/tab for persistence\r\n // so we need to reset the tableState to default values in order to prevent an errored state\r\n const isPageIndexOutOfBounds = pageIndex > numPages - 1;\r\n if (isPageIndexOutOfBounds) {\r\n return {\r\n pageSize: 50,\r\n pageIndex: 0,\r\n sortBy: [],\r\n columnOrder: [],\r\n };\r\n }\r\n return {\r\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\r\n pageIndex: pageIndex || 0,\r\n sortBy: [],\r\n columnOrder: [],\r\n };\r\n }, [pageSize, pageIndex, total]);\r\n\r\n const pageCount = useMemo(() => {\r\n if (pageSize) {\r\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\r\n }\r\n return 0;\r\n }, [total, pageSize]);\r\n\r\n const onPage = useCallback((pageIndex: number) => {\r\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex, blockId }));\r\n }, []);\r\n\r\n const onPageSize = useCallback((pageSize: number) => {\r\n dispatch(Actions.setOrdersRequestPageSize({ pageSize, blockId }));\r\n }, []);\r\n\r\n const [tableStateColumnOrder, setTableStateColumnOrder] = useState([]);\r\n\r\n const renderSubRow = useCallback(\r\n (row, tableOptions: { size: SizeType }) => {\r\n return ;\r\n },\r\n [tableStateColumnOrder, isFetchingBlockOrders]\r\n );\r\n\r\n const getRowKey = useCallback((ord: Order) => {\r\n return _.toString(ord.OrderId || ord.ClientRefId || 'order');\r\n }, []);\r\n\r\n const getColumnOrder = useCallback(\r\n (columnOrder: string[]) => {\r\n setTableStateColumnOrder(columnOrder);\r\n },\r\n [setTableStateColumnOrder]\r\n );\r\n\r\n function arrayDifference(arr1: T[], arr2: T[], key: keyof T): T[] {\r\n const set2 = new Set(arr2.map(item => item[key]));\r\n return arr1.filter(item => !set2.has(item[key]));\r\n }\r\n\r\n function getEnumKeys(enumObj: any): string[] {\r\n return Object.keys(enumObj).filter(k => isNaN(parseInt(k)));\r\n }\r\n\r\n useEffect(() => {\r\n subUnsub(data, subscribedSpreads);\r\n }, [data, subscribedSpreads]);\r\n\r\n function subUnsub(data: any, subscribedSpreads: Spread[]) {\r\n if (data && data.length > 0) {\r\n let newSpreads: Spread[] = [];\r\n let existingSpreads: Spread[] = [];\r\n\r\n // Filter based on order status\r\n const filteredData = _(data)\r\n .filter(o => {\r\n const orderStatus = o.OrderStatus;\r\n switch (orderStatus) {\r\n case OrderStatuses.PartiallyFilled:\r\n case OrderStatuses.New:\r\n case OrderStatuses.Initiated:\r\n case OrderStatuses.Filled: {\r\n return true;\r\n }\r\n default:\r\n return false;\r\n }\r\n })\r\n .value();\r\n\r\n // See if any of the orders need to be subscribed\r\n // Only for known strategy types (see SpreadType)\r\n filteredData.forEach(row => {\r\n if (row.StrategyType) {\r\n const spreadTypeKey = getSpreadType(row.StrategyType);\r\n\r\n // if spreadtypekey is found, try to subscribe to the spread\r\n if (spreadTypeKey && row.UnderlyingSymbol) {\r\n const spreadType = SpreadType[spreadTypeKey as keyof typeof SpreadType];\r\n const { name, legArray } = getSpreadInfo(spreadType, row.Legs);\r\n const spreadDef: { name: string; type: SpreadType; Legs: { Symbol: string; AssetType: AssetType }[] } = {\r\n name: name,\r\n type: spreadType,\r\n Legs: legArray,\r\n };\r\n var findExistingSpread = subscribedSpreads.find(ds => ds['name'] === spreadDef['name']);\r\n // Add to new spread array if spread is not found, otherwise add to existing spread array\r\n if (!findExistingSpread) {\r\n newSpreads.push(spreadDef);\r\n } else {\r\n existingSpreads.push(spreadDef);\r\n }\r\n }\r\n }\r\n });\r\n\r\n // Check to see if anything needs to be unsubscribed\r\n let diff = arrayDifference(subscribedSpreads, [...existingSpreads, ...newSpreads], 'name');\r\n if (diff && diff.length > 0) {\r\n diff.forEach(spread => {\r\n removeSpread(spread);\r\n });\r\n }\r\n\r\n // If there are new spreads, subscribe\r\n if (newSpreads.length > 0) {\r\n newSpreads.forEach(spread => {\r\n addSpread(spread);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function getSpreadType(stragety: number) {\r\n const spreadTypeKeys = getEnumKeys(SpreadType);\r\n let sNum: number = stragety;\r\n return spreadTypeKeys.find(o => {\r\n if (sNum === 18 && o === SpreadType[0]) {\r\n // if 18 (CreateMyOwn) then return Custom SpreadType\r\n return true;\r\n } else {\r\n return o === OrderStrategyTypeId[sNum];\r\n }\r\n });\r\n }\r\n\r\n function getSpreadInfo(spreadType: number, legs) {\r\n let legArray: any[] = [];\r\n let name = '';\r\n if (spreadType !== SpreadType['Calendar']) {\r\n legs.forEach(val => {\r\n legArray = [...legArray, { Symbol: '.' + val.Symbol, AssetType: val.AssetType }];\r\n name += val.Symbol + '_0_0-';\r\n });\r\n name = name.slice(0, name.length - 1);\r\n } else {\r\n for (let i = legs.length - 1; i >= 0; i--) {\r\n let val = legs[i];\r\n legArray = [...legArray, { Symbol: '.' + val.Symbol, AssetType: val.AssetType }];\r\n name += val.Symbol + '_0_0-';\r\n }\r\n name = name.slice(0, name.length - 1);\r\n }\r\n name.replace(/\\./g, '');\r\n return { name, legArray };\r\n }\r\n\r\n const columns = useMemo(\r\n () => [\r\n {\r\n Header: 'Symbol',\r\n accessor: (a: Order) => {\r\n return (a.UnderlyingSymbol as string).toString();\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n id: 'expander',\r\n width: 1.5,\r\n Cell: ({ row }: CellWithExpandedToggleProps) => {\r\n return (\r\n \r\n {row.original.UnderlyingSymbol}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Order ID',\r\n id: 'OrderID',\r\n canSort: false,\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n Cell: ({ row }: Cell) => <>{row.original.OrderId},\r\n },\r\n {\r\n Header: 'Subaccount ID',\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n hide: !hasSubAccounts,\r\n accessor: (a: Order) => {\r\n return a.SubaccountId;\r\n },\r\n id: 'Subaccount ID',\r\n Cell: ({ row }: Cell) => {\r\n const subId = row.original.SubaccountId;\r\n if (subId && subAccounts) {\r\n const account = subAccounts.find(object => object['Id'] === subId && object['Nickname']);\r\n return <>{account ? account.Nickname : subId};\r\n }\r\n return null;\r\n },\r\n },\r\n {\r\n Header: 'Order Strategy',\r\n id: 'OrderStrategy',\r\n canSort: false,\r\n accessor: (a: OrderStrategyType) => {\r\n return a;\r\n },\r\n Cell: ({ row }: Cell) => (\r\n <>\r\n {row.original.StrategyType &&\r\n OrderStrategyIdToOrderStrategyName(parseInt(row.original.StrategyType.toString()))}\r\n \r\n ),\r\n },\r\n {\r\n Header: 'Order Details [Bid / Ask]',\r\n width: 3,\r\n canSort: false,\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n id: 'details',\r\n Cell: ({ row }: Cell): JSX.Element[] => {\r\n const { Legs, OrderStatus, UnderlyingSymbol, StrategyType } = row.original;\r\n let spreadType = SpreadType[getSpreadType(StrategyType) as keyof typeof SpreadType];\r\n if (!spreadType) spreadType = 0;\r\n const { name } = getSpreadInfo(spreadType, Legs);\r\n\r\n const legsLength = Legs.length;\r\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\r\n const indexMarketOpen = useStateSelector(s => isIndexMarketOpenSelector(s));\r\n const isAfterHours = orderCanBeFilledDuringIndexMarketTimes(UnderlyingSymbol, Legs)\r\n ? !indexMarketOpen\r\n : !marketOpen;\r\n const isNewOrInitiatedOrder =\r\n row.original.OrderStatus === OrderStatuses.New || row.original.OrderStatus === OrderStatuses.Initiated;\r\n if (UnderlyingSymbol === undefined) {\r\n return [<>No underlying symbol];\r\n }\r\n return [\r\n \r\n {Legs.map((val, index) => {\r\n return (\r\n \r\n \r\n
    \r\n {formatOrderLeg(val, detailFormattor(val, UnderlyingSymbol), row.original)} \r\n {index === 0 && }\r\n
    \r\n {legsLength - 1 === index && isAfterHours && isNewOrInitiatedOrder && (\r\n \r\n Warning: Order is queued for the next open trading session.\r\n \r\n )}\r\n
    \r\n
    \r\n );\r\n })}\r\n
    ,\r\n ];\r\n },\r\n },\r\n\r\n {\r\n Header: 'Order price',\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n accessor: (a: string) => {\r\n return a;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n id: 'order-price',\r\n width: 2.0,\r\n Cell: ({ row }: Cell) => {\r\n const { OrderStatus, UnderlyingSymbol } = row.original;\r\n if (UnderlyingSymbol === undefined) {\r\n return <>No underlying symbol;\r\n }\r\n return (\r\n \r\n {formatOrderPrice(row.original)}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Fill Price',\r\n accessor: (a: Order) => {\r\n return a.AverageFillPrice ? a.AverageFillPrice : 0;\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'alphanumeric',\r\n id: 'fill-price',\r\n Cell: ({ row }: Cell) => {\r\n const { OrderStatus } = row.original;\r\n\r\n return (\r\n \r\n {OrderStatus && [OrderStatuses.Filled].includes(OrderStatus) && row.original.AverageFillPrice && (\r\n \r\n )}\r\n \r\n );\r\n },\r\n },\r\n {\r\n Header: 'Est. Commission',\r\n canSort: false,\r\n id: 'estCommission',\r\n Cell: ({ row }: Cell) => {\r\n const order = row.original;\r\n let commission: number | undefined = undefined;\r\n\r\n if (commissionDetails && order) {\r\n let orderAssetQuantities = order.Legs.map(l => ({\r\n assetType: l.AssetType,\r\n quantity: l.LegFillQuantity ? l.LegFillQuantity : 0,\r\n }));\r\n let estCommission = calculateEstCommission(orderAssetQuantities, commissionDetails);\r\n commission = estCommission ? estCommission : 0;\r\n }\r\n if (commission === undefined) {\r\n console.warn('There was an issue calculating commission for the position in the activities block');\r\n }\r\n return ;\r\n },\r\n },\r\n {\r\n Header: 'Status',\r\n accessor: (a: Order) => OrderStatusToString(a.OrderStatus),\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortType: 'basic',\r\n id: 'status',\r\n Cell: ({ row }: Cell) => {\r\n return ;\r\n },\r\n },\r\n {\r\n Header: 'Updated on',\r\n width: 1.5,\r\n accessor: (a: Order) => {\r\n if (a.Date === undefined) return undefined;\r\n return getLocalDateFromTimezone(new Date(a.Date)).format('MM/DD/YY h:mm:ss.SSS A');\r\n },\r\n display: ({ row }: Cell) =>\r\n (isCancelledOrderStatus(row.original.OrderStatus) ? 'mute' : '') + ' ' + shouldBeHighlighted(row),\r\n canSort: true,\r\n sortDescFirst: true,\r\n sortInverted: true,\r\n id: 'updated_on',\r\n Cell: ({ row }: Cell) => {\r\n const orderDate = row.original.Date;\r\n if (orderDate) {\r\n return (\r\n \r\n {dayjs(orderDate).format(isToday(orderDate) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A')}\r\n \r\n );\r\n }\r\n return '';\r\n },\r\n sortType: 'basic',\r\n },\r\n {\r\n Header: 'Actions',\r\n width: 1.5,\r\n accessor: (a: Order) => a,\r\n id: 'actions',\r\n Cell: ({ row }: Cell) => {\r\n const { UnderlyingSymbol, OrderStatus, Legs } = row.original;\r\n const underSymb = UnderlyingSymbol || '';\r\n const assSymbol = toAssetSymbol(underSymb, AssetType.Equity, AssetTypeToSymbolType(AssetType.Equity), {\r\n name: underSymb,\r\n underlyingSymbol: underSymb,\r\n rootSymbol: underSymb,\r\n });\r\n const leg = _.map(Legs, l => ({ ...l }));\r\n const handleTradeOrder = useOrderCopyAction(\r\n { ...row.original, Legs: leg },\r\n assSymbol,\r\n { groupId },\r\n undefined,\r\n undefined,\r\n true\r\n );\r\n const isFilledOrCancelled = isCancelledOrderStatus(OrderStatus) || isFilledOrderStatus(OrderStatus);\r\n const isOpen = _.includes(OrderStatusCategories.Open, OrderStatus);\r\n let dateExtract;\r\n\r\n if (\r\n isLoaded &&\r\n row &&\r\n row.original &&\r\n row.original.Legs &&\r\n row.original.Legs.length > 0 &&\r\n row.original.Legs[0].Symbol\r\n ) {\r\n dateExtract = row.original.Legs[0].Symbol.split(' ')[1];\r\n }\r\n const encodingExtract = dateExtract && dateExtract.substring(0, 6);\r\n const encodingExpirationFormatted = encodingExtract\r\n ? encodingExtract.substring(2, 4) +\r\n '/' +\r\n encodingExtract.substring(4) +\r\n '/' +\r\n encodingExtract.substring(0, 2)\r\n : '';\r\n const isExpired =\r\n dayjs(encodingExpirationFormatted).isBefore(new Date().toDateString()) &&\r\n row.original.Legs[0].AssetType === 2;\r\n return (\r\n <>\r\n {OrderStatus && (\r\n <>\r\n {OrderStatusCategories.Cancellable.includes(OrderStatus) && (\r\n onCancelOrder(row.original)} />\r\n )}\r\n {OrderStatusCategories.Replaceable.includes(OrderStatus) && (\r\n onReplace(row.original)} />\r\n )}\r\n {(tabType === 'trades' || isFilledOrCancelled || isOpen) && !isExpired && (\r\n handleTradeOrder()} title=\"Duplicate order\" icon=\"fa-clone\" />\r\n )}\r\n \r\n )}\r\n \r\n );\r\n },\r\n },\r\n ],\r\n [groupId, tableStateColumnOrder, hasSubAccounts]\r\n );\r\n\r\n // if the user does not have subaccounts, hide the subaccount column\r\n if (!hasSubAccounts && _.find(columns, { id: 'Subaccount ID' })) {\r\n columns.splice(2, 1);\r\n }\r\n\r\n const columnWidths = useTableColumnWidths(columns as Column[]);\r\n\r\n return isFetchingBlockOrders ? (\r\n \r\n ) : data.length ? (\r\n \r\n ) : (\r\n No data for current timeframe.\r\n );\r\n};\r\n","/* eslint-disable @typescript-eslint/camelcase */\nimport React, { useCallback, useMemo } from 'react';\nimport { css } from 'react-with-styles';\nimport 'react-dates/initialize';\nimport 'react-dates/lib/css/_datepicker.css';\nimport dayjs from 'dayjs';\nimport { isSameDate } from '../../utilities/date';\nimport { useActivityTimeframes } from '../../blocks/Activity/data/useActivityTimeframe';\n\ninterface TimeframePresetsProps {\n startDate: Date | undefined;\n endDate: Date | undefined;\n handleDatesChange: (values: { startDate?: dayjs.Dayjs; endDate?: dayjs.Dayjs }) => void;\n}\n\nexport const TimeframePresets: React.FC = ({ startDate, endDate, handleDatesChange }) => {\n const startDateValue = useMemo(() => startDate && dayjs(startDate), [startDate]);\n const endDateValue = useMemo(() => endDate && dayjs(endDate), [endDate]);\n\n const { presets } = useActivityTimeframes();\n\n // This shouldn't go to prod. Need to work with Nick to figure out\n // How we should best style this\n // -- Paul\n const styles = {\n PresetDateRangePicker_panel: {\n display: 'flex',\n justifyContent: 'center',\n padding: '3px',\n flexWrap: 'wrap',\n },\n PresetDateRangePicker_button: {\n position: 'relative',\n height: '100%',\n textAlign: 'center',\n background: 'none',\n border: `2px solid rgb(0,166,153)`,\n color: 'rgb(0,166,153)',\n padding: '4px 12px',\n marginTop: 1,\n marginRight: 2,\n font: 'inherit',\n fontWeight: 700,\n lineHeight: 'normal',\n overflow: 'visible',\n boxSizing: 'border-box',\n cursor: 'pointer',\n\n ':active': {\n outline: 0,\n },\n },\n PresetDateRangePicker_button__selected: {\n color: 'white',\n background: 'rgb(0,166,153)',\n },\n };\n\n const handleOnClick = useCallback(\n ({ startDate, endDate }: { startDate: dayjs.Dayjs | undefined; endDate: dayjs.Dayjs | undefined }) => {\n handleDatesChange({ startDate, endDate });\n },\n [handleDatesChange]\n );\n\n return (\n
    \n {presets.map(({ text, start, end }) => {\n const isDefaultSelected = !start && !startDateValue && !end && !endDateValue;\n const sameEndDateOrUndefined =\n isSameDate(end, endDateValue) || (end === undefined && endDateValue === undefined);\n const isSelected = isDefaultSelected || (isSameDate(start, startDateValue) && sameEndDateOrUndefined);\n return (\n handleOnClick({ startDate: start, endDate: end })}\n >\n {text}\n \n );\n })}\n
    \n );\n};\n","/* eslint-disable @typescript-eslint/camelcase */\nimport React, { useState, useCallback, useMemo, useRef, useEffect } from 'react';\nimport { Popover, Overlay, OverlayTrigger } from 'react-bootstrap';\nimport ReactDates, { DayPickerRangeController } from 'react-dates';\nimport 'react-dates/initialize';\nimport 'react-dates/lib/css/_datepicker.css';\nimport dayjs from 'dayjs';\nimport moment from 'moment';\nimport { Button } from '@tradingblock/components';\nimport { TimeframeWrapper } from './TimeframeWrapper';\nimport { TimeframePresets } from './TimeframePresets';\nimport { daterangeToTimeframe } from '../../utilities/date';\n\ntype FocusedInputType = 'startDate' | 'endDate' | null;\n\ninterface TimeframeProps {\n initialStartDate?: Date;\n initialEndDate?: Date;\n btnClassName?: string;\n placeholderClassName?: string;\n caret?: JSX.Element;\n onSave: (start: Date | undefined, end: Date | undefined) => void;\n buttonId?: string;\n}\n\nexport const Timeframe: React.FunctionComponent = ({ initialStartDate, initialEndDate, btnClassName, placeholderClassName, caret, onSave, buttonId = '' }) => {\n const [focusedInput, setFocusedInput] = useState('startDate' as ReactDates.FocusedInputShape);\n\n const startDate = useMemo(() => (initialStartDate ? moment(initialStartDate) : null), [initialStartDate]);\n const endDate = useMemo(() => (initialEndDate ? moment(initialEndDate) : null), [initialEndDate]);\n\n const handleDatesChange = useCallback(({ startDate, endDate }: { startDate?: dayjs.Dayjs; endDate?: dayjs.Dayjs }) => {\n onSave(startDate ? startDate.toDate() : startDate, endDate ? endDate.toDate() : endDate);\n },\n [onSave]\n );\n\n const [presetDismiss, setPresetDismiss] = useState(false);\n useEffect(() => {\n return () => setPresetDismiss(false)\n }, [presetDismiss])\n\n const onPresetChange = useCallback(\n (preset: { startDate?: dayjs.Dayjs | undefined; endDate?: dayjs.Dayjs | undefined }) => {\n handleDatesChange(preset);\n setPresetDismiss(true);\n },\n [handleDatesChange, presetDismiss]\n );\n\n const onDatesChange = useCallback(\n (args: { startDate: moment.Moment | null; endDate: moment.Moment | null }) => {\n const start = args.startDate;\n const end = args.endDate;\n const startDate = start ? dayjs(start.toDate()) : undefined;\n const endDate = end ? dayjs(end.toDate()) : undefined;\n handleDatesChange({ startDate, endDate });\n },\n [handleDatesChange]\n );\n\n const onFocusChange = useCallback((focusedInput: FocusedInputType) => {\n setFocusedInput(!focusedInput ? 'startDate' : focusedInput);\n }, []);\n\n const calendarInfo = useCallback(() => {\n return ;\n }, [initialStartDate, initialEndDate, handleDatesChange]);\n\n return presetDismiss ? (\n setPresetDismiss(false)}\n id={buttonId}\n />) : (\n \n \n \n }\n >\n \n \n );\n};\n\ninterface TimeframeButtonProps extends Pick {\n onClick: any;\n startingDate?: Date;\n endingDate?: Date;\n id?: string;\n}\n\nconst TimeframeButton: React.FunctionComponent = ({ onClick, startingDate, endingDate, btnClassName, placeholderClassName, caret, id = '' }) => {\n const timeframe = useMemo(() => daterangeToTimeframe(startingDate && dayjs(startingDate), endingDate && dayjs(endingDate)), [startingDate, endingDate]);\n return (\n \n );\n};\n","import React from 'react';\nimport { useActivityActions } from '../state/ActivityActions';\nimport { Timeframe } from '../../../components/basic/Timeframe';\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\n\nexport const TimeframeContainer: React.FC<{ type?: string }> = ({ children, type }) => {\n const { startDate, endDate } = useActivityTimeframeValues();\n const { setTimeframe } = useActivityActions();\n\n let blockStyle = 'block-section block-section-fixed';\n\n //if key is present, remove block-section class\n if (type) {\n if (['activityBlockMessage', 'activityBlockTimeFrame'].includes(type)) {\n blockStyle = blockStyle.split(' ')[1].trim();\n }\n }\n\n return (\n
    \n
    \n
    \n }\n />\n
    \n {children}\n
    \n
    \n );\n};\n","import React, { FC, useCallback } from 'react';\r\nimport { OrderActivity } from '@tradingblock/types';\r\nimport { OrderStatusToString } from '../util';\r\nimport { getOrders, getOpenOrdersCount, getOrdersByBlockId } from '../../../data/global/selectors/orderSelector';\r\nimport { useStateSelector } from '../../../data/global/dataSelectors';\r\nimport { isBetweenInclusive } from '@tradingblock/api';\r\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\r\nimport { useBlockId } from '../../../components/blocks/BlockState';\r\n\r\nexport const ActivityOrderStats: FC<{}> = () => {\r\n const blockId = useBlockId();\r\n const accountHistory = useStateSelector(getOrdersByBlockId(blockId));\r\n const { startDate, endDate } = useActivityTimeframeValues();\r\n\r\n const countFilteredOrders = useCallback(\r\n (orders: OrderActivity[]) => (status: string) => {\r\n return orders.filter((order: OrderActivity) => {\r\n if (OrderStatusToString(order.OrderStatus) === status) {\r\n if ((startDate as Date) === (endDate as Date) || startDate === undefined || endDate === undefined) {\r\n return true;\r\n }\r\n const ordDate = order.Date;\r\n return ordDate ? isBetweenInclusive(ordDate, startDate, endDate) : false;\r\n }\r\n return false;\r\n }).length;\r\n },\r\n [startDate, endDate]\r\n );\r\n\r\n const getStatusCount = countFilteredOrders(accountHistory);\r\n const filledCount = getStatusCount('Filled');\r\n const cancelledCount = getStatusCount('Cancelled');\r\n const openCount = useStateSelector(s => getOpenOrdersCount(s));\r\n return (\r\n
    \r\n
      \r\n
    • Open: {openCount === 0 ? 0 : openCount}
    • \r\n
    • \r\n Filled: {filledCount === 0 ? 0 : filledCount}\r\n
    • \r\n
    • \r\n Cancelled: {cancelledCount === 0 ? 0 : cancelledCount}\r\n
    • \r\n
    \r\n
    \r\n );\r\n};\r\n","import React, { FC, useContext } from 'react';\nimport { TimeframeContainer } from './TimeframeContainer';\nimport { ActivityOrderStats } from './ActivityOrderStats';\nimport { BasicCheckboxInput } from '@tradingblock/components';\nimport { BlockAction, BlockActionContext, useBlockMetadata } from '../../../components/blocks/BlockState';\nimport { dashboardIdSelector, useStateSelector } from '../../../data/global/dataSelectors';\nimport { blockSettings } from '../../../data/global/selectors/settingSelectors';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { useActivitySettingsValue } from '../useActivitySettings';\n\nexport const ActivityOrderTimeframe: FC<{ tabType: string }> = ({ tabType }) => {\n\n const dispatch = useContext(BlockActionContext);\n const { dispatcher } = useDispatcher();\n const dashboardId = useStateSelector(dashboardIdSelector);\n const { blockId, type } = useBlockMetadata();\n const settings = useStateSelector(s => blockSettings.position(s));\n const { workingOrdersOnly } = useActivitySettingsValue();\n\n const handleChecked = () => {\n const settingsSaveData = {\n dashboardId: dashboardId || '',\n blockId,\n blockType: type,\n blockSettings: {\n ...settings,\n workingOrdersOnly: !workingOrdersOnly\n },\n };\n dispatch(BlockAction.setSettings(settingsSaveData.blockSettings));\n dispatcher.settings.block.setBlockSetting(settingsSaveData);\n };\n return (\n \n {tabType === 'orders' && handleChecked()}>\n Working Orders Only\n }\n
    \n \n
    \n
    \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useCallback, useState } from 'react';\nimport { ActivityOrdersTable } from './components/ActivityOrdersTable';\nimport { ActivityOrderTimeframe } from './components/ActivityOrderTimeframe';\nimport { useOrderPreview, useOrderPreviewOrder } from '../Order/components/Preview/useOrderPreview';\nimport { OrderPreviewPopup } from '../Order/components/Preview/PreviewPopup';\nimport { Order, OrderLeg } from '@tradingblock/types';\nimport { useDashboardSettings } from '../../hooks/useDashboardSettings';\nimport { Spread } from './ActivityContent';\n\nconst ActivityOrders: React.FunctionComponent<{\n tabType: 'orders' | 'trades';\n subscribedSpreads: Spread[];\n addSpread: (spread: Spread) => void;\n removeSpread: (spread: Spread) => void;\n}> = ({ tabType, addSpread, removeSpread, subscribedSpreads }) => {\n const [isCancelOrder, setIsCancelOrder] = useState(false);\n const [orderValue, setOrderValue] = useState>();\n const { muteAllSounds } = useDashboardSettings();\n const {\n isPreview,\n togglePreview,\n previewClosed,\n audio: { successAudio, errorAudio },\n } = useOrderPreview();\n const { setOrder, action } = useOrderPreviewOrder('replace');\n const onReplaceOrder = useCallback(\n (order: Order) => {\n setOrderValue(order);\n setOrder(order);\n setIsCancelOrder(false);\n togglePreview();\n },\n [setOrder, togglePreview]\n );\n const onCancelOrder = useCallback(\n (order: Order) => {\n setOrder(order);\n setIsCancelOrder(true);\n togglePreview();\n },\n [setOrder, togglePreview]\n );\n\n return (\n <>\n {!muteAllSounds && successAudio}\n {!muteAllSounds && errorAudio}\n {isPreview && (\n \n )}\n \n \n \n );\n};\n\nexport const ActivityOrderContent: React.FunctionComponent<{\n tabType: 'orders' | 'trades';\n subscribedSpreads: Spread[];\n addSpread: (spread: Spread) => void;\n removeSpread: (spread: Spread) => void;\n}> = props => {\n return ;\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { Cell, Row } from 'react-table';\nimport _ from 'lodash';\nimport dayjs from 'dayjs';\nimport { OrderMessage } from '@tradingblock/types';\nimport { isString } from '@tradingblock/api';\nimport { isIndexMarketOpenSelector, isMarketOpenSelector, useStateSelector } from '../../../data/global/dataSelectors';\nimport { isBetween, isToday, orderCanBeFilledDuringIndexMarketTimes } from '../../../utilities/date';\nimport { getOrderMessages } from '../../../data/global/selectors/orderSelector';\nimport { useActivityTimeframeValues } from '../data/useActivityTimeframe';\nimport { useActivityBlockData } from '../useActivitySettings';\nimport { useDispatcher } from '../../../data/global/hooks';\nimport { Actions } from '../../../data/global/actions';\nimport { useBlockId } from '../../../components/blocks/BlockState';\nimport { BlockTable } from '../../shared/BlockTable';\nimport { EmptyBlockContent } from '@tradingblock/components';\n\ntype NotificationViewDTO = Notification & {\n display: {\n trClass: string;\n };\n};\nexport const ActivityMessagesTable = () => {\n const { dispatch } = useDispatcher();\n const blockId = useBlockId();\n // Get the start and endDate\n const { startDate, endDate } = useActivityTimeframeValues();\n const accountNumber = useStateSelector(s => s.account.accountNumber);\n const { pageSize, pageIndex, total } = useActivityBlockData();\n const isFetchingBlockOrders = useStateSelector(\n s => s.account.ordersUIState[blockId] && s.account.ordersUIState[blockId].isFetching\n );\n\n const initialState = useMemo(() => {\n if (pageSize * pageIndex > total) {\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex: 0, blockId }));\n return {\n pageSize: pageSize,\n pageIndex: 0,\n sortBy: [],\n columnOrder: [],\n };\n } else\n return {\n pageSize: _.isUndefined(pageSize) ? 50 : pageSize,\n pageIndex: pageIndex || 0,\n sortBy: [],\n columnOrder: [],\n };\n }, [pageSize, pageIndex, total]);\n\n const pageCount = useMemo(() => {\n if (pageSize) {\n return _.ceil((total || 0) / pageSize) === 0 ? 1 : _.ceil((total || 0) / pageSize);\n }\n return 0;\n }, [total, pageSize]);\n\n const onPage = useCallback((pageIndex: number) => {\n dispatch(Actions.setOrdersRequestPageIndex({ pageIndex, blockId }));\n }, []);\n\n const onPageSize = useCallback((pageSize: number) => {\n dispatch(Actions.setOrdersRequestPageSize({ pageSize, blockId }));\n }, []);\n\n const columns = useMemo(\n () => [\n {\n Header: 'Message',\n canSort: false,\n accessor: (a: OrderMessage) => a.description,\n id: 'message',\n Cell: ({ row }: Cell) => {\n const { message, order } = row.original;\n const marketOpen = useStateSelector(s => isMarketOpenSelector(s));\n const indexMarketOpen = useStateSelector(s => isIndexMarketOpenSelector(s));\n const isAfterHours = orderCanBeFilledDuringIndexMarketTimes(order.UnderlyingSymbol, order.Legs) ? !indexMarketOpen : !marketOpen;\n const isNewOrInitiatedOrder =\n row.original.status === 'Order New' || row.original.status === 'Order Initiated';\n const messages = isString(message) ? [message] : message;\n return (\n <>\n {row.original.status}{' '}\n {messages.map((m, i) => (\n \n
    \n {m}\n
    \n ))}\n {isAfterHours && isNewOrInitiatedOrder && (\n <>\n
    \n Warning: Order is queued for the next open trading session.\n \n )}\n \n );\n },\n },\n {\n Header: 'Account',\n accessor: () => accountNumber,\n id: 'accountNumber',\n canSort: false,\n },\n {\n Header: 'Order ID',\n accessor: (a: OrderMessage) => a.id,\n canSort: true,\n sortType: 'alphanumeric',\n id: 'orderId',\n Cell: ({ row }: Cell) => {\n return row.original.id === -1 ? '' : row.original.id;\n },\n },\n {\n Header: 'Received on',\n accessor: (a: OrderMessage) => dayjs(a.received).format('MM/DD/YY h:mm:ss.SSS A'),\n id: 'received_on',\n canSort: true,\n sortType: 'basic',\n Cell: ({ row }: Cell) => {\n const recievedOn = dayjs(row.original.received).format(\n isToday(row.original.received) ? 'h:mm:ss.SSS A' : 'MM/DD/YY h:mm:ss.SSS A'\n );\n return recievedOn;\n },\n },\n ],\n []\n );\n const messages = useStateSelector(getOrderMessages(blockId));\n const timeFilteredMessages = useMemo(() => {\n return _.filter(messages, (n: OrderMessage) => {\n if ((startDate as Date) === (endDate as Date) || startDate === undefined || endDate === undefined) {\n return true;\n }\n return isBetween(n.received, startDate, endDate);\n })\n .map(d => ({ ...d, display: { trClass: '' } }))\n .sort((a, b) => dayjs(b.received).valueOf() - dayjs(a.received).valueOf());\n }, [endDate, messages, startDate]);\n const loaded = useMemo(() => timeFilteredMessages !== undefined, [timeFilteredMessages]);\n const renderSubRow = React.useCallback(\n (row: Row) => (\n \n {row}\n \n ),\n []\n );\n\n return (\n <>\n {!isFetchingBlockOrders &&\n (timeFilteredMessages.length ? (\n \n ) : (\n No messages for current timeframe.\n ))}\n \n );\n};\n","/* eslint-disable react/display-name */\nimport React from 'react';\nimport { TimeframeContainer } from './components/TimeframeContainer';\nimport { ActivityMessagesTable } from './components/ActivityMessagesTable';\n\nexport const ActivityMessages: React.FunctionComponent<{}> = () => {\n return (\n <>\n \n \n \n );\n};\n","/* eslint-disable react/display-name */\nimport React, { useEffect, useMemo, useState } from 'react';\nimport dayjs from 'dayjs';\nimport { Cell } from 'react-table';\nimport { ActivitySummaryProps, SummaryBuilder } from '../SummaryBuilder';\nimport { useStateSelector } from '../../../data/global/dataSelectors';\nimport {\n getAccountPnL,\n PnLBySymbol,\n pnlSelectors,\n isSummaryDataLoaded,\n} from '../../../data/global/selectors/PnLSelectors';\n\nimport { Number, Column, SignedNumber } from '@tradingblock/components';\nimport { BlockTable } from '../../shared/BlockTable';\n\nimport { DirectionalPrice } from '../../../components/trading/DirectionalPrice';\nimport _ from 'lodash';\n\nimport { PrettySymbol } from '../../../components/blocks/content/PrettySymbol';\nimport { PerformanceSelectors } from '../../../data/global/selectors/performanceSelectors';\n\nconst BeforeAndAfterTrade: React.FunctionComponent<{ quantity: number; price: number; direction: string }> = ({\n quantity,\n price,\n direction,\n}) => {\n return (\n
    \n {quantity}@\n
    \n );\n};\nconst columns: any[] = [\n {\n Header: 'Symbol',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.symbol;\n },\n id: 'symbol',\n Cell: ({ row }: Cell) => ,\n },\n\n {\n Header: 'Last Price',\n accessor: (a: PnLBySymbol) => a.lastTradePrice,\n id: 'lastprice',\n canSort: true,\n sortType: 'alphanumeric',\n Cell: ({ row }: Cell) => ,\n },\n\n {\n Header: 'Previous Settle',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.previousSettle;\n },\n id: 'prevsettle',\n Cell: ({ row }: Cell) => {\n return ;\n },\n },\n {\n Header: 'Position on Open',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.positionOnOpen;\n },\n id: 'posOpen',\n Cell: ({ row }: Cell) => {\n return row.original.positionOnOpen;\n },\n },\n {\n Header: 'Qty Bought',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.quantityBought;\n },\n id: 'qtyBought',\n },\n {\n Header: 'Qty Sold',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.quantitySold;\n },\n id: 'qtySold',\n },\n {\n Header: 'Net Qty Change',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.netQuantityChange;\n },\n id: 'qtyChange',\n },\n {\n Header: 'Current position',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.currentPosition;\n },\n id: 'currentPosition',\n },\n {\n Header: 'Avg Price Bought',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return _.round(a.avgBoughtPrice, 2);\n },\n id: 'avgBoughtPrice',\n Cell: ({ row }: Cell) => (\n <>{row.original.avgBoughtPrice !== 0 && }\n ),\n },\n {\n Header: 'Avg Price Sold',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return _.round(a.avgSoldPrice, 2);\n },\n id: 'avgSoldPrice',\n Cell: ({ row }: Cell) => (\n <>{row.original.avgSoldPrice !== 0 && }\n ),\n },\n {\n Header: 'Trading P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => {\n return a.tradingPnL;\n },\n id: 'tradingpnl',\n Cell: ({ row }: Cell) => {\n const { trading, position, total } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Position P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.positionPnL,\n id: 'positionpnl',\n Cell: ({ row }: Cell) => {\n const { position } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Daily P/L',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.totalPnL,\n id: 'totalpnl',\n Cell: ({ row }: Cell) => {\n const { total } = useStateSelector(s => PerformanceSelectors.bySymbol(s, row.original.symbol));\n return (\n <>\n \n {/* */}\n \n );\n },\n },\n {\n Header: 'Est. Commission',\n canSort: true,\n accessor: (a: PnLBySymbol) => a.totalPnL,\n id: 'estCommission',\n Cell: ({ row }: Cell) => {\n return (\n <>\n \n \n );\n },\n },\n];\n\nexport const ActivitySummaryTable = () => {\n // const data = usePnL({ startDate, endDate });\n const data = useStateSelector(s =>\n pnlSelectors.trading(s, {\n startDate: dayjs(new Date())\n .hour(0)\n .toDate(),\n endDate: dayjs(new Date()).toDate(),\n })\n );\n const isLoaded = useStateSelector(isSummaryDataLoaded);\n return (\n \n );\n};\n","import React, { FC } from 'react';\nimport { useStateSelector } from '../../data/global/dataSelectors';\nimport _ from 'lodash';\nimport { SignedNumber } from '@tradingblock/components';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nexport const ActivitySummaryTotals: FC = () => {\n const todayPnL = useStateSelector(s => PerformanceSelectors.totals.tradedToday(s).total);\n const totalPnL = useStateSelector(s => PerformanceSelectors.totals.all(s).total);\n const notTradedPnL = totalPnL - todayPnL;\n return (\n
      \n
    • \n Not traded today: Daily P/L\n \n
    • \n
    • \n Total Daily P/L:\n \n
    • \n
    \n );\n};\n","import React from 'react';\nimport { useStateSelector, accountIdSelector } from '../../data/global/dataSelectors';\nimport { useAccountApi } from '../../context/Api';\nimport { useDispatcher } from '../../data/global/hooks';\nimport { ActivitySummaryTable } from './components/ActivitySummaryTable';\nimport useMount from 'react-use/lib/useMount';\nimport _ from 'lodash';\nimport { ActivitySummaryTotals } from './ActivitySummaryTotals';\nimport { PerformanceSelectors } from '../../data/global/selectors/performanceSelectors';\nimport { SignedNumber } from '@tradingblock/components';\n\nconst ActivitySummaryView: React.FunctionComponent<{}> = () => {\n const { total } = useStateSelector(PerformanceSelectors.totals.tradedToday);\n return (\n <>\n {/* */}\n
    \n
    \n
    \n Symbols traded today: Daily P/L\n \n
    \n
    \n \n
    \n
    \n
    \n\n \n \n );\n};\n\nexport const ActivitySummary: React.FunctionComponent<{}> = () => {\n useMount(() => {\n //loadPnL(api, dispatcher)(currId as number, { accountId: currId as number });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n });\n return ;\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { useActiveBlockTab } from '../../components/blocks/BlockAccessors';\nimport { ActivityOrderContent } from './ActivityOrderContent';\nimport { ActivityMessages } from './ActivityMessages';\nimport { ActivitySummary } from './ActivitySummary';\nimport { accountIdSelector, subAccountIdSelector, useStateSelector } from '../../data/global/dataSelectors';\nimport { areOrdersLoaded, getOrders } from '../../data/global/selectors/orderSelector';\nimport { Loading, EmptyBlockContent } from '@tradingblock/components';\nimport { useBlockId } from '../../components/blocks/BlockState';\nimport { useActivityTimeframeValues } from './data/useActivityTimeframe';\nimport { useActivityBlockData, useActivitySettingsValue } from './useActivitySettings';\nimport { useDispatch } from 'react-redux';\nimport { Actions } from '../../data/global/actions';\nimport { AssetType, SpreadType } from '@tradingblock/types';\nimport { useFeedActions } from '../../data/feed/useFeedActions';\n\nexport type Spread = { name: string; type: SpreadType; Legs: { Symbol: string; AssetType: AssetType }[] };\n\nexport const ActivityContent: React.FunctionComponent<{}> = () => {\n const activeTab = useActiveBlockTab();\n const accountId = useStateSelector(accountIdSelector);\n const subaccountId = useStateSelector(subAccountIdSelector);\n const blockId = useBlockId();\n const accountOrders = useStateSelector(getOrders);\n const { workingOrdersOnly } = useActivitySettingsValue();\n const { startDate, endDate } = useActivityTimeframeValues();\n const { pageSize, pageIndex } = useActivityBlockData();\n const dispatch = useDispatch();\n const tab = useMemo(() => (activeTab ? activeTab.title : undefined), [activeTab ? activeTab.title : undefined]);\n const isTradesTab = useMemo(() => tab === 'Trades', [tab]);\n const isMessagesTab = tab === 'Messages';\n const [unsubAll, setUnsubAll] = useState(false);\n const [subscribedSpreads, setSubscribedSpreads] = useState([]);\n const spreads = useStateSelector(state => state.spread.spreadMetadata);\n\n useEffect(() => {\n if (spreads && spreads.data && subscribedSpreads) {\n const spreadNames = Object.keys(spreads.data);\n const subNames = subscribedSpreads.map(s => s.name);\n const diff = subNames.filter(n => !spreadNames.includes(n));\n diff.forEach(d => {\n const spread = subscribedSpreads.find(s => s.name === d);\n if (spread) {\n subscribeSpread(spread);\n }\n });\n }\n }, [spreads, subscribedSpreads]);\n\n const apiToken = useStateSelector(state => state.auth.apiToken);\n const { subscribeQuote, unsubscribeQuote } = useFeedActions(apiToken || '');\n\n const addSpread = (spread: Spread) => {\n subscribeSpread(spread);\n setSubscribedSpreads([...subscribedSpreads, spread]);\n };\n\n const removeSpread = (spread: Spread) => {\n unsubscribeSpread(spread);\n const tempSpreads = subscribedSpreads.filter(s => s.name !== spread.name);\n setSubscribedSpreads([...tempSpreads]);\n };\n\n const subscribeSpread = (spread: Spread) => {\n subscribeQuote(accountId, {\n kind: 'Spread',\n spreadDefinition: [spread],\n });\n };\n\n const unsubscribeSpread = (spread: Spread) => {\n unsubscribeQuote(accountId, {\n kind: 'Spread',\n spreadDefinition: [spread],\n });\n };\n\n const unsubscribeAllSpreads = (subscribedSpreads: Spread[]) => {\n subscribedSpreads.forEach((spread: any) => removeSpread(spread));\n setSubscribedSpreads([]);\n };\n\n useEffect(() => {\n if (unsubAll) {\n // if a new tab is selected, unsub all spreads\n unsubscribeAllSpreads(subscribedSpreads);\n setUnsubAll(false);\n }\n }, [unsubAll, subscribedSpreads]);\n\n useEffect(() => {\n if (tab && tab !== 'Orders' && tab !== 'Trades') setUnsubAll(true);\n }, [tab]);\n\n useEffect(() => {\n // Initially fetch orders for the block and establish redux state for each block, refetch when accountOrders changes (e.g. when a new order is placed)\n if (accountId) {\n dispatch(\n Actions.requestAccountOrders(\n {\n accountId,\n subaccountId,\n dateFrom: startDate,\n dateTo: endDate,\n includeOrderEvents: isMessagesTab ? true : false,\n pageSize,\n pageIndex,\n blockId,\n isTradesTab,\n workingOrdersOnly: workingOrdersOnly,\n },\n { debounce: undefined }\n )\n );\n }\n }, [\n accountOrders,\n workingOrdersOnly,\n startDate,\n endDate,\n pageSize,\n pageIndex,\n accountId,\n subaccountId,\n isTradesTab,\n isMessagesTab,\n ]);\n\n const isLoaded = useStateSelector(areOrdersLoaded);\n return (\n <>\n {isLoaded ? (\n <>\n {tab === 'Messages' && }\n {tab === 'Orders' && (\n \n )}\n {tab === 'Trades' && (\n \n )}\n {tab === 'Summary' && }\n \n ) : (\n {}\n )}\n \n );\n};\n","import React, { useCallback, useMemo } from 'react';\nimport { BlockTabs } from '@tradingblock/components';\nimport { TabOptions } from '@tradingblock/types';\nimport { useBlockMetadata, useBlockActions } from './BlockState';\n\nexport const BlockTabWell: React.FunctionComponent = () => {\n const { title, tabs } = useBlockMetadata();\n const { setTab } = useBlockActions();\n\n const hasTabs = useMemo(() => tabs && tabs.length > 0, [tabs]);\n const onTabClick = useCallback((tab: TabOptions) => setTab(tab), [setTab]);\n return (\n <>\n {!hasTabs && title}\n {hasTabs && tabs && }\n \n );\n};\n","import React, { useEffect } from 'react';\nimport { BlockBody } from '@tradingblock/components';\nimport { TabOptions, BlockType } from '@tradingblock/types';\nimport { ActivityContent } from '././ActivityContent';\nimport { PositionSync } from '../shared/PositionSync';\nimport { Block } from '../../components/blocks/Block';\nimport { useQuoteSymbolSubscriptionFromGlobalState, useQuoteFeedSubscription } from '../../hooks/useQuoteData';\nimport { getBlockProps } from '../../utilities/block';\nimport { useGlobalStateQuoteListener } from '../../components/blocks/useBlockSubscriptions';\nimport { BlockTabWell } from '../../components/blocks/BlockTabWell';\nimport { getPositionAndOrderSymbols } from '../../data/global/selectors/orderSelector';\nimport { useActivitySettings } from './useActivitySettings';\n\nconst ActivityTabs: TabOptions[] = [\n { title: 'Trades', active: true },\n { title: 'Orders' },\n { title: 'Messages' },\n { title: 'Summary' },\n];\n\nexport const ActivityBlock: React.FunctionComponent<{}> = () => {\n useQuoteSymbolSubscriptionFromGlobalState(getPositionAndOrderSymbols);\n useGlobalStateQuoteListener(getPositionAndOrderSymbols);\n const { current, definitions } = useActivitySettings();\n return (\n , ActivityTabs)}\n settings={current}\n settingFields={definitions}\n >\n \n \n \n \n \n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport { createChart, CrosshairMode, IChartApi, SeriesMarker, Time } from 'lightweight-charts';\nimport { BalanceHistory } from '@tradingblock/types';\nimport { is } from 'immutable';\n\ninterface AnalyticsChartProps {\n dateRange: {\n start: Date;\n end: Date;\n };\n filteredBalances: BalanceHistory[];\n}\n\nexport const AnalyticsChart: React.FC = ({\n dateRange,\n filteredBalances,\n}: AnalyticsChartProps): JSX.Element => {\n const chartContainerRef = useRef({} as HTMLElement);\n const chart = useRef(null);\n const resizeObserver = useRef({} as ResizeObserver);\n\n enum MarkerTypes {\n Deposit = 'D',\n Withdrawal = 'W',\n Dividend = 'DIV',\n CapitalGainsDistribution = 'CG',\n Reinvestment = 'RE',\n JournalEntry = 'JE',\n Interest = 'I',\n }\n\n const getMarkerType = (markerType: string): string => {\n switch (markerType) {\n case 'Deposit':\n return MarkerTypes.Deposit;\n case 'Withdrawal':\n return MarkerTypes.Withdrawal;\n case 'Dividend':\n return MarkerTypes.Dividend;\n case 'CapitalGainsDistribution':\n return MarkerTypes.CapitalGainsDistribution;\n case 'Reinvestment':\n return MarkerTypes.Reinvestment;\n case 'JournalEntry':\n return MarkerTypes.JournalEntry;\n case 'Interest':\n return MarkerTypes.Interest;\n default:\n return '';\n }\n };\n\n useEffect(() => {\n chart.current = createChart(chartContainerRef.current, {\n width: chartContainerRef.current.clientWidth,\n height: chartContainerRef.current.clientHeight,\n layout: {\n backgroundColor: 'rgb(3, 18, 55)',\n textColor: 'rgba(255, 255, 255, 0.9)',\n fontSize: 14,\n },\n grid: {\n vertLines: {\n visible: false,\n },\n horzLines: {\n visible: false,\n },\n },\n crosshair: {\n mode: CrosshairMode.Magnet,\n },\n });\n }, []);\n\n useEffect(() => {\n if (filteredBalances.length && chart.current !== null) {\n const baseLineSeries = chart.current.addBaselineSeries({\n baseValue: { type: 'price', price: 0 },\n lineWidth: 1,\n });\n //marker series\n const balanceHistoryMarkers: SeriesMarker